![]() |
(git:b77b4be)
|
Provides integrator utility routines for the integrators. More...
Data Types | |
interface | damp_v |
type | old_variables_type |
interface | set |
type | tmp_variables_type |
interface | update_pv |
Functions/Subroutines | |
subroutine, public | allocate_old (old, particle_set, npt) |
... | |
subroutine, public | deallocate_old (old) |
... | |
subroutine, public | allocate_tmp (md_env, tmp, nparticle, nshell, shell_adiabatic) |
allocate temporary variables to store positions and velocities used by the velocity-verlet integrator | |
subroutine, public | update_dealloc_tmp (tmp, particle_set, shell_particle_set, core_particle_set, para_env, shell_adiabatic, pos, vel, should_deall_vel) |
update positions and deallocate temporary variable | |
subroutine, public | get_s_ds (tmp, nparticle_kind, atomic_kind_set, local_particles, particle_set, dt, para_env, tmpv) |
... | |
elemental subroutine, public | damp_veps (npt, gamma1, dt) |
provides damping for barostat via nph_uniaxial_damped dynamics | |
subroutine, public | rattle_roll_setup (old, gci, atomic_kind_set, particle_set, local_particles, molecule_kind_set, molecule_set, local_molecules, vel, dt, cell, npt, simpar, virial, vector_v, roll_tol, iroll, infree, first, para_env, u) |
update veps using multiplier obtained from SHAKE | |
subroutine, public | update_veps (box, npt, simpar, pv_kin, kin, virial, infree, virial_components) |
Routine to compute veps. | |
subroutine, public | vv_first (tmp, atomic_kind_set, local_particles, particle_set, core_particle_set, shell_particle_set, nparticle_kind, shell_adiabatic, dt, u, lfixd_list) |
First half of the velocity-verlet algorithm : update velocity by half step and positions by full step. | |
subroutine, public | vv_second (tmp, atomic_kind_set, local_particles, particle_set, core_particle_set, shell_particle_set, nparticle_kind, shell_adiabatic, dt, u) |
Second half of the velocity-verlet algorithm : update velocity by half step using the new forces. | |
subroutine, public | variable_timestep (md_env, tmp, dt, simpar, para_env, atomic_kind_set, local_particles, particle_set, core_particle_set, shell_particle_set, nparticle_kind, shell_adiabatic, npt) |
Compute the timestep rescaling factor. | |
Provides integrator utility routines for the integrators.
subroutine, public integrator_utils::allocate_old | ( | type(old_variables_type), pointer | old, |
type(particle_type), dimension(:), pointer | particle_set, | ||
type(npt_info_type), dimension(:, :), pointer | npt | ||
) |
...
old | ... |
particle_set | ... |
npt | ... |
Definition at line 115 of file integrator_utils.F.
subroutine, public integrator_utils::deallocate_old | ( | type(old_variables_type), pointer | old | ) |
subroutine, public integrator_utils::allocate_tmp | ( | type(md_environment_type), pointer | md_env, |
type(tmp_variables_type), pointer | tmp, | ||
integer, intent(in) | nparticle, | ||
integer, intent(in) | nshell, | ||
logical, intent(in) | shell_adiabatic | ||
) |
allocate temporary variables to store positions and velocities used by the velocity-verlet integrator
md_env | ... |
tmp | ... |
nparticle | ... |
nshell | ... |
shell_adiabatic | ... |
Definition at line 184 of file integrator_utils.F.
subroutine, public integrator_utils::update_dealloc_tmp | ( | type(tmp_variables_type), pointer | tmp, |
type(particle_type), dimension(:), pointer | particle_set, | ||
type(particle_type), dimension(:), pointer | shell_particle_set, | ||
type(particle_type), dimension(:), pointer | core_particle_set, | ||
type(mp_para_env_type), pointer | para_env, | ||
logical, intent(in) | shell_adiabatic, | ||
logical, intent(in), optional | pos, | ||
logical, intent(in), optional | vel, | ||
logical, intent(in), optional | should_deall_vel | ||
) |
update positions and deallocate temporary variable
tmp | ... |
particle_set | ... |
shell_particle_set | ... |
core_particle_set | ... |
para_env | ... |
shell_adiabatic | ... |
pos | ... |
vel | ... |
should_deall_vel | ... |
Definition at line 258 of file integrator_utils.F.
subroutine, public integrator_utils::get_s_ds | ( | type(tmp_variables_type), pointer | tmp, |
integer | nparticle_kind, | ||
type(atomic_kind_type), dimension(:), pointer | atomic_kind_set, | ||
type(distribution_1d_type), pointer | local_particles, | ||
type(particle_type), dimension(:), pointer | particle_set, | ||
real(kind=dp) | dt, | ||
type(mp_para_env_type), pointer | para_env, | ||
logical, intent(in), optional | tmpv | ||
) |
...
tmp | ... |
nparticle_kind | ... |
atomic_kind_set | ... |
local_particles | ... |
particle_set | ... |
dt | ... |
para_env | ... |
tmpv | ... |
Definition at line 328 of file integrator_utils.F.
elemental subroutine, public integrator_utils::damp_veps | ( | type(npt_info_type), intent(inout) | npt, |
real(kind=dp), intent(in) | gamma1, | ||
real(kind=dp), intent(in) | dt | ||
) |
provides damping for barostat via nph_uniaxial_damped dynamics
npt | ... |
gamma1 | ... |
dt | ... |
Definition at line 672 of file integrator_utils.F.
subroutine, public integrator_utils::rattle_roll_setup | ( | type(old_variables_type), pointer | old, |
type(global_constraint_type), pointer | gci, | ||
type(atomic_kind_type), dimension(:), pointer | atomic_kind_set, | ||
type(particle_type), dimension(:), pointer | particle_set, | ||
type(distribution_1d_type), pointer | local_particles, | ||
type(molecule_kind_type), dimension(:), pointer | molecule_kind_set, | ||
type(molecule_type), dimension(:), pointer | molecule_set, | ||
type(distribution_1d_type), pointer | local_molecules, | ||
real(kind=dp), dimension(:, :), intent(inout) | vel, | ||
real(kind=dp), intent(in) | dt, | ||
type(cell_type), pointer | cell, | ||
type(npt_info_type), dimension(:, :), pointer | npt, | ||
type(simpar_type), intent(in) | simpar, | ||
type(virial_type), pointer | virial, | ||
real(kind=dp), dimension(:), intent(in) | vector_v, | ||
real(kind=dp), intent(out) | roll_tol, | ||
integer, intent(inout) | iroll, | ||
real(kind=dp), intent(in) | infree, | ||
logical, intent(inout) | first, | ||
type(mp_para_env_type), intent(in) | para_env, | ||
real(kind=dp), dimension(:, :), intent(in), optional | u | ||
) |
update veps using multiplier obtained from SHAKE
old | ... |
gci | ... |
atomic_kind_set | ... |
particle_set | ... |
local_particles | ... |
molecule_kind_set | ... |
molecule_set | ... |
local_molecules | ... |
vel | ... |
dt | ... |
cell | ... |
npt | ... |
simpar | ... |
virial | ... |
vector_v | ... |
roll_tol | ... |
iroll | ... |
infree | ... |
first | ... |
para_env | ... |
u | ... |
Definition at line 713 of file integrator_utils.F.
subroutine, public integrator_utils::update_veps | ( | type(cell_type), pointer | box, |
type(npt_info_type), dimension(:, :), intent(inout) | npt, | ||
type(simpar_type), intent(in) | simpar, | ||
real(kind=dp), dimension(:, :), intent(in) | pv_kin, | ||
real(kind=dp), intent(in) | kin, | ||
type(virial_type), intent(inout) | virial, | ||
real(kind=dp), intent(in) | infree, | ||
integer, intent(in), optional | virial_components | ||
) |
Routine to compute veps.
box | ... |
npt | ... |
simpar | ... |
pv_kin | ... |
kin | ... |
virial | ... |
infree | ... |
virial_components | ... |
Definition at line 935 of file integrator_utils.F.
subroutine, public integrator_utils::vv_first | ( | type(tmp_variables_type), pointer | tmp, |
type(atomic_kind_type), dimension(:), pointer | atomic_kind_set, | ||
type(distribution_1d_type), pointer | local_particles, | ||
type(particle_type), dimension(:), pointer | particle_set, | ||
type(particle_type), dimension(:), pointer | core_particle_set, | ||
type(particle_type), dimension(:), pointer | shell_particle_set, | ||
integer, intent(in) | nparticle_kind, | ||
logical, intent(in) | shell_adiabatic, | ||
real(kind=dp) | dt, | ||
real(kind=dp), dimension(3, 3), optional | u, | ||
type(local_fixd_constraint_type), dimension(:), optional | lfixd_list | ||
) |
First half of the velocity-verlet algorithm : update velocity by half step and positions by full step.
tmp | ... |
atomic_kind_set | ... |
local_particles | ... |
particle_set | ... |
core_particle_set | ... |
shell_particle_set | ... |
nparticle_kind | ... |
shell_adiabatic | ... |
dt | ... |
u | ... |
lfixd_list | ... |
Definition at line 1125 of file integrator_utils.F.
subroutine, public integrator_utils::vv_second | ( | type(tmp_variables_type), pointer | tmp, |
type(atomic_kind_type), dimension(:), pointer | atomic_kind_set, | ||
type(distribution_1d_type), pointer | local_particles, | ||
type(particle_type), dimension(:), pointer | particle_set, | ||
type(particle_type), dimension(:), pointer | core_particle_set, | ||
type(particle_type), dimension(:), pointer | shell_particle_set, | ||
integer, intent(in) | nparticle_kind, | ||
logical, intent(in) | shell_adiabatic, | ||
real(kind=dp) | dt, | ||
real(kind=dp), dimension(3, 3), optional | u | ||
) |
Second half of the velocity-verlet algorithm : update velocity by half step using the new forces.
tmp | ... |
atomic_kind_set | ... |
local_particles | ... |
particle_set | ... |
core_particle_set | ... |
shell_particle_set | ... |
nparticle_kind | ... |
shell_adiabatic | ... |
dt | ... |
u | ... |
Definition at line 1340 of file integrator_utils.F.
subroutine, public integrator_utils::variable_timestep | ( | type(md_environment_type), pointer | md_env, |
type(tmp_variables_type), pointer | tmp, | ||
real(kind=dp), intent(inout) | dt, | ||
type(simpar_type), pointer | simpar, | ||
type(mp_para_env_type), pointer | para_env, | ||
type(atomic_kind_type), dimension(:), pointer | atomic_kind_set, | ||
type(distribution_1d_type), pointer | local_particles, | ||
type(particle_type), dimension(:), pointer | particle_set, | ||
type(particle_type), dimension(:), pointer | core_particle_set, | ||
type(particle_type), dimension(:), pointer | shell_particle_set, | ||
integer, intent(in) | nparticle_kind, | ||
logical, intent(in) | shell_adiabatic, | ||
type(npt_info_type), dimension(:, :), optional, pointer | npt | ||
) |
Compute the timestep rescaling factor.
md_env | ... |
tmp | ... |
dt | ... |
simpar | ... |
para_env | ... |
atomic_kind_set | ... |
local_particles | ... |
particle_set | ... |
core_particle_set | ... |
shell_particle_set | ... |
nparticle_kind | ... |
shell_adiabatic | ... |
npt | ... |
Definition at line 1556 of file integrator_utils.F.