Documentation for module mc_control

contains some general routines for dealing with the restart files and creating force_env for MC use

source: mc_control.F
Loading...

public Subroutines/Functions:

essentially copies the cell size and coordinates of one force env to another that we will use to bias some moves with
creates a force environment for any of the different kinds of MC simulations we can do (FIST, QS)
reads the input coordinates of the simulation from a file written above
writes the coordinates of the current step to a file that can be read in at the start of the next simulation

SUBROUTINEmc_create_bias_force_env(bias_env, r, atom_symbols, nunits_tot, para_env, box_length, nchains, input_declaration, mc_input_file, ionode)

essentially copies the cell size and coordinates of one force env to another that we will use to bias some moves with

Arguments:
POINTER
:: bias_env the force environment to create
REAL(dp),
INTENT(inout)
:: r(:,:) ...
INTENT(in)
:: atom_symbols(:) ...
INTEGER,
INTENT(in)
:: nunits_tot ...
POINTER
:: para_env ...
REAL(dp),
INTENT(in)
:: box_length(1:3) ...
INTEGER,
POINTER
:: nchains(:) ...
POINTER
:: input_declaration ...
POINTER
:: mc_input_file ...
LOGICAL,
INTENT(in)
:: ionode ...

SUBROUTINEmc_create_force_env(force_env, input_declaration, para_env, input_file_name, globenv_new)

creates a force environment for any of the different kinds of MC simulations we can do (FIST, QS)

Arguments:
POINTER
:: force_env the force environment to create
POINTER
:: input_declaration ...
POINTER
:: para_env ...
CHARACTER(*),
INTENT(in)
:: input_file_name ...
OPTIONAL, POINTER
:: globenv_new the global environment parameters

SUBROUTINEread_mc_restart(mc_par, force_env, iw, mc_nunits_tot, rng_stream)

reads the input coordinates of the simulation from a file written above

Arguments:
POINTER
:: mc_par the mc parameters for the force env
POINTER
:: force_env the force environment to write the coords from
INTEGER,
INTENT(in)
:: iw the unit to write an error message to, in case current simulation parameters don't match what's in the restart file
INTEGER,
INTENT(inout)
:: mc_nunits_tot ...
POINTER
:: rng_stream the stream we pull random numbers from

SUBROUTINEwrite_mc_restart(nnstep, mc_par, nchains, force_env)

writes the coordinates of the current step to a file that can be read in at the start of the next simulation

Arguments:
INTEGER,
INTENT(in)
:: nnstep how many steps the simulation has run
POINTER
:: mc_par the mc parameters for the force env
INTEGER,
INTENT(in)
:: nchains(:) ...
POINTER
:: force_env the force environment to write the coords from