The Open FUSION Toolkit 1.0.0-8905cc5
Modeling tools for plasma and fusion research and engineering
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
tracer Type Referenceabstract

Detailed Description

Abstract tracer class for 2D grids.

Inheritance diagram for tracer:
Inheritance graph
[legend]

Public Member Functions

procedure(tracer_step), deferred delete (self)
 Destroy tracer and deallocate internal storage.
 
procedure(tracer_setup), deferred setup (self, y, cell)
 Setup tracer and initialize ODE solver.
 
procedure(tracer_step), deferred step (self)
 Take one step of the ODE solver.
 

Public Attributes

class(bfem_interp), pointer b => NULL()
 Interpolation object for field evaluation.
 
integer(i4cell = 0
 Current cell containing tracer.
 
real(r8dt = 0.d0
 Timestep (for fixed step methods)
 
real(r8), dimension(:), pointer dv => NULL()
 Change in ODE solution over last step.
 
real(r8), dimension(2) dy = 0.d0
 Change in position in real coordinates (eg. X,Y)
 
real(r8), dimension(3) f = 0.d0
 Logical position in cell.
 
logical initialized = .FALSE.
 Has tracer been initialized.
 
logical inv = .FALSE.
 Perform tracing in inverse coordinates?
 
integer(i4maxsteps = 1e6
 Maximum number of timesteps.
 
class(oft_bmesh), pointer mesh => NULL()
 
integer neq = 2
 Number of ODE equations to advance.
 
integer(i4nsteps = 0
 Number of timesteps taken.
 
real(r8raxis = 0.d0
 Radial location of axis for inverse coordinates.
 
integer(i4status = 0
 Status of tracer.
 
real(r8t = 0.d0
 Current time.
 
real(r8tol = 1.d-4
 Tolerance for ODE solver.
 
real(r8), dimension(:), pointer v => NULL()
 Current ODE solution vector.
 
real(r8), dimension(2) y = 0.d0
 Position in real coordinates (eg. X,Y)
 
real(r8zaxis = 0.d0
 Vertical location of axis for inverse coordinates.
 

Member Function/Subroutine Documentation

◆ delete()

procedure(tracer_step), deferred delete ( class(tracer), intent(inout)  self)
pure virtual

Destroy tracer and deallocate internal storage.

Parameters
[in,out]selfTracer object

◆ setup()

procedure(tracer_setup), deferred setup ( class(tracer), intent(inout)  self,
real(8), dimension(2), intent(in)  y,
integer(4), intent(in), optional  cell 
)
pure virtual

Setup tracer and initialize ODE solver.

Parameters
[in,out]selfTracer object
[in]yInitial position in physical coordinates
[in]cellStarting guess for cell

◆ step()

procedure(tracer_step), deferred step ( class(tracer), intent(inout)  self)
pure virtual

Take one step of the ODE solver.

Parameters
[in,out]selfTracer object

Member Data Documentation

◆ b

class(bfem_interp), pointer b => NULL()

Interpolation object for field evaluation.

◆ cell

integer(i4) cell = 0

Current cell containing tracer.

◆ dt

real(r8) dt = 0.d0

Timestep (for fixed step methods)

◆ dv

real(r8), dimension(:), pointer dv => NULL()

Change in ODE solution over last step.

◆ dy

real(r8), dimension(2) dy = 0.d0

Change in position in real coordinates (eg. X,Y)

◆ f

real(r8), dimension(3) f = 0.d0

Logical position in cell.

◆ initialized

logical initialized = .FALSE.

Has tracer been initialized.

◆ inv

logical inv = .FALSE.

Perform tracing in inverse coordinates?

◆ maxsteps

integer(i4) maxsteps = 1e6

Maximum number of timesteps.

◆ mesh

class(oft_bmesh), pointer mesh => NULL()

◆ neq

integer neq = 2

Number of ODE equations to advance.

◆ nsteps

integer(i4) nsteps = 0

Number of timesteps taken.

◆ raxis

real(r8) raxis = 0.d0

Radial location of axis for inverse coordinates.

◆ status

integer(i4) status = 0

Status of tracer.

◆ t

real(r8) t = 0.d0

Current time.

◆ tol

real(r8) tol = 1.d-4

Tolerance for ODE solver.

◆ v

real(r8), dimension(:), pointer v => NULL()

Current ODE solution vector.

◆ y

real(r8), dimension(2) y = 0.d0

Position in real coordinates (eg. X,Y)

◆ zaxis

real(r8) zaxis = 0.d0

Vertical location of axis for inverse coordinates.


The documentation for this type was generated from the following file: