Solvate module

SolvateTask

class esteem.tasks.solvate.SolvateTask(**kwargs)[source]
setup_amber()[source]

Handles setup of the solvated model using AmberTools.

The setup has 5 main sections:

  1. Counterions are set up
  2. Amber input files for the solute molecule are created
  3. Amber input files for the solvent molecule are created
  4. A box of solvent is added to the solute, and counterions added
  5. Restraints are calculated for the counterions

args: namespace or class

Input variables to the routine - see listing under Command-Line usage for details

Generate with a call to solvate.make_parser()

wrapper: class
Wrapper to run calculations of this task
setup_lammps()[source]

Handles setup of the solvated model for a LAMMPS calculation (also uses AmberTools)

args: namespace or class
input variables to the routine - see listing under Command-Line usage for details
run()[source]

Handles running of MD on a solvated model using an MD Wrapper (currently Amber or LAMMPS).

There are five phases to the task:

Setup, Heating, Density Equilibration, Equilibration and Snapshot Generation

Constraints are turned on and off as appropriate in different phases:

SHAKE constraints on -H during heating and density equil, no constraints on -H during equil and snapshots

Counterions are restrained from coming too close to the solute

args: namespace or class
Argument list for the whole job, with members including:
wrapper: namespace or class

Wrapper for running components of the job, with members including:

singlepoint, minimise, heatup, densityeq, equil and snapshots

Outputs:

A trajectory file, named ‘{solute}_{solvent}_{md_suffix}/{solute}_{solvent}_solv.traj’ which contains self.nsnaps geometries of the solvated box, each spaced by self.nsteps steps of self.timestep units of time (wrapper-dependent).

An example for catechol in water with the default md_suffix

Task Arguments

usage: __main__.py [-h] [--solute SOLUTE] [--solvent SOLVENT]
                   [--boxsize BOXSIZE] [--timestep TIMESTEP] [--temp TEMP]
                   [--nheat NHEAT] [--ndens NDENS] [--nequil NEQUIL]
                   [--nsteps NSTEPS] [--nsnaps NSNAPS]
                   [--restraints RESTRAINTS RESTRAINTS RESTRAINTS RESTRAINTS]
                   [--rest_r REST_R REST_R REST_R REST_R REST_R REST_R]
                   [--counterions COUNTERIONS] [--ewaldcut EWALDCUT]
                   [--gammaln GAMMALN] [--use_acpype USE_ACPYPE]

Named Arguments

--solute, -u Name of solute molecule
--solvent, -v Name of solvent molecule
--boxsize, -b

Size of simulation box for MD calculation

Default: 20

--timestep, -t

Time step of Molecular Dynamics runs

Default: 0.002

--temp, -T

Thermostat temperature for Molecular Dynamics runs

Default: 300.0

--nheat, -H

Number of MD steps in Heating phase

Default: 10000

--ndens, -D

Number of MD steps in Density Equilibration phase

Default: 50000

--nequil, -E

Number of MD steps in Equilibration phase

Default: 50000

--nsteps, -S

Number of MD steps between each snapshot in Snapshots phase

Default: 2000

--nsnaps, -N

Number of Snapshots to save to trajectory

Default: 200

--restraints, -R
 Specifies restraint atoms
--rest_r, -r Specifies parameters for restraint
--counterions, -C
 

Counterion(s) to add, eg Na

Default: {}

--ewaldcut, -e

Cutoff length for Ewald calculation (See Amber manual)

Default: 12.0

--gammaln, -g

Thermostat parameter: Collision frequency in ps^-1

Default: 1.0

--use_acpype, -P
 

Use ACPYPE

Default: False

Note: Writes the output trajectory in the format <solute>_<solvent>_solv.traj

Standalone module routines

Sets up and runs solvated Molecular Dynamics in Explicit Solvent

esteem.tasks.solvate.counterion_charge(counterions)[source]

Calculate the net charge on the solute, given a set of counterions