Base solver object
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| character(len=:), | public, | allocatable | :: | name |
Solver's name. |
||
| type(parallel_obj), | public, | pointer | :: | parallel | => | null() |
Associated parallel structure |
| type(parser_obj), | public, | pointer | :: | parser | => | null() |
Associated parser |
| type(timer_obj), | public, | pointer | :: | timer | => | null() |
Associated timer |
Advances solution from t to t+dt.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(solver_obj), | intent(inout) | :: | this |
A LEAP solver |
Finalizes solver and frees its associated memory.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(solver_obj), | intent(inout) | :: | this |
A LEAP solver |
Initializes the solver.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(solver_obj), | intent(inout) | :: | this |
A LEAP solver |
||
| type(timer_obj), | intent(in), | target | :: | timer |
Timer utility |
|
| type(parallel_obj), | intent(in), | target | :: | parallel |
Parallel machinery |
|
| type(parser_obj), | intent(in), | target | :: | parser |
Parser for input file |
Links an HDF5 object to this solver.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(solver_obj), | intent(inout) | :: | this | |||
| type(hdf5_obj), | intent(in), | target | :: | hdf5 |
HDF5 Object |
Computes and write monitored values.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(solver_obj), | intent(inout) | :: | this |
A LEAP solver |
Prepares data before run.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(solver_obj), | intent(inout) | :: | this |
A LEAP solver |
Writes single precision data needed for visualizations.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(solver_obj), | intent(inout) | :: | this |
A LEAP solver |
Writes simulation data to disk required for restarts.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(solver_obj), | intent(inout) | :: | this |
A LEAP solver |
type,abstract :: solver_obj !> Base solver object character(len=:), allocatable :: name !! Solver's name. type(parser_obj), pointer :: parser => null() !! Associated parser type(parallel_obj), pointer :: parallel => null() !! Associated parallel structure type(timer_obj), pointer :: timer => null() !! Associated timer contains procedure(solver_initialize), deferred :: Initialize procedure(solver_finalize), deferred :: Finalize procedure(solver_prepare), deferred :: PrepareSolver procedure(solver_advance), deferred :: AdvanceSolution procedure(solver_monitor), deferred :: Monitor procedure(solver_restart), deferred :: WriteRestartData procedure(solver_output), deferred :: WriteOutputData procedure(solver_LinkHDF5Object),& deferred :: LinkHDF5Object end type solver_obj