Stellarator-Tools
|
Defines the base class of the type siesta_run_class. This module contains all the code necessary to interface setup and run SIESTA. More...
Data Types | |
interface | siesta_run_class |
Interface for the siesta_run constructor. More... | |
Functions/Subroutines | |
class(siesta_run_class) function, pointer | siesta_run_construct (run_comm, verbose, init_mpi, close_w |
Construct new siesta_run_class object. More... | |
subroutine | siesta_run_destruct (this) |
Deconstruct a siesta_run_class object. More... | |
real(dp) function | siesta_run_get_1d (this, param_name, index) |
Get 1D parameter value. More... | |
subroutine | siesta_run_converge (this) |
Solves the SIESTA equilibrium. More... | |
subroutine | siesta_run_sync (this) |
Sync child equilibria. More... | |
Variables | |
integer, parameter | siesta_run_control_clear = 0 |
Clear all control bits. | |
integer, parameter | siesta_run_control_mpi = 1 |
Bit position to initalize mpi. | |
integer, parameter | siesta_run_control_wout = 2 |
Bit position to close the wout file. | |
integer, parameter | siesta_run_sync_namelist = 3 |
Bit position to sycn the namelist inputs. | |
Defines the base class of the type siesta_run_class. This module contains all the code necessary to interface setup and run SIESTA.
class (siesta_run_class) function, pointer siesta_run::siesta_run_construct | ( | integer, intent(in) | run_comm, |
logical, intent(in) | verbose, | ||
logical, intent(in) | init_mpi, | ||
close_w | |||
) |
Construct new siesta_run_class object.
Allocates memory and initializes a siesta_run_class object. Performs all the initialization needed to operate SIESTA.
[in] | run_comm | MPI Communicator to use. |
[in] | verbose | Control the code screen output. |
[in] | init_mpi | Instructs if MPI should be initialized. |
[in] | close_wout | Instructs if wout file should be closed on deallocate. |
[in] | namelist_file | Path to the siesta namelist input file. |
subroutine siesta_run::siesta_run_converge | ( | class (siesta_run_class), intent(inout) | this | ) |
Solves the SIESTA equilibrium.
This method converges the siesta_run_class equilibrium. Initializes the evolution module variables and converges the force residual using a diagonal preconditioner. Applies the external island perturbation if possible. Loads restart file before convergence.
[in,out] | this | A siesta_run_class instance. |
subroutine siesta_run::siesta_run_destruct | ( | type (siesta_run_class), intent(inout) | this | ) |
Deconstruct a siesta_run_class object.
Deallocates memory and uninitializes a siesta_run_class object. This also performs the shut down procedures for SIESTA.
[in,out] | this | A siesta_run_class instance. |
real (dp) function siesta_run::siesta_run_get_1d | ( | class (siesta_run_class), intent(in) | this, |
character (len=*), intent(in) | param_name, | ||
integer, intent(in) | index | ||
) |
Get 1D parameter value.
[in,out] | this | siesta_run_class instance. |
[in] | param_name | Name of the parameter to set. |
[in] | index | Array index of to set the value to. |
subroutine siesta_run::siesta_run_sync | ( | class (siesta_run_class), intent(inout) | this | ) |
Sync child equilibria.
[in,out] | this | A siesta_run_class instance. |