Potential_Energy is the module concerned with the calculation of the potential energy and its coordinate derivatives.
This module is discussed in chapters 4 and 5 of the book A Practical Introduction to the Simulation of Molecular Systems.
Module | Variables |
---|---|
DEFINITIONS | DP |
IO_UNITS | OUTPUT |
STATUS | ERROR |
ATOMS | ATMCRD, ATMFIX, NATOMS, NATOMSMM, NATOMSQM, NFIXED, NFREE |
CONSTRAINT | ENERGY_CONSTRAINT |
ENERGY_COVALENT | ENERGY_ANGLE, ENERGY_BOND, ENERGY_DIHEDRAL, ENERGY_IMPROPER |
ENERGY_NON_BONDING | ENERGY_NON_BONDING_CALCULATE |
MOPAC_ENERGY | ENERGY_MOPAC |
There are fourteen public variables in this module.
Variable | Type | Purpose |
---|---|---|
EANGLE | Real | The MM angle energy. |
EBOND | Real | The MM bond energy. |
EDIHEDRAL | Real | The MM dihedral energy. |
EELECT | Real | The MM electrostatic energy. |
EIMPROPER | Real | The MM improper dihedral energy. |
ELJ | Real | The MM/MM and QM/MM Lennard-Jones energy. |
ECONSTRAINT | Real | The constraint energy. |
EPI | Real | The path integral energy. |
EQM | Real | The QM and QM/MM electrostatic energy. |
ETOTAL | Real | The total potential energy. |
GRMS | Real | The RMS gradient. |
VIRIAL | Real | The internal virial multiplied by -3. |
ATMDER | Real(1:3,1:NATOMS) | The first derivatives. |
ATMDER | Real(1:(3*NFREE*(3*NFREE+1))/2) | The second derivative matrix in upper triangular packed format. |
There are five public subroutines in this module.
Subroutine | Purpose |
---|---|
ENERGY | Calculate the potential energy of a system. |
GRADIENT | Calculate the potential energy of a system and its first derivatives. |
HESSIAN | Calculate the potential energy of a system and its first and second derivatives. |
ENERGY_INITIALIZE | Initialize the POTENTIAL_ENERGY scalars and deallocate the arrays ATMDER and ATMHES. |
ENERGY_PRINT | Print the potential energy and its various components. |
Argument | Type | Intent | Optional | Purpose |
---|---|---|---|---|
Logical | In | Yes | A print flag. |
Argument | Type | Intent | Optional | Purpose |
---|---|---|---|---|
Logical | In | Yes | A print flag. |
Argument | Type | Intent | Optional | Purpose |
---|---|---|---|---|
Logical | In | Yes | A print flag. |
This subroutine has no arguments.
This subroutine has no arguments.
Stable.