pysimm.forcefield.charmm

Module Contents

Classes

Charmm

pysimm.forcefield.Charmm

Functions

__parse_charmm__()

Private method to read/convert CHARMM specific FF parameters from the form of GROMACS input format (.atp, .itp)

__detect_rings__(particle, orders)

Private method for analysing whether a given particle is a part of a ring structure

class pysimm.forcefield.charmm.Charmm(db_file=None)[source]

Bases: pysimm.forcefield.forcefield.Forcefield

pysimm.forcefield.Charmm

Forcefield object with typing rules for CHARMM model. By default reads data file in forcefields subdirectory.

ff_name

charmm

pair_style

lj/charmm

ff_class

1

assign_ptypes(self, s)[source]

pysimm.forcefield.Charmm.assign_ptypes

Charmm specific particle typing rules. Requires System object Particle objects have bonds defined. * use System.add_particle_bonding() to ensure this *

* Not entirely inclusive - some atom types not used *

Parameters

sSystem

Returns

None

assign_extra_ljtypes(self, s)[source]

pysimm.forcefield.Charmm.assign_extra_ljtypes

Addition to normal force field setup: filling up the non-diagonal interaction pair coefficients (coefficients for interaction of particles of different type).

Assumes that all ParticleType are defined for all particles in s

Parameters

sSystem

Returns

None

assign_btypes(self, s)[source]

pysimm.forcefield.Charmm.assign_btypes

Gaff specific bond typing rules. Requires System object Particle objects have bonds, type and type.name defined. * use after assign_ptypes *

Parameters

sSystem

Returns

None

assign_atypes(self, s)[source]

pysimm.forcefield.Charmm.assign_atypes

Gaff specific boanglend typing rules. Requires System object Particle objects have bonds, type and type.name defined. * use after assign_ptypes *

Parameters

sSystem

Returns

None

assign_dtypes(self, s)[source]

pysimm.forcefield.Charmm.assign_dtypes

CHARMM specific dihedral typing rules. Requires System object Particle objects have bonds, type and type.name defined. * use after assign_ptypes *

Parameters

sSystem

Returns

None

assign_itypes(self, s)[source]

pysimm.forcefield.Charmm.assign_itypes

Gaff specific improper typing rules. There are none.

Parameters

sSystem

Returns

None

assign_charges(self, s, charges='gasteiger')[source]

pysimm.forcefield.Charmm.assign_charges

Charge assignment. Gasteiger is default for now.

Parameters
  • sSystem

  • charges – gasteiger

Returns

None

__parse_add_file__(self, file)[source]

Private method to read/convert CHARMM specific FF parameters from the native format (.prm) to add on top of currentely existing library of FF parameters. Will update this ForceField object with data from the file and will write the output ‘charmm_mod.json’ DB file

Parameters

file – (string) full (absolute or relative) path to an .prm file

Returns

none

pysimm.forcefield.charmm.__parse_charmm__()[source]

Private method to read/convert CHARMM specific FF parameters from the form of GROMACS input format (.atp, .itp) to the PySIMM input format (.json).

Note: Because of the format specification, there are no sigma_{14} or epsilon_{14} parameters in the file as well as explicit non-diagonal LJ parameters (NBFIXes). They are read from a different file types (see charmm.__parse_add_file__())

Returns

None

pysimm.forcefield.charmm.__detect_rings__(particle, orders)[source]

Private method for analysing whether a given particle is a part of a ring structure

Parameters
  • particleParticle reference

  • orders – list of integers defining size of the rings which should be checked

Returns

list of integers subset of orders which defines the sizes of the rings that contain particle; returns 0 if no cyclic structures of size orders are detected