![]() |
(git:b77b4be)
|
contains the Monte Carlo moves that can handle more than one box, including the Quickstep move, a volume swap between boxes, and a particle swap between boxes More...
Functions/Subroutines | |
subroutine, public | mc_quickstep_move (mc_par, force_env, bias_env, moves, lreject, move_updates, energy_check, r_old, nnstep, old_energy, bias_energy_new, last_bias_energy, nboxes, box_flag, subsys, particles, rng_stream, unit_conv) |
computes the acceptance of a series of biased or unbiased moves (translation, rotation, conformational changes) | |
subroutine, public | mc_ge_swap_move (mc_par, force_env, bias_env, moves, energy_check, r_old, old_energy, input_declaration, para_env, bias_energy_old, last_bias_energy, rng_stream) |
attempts a swap move between two simulation boxes | |
subroutine, public | mc_ge_volume_move (mc_par, force_env, moves, move_updates, nnstep, old_energy, energy_check, r_old, rng_stream) |
performs a Monte Carlo move that alters the volume of the simulation boxes, keeping the total volume of the two boxes the same | |
contains the Monte Carlo moves that can handle more than one box, including the Quickstep move, a volume swap between boxes, and a particle swap between boxes
subroutine, public mc_ge_moves::mc_quickstep_move | ( | type(mc_simulation_parameters_p_type), dimension(:), pointer | mc_par, |
type(force_env_p_type), dimension(:), pointer | force_env, | ||
type(force_env_p_type), dimension(:), pointer | bias_env, | ||
type(mc_moves_p_type), dimension(:, :), pointer | moves, | ||
logical, intent(in) | lreject, | ||
type(mc_moves_p_type), dimension(:, :), pointer | move_updates, | ||
real(kind=dp), dimension(:), intent(inout) | energy_check, | ||
real(kind=dp), dimension(:, :, :), intent(inout) | r_old, | ||
integer, intent(in) | nnstep, | ||
real(kind=dp), dimension(:), intent(inout) | old_energy, | ||
real(kind=dp), dimension(:), intent(inout) | bias_energy_new, | ||
real(kind=dp), dimension(:), intent(inout) | last_bias_energy, | ||
integer, intent(in) | nboxes, | ||
integer, dimension(:), intent(in) | box_flag, | ||
type(cp_subsys_p_type), dimension(:), pointer | subsys, | ||
type(particle_list_p_type), dimension(:), pointer | particles, | ||
type(rng_stream_type), intent(inout) | rng_stream, | ||
real(kind=dp), intent(in) | unit_conv | ||
) |
computes the acceptance of a series of biased or unbiased moves (translation, rotation, conformational changes)
mc_par | the mc parameters for the force envs of the boxes |
force_env | the force environments for the boxes |
bias_env | the force environments with the biasing potential for the boxes |
moves | the structure that keeps track of how many moves have been accepted/rejected for both boxes |
lreject | automatically rejects the move (used when an overlap occurs in the sequence of moves) |
move_updates | the structure that keeps track of how many moves have been accepted/rejected since the last time the displacements were updated for both boxes |
energy_check | the running total of how much the energy has changed since the initial configuration |
r_old | the coordinates of the last accepted move before the sequence whose acceptance is determined by this call |
nnstep | the Monte Carlo step we're on |
old_energy | the energy of the last accepted move involving the full potential |
bias_energy_new | the energy of the current configuration involving the bias potential |
last_bias_energy | ... |
nboxes | the number of boxes (force environments) in the system |
box_flag | indicates if a move has been tried in a given box..if not, we don't recompute the energy |
subsys | the pointers for the particle subsystems of both boxes |
particles | the pointers for the particle sets |
rng_stream | the stream we pull random numbers from |
unit_conv | ... |
Definition at line 100 of file mc_ge_moves.F.
subroutine, public mc_ge_moves::mc_ge_swap_move | ( | type(mc_simulation_parameters_p_type), dimension(:), pointer | mc_par, |
type(force_env_p_type), dimension(:), pointer | force_env, | ||
type(force_env_p_type), dimension(:), pointer | bias_env, | ||
type(mc_moves_p_type), dimension(:, :), pointer | moves, | ||
real(kind=dp), dimension(1:2), intent(inout) | energy_check, | ||
real(kind=dp), dimension(:, :, :), intent(inout) | r_old, | ||
real(kind=dp), dimension(1:2), intent(inout) | old_energy, | ||
type(section_type), pointer | input_declaration, | ||
type(mp_para_env_type), pointer | para_env, | ||
real(kind=dp), dimension(1:2), intent(inout) | bias_energy_old, | ||
real(kind=dp), dimension(1:2), intent(inout) | last_bias_energy, | ||
type(rng_stream_type), intent(inout) | rng_stream | ||
) |
attempts a swap move between two simulation boxes
mc_par | the mc parameters for the force envs of the boxes |
force_env | the force environments for the boxes |
bias_env | the force environments used to bias moves for the boxes |
moves | the structure that keeps track of how many moves have been accepted/rejected for both boxes |
energy_check | the running total of how much the energy has changed since the initial configuration |
r_old | the coordinates of the last accepted move involving a full potential calculation for both boxes |
old_energy | the energy of the last accepted move involving a a full potential calculation |
input_declaration | ... |
para_env | the parallel environment for this simulation |
bias_energy_old | the energies of both boxes computed using the biasing potential |
last_bias_energy | the energy for the biased simulations |
rng_stream | the stream we pull random numbers from |
Definition at line 424 of file mc_ge_moves.F.
subroutine, public mc_ge_moves::mc_ge_volume_move | ( | type(mc_simulation_parameters_p_type), dimension(:), pointer | mc_par, |
type(force_env_p_type), dimension(:), pointer | force_env, | ||
type(mc_moves_p_type), dimension(:, :), pointer | moves, | ||
type(mc_moves_p_type), dimension(:, :), pointer | move_updates, | ||
integer, intent(in) | nnstep, | ||
real(kind=dp), dimension(:), intent(inout) | old_energy, | ||
real(kind=dp), dimension(:), intent(inout) | energy_check, | ||
real(kind=dp), dimension(:, :, :), intent(inout) | r_old, | ||
type(rng_stream_type), intent(inout) | rng_stream | ||
) |
performs a Monte Carlo move that alters the volume of the simulation boxes, keeping the total volume of the two boxes the same
mc_par | the mc parameters for the force env |
force_env | the force environments used in the move |
moves | the structure that keeps track of how many moves have been accepted/rejected |
move_updates | the structure that keeps track of how many moves have been accepted/rejected since the last time the displacements were updated |
nnstep | the total number of Monte Carlo moves already performed |
old_energy | the energy of the last accepted move involving an unbiased potential calculation |
energy_check | the running total of how much the energy has changed since the initial configuration |
r_old | the coordinates of the last accepted move involving a Quickstep calculation |
rng_stream | the stream we pull random numbers from |
Definition at line 1132 of file mc_ge_moves.F.