intermol.gromacs.gromacs_parser module

class intermol.gromacs.gromacs_parser.GromacsParser(top_file, gro_file, system=None, include_dir=None, defines=None)[source]

Bases: object

A class containing methods required to read in a Gromacs(4.5.4) Topology File

class TopMoleculeType[source]

Bases: object

Inner class to store information about a molecule type.

GromacsParser.canonical_angle(params, angle, direction='into')[source]
Parameters:
  • params
  • angle
  • direction

Returns:

GromacsParser.canonical_bond(params, bond, direction='into')[source]
Parameters:
  • params
  • bond
  • direction

Returns:

GromacsParser.canonical_dihedral(params, dihedral, direction='into')[source]

We can fit everything into two types of dihedrals - dihedral_trig, and improper harmonic. Dihedral trig is of the form

fc0 + sum_i=1^6 fci (cos(nx-phi)

Proper dihedrals can be stored easily in this form, since they have only 1 n. Improper dihedrals can as well (flag as improper). RB can be stored as well, assuming phi = 0 or 180. Fourier can also be stored. A full dihedral trig can be decomposed into multiple proper dihedrals.

Will need to handle multiple dihedrals little differently in that we will need to add multiple 9 dihedrals together into a single dihedral_trig, as long as they have the same phi angle (seems to be always the case).

Parameters:
  • params
  • dihedral
  • direction

Returns:

GromacsParser.choose_parameter_kwds_from_forces(entries, n_atoms, force_type, gromacs_force)[source]

Extract a force’s parameters into a keyword dictionary.

Parameters:
  • entries (str) – The split() line being parsed.
  • n_atoms (int) – The number of atoms in the force.
  • force_type – The type of the force.
  • gromacs_force – The
Returns:

kwds – The force’s parameters, e.g.

{‘length’: Quantity(value=0.13, unit=nanometers),

‘k’: ...

}

Return type:

dict

GromacsParser.create_angle(angle)[source]
GromacsParser.create_atom(temp_atom)[source]
GromacsParser.create_bond(bond)[source]
GromacsParser.create_dihedral(dihedral)[source]

Create a dihedral object based on a [ dihedrals ] entry.

GromacsParser.create_exclusion(exclusion)[source]
GromacsParser.create_kwds_from_entries(entries, force_class, offset=0)[source]
GromacsParser.create_molecule(top_moltype, mol_name)[source]
GromacsParser.create_moleculetype(top_moltype, mol_name, mol_count)[source]
GromacsParser.create_pair(pair)[source]

Create a pair force object based on a [ pairs ] entry

GromacsParser.create_settle(settle)[source]
GromacsParser.directive_before_moleculetype()[source]
GromacsParser.find_dihedraltype(bondingtypes, improper)[source]

Determine the type of dihedral interaction between four atoms.

GromacsParser.find_forcetype(bondingtypes, types_of_kind)[source]
GromacsParser.get_parameter_kwds_from_force(force)[source]
GromacsParser.get_parameter_list_from_force(force)[source]
GromacsParser.gromacs_angle_types = {'1': <class 'intermol.forces.harmonic_angle_type.HarmonicAngleType'>, '3': <class 'intermol.forces.cross_bond_bond_angle_type.CrossBondBondAngleType'>, '2': <class 'intermol.forces.cosine_squared_angle_type.CosineSquaredAngleType'>, '5': <class 'intermol.forces.urey_bradley_angle_type.UreyBradleyAngleType'>, '4': <class 'intermol.forces.cross_bond_angle_angle_type.CrossBondAngleAngleType'>, '6': <class 'intermol.forces.quartic_angle_type.QuarticAngleType'>}
GromacsParser.gromacs_angles = {'1': <class 'intermol.forces.harmonic_angle_type.HarmonicAngle'>, '3': <class 'intermol.forces.cross_bond_bond_angle_type.CrossBondBondAngle'>, '2': <class 'intermol.forces.cosine_squared_angle_type.CosineSquaredAngle'>, '5': <class 'intermol.forces.urey_bradley_angle_type.UreyBradleyAngle'>, '4': <class 'intermol.forces.cross_bond_angle_angle_type.CrossBondAngleAngle'>, '6': <class 'intermol.forces.quartic_angle_type.QuarticAngle'>}
GromacsParser.gromacs_bond_types = {'1': <class 'intermol.forces.harmonic_bond_type.HarmonicBondType'>, '3': <class 'intermol.forces.morse_bond_type.MorseBondType'>, '2': <class 'intermol.forces.g96_bond_type.G96BondType'>, '5': <class 'intermol.forces.connection_bond_type.ConnectionBondType'>, '4': <class 'intermol.forces.cubic_bond_type.CubicBondType'>, '7': <class 'intermol.forces.fene_bond_type.FeneBondType'>, '6': <class 'intermol.forces.harmonic_potential_bond_type.HarmonicPotentialBondType'>}
GromacsParser.gromacs_bonds = {'1': <class 'intermol.forces.harmonic_bond_type.HarmonicBond'>, '3': <class 'intermol.forces.morse_bond_type.MorseBond'>, '2': <class 'intermol.forces.g96_bond_type.G96Bond'>, '5': <class 'intermol.forces.connection_bond_type.ConnectionBond'>, '4': <class 'intermol.forces.cubic_bond_type.CubicBond'>, '7': <class 'intermol.forces.fene_bond_type.FeneBond'>, '6': <class 'intermol.forces.harmonic_potential_bond_type.HarmonicPotentialBond'>}
GromacsParser.gromacs_combination_rules = {'1': 'Multiply-C6C12', '3': 'Multiply-Sigeps', '2': 'Lorentz-Berthelot'}
GromacsParser.gromacs_dihedral_types = {'Trig': <class 'intermol.forces.trig_dihedral_type.TrigDihedralType'>, '1': <class 'intermol.forces.proper_periodic_dihedral_type.ProperPeriodicDihedralType'>, '3': <class 'intermol.forces.rb_dihedral_type.RbDihedralType'>, '2': <class 'intermol.forces.improper_harmonic_dihedral_type.ImproperHarmonicDihedralType'>, '5': <class 'intermol.forces.fourier_dihedral_type.FourierDihedralType'>, '4': <class 'intermol.forces.proper_periodic_dihedral_type.ProperPeriodicDihedralType'>, '9': <class 'intermol.forces.proper_periodic_dihedral_type.ProperPeriodicDihedralType'>}
GromacsParser.gromacs_dihedrals = {'Trig': <class 'intermol.forces.trig_dihedral_type.TrigDihedral'>, '1': <class 'intermol.forces.proper_periodic_dihedral_type.ProperPeriodicDihedral'>, '3': <class 'intermol.forces.rb_dihedral_type.RbDihedral'>, '2': <class 'intermol.forces.improper_harmonic_dihedral_type.ImproperHarmonicDihedral'>, '5': <class 'intermol.forces.fourier_dihedral_type.FourierDihedral'>, '4': <class 'intermol.forces.proper_periodic_dihedral_type.ProperPeriodicDihedral'>, '9': <class 'intermol.forces.proper_periodic_dihedral_type.ProperPeriodicDihedral'>}
GromacsParser.gromacs_pair_types = {'1A': <class 'intermol.forces.lj_c_pair_type.LjCPairType'>, '1C': <class 'intermol.forces.lj_default_pair_type.LjDefaultPairType'>, '1B': <class 'intermol.forces.lj_sigeps_pair_type.LjSigepsPairType'>, '2A': <class 'intermol.forces.ljq_c_pair_type.LjqCPairType'>, '2B': <class 'intermol.forces.ljq_sigeps_pair_type.LjqSigepsPairType'>, '2C': <class 'intermol.forces.ljq_default_pair_type.LjqDefaultPairType'>}
GromacsParser.gromacs_pairs = {'1A': <class 'intermol.forces.lj_c_pair_type.LjCPair'>, '1C': <class 'intermol.forces.lj_default_pair_type.LjDefaultPair'>, '1B': <class 'intermol.forces.lj_sigeps_pair_type.LjSigepsPair'>, '2A': <class 'intermol.forces.ljq_c_pair_type.LjqCPair'>, '2B': <class 'intermol.forces.ljq_sigeps_pair_type.LjqSigepsPair'>, '2C': <class 'intermol.forces.ljq_default_pair_type.LjqDefaultPair'>}
GromacsParser.invalid_line(line)[source]
GromacsParser.lookup_atom_atomtype(index, state=0)[source]
GromacsParser.lookup_atom_bondingtype(index)[source]
GromacsParser.lookup_gromacs_angles = {<class 'intermol.forces.cosine_squared_angle_type.CosineSquaredAngle'>: '2', <class 'intermol.forces.cross_bond_angle_angle_type.CrossBondAngleAngle'>: '4', <class 'intermol.forces.quartic_angle_type.QuarticAngle'>: '6', <class 'intermol.forces.harmonic_angle_type.HarmonicAngle'>: '1', <class 'intermol.forces.cross_bond_bond_angle_type.CrossBondBondAngle'>: '3', <class 'intermol.forces.urey_bradley_angle_type.UreyBradleyAngle'>: '5'}
GromacsParser.lookup_gromacs_bonds = {<class 'intermol.forces.fene_bond_type.FeneBond'>: '7', <class 'intermol.forces.harmonic_potential_bond_type.HarmonicPotentialBond'>: '6', <class 'intermol.forces.g96_bond_type.G96Bond'>: '2', <class 'intermol.forces.harmonic_bond_type.HarmonicBond'>: '1', <class 'intermol.forces.cubic_bond_type.CubicBond'>: '4', <class 'intermol.forces.connection_bond_type.ConnectionBond'>: '5', <class 'intermol.forces.morse_bond_type.MorseBond'>: '3'}
GromacsParser.lookup_gromacs_combination_rules = {'Multiply-Sigeps': '3', 'Lorentz-Berthelot': '2', 'Multiply-C6C12': '1'}
GromacsParser.lookup_gromacs_dihedrals = {<class 'intermol.forces.rb_dihedral_type.RbDihedral'>: '3', <class 'intermol.forces.fourier_dihedral_type.FourierDihedral'>: '5', <class 'intermol.forces.trig_dihedral_type.TrigDihedral'>: 'Trig', <class 'intermol.forces.improper_harmonic_dihedral_type.ImproperHarmonicDihedral'>: '2'}
GromacsParser.lookup_gromacs_pairs = {<class 'intermol.forces.ljq_default_pair_type.LjqDefaultPair'>: '2C', <class 'intermol.forces.lj_c_pair_type.LjCPair'>: '1A', <class 'intermol.forces.ljq_c_pair_type.LjqCPair'>: '2A', <class 'intermol.forces.ljq_sigeps_pair_type.LjqSigepsPair'>: '2B', <class 'intermol.forces.lj_default_pair_type.LjDefaultPair'>: '1C', <class 'intermol.forces.lj_sigeps_pair_type.LjSigepsPair'>: '1B'}
GromacsParser.paramlist = {'QuarticBreakableBond': ['k', 'B1', 'B2', 'Rc', 'U0'], 'fene_expandable_bond': ['k', 'length', 'epsilon', 'sigma', 'delta'], 'ThreeOutVirtualType': ['a', 'b', 'c'], 'LjDefaultPair': [], 'LjqDefaultPair': [], 'improper_harmonic_dihedral': ['xi', 'k'], 'cubic_bond': ['length', 'C2', 'C3'], 'ljq_c_pair': ['qi', 'qj', 'C6', 'C12'], 'ConnectionBond': [], 'BuckinghamNonbondedType': ['a', 'b', 'C6'], 'ConnectionBondType': [], 'ThreeOutVirtual': ['a', 'b', 'c'], 'FeneExpandableBond': ['k', 'length', 'epsilon', 'sigma', 'delta'], 'LjCPair': ['C6', 'C12'], 'four_fdn_virtual': ['a', 'b', 'c'], 'ThreeFadVirtual': ['theta', 'd'], 'RbDihedralType': ['C0', 'C1', 'C2', 'C3', 'C4', 'C5'], 'FeneBond': ['length', 'kb'], 'TrigDihedral': ['phi', 'fc0', 'fc1', 'fc2', 'fc3', 'fc4', 'fc5', 'fc6'], 'ThreeFadVirtualType': ['theta', 'd'], 'ThreeLinearVirtual': ['a', 'b'], 'LjCPairType': ['C6', 'C12'], 'cross_bond_bond_angle': ['r1', 'r2', 'k'], 'LjSigepsNonbonded': ['sigma', 'epsilon'], 'LjqDefaultPairType': [], 'cosine_squared_angle': ['theta', 'k'], 'ImproperHarmonicDihedralType': ['xi', 'k'], 'nonlinear_bond': ['epsilon', 'r0', 'lamda'], 'LjqSigepsPair': ['qi', 'qj', 'sigma', 'epsilon'], 'G96BondType': ['length', 'k'], 'harmonic_bond': ['length', 'k'], 'trig_dihedral': ['phi', 'fc0', 'fc1', 'fc2', 'fc3', 'fc4', 'fc5', 'fc6'], 'LjqCPair': ['qi', 'qj', 'C6', 'C12'], 'LjSigepsNonbondedType': ['sigma', 'epsilon'], 'CubicBondType': ['length', 'C2', 'C3'], 'QuarticBondType': ['length', 'C2', 'C3', 'C4'], 'urey_bradley_angle': ['theta', 'k', 'r', 'kUB'], 'LjSigepsPairType': ['sigma', 'epsilon'], 'harmonic_angle': ['theta', 'k'], 'two_virtual': ['a'], 'NCogVirtualType': [], 'TwoVirtualType': ['a'], 'lj_c_nonbonded': ['C6', 'C12'], 'FeneBondType': ['length', 'kb'], 'NonlinearBond': ['epsilon', 'r0', 'lamda'], 'TrigDihedralType': ['phi', 'fc0', 'fc1', 'fc2', 'fc3', 'fc4', 'fc5', 'fc6'], 'LjCNonbondedType': ['C6', 'C12'], 'UreyBradleyAngleType': ['theta', 'k', 'r', 'kUB'], 'HarmonicPotentialBond': ['length', 'k'], 'three_fad_virtual': ['theta', 'd'], 'LjCNonbonded': ['C6', 'C12'], 'three_out_virtual': ['a', 'b', 'c'], 'CrossBondBondAngle': ['r1', 'r2', 'k'], 'HarmonicAngle': ['theta', 'k'], 'HarmonicPotentialBondType': ['length', 'k'], 'CubicBond': ['length', 'C2', 'C3'], 'cross_bond_angle_angle': ['r1', 'r2', 'r3', 'k'], 'lj_c_pair': ['C6', 'C12'], 'harmonic_potential_bond': ['length', 'k'], 'three_fd_virtual': ['a', 'd'], 'QuarticBreakableBondType': ['k', 'B1', 'B2', 'Rc', 'U0'], 'QuarticAngle': ['theta', 'C0', 'C1', 'C2', 'C3', 'C4'], 'ThreeLinearVirtualType': ['a', 'b'], 'NonlinearBondType': ['epsilon', 'r0', 'lamda'], 'CosineSquaredAngle': ['theta', 'k'], 'LjDefaultPairType': [], 'ThreeFdVirtual': ['a', 'd'], 'buckingham_nonbonded': ['a', 'b', 'C6'], 'FourierDihedral': ['c1', 'c2', 'c3', 'c4', 'c5'], 'HarmonicBondType': ['length', 'k'], 'HarmonicBond': ['length', 'k'], 'proper_periodic_dihedral': ['phi', 'k', 'multiplicity'], 'FourFdnVirtual': ['a', 'b', 'c'], 'NCogVirtual': [], 'TwoVirtual': ['a'], 'BuckinghamNonbonded': ['a', 'b', 'C6'], 'UreyBradleyAngle': ['theta', 'k', 'r', 'kUB'], 'n_cog_virtual': [], 'QuarticAngleType': ['theta', 'C0', 'C1', 'C2', 'C3', 'C4'], 'NCowVirtualType': [], 'quartic_angle': ['theta', 'C0', 'C1', 'C2', 'C3', 'C4'], 'RbDihedral': ['C0', 'C1', 'C2', 'C3', 'C4', 'C5'], 'fene_bond': ['length', 'kb'], 'ImproperHarmonicDihedral': ['xi', 'k'], 'MorseBond': ['length', 'D', 'beta'], 'LjqCPairType': ['qi', 'qj', 'C6', 'C12'], 'FourFdnVirtualType': ['a', 'b', 'c'], 'lj_default_pair': [], 'ThreeFdVirtualType': ['a', 'd'], 'CrossBondAngleAngleType': ['r1', 'r2', 'r3', 'k'], 'quartic_breakable_bond': ['k', 'B1', 'B2', 'Rc', 'U0'], 'QuarticBond': ['length', 'C2', 'C3', 'C4'], 'ProperPeriodicDihedral': ['phi', 'k', 'multiplicity'], 'quartic_bond': ['length', 'C2', 'C3', 'C4'], 'ljq_default_pair': [], 'ProperPeriodicDihedralType': ['phi', 'k', 'multiplicity'], 'n_cow_virtual': [], 'connection_bond': [], 'cosine_angle': ['k'], 'ljq_sigeps_pair': ['qi', 'qj', 'sigma', 'epsilon'], 'CrossBondAngleAngle': ['r1', 'r2', 'r3', 'k'], 'morse_bond': ['length', 'D', 'beta'], 'NCowVirtual': [], 'lj_sigeps_nonbonded': ['sigma', 'epsilon'], 'FeneExpandableBondType': ['k', 'length', 'epsilon', 'sigma', 'delta'], 'FourierDihedralType': ['c1', 'c2', 'c3', 'c4', 'c5'], 'HarmonicAngleType': ['theta', 'k'], 'LjqSigepsPairType': ['qi', 'qj', 'sigma', 'epsilon'], 'CosineAngle': ['k'], 'lj_sigeps_pair': ['sigma', 'epsilon'], 'rb_dihedral': ['C0', 'C1', 'C2', 'C3', 'C4', 'C5'], 'G96Bond': ['length', 'k'], 'CrossBondBondAngleType': ['r1', 'r2', 'k'], 'three_linear_virtual': ['a', 'b'], 'g96_bond': ['length', 'k'], 'CosineAngleType': ['k'], 'MorseBondType': ['length', 'D', 'beta'], 'LjSigepsPair': ['sigma', 'epsilon'], 'CosineSquaredAngleType': ['theta', 'k'], 'fourier_dihedral': ['c1', 'c2', 'c3', 'c4', 'c5']}
GromacsParser.process_angle(line)[source]

Process a line in the [ angles ] category.

GromacsParser.process_angletype(line)[source]

Process a line in the [ angletypes ] category.

GromacsParser.process_atom(line)[source]

Process a line in the [ atoms ] category.

GromacsParser.process_atomtype(line)[source]

Process a line in the [ atomtypes ] category.

GromacsParser.process_bond(line)[source]

Process a line in the [ bonds ] category.

GromacsParser.process_bondtype(line)[source]

Process a line in the [ bondtypes ] category.

GromacsParser.process_cmap(line)[source]

Process a line in the [ cmaps ] category.

GromacsParser.process_cmaptype(line)[source]

Process a line in the [ cmaptypes ] category.

GromacsParser.process_defaults(line)[source]

Process the [ defaults ] line.

GromacsParser.process_dihedral(line)[source]

Process a line in the [ dihedrals ] category.

GromacsParser.process_dihedraltype(line)[source]

Process a line in the [ dihedraltypes ] category.

GromacsParser.process_exclusion(line)[source]

Process a line in the [ exclusions ] category.

GromacsParser.process_file(top_file)[source]
GromacsParser.process_forcetype(bondingtypes, forcename, line, n_atoms, gromacs_force_types, canonical_force)[source]
GromacsParser.process_implicittype(line)[source]

Process a line in the [ implicit_genborn_params ] category.

GromacsParser.process_line(top_file, line)[source]

Process one line from a file.

GromacsParser.process_molecule(line)[source]

Process a line in the [ molecules ] category.

GromacsParser.process_moleculetype(line)[source]

Process a line in the [ moleculetypes ] category.

GromacsParser.process_nonbond_params(line)[source]

Process a line in the [ nonbond_param ] category.

GromacsParser.process_pair(line)[source]

Process a line in the [ pairs ] category.

GromacsParser.process_pairtype(line)[source]

Process a line in the [ pairtypes ] category.

GromacsParser.process_settle(line)[source]

Process a line in the [ settles ] category.

GromacsParser.read()[source]
Returns:system
GromacsParser.too_few_fields(line)[source]
static GromacsParser.type_parameters_are_unique(a, b)[source]

Check if two force types are unique.

Currently only tests TrigDihedralType and ImproperHarmonicDihedralType because these are the only two forcetypes that we currently allow to to have multiple values for the same set of 4 atom bondingtypes.

GromacsParser.unitvars = {'QuarticBreakableBond': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -4.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'lj_sigeps_pair_type': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'ThreeOutVirtualType': [Unit({}), Unit({}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -1.0})], 'LjDefaultPair': [], 'fourier_dihedral_type': [Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'ConnectionBond': [], 'BuckinghamNonbondedType': [Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 6.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'three_fad_virtual_type': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0})], 'ConnectionBondType': [], 'ThreeOutVirtual': [Unit({}), Unit({}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -1.0})], 'FeneExpandableBond': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0})], 'LjCPair': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 6.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 12.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'NonlinearBond': [Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0})], 'urey_bradley_angle_type': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -2.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'improper_harmonic_dihedral_type': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -2.0})], 'ThreeFadVirtual': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0})], 'quartic_bond_type': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -3.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -4.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'harmonic_potential_bond_type': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'trig_dihedral_type': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'RbDihedralType': [Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'FeneBond': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'TrigDihedral': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'harmonic_angle_type': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -2.0})], 'ThreeFadVirtualType': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0})], 'three_fd_virtual_type': [Unit({}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0})], 'ThreeLinearVirtual': [Unit({}), Unit({})], 'LjCPairType': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 6.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 12.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'LjSigepsNonbonded': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'LjqDefaultPairType': [], 'ImproperHarmonicDihedralType': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -2.0})], 'three_linear_virtual_type': [Unit({}), Unit({})], 'LjqSigepsPair': [Unit({BaseUnit(base_dim=BaseDimension("charge"), name="elementary charge", symbol="e"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("charge"), name="elementary charge", symbol="e"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'G96BondType': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -4.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'lj_sigeps_nonbonded_type': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'HarmonicBondType': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'LjqCPair': [Unit({BaseUnit(base_dim=BaseDimension("charge"), name="elementary charge", symbol="e"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("charge"), name="elementary charge", symbol="e"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 6.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 12.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'LjSigepsNonbondedType': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'CubicBondType': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -3.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'QuarticBondType': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -3.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -4.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'LjSigepsPairType': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'FourierDihedral': [Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'NCogVirtualType': [], 'lj_default_pair_type': [], 'TwoVirtualType': [Unit({})], 'FeneBondType': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'lj_c_nonbonded_type': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 6.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 12.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'TrigDihedralType': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'LjCNonbondedType': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 6.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 12.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'UreyBradleyAngleType': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -2.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'HarmonicPotentialBond': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'LjCNonbonded': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 6.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 12.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'fene_bond_type': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'CrossBondBondAngle': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'HarmonicAngle': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -2.0})], 'ljq_c_pair_type': [Unit({BaseUnit(base_dim=BaseDimension("charge"), name="elementary charge", symbol="e"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("charge"), name="elementary charge", symbol="e"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 6.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 12.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'HarmonicPotentialBondType': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'CubicBond': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -3.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'fene_expandable_bond_type': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0})], 'cross_bond_angle_angle_type': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'QuarticBreakableBondType': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -4.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'QuarticAngle': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -2.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -3.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -4.0})], 'ThreeLinearVirtualType': [Unit({}), Unit({})], 'NonlinearBondType': [Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0})], 'CosineSquaredAngle': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'LjDefaultPairType': [], 'ThreeFdVirtual': [Unit({}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0})], 'two_virtual_type': [Unit({})], 'cosine_angle_type': [Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'HarmonicBond': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'connection_bond_type': [], 'cross_bond_bond_angle_type': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'FourFdnVirtual': [Unit({}), Unit({}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0})], 'NCogVirtual': [], 'g96_bond_type': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -4.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'quartic_angle_type': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -2.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -3.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -4.0})], 'quartic_breakable_bond_type': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -4.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'TwoVirtual': [Unit({})], 'BuckinghamNonbonded': [Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 6.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'UreyBradleyAngle': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -2.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'three_out_virtual_type': [Unit({}), Unit({}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -1.0})], 'ljq_sigeps_pair_type': [Unit({BaseUnit(base_dim=BaseDimension("charge"), name="elementary charge", symbol="e"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("charge"), name="elementary charge", symbol="e"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'lj_c_pair_type': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 6.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 12.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'ljq_default_pair_type': [], 'QuarticAngleType': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -2.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -3.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -4.0})], 'NCowVirtualType': [], 'LjqDefaultPair': [], 'buckingham_nonbonded_type': [Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 6.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'morse_bond_type': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -1.0})], 'ImproperHarmonicDihedral': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -2.0})], 'MorseBond': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -1.0})], 'LjqCPairType': [Unit({BaseUnit(base_dim=BaseDimension("charge"), name="elementary charge", symbol="e"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("charge"), name="elementary charge", symbol="e"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 6.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 12.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'cosine_squared_angle_type': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'FourFdnVirtualType': [Unit({}), Unit({}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0})], 'ThreeFdVirtualType': [Unit({}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0})], 'CrossBondAngleAngleType': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'cubic_bond_type': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -3.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'QuarticBond': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -3.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -4.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'ProperPeriodicDihedral': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({})], 'ProperPeriodicDihedralType': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({})], 'four_fdn_virtual_type': [Unit({}), Unit({}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0})], 'HarmonicAngleType': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("angle"), name="radian", symbol="rad"): -2.0})], 'n_cog_virtual_type': [], 'nonlinear_bond_type': [Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0})], 'harmonic_bond_type': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'proper_periodic_dihedral_type': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({})], 'CrossBondAngleAngle': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'n_cow_virtual_type': [], 'RbDihedral': [Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'NCowVirtual': [], 'FeneExpandableBondType': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0})], 'FourierDihedralType': [Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'LjqSigepsPairType': [Unit({BaseUnit(base_dim=BaseDimension("charge"), name="elementary charge", symbol="e"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("charge"), name="elementary charge", symbol="e"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'CosineAngle': [Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'G96Bond': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -4.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'CrossBondBondAngleType': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -2.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0, BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0})], 'CosineAngleType': [Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'MorseBondType': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): -1.0})], 'rb_dihedral_type': [Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'LjSigepsPair': [Unit({BaseUnit(base_dim=BaseDimension("length"), name="nanometer", symbol="nm"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})], 'CosineSquaredAngleType': [Unit({BaseUnit(base_dim=BaseDimension("angle"), name="degree", symbol="deg"): 1.0}), Unit({BaseUnit(base_dim=BaseDimension("amount"), name="mole", symbol="mol"): -1.0, ScaledUnit(factor=1.0, master=gram*nanometer**2/(picosecond**2), name='kilojoule', symbol='kJ'): 1.0})]}
GromacsParser.write()[source]

Write this topology in GROMACS file format.

Parameters:filename – the name of the file to write out to
GromacsParser.write_angles(top)[source]
GromacsParser.write_atoms(top)[source]
GromacsParser.write_atomtypes(top)[source]
GromacsParser.write_bonds(top)[source]
GromacsParser.write_defaults(top)[source]
GromacsParser.write_dihedrals(top)[source]
GromacsParser.write_exclusions(top)[source]
GromacsParser.write_molecules(top)[source]
GromacsParser.write_moleculetypes(top)[source]
GromacsParser.write_nonbonded_types(top)[source]
GromacsParser.write_pairs(top)[source]
GromacsParser.write_settles(top)[source]
GromacsParser.write_system(top)[source]
intermol.gromacs.gromacs_parser.default_gromacs_include_dir()[source]

Find the location where gromacs #include files are referenced from, by searching for (1) gromacs environment variables, (2) just using the default gromacs install location, /usr/local/gromacs/share/gromacs/top.

intermol.gromacs.gromacs_parser.load_gromacs(top_file, gro_file, include_dir=None, defines=None)[source]

Load a set of GROMACS input files into a System.

Parameters:
  • top_file
  • gro_file
  • include_dir
  • defines
Returns:

Return type:

system

intermol.gromacs.gromacs_parser.write_gromacs(top_file, gro_file, system)[source]

Load a set of GROMACS input files into a System.

Parameters:
  • top_file
  • gro_file
  • include_dir
  • defines
Returns:

Return type:

system