![]()  | 
  
     (git:298f7c4)
    
   | 
 
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.