39#define CHCKERR if(ierr.ne.0) then; call sudden_stop(ierr); end if
74 type(
grid_type),
pointer :: grid_eq_b => null()
76 type(
grid_type),
pointer :: grid_x_b => null()
102 call writo(
'Initialization')
140 call writo(
'Generic Tests')
172 par:
do while(
do_eq())
194 ierr =
run_driver_x(grid_eq,grid_eq_b,grid_x,grid_x_b,eq_1,eq_2,&
231 call writo(
'Clean up')
233 if (
eq_style.eq.2)
call eq_2%dealloc()
235 &grid_eq_b=grid_eq_b,&
Driver of the equilibrium part of PB3D.
integer function, public run_driver_eq(grid_eq_out, grid_eq_b_out, eq_1_out, eq_2_out, vac)
Main driver of PB3D equilibrium part.
Driver of the solution part of PB3D.
integer function, public run_driver_sol(grid_eq, grid_x, grid_sol, x, vac, sol)
Main driver of PB3D solution part.
Driver of the perturbation part of PB3D.
integer function, public run_driver_x(grid_eq, grid_eq_b, grid_x, grid_x_b, eq_1, eq_2, x_1, x_2)
Main driver of PB3D perturbation part.
Operations on the equilibrium variables.
subroutine, public normalize_input()
Normalize input quantities.
integer function, public calc_normalization_const()
Sets up normalization constants.
Numerical utilities related to equilibrium variables.
elemental character(len=max_str_ln) function, public eq_info()
Returns string with possible extension with equilibrium job as well as parallel job,...
logical function, public do_eq()
If this equilibrium job should be done, also increment eq_job_nr.
Variables that have to do with equilibrium quantities and the grid used in the calculations:
Operations related to files !
integer function, public parse_args()
Parses the command line arguments.
subroutine, public init_files()
Initialize the variables for the module.
subroutine, public close_output()
Closes the output file.
integer function, public open_input()
Open the input files.
integer function, public open_output()
Open the output files.
Variables pertaining to the different grids used.
Variables pertaining to HDF5 and XDMF.
subroutine, public init_hdf5
Initializes the HDF5 types.
Numerical utilities related to giving output.
subroutine, public passed_time()
Display the time that has passed between t1 and t2.
subroutine, public print_goodbye()
Prints last messag.
subroutine, public init_output()
Initialize the variables for the module.
subroutine, public print_hello()
Prints first message.
subroutine, public lvl_ud(inc)
Increases/decreases lvl of output.
subroutine, public start_time()
Start a timer.
subroutine, public init_time()
Intialize the time passed to 0.
subroutine, public writo(input_str, persistent, error, warning, alert)
Write output to file identified by output_i.
subroutine, public stop_time()
Stop a timer.
Operations related to MPI.
integer function, public stop_mpi(grid_eq, grid_eq_b, grid_x, grid_x_b, grid_sol, eq_1, eq_2, x_1, x_2, vac, sol)
Stop MPI.
subroutine, public sudden_stop(ierr)
Suddenly stops the computations, aborting MPI, etc.
integer function, public start_mpi()
Start MPI and gather information.
integer function, public broadcast_input_opts()
Broadcasts options (e.g. user-prescribed) that are not passed through the HDF5 output file (i....
Numerical variables used by most other modules.
logical, public ltest
whether or not to call the testing routines
integer, public prog_style
program style (1: PB3D, 2: PB3D_POST)
character(len=4), public prog_name
name of program, used for info
integer, public eq_style
either 1 (VMEC) or 2 (HELENA)
integer, public rank
MPI rank.
integer, public rich_restart_lvl
starting Richardson level (0: none [default])
Operations concerning Richardson extrapolation.
subroutine, public stop_rich_lvl()
Stop a Richardson level.
subroutine, public term_rich()
Terminate the Richardson extrapolation system.
logical function, public do_rich()
Tests whether this Richardson level should be done.
integer function, public start_rich_lvl()
Start a Richardson level.
integer function, public init_rich()
Initialize Richardson extrapolation system.
Variables concerning Richardson extrapolation.
integer, public rich_lvl
current level of Richardson extrapolation
elemental character(len=max_str_ln) function, public rich_info()
Returns string with possible extension with Richardson level or nothing if only one level and one par...
Variables pertaining to the solution quantities.
elemental character(len=max_str_ln) function, public i2str(k)
Convert an integer to string.
elemental character(len=max_str_ln) function, public r2str(k)
Convert a real (double) to string.
integer function, public generic_tests()
Performs generic tests.
Variables pertaining to the vacuum quantities.
Variables pertaining to the perturbation quantities.
vectorial perturbation type
tensorial perturbation type