This module contains routines to evaluate bond potentials and their derivative.
The following styles are available:
Sets up parameters for bond potentials
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | num_bond_types | Number of bond types |
||
integer, | intent(in), | dimension(:) | :: | bond_styles | Styles for each type |
|
real(kind=rp), | intent(inout), | dimension(:,:) | :: | bond_params | Parameters for each type, depending on style |
Calculates the energy & its derivative due to a bond.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rp), | intent(in) | :: | rij_mag | Distance between bonded atoms |
||
integer, | intent(in) | :: | sty | Style of the bond |
||
real(kind=rp), | intent(in), | dimension(:) | :: | params | Parameters for bonded interaction |
|
real(kind=rp), | intent(out) | :: | enrg | Bond energy |
||
real(kind=rp), | intent(out) | :: | frc | Derivative of the potential. This is the magnitude of the force due to this potential. |
||
integer, | intent(out) | :: | ierr | Error flag |
Setter for harmonic bond interaction.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rp), | intent(inout), | dimension(:) | :: | params | ||
real(kind=rp), | intent(in), | optional | :: | k | ||
real(kind=rp), | intent(in), | optional | :: | r0 |
Calculates energy & its derivative for harmonic bond. See bond_harm_set.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rp), | intent(in) | :: | r | |||
real(kind=rp), | intent(in), | dimension(:) | :: | params | ||
real(kind=rp), | intent(out) | :: | enrg | |||
real(kind=rp), | intent(out) | :: | frc |
Setter for FENE bond.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rp), | intent(inout), | dimension(:) | :: | params | ||
real(kind=rp), | intent(in), | optional | :: | k | ||
real(kind=rp), | intent(in), | optional | :: | rmax | ||
real(kind=rp), | intent(in), | optional | :: | r0 |
Calculates energy & its derivative for FENE bond. See bond_fene_set.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rp), | intent(in) | :: | r | |||
real(kind=rp), | intent(in), | dimension(:) | :: | params | ||
real(kind=rp), | intent(out) | :: | enrg | |||
real(kind=rp), | intent(out) | :: | frc | |||
integer, | intent(out) | :: | ierr |
Setter for FENE bond interaction.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rp), | intent(inout), | dimension(:) | :: | params | ||
real(kind=rp), | intent(in), | optional | :: | k | ||
real(kind=rp), | intent(in), | optional | :: | rmax | ||
real(kind=rp), | intent(in), | optional | :: | eps | ||
real(kind=rp), | intent(in), | optional | :: | sigma |
Calculates energy & its derivative for Kremer-Grest bond. See bond_kg_set.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rp), | intent(in) | :: | r | |||
real(kind=rp), | intent(in), | dimension(:) | :: | params | ||
real(kind=rp), | intent(out) | :: | enrg | |||
real(kind=rp), | intent(out) | :: | frc | |||
integer, | intent(out) | :: | ierr |
Setter for Marko-Siggia bond.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rp), | intent(inout), | dimension(:) | :: | params | ||
real(kind=rp), | intent(in), | optional | :: | lp | ||
real(kind=rp), | intent(in), | optional | :: | rmax |
Evaluates the potential & its derivative for Marko-Siggia bond. See bond_ms_set.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rp), | intent(in) | :: | r | |||
real(kind=rp), | intent(in), | dimension(:) | :: | params | ||
real(kind=rp), | intent(out) | :: | enrg | |||
real(kind=rp), | intent(out) | :: | frc | |||
integer, | intent(out) | :: | ierr |