|
The Open FUSION Toolkit 1.0.0-beta6
Modeling tools for plasma and fusion research and engineering
|
Abstract class for OFT tracers.

Public Member Functions | |
| procedure(tracer_copy), deferred | copy (self, new) |
| Create a copy of this tracer. | |
| procedure(tracer_step), deferred | delete (self) |
| Clean-up internal storage. | |
| procedure(tracer_recv), deferred | recv (self, proc) |
| Receive tracer information from other domain. | |
| procedure(tracer_send), deferred | send (self, proc) |
| Save tracer information for transfer. | |
| procedure(tracer_setup), deferred | setup (self, y, cell, init) |
| Initialize tracer at a given point. | |
| procedure(tracer_step), deferred | step (self) |
| Advance tracer one step. | |
Public Attributes | |
| class(fem_interp), pointer | b => NULL() |
| Interpolation operator for trace field. | |
| integer(i4) | cell = 0 |
| Cell location of last/current trace point. | |
| real(r8) | dt = 0.d0 |
| Time step for ODE solver. | |
| real(r8), dimension(:), pointer | dy |
| Change from previous trace point. | |
| real(r8), dimension(:), pointer | dyp |
| Previous derivative. | |
| integer(i4) | estatus = 0 |
| Error status of tracer. | |
| real(r8), dimension(4) | f = 0.d0 |
| Logical cell position of last/current trace point. | |
| logical | initialized = .FALSE. |
| Flag to indicate tracer is ready. | |
| integer(i4) | maxsteps = 1e6 |
| Limit for the number of tracer steps. | |
| integer(i4) | maxtrans = 1e2 |
| Limit for the number of domain transfers. | |
| type(multigrid_mesh), pointer | ml_mesh => NULL() |
| Muli-grid mesh. | |
| integer(i4) | neq = 3 |
| Number of equations in ODE system (3) | |
| integer(i4) | nsteps = 0 |
| Current number of steps. | |
| integer(i4) | ntrans = 0 |
| Current number of transfers. | |
| integer(i4) | proc = 0 |
| Processor location of last/current trace point. | |
| integer(i4), dimension(2) | rids = MPI_REQUEST_NULL |
| Active MPI recieve request IDs. | |
| integer(i4) | status = 0 |
| Status of tracer. | |
| integer(i4), dimension(2) | tids = 0 |
| Transfer tags for inter-processor communication. | |
| real(r8) | tol = 1.d-4 |
| Tolerance for ODE solver. | |
| real(r8), dimension(:), pointer | y |
| Possition of current trace point. | |
Static Public Attributes | |
| procedure(tracer_ydot), pointer, nopass | ydot => NULL() |
| General ODE function. | |
|
pure virtual |
Create a copy of this tracer.
| [in] | self | Tracer object |
| [out] | new | Copy of tracer object with same type, tolerances and field interpolation object |
|
pure virtual |
Clean-up internal storage.
| [in,out] | self | Tracer object |
|
pure virtual |
Receive tracer information from other domain.
| [in,out] | self | Tracer object |
| [in] | proc | Processor ID to recieve tracer information from |
|
pure virtual |
Save tracer information for transfer.
Transfer tracer information to new domain
|
pure virtual |
Initialize tracer at a given point.
| [in,out] | self | Tracer object |
| [in] | y | New start point [3] |
| [in] | cell | Guess cell for use in mesh_findcell (optional) |
| [in] | init | Flag indicating tracer is starting a new trace and all counts should be set to zero (optional) |
|
pure virtual |
Advance tracer one step.
| [in,out] | self | Tracer object |
| class(fem_interp), pointer b => NULL() |
Interpolation operator for trace field.
| integer(i4) cell = 0 |
Cell location of last/current trace point.
| real(r8) dt = 0.d0 |
Time step for ODE solver.
| real(r8), dimension(:), pointer dy |
Change from previous trace point.
| real(r8), dimension(:), pointer dyp |
Previous derivative.
| integer(i4) estatus = 0 |
Error status of tracer.
| real(r8), dimension(4) f = 0.d0 |
Logical cell position of last/current trace point.
| logical initialized = .FALSE. |
Flag to indicate tracer is ready.
| integer(i4) maxsteps = 1e6 |
Limit for the number of tracer steps.
| integer(i4) maxtrans = 1e2 |
Limit for the number of domain transfers.
| type(multigrid_mesh), pointer ml_mesh => NULL() |
Muli-grid mesh.
| integer(i4) neq = 3 |
Number of equations in ODE system (3)
| integer(i4) nsteps = 0 |
Current number of steps.
| integer(i4) ntrans = 0 |
Current number of transfers.
| integer(i4) proc = 0 |
Processor location of last/current trace point.
| integer(i4), dimension(2) rids = MPI_REQUEST_NULL |
Active MPI recieve request IDs.
| integer(i4) status = 0 |
Status of tracer.
| integer(i4), dimension(2) tids = 0 |
Transfer tags for inter-processor communication.
| real(r8) tol = 1.d-4 |
Tolerance for ODE solver.
| real(r8), dimension(:), pointer y |
Possition of current trace point.
|
static |
General ODE function.