![]() |
Octopus
|
This module implements the factory for propagators. More...
This module implements the factory for propagators.
Data Types | |
| interface | propagator_factory_t |
| This class defines the factory for propagators. More... | |
Functions/Subroutines | |
| type(propagator_factory_t) function | propagator_factory_constructor (namespace) |
| Constructor for the propagator factory. More... | |
| class(algorithm_t) function, pointer | propagator_factory_create (this, system) |
| Create a general propagator. More... | |
| class(algorithm_t) function, pointer | propagator_factory_create_static (this, system) |
| Create a static propagator. More... | |
| real(real64) function | propagator_factory_read_dt (this, namespace) |
| auxilliary function to read the time step from the input file More... | |
Variables | |
| integer, parameter, public | prop_static = 0 |
| integer, parameter, public | prop_verlet = 1 |
| integer, parameter, public | prop_beeman = 2 |
| integer, parameter, public | prop_beeman_scf = 3 |
| integer, parameter, public | prop_expmid_2step = 4 |
| integer, parameter, public | prop_expmid_2step_scf = 5 |
| integer, parameter, public | prop_aetrs_ms = 6 |
| integer, parameter, public | prop_rk4 = 7 |
| integer, parameter, public | prop_expmid = 8 |
| integer, parameter, public | prop_leapfrog = 9 |
| integer, parameter, public | prop_bomd = 10 |
| integer, parameter, public | prop_expgauss1 = 11 |
| integer, parameter, public | prop_expgauss2 = 12 |
|
private |
Constructor for the propagator factory.
reads TDPropagationTime from the input file
Definition at line 193 of file propagator_factory.F90.
|
private |
Create a general propagator.
The specific propagator, to be created, is determined from the input variable TDSystemPropagator.
| [in] | this | the factory |
| [in] | system | the system using the propagator |
Definition at line 223 of file propagator_factory.F90.
|
private |
Create a static propagator.
A static propagator is needed for consistency for systems which do not depend on time. One special example is the multisystem container, which itself can be kept static, as its components are propagated (in case of no self-consistent propagation of the subsystems).
| [in] | this | the factory |
| [in] | system | the system using the algorithm |
Definition at line 336 of file propagator_factory.F90.
|
private |
auxilliary function to read the time step from the input file
Definition at line 388 of file propagator_factory.F90.
| integer, parameter, public propagator_factory_oct_m::prop_static = 0 |
Definition at line 157 of file propagator_factory.F90.
| integer, parameter, public propagator_factory_oct_m::prop_verlet = 1 |
Definition at line 157 of file propagator_factory.F90.
| integer, parameter, public propagator_factory_oct_m::prop_beeman = 2 |
Definition at line 157 of file propagator_factory.F90.
| integer, parameter, public propagator_factory_oct_m::prop_beeman_scf = 3 |
Definition at line 157 of file propagator_factory.F90.
| integer, parameter, public propagator_factory_oct_m::prop_expmid_2step = 4 |
Definition at line 157 of file propagator_factory.F90.
| integer, parameter, public propagator_factory_oct_m::prop_expmid_2step_scf = 5 |
Definition at line 157 of file propagator_factory.F90.
| integer, parameter, public propagator_factory_oct_m::prop_aetrs_ms = 6 |
Definition at line 157 of file propagator_factory.F90.
| integer, parameter, public propagator_factory_oct_m::prop_rk4 = 7 |
Definition at line 157 of file propagator_factory.F90.
| integer, parameter, public propagator_factory_oct_m::prop_expmid = 8 |
Definition at line 157 of file propagator_factory.F90.
| integer, parameter, public propagator_factory_oct_m::prop_leapfrog = 9 |
Definition at line 157 of file propagator_factory.F90.
| integer, parameter, public propagator_factory_oct_m::prop_bomd = 10 |
Definition at line 157 of file propagator_factory.F90.
| integer, parameter, public propagator_factory_oct_m::prop_expgauss1 = 11 |
Definition at line 157 of file propagator_factory.F90.
| integer, parameter, public propagator_factory_oct_m::prop_expgauss2 = 12 |
Definition at line 157 of file propagator_factory.F90.