|
RMPCDMD
|
Routines to perform Molecular Dynamics integration. More...
Data Types | |
| type | rigid_body_t |
| Container for rigid body colloid. More... | |
Functions/Subroutines | |
| subroutine, public | md_pos (particles, dt) |
| subroutine, public | cell_md_pos (cells, particles, dt, md_flag) |
| subroutine, public | cell_md_pos_ywall (cells, particles, dt, md_flag) |
| subroutine, public | cell_md_pos_zwall (cells, particles, dt, md_flag) |
| subroutine, public | apply_pbc (particles, edges) |
| subroutine, public | md_vel (particles, dt) |
| subroutine, public | cell_md_vel (cells, particles, dt, md_flag) |
| subroutine, public | rattle_dimer_pos (p, d, dt, edges) |
| subroutine, public | rattle_dimer_vel (p, d, dt, edges) |
| subroutine, public | rattle_body_pos (p, links, distances, dt, edges, precision) |
| subroutine, public | rattle_body_vel (p, links, distances, dt, edges, precision) |
| double precision function, public | lj93_zwall (particles, edges, lj_params) |
| double precision function, public | elastic_network (p, links, distances, k, edges) |
| subroutine | rigid_body_init (this, ps, i_start, i_stop, edges) |
| subroutine | rigid_body_compute_force_torque (this, ps) |
| subroutine | rigid_body_vv1 (this, ps, dt, treshold, edges) |
| Perform first velocity-Verlet step for quaternion dynamics. More... | |
| subroutine | rigid_body_vv2 (this, ps, dt) |
| Perform second velocity-Verlet step for quaternion dynamics. More... | |
Routines to perform Molecular Dynamics integration.
This module contains routines to perform velocity Verlet integration, Rattle for a dimer and for other rigid bodies, and quaternion-based rotational velocity Verlet.
Routines to compute colloid-wall (with Lennard-Jones 9-3) and elastic network interactions.
| subroutine, public md::apply_pbc | ( | type(particle_system_t), intent(inout) | particles, |
| double precision, dimension(3), intent(in) | edges | ||
| ) |
| subroutine, public md::cell_md_pos | ( | type(cell_system_t), intent(inout) | cells, |
| type(particle_system_t), intent(inout) | particles, | ||
| double precision, intent(in) | dt, | ||
| logical, intent(in) | md_flag | ||
| ) |
| subroutine, public md::cell_md_pos_ywall | ( | type(cell_system_t), intent(inout) | cells, |
| type(particle_system_t), intent(inout) | particles, | ||
| double precision, intent(in) | dt, | ||
| logical, intent(in) | md_flag | ||
| ) |
| subroutine, public md::cell_md_pos_zwall | ( | type(cell_system_t), intent(inout) | cells, |
| type(particle_system_t), intent(inout) | particles, | ||
| double precision, intent(in) | dt, | ||
| logical, intent(in) | md_flag | ||
| ) |
| subroutine, public md::cell_md_vel | ( | type(cell_system_t), intent(in) | cells, |
| type(particle_system_t), intent(inout) | particles, | ||
| double precision, intent(in) | dt, | ||
| logical, intent(in) | md_flag | ||
| ) |
| double precision function, public md::elastic_network | ( | type(particle_system_t), intent(inout) | p, |
| integer, dimension(:,:), intent(in) | links, | ||
| double precision, dimension(:), intent(in) | distances, | ||
| double precision, intent(in) | k, | ||
| double precision, dimension(3), intent(in) | edges | ||
| ) |
| double precision function, public md::lj93_zwall | ( | type(particle_system_t), intent(inout) | particles, |
| double precision, dimension(3), intent(in) | edges, | ||
| type(lj_params_t), intent(in) | lj_params | ||
| ) |
| subroutine, public md::md_pos | ( | type(particle_system_t), intent(inout) | particles, |
| double precision, intent(in) | dt | ||
| ) |
| subroutine, public md::md_vel | ( | type(particle_system_t), intent(inout) | particles, |
| double precision, intent(in) | dt | ||
| ) |
| subroutine, public md::rattle_body_pos | ( | type(particle_system_t), intent(inout) | p, |
| integer, dimension(:,:), intent(in) | links, | ||
| double precision, dimension(:), intent(in) | distances, | ||
| double precision, intent(in) | dt, | ||
| double precision, dimension(3), intent(in) | edges, | ||
| double precision, intent(in) | precision | ||
| ) |
| subroutine, public md::rattle_body_vel | ( | type(particle_system_t), intent(inout) | p, |
| integer, dimension(:,:), intent(in) | links, | ||
| double precision, dimension(:), intent(in) | distances, | ||
| double precision, intent(in) | dt, | ||
| double precision, dimension(3), intent(in) | edges, | ||
| double precision, intent(in) | precision | ||
| ) |
| subroutine, public md::rattle_dimer_pos | ( | type(particle_system_t), intent(inout) | p, |
| double precision, intent(in) | d, | ||
| double precision, intent(in) | dt, | ||
| double precision, dimension(3), intent(in) | edges | ||
| ) |
| subroutine, public md::rattle_dimer_vel | ( | type(particle_system_t), intent(inout) | p, |
| double precision, intent(in) | d, | ||
| double precision, intent(in) | dt, | ||
| double precision, dimension(3), intent(in) | edges | ||
| ) |
|
private |
|
private |
|
private |
Perform first velocity-Verlet step for quaternion dynamics.
The algorithm is described in [5]
User manual: algorithms/quaternions
|
private |
Perform second velocity-Verlet step for quaternion dynamics.
The algorithm is described in [5]
User manual: algorithms/quaternions
1.8.13