Dynamics#

Molecular dynamics based upon Newton’s classical equations of motion.

Note

As of version 2.0 it is recommended to use integrations with LAMMPS or ASE for more efficient MD.

Configuration#

[Dynamics]
pydantic model eon.schema.DynamicsConfig[source]#

Show JSON schema
{
   "title": "DynamicsConfig",
   "type": "object",
   "properties": {
      "time_step": {
         "default": 1.0,
         "description": "The duration of each MD step, in femtoseconds.",
         "title": "Time Step",
         "type": "number"
      },
      "time": {
         "default": 1000.0,
         "description": "Total MD time, in femtoseconds.",
         "title": "Time",
         "type": "number"
      },
      "thermostat": {
         "default": "none",
         "description": "Thermostat to use for the dynamics simulation.",
         "enum": [
            "none",
            "andersen",
            "langevin",
            "nose_hoover"
         ],
         "title": "Thermostat",
         "type": "string"
      },
      "andersen_collision_period": {
         "default": 100.0,
         "description": "The collision period (in fs) for the Andersen thermostat.",
         "title": "Andersen Collision Period",
         "type": "number"
      },
      "andersen_alpha": {
         "default": 1.0,
         "description": "The collision strength in the Andersen thermostat.",
         "title": "Andersen Alpha",
         "type": "number"
      },
      "nose_mass": {
         "default": 1.0,
         "description": "The effective mass of the additional degree of freedom in the Nos\u00e9-Hoover thermostat, which determines the coupling frequency of the thermostat.",
         "title": "Nose Mass",
         "type": "number"
      },
      "langevin_friction": {
         "default": 0.01,
         "description": "The damping coefficient for Langevin dynamics (1/fs).",
         "title": "Langevin Friction",
         "type": "number"
      }
   }
}

Config:
  • use_attribute_docstrings: bool = True

Fields:
field andersen_alpha: float = 1.0#

The collision strength in the Andersen thermostat.

field andersen_collision_period: float = 100.0#

The collision period (in fs) for the Andersen thermostat.

field langevin_friction: float = 0.01#

The damping coefficient for Langevin dynamics (1/fs).

field nose_mass: float = 1.0#

The effective mass of the additional degree of freedom in the Nosé-Hoover thermostat, which determines the coupling frequency of the thermostat.

field thermostat: Literal['none', 'andersen', 'langevin', 'nose_hoover'] = 'none'#

Options: - none: NVE dynamics with the verlet algorithm. Initial velocities set by temperature. - andersen: Andersen thermostat with the Verlet algorithm. - langevin: Langevin thermostat with the Verlet algorithm. - nose_hoover: Nosé-Hoover thermostat with the Verlet algorithm.

Thermostat to use for the dynamics simulation.

field time: float = 1000.0#

Total MD time, in femtoseconds.

field time_step: float = 1.0#

The duration of each MD step, in femtoseconds.