The Open FUSION Toolkit 1.0.0-beta6
Modeling tools for plasma and fusion research and engineering
Loading...
Searching...
No Matches
tracer Type Referenceabstract

Detailed Description

Abstract tracer class for 2D grids.

Inheritance diagram for tracer:

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: