control_m Module

Routines for reading and witing control file.


Uses

  • module~~control_m~~UsesGraph module~control_m control_m module~constants_m constants_m module~control_m->module~constants_m module~strings_m strings_m module~control_m->module~strings_m iso_fortran_env iso_fortran_env module~constants_m->iso_fortran_env module~strings_m->module~constants_m

Used by

  • module~~control_m~~UsedByGraph module~control_m control_m module~bd_solver_m bd_solver_m module~bd_solver_m->module~control_m module~interaction_m interaction_m module~bd_solver_m->module~interaction_m module~stats_m stats_m module~bd_solver_m->module~stats_m module~interaction_m->module~control_m module~interaction_m->module~stats_m module~setup_m setup_m module~setup_m->module~control_m module~setup_m->module~bd_solver_m module~setup_m->module~interaction_m module~setup_m->module~stats_m module~stats_m->module~control_m program~main main program~main->module~control_m program~main->module~setup_m

Variables

Type Visibility Attributes Name Initial
integer, public, parameter :: mxrdln = 1024

Maximum length of character string for input line buffer.


Derived Types

type, public ::  ctrlpar_t

Components

Type Visibility Attributes Name Initial
real(kind=rp), public :: rcutoff = 0.0_rp
real(kind=rp), public :: tskin = 0.0_rp
character(len=5), public :: mth_ptgen = ''

Pair table generation method: {'DIR', 'VER', 'AABBT', 'CL'}

logical, public :: lelst = .false.
logical, public :: lhdia = .false.
logical, public :: lvdw = .false.
integer, public :: excluded_atoms = 0
character(len=4), public :: mob_fctr = ''
integer, public :: lanc_mxitr = 0
real(kind=rp), public :: lanc_tol = 0.0_rp
integer, public :: se_nlmxitr = 0
integer, public :: se_kdmax = 0
character(len=4), public :: bdintg = ''
real(kind=rp), public, dimension(2) :: se_tol = 0.0_rp
integer, public, dimension(2) :: stats_binsize = 0
real(kind=rp), public :: tim_stp = 0.0_rp
integer(kind=ip_long), public :: nts_sim = 0
integer, public :: nts_mobsam = 0
integer(kind=ip_long), public :: nts_dump = 0
integer(kind=ip_long), public :: nts_samp = 0
integer(kind=ip_long), public :: nts_log = 0
logical, public :: lrevive = .false.

{T, F}. Whether the simulation is restarted.

logical, public :: read_seed = .false.

{T, F}. Whether to initialize the random number generator by reading a seed from a file. If read_seed == T, the seed will be read from a file 'random_seed.txt'

logical, public :: write_seed = .false.

{T, F}. Whether to write the random number generator seed. If write_seed == T the seed will be written to a file named 'random_seed.txt'

logical, public :: write_traj = .false.

Should the trajectory be written to file? {T, F}

character(len=:), public, allocatable :: fn_cfg

Name of the file containing the initial configuration

character(len=:), public, allocatable :: fn_revive

Name of the revive file

character(len=:), public, allocatable :: fn_stats

Name of the statistics file

character(len=:), public, allocatable :: fn_traj

Name of the trajectory file

Type-Bound Procedures

procedure, public :: read => control_read
procedure, public :: write => control_write

Subroutines

public subroutine control_read(this, fn)

Reads simulation control parameters from file

Arguments

Type IntentOptional Attributes Name
class(ctrlpar_t), intent(out) :: this

A ctrlpar_t instance.

character(len=*), intent(in) :: fn

Name of parameters file.

public subroutine control_write(this, fn)

Write simulation parameters to file

Arguments

Type IntentOptional Attributes Name
class(ctrlpar_t), intent(out) :: this

A ctrlpar_t instance.

character(len=*), intent(in) :: fn

Output file name