LAMMPS Interface Documentation v0.1.1
LAMMPS Interface Documentation v0.1.1
Release 0.1.1
1 Development 1
1.1 Build the documentation locally . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Sphinx cheat sheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2 lammps_interface package 3
2.1 Submodules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2 lammps_interface.BTW module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.3 lammps_interface.CIFIO module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.4 lammps_interface.Dubbeldam module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.5 lammps_interface.ForceFields module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.6 lammps_interface.InputHandler module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.7 lammps_interface.MOFFF module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.8 lammps_interface.Molecules module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.9 lammps_interface.atomic module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.10 lammps_interface.ccdc module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.11 lammps_interface.create_cluster module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.12 lammps_interface.create_cluster_v2 module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.13 lammps_interface.dreiding module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.14 lammps_interface.gas_models module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.15 lammps_interface.generic_raspa module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.16 lammps_interface.lammps_main module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.17 lammps_interface.lammps_potentials module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.18 lammps_interface.mof_sbus module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.19 lammps_interface.structure_data module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.20 lammps_interface.uff module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.21 lammps_interface.uff4mof module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.22 lammps_interface.uff_nonbonded module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.23 lammps_interface.water_models module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.24 Module contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3 Installation 51
4 Usage 53
4.1 Command line interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.2 Jupyter notebook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5 Licence 55
6 Citation 57
i
Python Module Index 61
Index 63
ii
CHAPTER
ONE
DEVELOPMENT
def f(var):
return "string"
1
lammps-interface, Release 0.1.1
– weight = 1
– length
– image_flag
– force_field_type
• Check out the source of any page via the link in the bottom right corner.
Development
===========
.. code:: python
def f(var):
return "string"
.. autoclass:: lammps_interface.structure_data.MolecularGraph
:noindex:
.. literalinclude:: [Link]
2 Chapter 1. Development
CHAPTER
TWO
LAMMPS_INTERFACE PACKAGE
2.1 Submodules
3
lammps-interface, Release 0.1.1
static ccdc_geom_bond_type(x)
static cell_angle_alpha(x)
static cell_angle_beta(x)
static cell_angle_gamma(x)
static cell_length_a(x)
static cell_length_b(x)
static cell_length_c(x)
static general_label(x)
static geom_bond_atom_site_label_1(x)
static geom_bond_atom_site_label_2(x)
static geom_bond_distance(x)
static geom_bond_site_symmetry_2(x)
get_element_label(el)
get_non_loop_block(line)
get_time()
insert_block_order(name, index=None, _REPLACE=False)
Adds a block to the cif file in a specified order, unless index is specified, will not override existing order
static label(x)
special cases
read(filename)
lammps_interface.CIFIO.get_time()
bond_term(edge)
class2 bond: 4-order polynomial
detect_ff_terms()
Assigning force field type of atoms
dihedral_term(dihedral)
fourier diherdral
improper_term(improper)
class2 improper
pair_terms(node, data, cutoff, **kwargs)
Buckingham equation in MM3 type is used!
special_commands()
class lammps_interface.[Link](graph=None, h_bonding=False, **kwargs)
Bases: lammps_interface.[Link]
__init__(graph=None, h_bonding=False, **kwargs)
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.ForceFields'
angle_term(angle)
Harmonic cosine angle
E = 0.5*C*[cos(theta) - cos(theta0)]^2
This is available in LAMMPS as the cosine/squared angle style (NB. the prefactor includes the usual 1/2
term.)
if theta0 == 180, use
E = K*(1 + cos(theta))
This is available in LAMMPS as the cosine angle style
bond_term(edge)
The DREIDING Force Field contains two possible bond terms, harmonic and Morse. The authors rec-
ommend using harmonic as a default, and Morse potentials for more ‘refined’ calculations. Here we will
assume a harmonic term by default, then the user can chose to switch to Morse if they so choose. (change
type argument to ‘morse’)
E = 0.5 * K * (R - Req)^2
E = D * [exp{-(alpha*R - Req)} - 1]^2
detect_ff_terms()
dihedral_term(dihedral)
The DREIDING dihedral is of the form
E = 0.5*V*[1 - cos(n*(phi - phi0))]
LAMMPS has a similar potential ‘charmm’ which is described as
E = K*[1 + cos(n*phi - d)]
In this case the ‘d’ term must be multiplied by ‘n’ before inputting to lammps. In addition a +180 degrees
out-of-phase shift must be added to ‘d’ to ensure that the potential behaves the same as the DREIDING
article intended.
b J
/ /
/ /
c----a , DREIDING = K----I
\ \
\ \
d L
E = 0.5*C*(cos(phi) - cos(phi0))^2
E = K*[1 - cos(phi)].
dihedral_term(dihedral)
The Dihedral potential has the form
U(torsion) = k * (1 + cos(m*theta - theta0))
in LAMMPS this potential can be accessed by the dihedral_style charmm
E = K * [ 1 + d*cos(n*theta - d) ]
improper_term(improper)
The Improper potential has the form
U(torsion) = k * (1 + cos(m*theta - theta0))
in LAMMPS this potential can be accessed by the improper_style cvff
E = K * [ 1 + d*cos(n*theta) ]
# NO out of phase shift! to get a minima at 180 set d to -1. # all of Dubbeldam’s terms are for 180 degrees
out-of-plane movement so # this is fine.
pair_terms(node, data, cutoff, **kwargs)
special_commands()
class lammps_interface.ForceFields.EPM2_CO2(graph=None, **kwargs)
Bases: lammps_interface.[Link]
__init__(graph=None, **kwargs)
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.ForceFields'
angle_term(angle)
Harmonic angle term.
E = 0.5 * K * (theta - theta0)^2
Can be rigid or not with EPM2
bond_term(edge)
Harmonic term
E = 0.5 * K * (R - Req)^2
just a placeholder in LAMMPS. The bond is rigid therefore an unambiguous extra flag must be added here
to ensure the potential is not grouped with identical (however unlikely) potentials which are not rigid.
detect_ff_terms()
CO2 consists of C and O, not too difficult.
dihedral_term(dihedral)
No dihedral potential in EPM2 CO2 model.
improper_term(improper)
No improper potential in EPM2 CO2 model.
pair_terms(node, data, cutoff, **kwargs)
Lennard - Jones potential for Cx and Ox.
special_commands()
class lammps_interface.[Link](**kwargs)
Bases: lammps_interface.[Link]
__init__(**kwargs)
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.ForceFields'
angle_term(angle)
class2 angle
bond_term(edge)
class2 bond
detect_ff_terms()
dihedral_term(dihedral)
fourier diherdral
improper_term(improper)
class2 diherdral
insert_graph(graph)
pair_terms(node, data, cutoff, **kwargs)
Buckingham equation in MM3 type is used!
special_commands()
class lammps_interface.[Link]
Bases: object
__dict__ = mappingproxy({'__doc__': None, 'improper_term': <function [Link]
__metaclass__
alias of [Link]
__module__ = 'lammps_interface.ForceFields'
__weakref__
list of weak references to the object (if defined)
abstract angle_term()
Computes the angle parameters
abstract bond_term()
Computes the bond parameters
compute_angle_terms()
compute_atomic_pair_terms()
compute_bond_terms()
compute_dihedral_terms()
compute_force_field_terms()
compute_improper_terms()
abstract dihedral_term()
Computes the dihedral parameters
abstract improper_term()
Computes the improper dihedral parameters
class lammps_interface.ForceFields.MOF_FF(**kwargs)
Bases: lammps_interface.[Link]
__init__(**kwargs)
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.ForceFields'
angle_term(angle)
class2 angle
Be careful that the 5and6 order terms are vanished here since they are not implemented in LAMMPS!!
Etheta = 0.021914*Ktheta*(theta-theta0)^2[1-0.014(theta-theta0)+5.6(10^-5)*(theta-theta0)^2-7.0*(10^-
7)*(theta-theta0)^3+9.0*(10^-10)*(theta-theta0)^4] (Allinger et. al. [Link]., Vol. 111, No. 23,
1989)
bond_term(edge)
class2 bond Es=71.94*Ks*(l-l0)^2[1-2.55(l-l0)+(7/12)*2.55*(l-l0)^2] (Allinger et. al. [Link].,
Vol. 111, No. 23, 1989)
detect_ff_terms()
MOF-FF contains force field descriptions for three different inorganic SBUs: Cu-paddle-wheel Zn cluster
–> IRMOF series Zr cluster –> UiO series
dihedral_term(dihedral)
fourier diherdral
Ew = (V1/2)(1 + cos w) + (V2/2)(1 - cos 2*w)+(V3/2)(1 + cos 3*w)+(V4/2)(1 + cos 4*w) (Allinger et. al.
[Link]., Vol. 111, No. 23, 1989)
improper_term(improper)
Harmonic improper
pair_coul_term(node1, node2, data)
MOF-FF uses a damped gaussian for close-range interactions. This is added in a tabulated form.
k = 332.063711 kcal*angstroms/e^2
E_ij = k*qi*qj*erf(r_ij/sig_ij)/r_ij
— From Wolfram Alpha — F_ij = - (K*qi*qj) * (2/(pi^(.5) * sig_ij)) * [ e^(-r_ij^2/sig_ij^2) / r_ij -
erf(r_ij/sig_ij)/r_ij^2 ] —
N is set to 1000 by default
pair_terms(node, data, cutoff, **kwargs)
Buckingham equation in MM3 type is used!
Also, Table for short range coulombic interactions
special_commands()
class lammps_interface.[Link](struct, base_FF)
Bases: lammps_interface.[Link]
Prepare a nanoprous material FF from a given structure for a known FF type.
Then overwrite any parameters that are supplied by user_input.txt
Methods are duplicated from UserFF, can reduce redundancy of code later if desired
__init__(struct, base_FF)
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.ForceFields'
map_pair_unique_bond(pair, descriptor)
map_quadruplet_unique_dihedral(quadruplet, descriptor)
map_quadruplet_unique_improper(quadruplet, descriptor)
map_triplet_unique_angle(triplet, descriptor)
map_user_to_unique_atom(descriptor)
parse_user_input(filename)
write_missing_uniques(description)
class lammps_interface.ForceFields.SPC_E(graph=None, **kwargs)
Bases: lammps_interface.[Link]
__init__(graph=None, **kwargs)
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.ForceFields'
angle_term(angle)
Harmonic angle term.
E = 0.5 * K * (theta - theta0)^2
just a placeholder in LAMMPS. The angle is rigid and fixed by SHAKE in LAMMPS therefore an un-
ambiguous extra flag must be added here to ensure the potential is not grouped with identical (however
unlikely) potentials which are not rigid.
bond_term(edge)
Harmonic term
E = 0.5 * K * (R - Req)^2
just a placeholder in LAMMPS. The bond is rigid and fixed by SHAKE in LAMMPS therefore an un-
ambiguous extra flag must be added here to ensure the potential is not grouped with identical (however
unlikely) potentials which are not rigid.
detect_ff_terms()
Water consists of O and H, not too difficult.
dihedral_term(dihedral)
No dihedral potential in SPC/E water model.
improper_term(improper)
No improper potential in SPC/E water model.
pair_terms(node, data, cutoff, **kwargs)
Lennard - Jones potential for OW and HW.
cutoff should be set to 9 angstroms, but this may be unrealistic. Also, no long range treatment of coulombic
term! Otherwise this isn’t technically the SPC/E model but Ewald should be used for periodic materials.
special_commands()
class lammps_interface.ForceFields.TIP3P(graph=None, **kwargs)
Bases: lammps_interface.[Link]
__init__(graph=None, **kwargs)
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.ForceFields'
angle_term(angle)
Harmonic angle term.
E = 0.5 * K * (theta - theta0)^2
just a placeholder in LAMMPS. The angle is rigid and fixed by SHAKE in LAMMPS therefore an un-
ambiguous extra flag must be added here to ensure the potential is not grouped with identical (however
unlikely) potentials which are not rigid.
bond_term(edge)
Harmonic term
E = 0.5 * K * (R - Req)^2
just a placeholder in LAMMPS. The bond is rigid and fixed by SHAKE in LAMMPS therefore an un-
ambiguous extra flag must be added here to ensure the potential is not grouped with identical (however
unlikely) potentials which are not rigid.
detect_ff_terms()
Water consists of O and H, not too difficult.
dihedral_term(dihedral)
No dihedral potential in TIP3P water model.
improper_term(improper)
No improper potential in TIP3P water model.
pair_terms(node, data, cutoff, **kwargs)
Lennard - Jones potential for OW and HW.
special_commands()
class lammps_interface.ForceFields.TIP4P(graph=None, **kwargs)
Bases: lammps_interface.[Link], lammps_interface.Molecules.
TIP4P_Water
__init__(graph=None, **kwargs)
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.ForceFields'
angle_term(angle)
Harmonic angle term.
E = 0.5 * K * (theta - theta0)^2
just a placeholder in LAMMPS. The angle is rigid and fixed by SHAKE in LAMMPS therefore an un-
ambiguous extra flag must be added here to ensure the potential is not grouped with identical (however
unlikely) potentials which are not rigid.
bond_term(edge)
Harmonic term
E = 0.5 * K * (R - Req)^2
just a placeholder in LAMMPS. The bond is rigid and fixed by SHAKE in LAMMPS therefore an un-
ambiguous extra flag must be added here to ensure the potential is not grouped with identical (however
unlikely) potentials which are not rigid.
detect_ff_terms()
Water consists of O and H, not too difficult.
dihedral_term(dihedral)
No dihedral potential in TIP4P water model.
improper_term(improper)
No improper potential in TIP4P water model.
pair_terms(node, data, cutoff, **kwargs)
Lennard - Jones potential for OW and HW.
special_commands()
general non-linear case: three-term Fourier expansion E_0 = K_{IJK} * [C_0 + C_1*cos(theta) +
C_2*cos(2*theta)]
in Lammps, the angle style called ‘fourier’ can be used to describe this functional form.
Both ‘fourier/simple’ and ‘fourier’ are available from the USER_MISC package in Lammps, so be sure to
compile Lammps with this package.
bond_term(edge)
Harmonic assumed
detect_ff_terms()
dihedral_term(dihedral)
Use a small cosine Fourier expansion
E_phi = 1/2*V_phi * [1 - cos(n*phi0)*cos(n*phi)]
this is available in Lammps in the form of a harmonic potential E = K * [1 + d*cos(n*phi)]
NB: the d term must be negated to recover the UFF potential.
improper_term(improper)
The improper function can be described with a fourier function
E = K*[C_0 + C_1*cos(w) + C_2*cos(2*w)]
NB: not sure if keep metal geometry is important here.
pair_terms(node, data, cutoff, charges=True)
Add L-J term to atom
special_commands()
uff_angle_type(b)
class lammps_interface.ForceFields.UFF4MOF(**kwargs)
Bases: lammps_interface.[Link]
Parameterize the periodic material with the UFF4MOF parameters.
__init__(**kwargs)
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.ForceFields'
angle_term(angle)
several cases exist where the type of atom in a particular environment is considered in both the parameters
and the functional form of the term.
A small cosine fourier expansion in (theta) E_0 = K_{IJK} * {sum^{m}_{n=0}}C_{n} * cos(n*theta)
Linear, trigonal-planar, square-planar, and octahedral: two-term expansion of the above equation, n=0 as
well as n=1, n=3, n=4, and n=4 for the above geometries. E_0 = K_{IJK}/n^2 * [1 - cos(n*theta)]
in Lammps, the angle syle called ‘fourier/simple’ can be used to describe this functional form.
general non-linear case: three-term Fourier expansion E_0 = K_{IJK} * [C_0 + C_1*cos(theta) +
C_2*cos(2*theta)]
in Lammps, the angle style called ‘fourier’ can be used to describe this functional form.
Both ‘fourier/simple’ and ‘fourier’ are available from the USER_MISC package in Lammps, so be sure to
compile Lammps with this package.
bond_term(edge)
Harmonic assumed
detect_ff_terms()
All new terms are associated with inorganic clusters, and the number of cases are extensive. Implementa-
tion of all of the metal types would require a bit of effort, but should be done in the near future.
dihedral_term(dihedral)
Use a small cosine Fourier expansion
E_phi = 1/2*V_phi * [1 - cos(n*phi0)*cos(n*phi)]
this is available in Lammps in the form of a harmonic potential E = K * [1 + d*cos(n*phi)]
NB: the d term must be negated to recover the UFF potential.
improper_term(improper)
Improper term described by a Fourier function
E = K*[C_0 + C_1*cos(w) + C_2*cos(2*w)]
pair_terms(node, data, cutoff, charges=True)
Add L-J term to atom
special_commands()
uff_angle_type(b)
class lammps_interface.[Link](graph)
Bases: lammps_interface.[Link]
__init__(graph)
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.ForceFields'
angle_term(angle)
Computes the angle parameters
bond_term(bond)
Computes the bond parameters
compute_force_field_terms()
dihedral_term(dihedral)
Computes the dihedral parameters
improper_term(improper)
Computes the improper dihedral parameters
map_pair_unique_bond(pair, descriptor)
map_quadruplet_unique_dihedral(quadruplet, descriptor)
map_quadruplet_unique_improper(quadruplet, descriptor)
map_triplet_unique_angle(triplet, descriptor)
map_user_to_unique_atom(descriptor)
overwrite_force_field_terms()
parse_user_input(filename)
unique_angles()
unique_atoms()
unique_bonds()
unique_dihedrals()
unique_impropers()
How many times to list the same set of atoms ???
van_der_waals_pairs()
write_missing_uniques(description)
MOF-FF parameters.
Molecule class.
class lammps_interface.Molecules.CO2(**kwargs)
Bases: lammps_interface.[Link]
Carbon dioxide parent class, containing functions applicable to all CO2 models.
property O_coord
Define the oxygen coordinates assuming carbon is centered at ‘0’. angle gives the two oxygen atoms an
orientation that deviates randomly from the default (lying along the x-axis).
__module__ = 'lammps_interface.Molecules'
approximate_positions(C_pos=None, O_pos1=None, O_pos2=None)
Input a set of approximate positions for the carbon and oxygens of CO2, and determine the lowest RMSD
that would give the idealized model.
class lammps_interface.Molecules.EPM2_CO2(**kwargs)
Bases: lammps_interface.Molecules.CO2
RCO = 1.149
__init__(**kwargs)
Elementary Physical Model 2 (EPM2) of Harris & Yung (JPC 1995 99 12021)
[Link]/10.1021/j100031a034
__module__ = 'lammps_interface.Molecules'
class lammps_interface.[Link](**kwargs)
Bases: lammps_interface.structure_data.MolecularGraph
__module__ = 'lammps_interface.Molecules'
property _type_
compute_all_angles()
rotation_from_vectors(v1, v2)
Obtain rotation matrix from sets of vectors. the original set is v1 and the vectors to rotate to are v2.
rotation_matrix(axis, angle)
returns a 3x3 rotation matrix based on the provided axis and angle
str(atom_types={}, bond_types={}, angle_types={}, dihedral_types={}, improper_types={})
Create a molecule template string for writing to a file. Ideal for using fix gcmc or fix deposit in LAMMPS.
class lammps_interface.Molecules.TIP4P_Water(**kwargs)
Bases: lammps_interface.[Link]
HOH = 104.52
ROH = 0.9572
Rdum = 0.125
__init__(**kwargs)
Class that provides a template molecule for TIP4P Water.
LAMMPS has some builtin features for this molecule which are not taken advantage of here.
I haven’t bothered constructing a robust way to implement this special case, where there is no need to
explicilty describe the dummy atom. This is handeled internally by LAMMPS.
__module__ = 'lammps_interface.Molecules'
property dummy
class lammps_interface.Molecules.TIP5P_Water(**kwargs)
Bases: lammps_interface.[Link]
DOD = 109.47
HOH = 104.52
ROH = 0.9572
Rdum = 0.7
__init__(**kwargs)
Class that provides a template molecule for TIP5P Water.
No built in features for TIP5P so the dummy atoms must be explicitly described. Geometric features are
evaluated to ensure the proper configuration to support TIP5P.
Initially set up a default TIP5P water configuration, then update if needed if superposing a TIP5P particle
on an existing water.
__module__ = 'lammps_interface.Molecules'
property dummy
Given that the H_coords are determined from an angle with the x-axis in the xy plane, here we will also
use the x-axis, only project the dummy atoms in the xz plane. This will produce, if all angles are 109.5 and
distances the same, a perfect tetrahedron, however if the angles and distances are different, will produce a
geometry with the highest possible symmetry.
class lammps_interface.[Link](**kwargs)
Bases: lammps_interface.[Link]
Water parent class, containing functions applicable to all water models.
property H_coord
Define the hydrogen coords based on HOH angle for the specific force field. Default axis for distributing
the hydrogen atoms is the x-axis.
__module__ = 'lammps_interface.Molecules'
approximate_positions(O_pos=None, H_pos1=None, H_pos2=None)
Input a set of approximate positions for the oxygen and hydrogens of water, and determine the lowest
RMSD that would give the idealized water model.
compute_midpoint_vector(centre_vec, side1_vec, side2_vec)
Define a vector oriented away from the centre_vec which is half-way between side1_vec and side2_vec.
Ideal for TIP4P to define the dummy atom.
compute_orthogonal_vector(centre_vec, side1_vec, side2_vec)
Define a vector oriented orthogonal to two others, centred by the ‘centre_vec’.
Useful for other water models with dummy atoms, as this can be used as a ‘4th’ vector for the ‘rota-
tion_from_vectors’ calculation (since 3 vectors defined by O, H, and H is not enough to orient properly).
The real dummy atoms can then be applied once the proper rotation has been found.
Elemental information.
[Link]
the program starts here.
class lammps_interface.create_cluster_v2.Cluster(mgraph, xyz, offset, rcut)
Bases: object
__dict__ = mappingproxy({'compute_cluster_in_disgraph': <function Cluster.compute_clus
cxtd_comp_to_keep()
Identify which connected components have an atom within the cutoff radius
debug_edges_to_cut()
disconnect_1D_building_blocks()
Disconnect 1D rods so they can actually be capped
Best thing to do is still apply the same disconnection algorithm, only this time we are allowed to break a
bond between a type in [Link] and [6,7,8]
disconnect_external_building_blocks()
Break a super simulation box into every possible component where each disconnected bond represents a
cappable bond BUT we only break bonds that straddle or are external to the cluster cutoff radius
get_BFS_tree()
get_nth_heirarcy_BFS_tree(n)
get_start_and_kept_nodes()
Analyze a super box of a nanoporous material
Determine which nodes are inside the cutoff and which nodes are outside
Return the index of the starting node we will use to build the cluster
identify_1D_building_blocks()
By going through each component determined from all_external_building_blocks() we can determine if
the MOF is 1D rod. If a component has two edges that eg have ‘symflag’ attribute of (4,x,x) and (6,x,x)
respectively, then we found a component that spans across one crystallographic direction and reconnects
with itself. This is the definition of a 1D rod MOF
identify_all_truncations()
Identify all truncations to make in the graph
identify_mat_type()
For now just a basic check to classify a zeolite vs an organic (MOF, COF, etc)
iterative_BFS_tree_structure(v)
Construct a dict with key that indexes depth of BFS tree, and the value is a set of all nodes at that depth
modify_structure_w_hydrogens()
nodes_that_DNE_in_origraph()
nodes_w_2plus_parents()
parse_sym_flag_for_directionality(string)
symm flag looks ‘like 1_455’ where 4 denotes a periodic bond in the x direction where 5 denotes a non
periodic bond in the y, z direction
preliminary_truncate_BFS_tree()
truncate_all()
truncation_criteria(up_node, down_node)
update_num_keep()
visualize_n_levels_of_tree(n)
write_LSDALTON(location)
Write the LSDALTON file for DEC-MP2
write_cluster_to_host_xyz_v2()
Write the computed and capped cluster to an xyz file
write_cluster_to_xyz()
Write the computed and capped cluster to an xyz file
write_cluster_to_xyz_host_guest_v2(include_guest)
Write the computed and capped cluster to an xyz file
write_cutoff()
Write the cutoff that was used to make this cluster
write_map_from_MOLECULE_to_unique_types()
write_map_from_cluster_xyz_to_unique_types()
class lammps_interface.create_cluster_v2.LammpsSimulation(options)
Bases: object
__dict__ = mappingproxy({'count_dihedrals': <function LammpsSimulation.count_dihedrals
__init__(options)
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.create_cluster_v2'
__weakref__
list of weak references to the object (if defined)
add_water_model(ngraph, ff )
assign_force_fields()
assign_molecule_ids(graph)
compute_cluster_box_size()
Added by MW b/c simbox size can need to be even bigger than a normal simbox when we are making a
cluster from one unit cell
compute_molecules(size_cutoff=0.5)
Ascertain if there are molecules within the porous structure
compute_simulation_size()
construct_data_file()
construct_input_file()
Input file will depend on what the user wants to do
count_angles()
count_dihedrals()
count_impropers()
cut_molecule(nodes)
define_styles()
fixcount(count=[])
groups(ints)
increment_graph_sizes(inc=1)
merge_graphs()
molecule_template(mol)
Construct a molecule template for reading and insertions in a LAMMPS simulation.
Not sure how the bonding, angle, dihedral, improper, and pair terms will be dealt with yet..
set_MDMC_config(MDMC_config)
set_cell(cell)
set_graph(graph)
split_graph()
unique_angles()
unique_atoms()
Computes the number of unique atoms in the structure
unique_bonds()
Computes the number of unique bonds in the structure
unique_dihedrals()
unique_impropers()
unique_pair_terms()
write_lammps_files()
lammps_interface.create_cluster_v2.main()
lammps_interface.create_cluster_v2.read_xyz_center(filename)
Gas models.
add_co2_model(ngraph, ff )
add_water_model(ngraph, ff )
assign_force_fields()
assign_molecule_ids(graph)
compute_molecules(size_cutoff=0.5)
Ascertain if there are molecules within the porous structure
compute_simulation_size()
construct_data_file()
construct_input_file()
Input file construction based on user-defined inputs.
NB: This function is getting huge. We should probably break it up into logical sub-sections.
cut_molecule(nodes)
define_styles()
fixcount(count=[])
groups(ints)
increment_graph_sizes(inc=1)
merge_graphs()
molecule_template(mol)
Construct a molecule template for reading and insertions in a LAMMPS simulation.
This combines two classes which have been separated conceptually - ForceField and Molecules. For some
molecules, the force field is implicit within the structure (e.g. TIP5P_Water molecule must be used with
the TIP5P ForceField). But one can imagine cases where this is not true (alkanes? CO2?).
set_MDMC_config(MDMC_config)
set_cell(cell)
set_graph(graph)
split_graph()
unique_angles(g)
unique_atoms(g)
Computes the number of unique atoms in the structure
unique_bonds(g)
Computes the number of unique bonds in the structure
unique_dihedrals(g)
unique_impropers(g)
unique_pair_terms()
write_lammps_files(wd=None)
lammps_interface.lammps_main.main()
__weakref__
list of weak references to the object (if defined)
class CosinePeriodic
Bases: object
Potential defined as
E = C*[1 - B*(-1)^n*cos(n*theta)]
Input parameters: C, B, n
__dict__ = mappingproxy({'__str__': <function [Link].__str_
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class CosineShift
Bases: object
Potential defined as
E = -Umin/2 * [1 + cos(theta - theta0)]
Input parameters: Umin, theta0
__dict__ = mappingproxy({'__str__': <function [Link].__str__>,
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class CosineShiftExp
Bases: object
Potential defined as
E = -Umin * [e^{-a*U(theta,theta0)} - 1] / [e^a - 1]
where U(theta,theta0) = -0.5*(1 + cos(theta - theta0))
Input parameters: Umin, theta0, a
__dict__ = mappingproxy({'__str__': <function [Link].__str_
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class CosineSquared
Bases: object
Potential defined as
E = K*[cos(theta) - cos(theta0)]^2
Input parameters: K, theta0
__dict__ = mappingproxy({'__str__': <function [Link].__str__
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Dipole
Bases: object
Potential defined as
E = K*(cos(gamma) - cos(gamma0))^2
Input parameters: K, gamma0
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '__d
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Fourier
Bases: object
Potential defined as
E = K*[C0 + C1*cos(theta) + C2*cos(2*theta)]
Input parameters: K, C0, C1, C2
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '__
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class FourierSimple
Bases: object
Potential defined as
E = K*[1 + c*cos(n*theta)]
Input parameters: K, c, n
__dict__ = mappingproxy({'__str__': <function [Link].__str__
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Harmonic
Bases: object
Potential defined as
E = K*(theta - theta0)^2
Input parameters: K, theta0
special_flag is used to distinguish any extra inputs required for LAMMPS to run properly.
eg. special_flag=”shake” will flag this angle potential as a shake angle.
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '_
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Quartic
Bases: object
Potential defined as
E = K2*(theta - theta0)^2 + K3*(theta - theta0)^3 + K4(theta - theta0)^4
Input parameters: theta0, K2, K3, K4
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '__
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Sdk
Bases: object
Potential defined as
E = K*(theta - theta0)^2
Input parameters: K, theta0
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '__doc_
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Table
Bases: object
__dict__ = mappingproxy({'__doc__': None, '__weakref__': <attribute '__weakref__'
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__weakref__
list of weak references to the object (if defined)
__dict__ = mappingproxy({'Table': <class 'lammps_interface.lammps_potentials.AnglePote
__module__ = 'lammps_interface.lammps_potentials'
__weakref__
list of weak references to the object (if defined)
class lammps_interface.lammps_potentials.BondPotential
Bases: object
Class to hold bond styles that are implemented in lammps Purpose is to store info that the user wants to use to
overwrite standard UFF output of lammps_interface
class Class2
Bases: object
Potential defined as
E = K2*(r-R0)^2 + K3*(r-R0)^3 + K4*(r-R0)^4
Input parameters: R0, K2, K3, K4.
__dict__ = mappingproxy({'__str__': <function BondPotential.Class2.__str__>, '__do
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Fene
Bases: object
Potential defined as
E = -0.5*K*R0^2 * ln[1-(r/R0)^2] + 4*eps*[(sig/r)^12 - (sig/r)^6] + eps
Input parameters: K, R0, eps, sig
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '__doc_
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class FeneExpand
Bases: object
Potential defined as
E = -0.5*K*R0^2 * ln[1-(r-delta/R0)^2] + 4*eps*[(sig/r-delta)^12 - (sig/r-delta)^6] + eps
Input parameters: K, R0, eps, sig, delta
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Harmonic
Bases: object
Potential defined as
E = K*(r - R0)^2
Input parameters: K, R0
special_flag is used to distinguish any extra inputs required for LAMMPS to run properly.
eg. special_flag=”shake” will flag this bond potential as a shake bond.
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '__
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class HarmonicShift
Bases: object
Potential defined as
E = Umin/(R0 - Rc)^2 * [(r-R0)^2 - (Rc - R0)^2]
Input parameters: Umin, R0, Rc
__dict__ = mappingproxy({'__str__': <function [Link].__str__>
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class HarmonicShiftCut
Bases: object
Potential defined as
E = Umin/(R0 - Rc)^2 * [(r-R0)^2 - (Rc - R0)^2]
Input parameters: Umin, R0, Rc
__dict__ = mappingproxy({'__str__': <function [Link].__str
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Morse
Bases: object
Potential defined as
E = D*[1 - e^(-alpha*(r-R0))]^2
Input parameters: D, alpha, R0
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '__doc
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class NonLinear
Bases: object
Potential defined as
E = eps*(r-R0)^2 / [lamb^2 - (r-R0)^2]
Input parameters: eps, R0, lamb
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '_
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Quartic
Bases: object
Potential defined as
E = K*(r-Rc)^2 * (r - Rc - B1) * (r - Rc - B2) + U0 + 4*eps*[(sig/r)^12 - (sig/r)^6] + eps
Input parameters: K, B1, B2, Rc, U0
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '__d
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Table
Bases: object
Potential read from file.
__dict__ = mappingproxy({'__doc__': 'Potential read from file.', '__weakref__': <
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__weakref__
list of weak references to the object (if defined)
__dict__ = mappingproxy({'Class2': <class 'lammps_interface.lammps_potentials.BondPote
__module__ = 'lammps_interface.lammps_potentials'
__weakref__
list of weak references to the object (if defined)
class lammps_interface.lammps_potentials.DihedralPotential
Bases: object
Class to hold dihedral styles that are implemented in lammps
class Charmm
Bases: object
Potential defined as
E = K*[1 + cos(n*phi - d)]
Input parameters: K, n, d, w (weighting for 1 - 4 non-bonded interactions)
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Class2
Bases: object
Potential deined as E = Ed + Embt + Eebt + Eat + Eaat + Ebb13 Ed = K1*[1 - cos(phi - phi1)]
+ K2*[1 - cos(2*phi - phi2)] + K3*[1 - cos(3*phi - phi3)] Embt = (r_jk - r2)*[A1*cos(phi) +
A2*cos(2phi) + A3*cos(3phi)] Eebt = (r_ij - r1)*[B1*cos(phi) + B2*cos(2phi) + B3*cos(3phi)] +
(r_kl - r3)*[C1*cos(phi) + C2*cos(2phi) + C3*cos(3phi)] Eat = (theta_ijk - theta1)*[D1*cos(phi) +
D2*cos(2*phi) + D3*cos(3*phi)] + (theta_jkl - theta2)*[E1*cos(phi) + E2*cos(2*phi) + E3*cos(3phi)]
Eaa = M*(theta_ijk - theta1)*(theta_jkl - theta2)*cos(phi) Ebb13 = N*(r_ij-r1)*(r_kl-r3)
class AngleAngleTorsion
Bases: object
Eaa = M*(theta_ijk - theta1)*(theta_jkl - theta2)*cos(phi)
__dict__ = mappingproxy({'__str__': <function [Link]
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class AngleTorsion
Bases: object
Eat = (theta_ijk - theta1)*[D1*cos(phi) + D2*cos(2*phi) + D3*cos(3*phi)] + (theta_jkl -
theta2)*[E1*cos(phi) + E2*cos(2*phi) + E3*cos(3phi)]
__dict__ = mappingproxy({'__str__': <function [Link]
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class BondBond13
Bases: object
Ebb13 = N*(r_ij-r1)*(r_kl-r3)
__dict__ = mappingproxy({'__str__': <function [Link]
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class EndBondTorsion
Bases: object
Eebt = (r_ij - r1)*[B1*cos(phi) + B2*cos(2phi) + B3*cos(3phi)] + (r_kl - r3)*[C1*cos(phi) +
C2*cos(2phi) + C3*cos(3phi)]
__dict__ = mappingproxy({'__str__': <function [Link]
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class MiddleBondTorsion
Bases: object
Embt = (r_jk - r2)*[A1*cos(phi) + A2*cos(2phi) + A3*cos(3phi)]
__dict__ = mappingproxy({'__str__': <function [Link]
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
__dict__ = mappingproxy({'__str__': <function DihedralPotential.Class2.__str__>, '
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class CosineShiftExp
Bases: object
Potential defined as
E = -Umin*[e^{-a*U(theta,theta0)} - 1] / (e^a -1)
where U(theta, theta0) = -0.5*(1 + cos(theta-theta0))
Input parameters: Umin, theta0, a
__dict__ = mappingproxy({'__str__': <function [Link].__s
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Fourier
Bases: object
Potential defined as
E = sum_i=1,m { Ki*[1.0 + cos(ni*theta - di)] }
Input parameters: m, Ki, ni, di
NB m is an integer dictating how many terms to sum, there should be 3*m + 1 total parameters.
__dict__ = mappingproxy({'__str__': <function [Link].__str__>,
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Harmonic
Bases: object
Potential defined as
E = K*[1 + d*cos(n*phi)]
Input parameters: K, d, n
__dict__ = mappingproxy({'__str__': <function [Link].__str__>,
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Helix
Bases: object
Potential defined as
E = A*[1 - cos(theta)] + B*[1 + cos(3*theta)] + C*[1 + cos(theta + pi/4)]
Input parameters: A, B, C
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '_
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class MultiHarmonic
Bases: object
Potential defined as
E = sum_n=1,5{ An*cos^(n-1)(theta)}
Input parameters: A1, A2, A3, A4, A5
__dict__ = mappingproxy({'__str__': <function [Link].__st
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Opls
Bases: object
Potential defined as
E = 0.5*K1*[1 + cos(theta)] + 0.5*K2*[1 - cos(2*theta)] + 0.5*K3*[1 + cos(3*theta)] + 0.5*K4*[1 -
cos(4*theta)]
Input parameters: K1, K2, K3, K4
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '__
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Quadratic
Bases: object
Potential defined as
E = K*(theta - theta0)^2
Input parameters: K, phi0
__dict__ = mappingproxy({'__str__': <function [Link].__str__>
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Table
Bases: object
Potential read from file.
__dict__ = mappingproxy({'__doc__': 'Potential read from file.', '__weakref__': <
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__weakref__
list of weak references to the object (if defined)
__dict__ = mappingproxy({'Charmm': <class 'lammps_interface.lammps_potentials.Dihedral
__module__ = 'lammps_interface.lammps_potentials'
__weakref__
list of weak references to the object (if defined)
class nHarmonic
Bases: object
Potential defined as
E = sum_i=1,n { Ai*cos^{i-1}(theta)
Input parameters: n, Ai
NB n is an integer dictating how many terms to sum, there should be n + 1 total parameters.
__dict__ = mappingproxy({'__str__': <function [Link].__str__>
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class lammps_interface.lammps_potentials.ImproperPotential
Bases: object
Class to hold improper styles that are implemented in lammps
class Class2
Bases: object
Potential defined as
E = Ei + Eaa
Ei = K*[(chi_ijkl + chi_kjli + chi_ljik)/3 - chi0]^2 Eaa = M1*(theta_ijk - theta1)*(theta_kjl - theta3) +
M2*(theta_ijk - theta1)*(theta_ijl - theta2) + M3*(theta_ijl - theta2)*(theta_kjl - theta3)
Input parameters: K, chi0
class AngleAngle
Bases: object
Potential defined as Eaa = M1*(theta_ijk - theta1)*(theta_kjl - theta3) +
M2*(theta_ijk - theta1)*(theta_ijl - theta2) + M3*(theta_ijl - theta2)*(theta_kjl - theta3)
Input parameters: M1 M2 M3 theta1 theta2 theta3
__dict__ = mappingproxy({'__str__': <function [Link]
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
__dict__ = mappingproxy({'__str__': <function ImproperPotential.Class2.__str__>, '
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Cossq
Bases: object
Potential defined as
E = 0.5*K*cos^2(chi - chi0)
Input parameters: K, chi0
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '_
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Cvff
Bases: object
Potential defined as
E = K*[1 + d*cos(n*theta)]
Input parameters: K, d, n
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '__
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Fourier
Bases: object
Potential defined as
E = K*[C0 + C1*cos(omega) + C2*cos(2*omega)]
Input parameters: K, C0, C1, C2, a
the parameter a allows all three angles to be taken into account in an improper dihedral. It is not clear in
the lammps manual what to set this to to turn it off/on, but the usual assumptions are 0/1.
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class HbondDreidingMorse
Bases: object
Potential defined as
E = D0*[exp{-2*alpha*(r-R0)} - 2*exp{-alpha*(r-R0)}]*cos^n(theta)
__dict__ = mappingproxy({'__str__': <function [Link].__s
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__repr__()
Return repr(self).
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class LjCharmmCoulLong
Bases: object
Potential defined as
E = 4*eps*[(sig/r)^12 - (sig/r)^6] r < rc
and coulombic terms dealt with a kspace solver
__dict__ = mappingproxy({'__str__': <function [Link].__str
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__repr__()
Return repr(self).
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class LjCut
Bases: object
Potential defined as
E = 4*eps*[(sig/r)^12 - (sig/r)^6] r < rc
__dict__ = mappingproxy({'__str__': <function [Link].__str__>, '__doc
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__repr__()
Return repr(self).
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class LjCutCoulLong
Bases: object
Potential defined as
E = 4*eps*[(sig/r)^12 - (sig/r)^6] r < rc
and coulombic terms dealt with a kspace solver
__dict__ = mappingproxy({'__str__': <function [Link].__str__>
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__repr__()
Return repr(self).
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class LjCutTip4pLong
Bases: object
Potential defined as
E = 4*eps*[(sig/r)^12 - (sig/r)^6] r < rc
and coulombic terms dealt with a kspace solver TIP4P water implicit charge points are included in ewald
sum.
__dict__ = mappingproxy({'__str__': <function PairPotential.LjCutTip4pLong.__str__
__init__()
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.lammps_potentials'
__repr__()
Return repr(self).
__str__()
Return str(self).
__weakref__
list of weak references to the object (if defined)
class Table
Bases: object
A tabulated potential is used
LAMMPS keyword arguments are passes as kwargs
MOF sbus.
lammps_interface.mof_sbus.add_distance_matrix(graph)
property b
Magnitude of cell b vector.
property beta
Cell angle beta.
property c
Magnitude of cell c vector.
property cell
Get the 3x3 vector cell representation.
property crystal_system
Return the IUCr designation for the crystal system.
property gamma
Cell angle gamma.
get_cell()
Get the 3x3 vector cell representation.
get_cell_inverse()
Get the 3x3 vector cell representation.
get_params()
Get the six parameter cell representation as a tuple.
property inverse
Inverted cell matrix for converting to fractional coordinates.
property lx
property ly
property lz
minimum_supercell(cutoff )
Calculate the smallest supercell with a half-cell width cutoff.
Increment from smallest cell vector to largest. So the supercell is not considering the ‘unit cell’ for each
cell dimension.
property minimum_width
The shortest perpendicular distance within the cell.
mod_to_UC(num)
Retrun any fractional coordinate back into the unit cell
orthogonal_transformation()
Compute the transformation from the original unit cell to a supercell which has 90 degree angles between
it’s basis vectors. This is somewhat approximate, and the angles will not be EXACTLY 90 deg.
property params
Get the six parameter cell representation as a tuple.
set_cell(value)
Set cell and params from the cell representation.
set_params(value)
Set cell and params from the cell parameters.
update_supercell(tuple)
property volume
Calculate cell volume [Link].
property xy
property xz
property yz
class lammps_interface.structure_data.MDMC_config(lammps_sim)
Bases: object
Very sloppy for now but just doing the bare minimum to get this up and running for methane in flexible materials
__dict__ = mappingproxy({'__doc__': '\n Very sloppy for now but just doing the bare mi
__init__(lammps_sim)
Initialize self. See help(type(self)) for accurate signature.
__module__ = 'lammps_interface.structure_data'
__weakref__
list of weak references to the object (if defined)
class lammps_interface.structure_data.MolecularGraph(**kwargs)
Bases: [Link]
Contains all information relating a structure file to a fully described classical system.
Important specific arguments for atomic nodes:
• mass
• force_field_type
• charge
• cartesian_coordinates
• description {contains all information about electronic environment to make a decision on the final
force_field_type}
• hybridization [sp3, sp2, sp, aromatic]
Important arguments for bond edges:
• weight = 1
• length
• image_flag
• force_field_type
__iadd__(newgraph)
__init__(**kwargs)
MolecularGraph constructor.
__module__ = 'lammps_interface.structure_data'
__or__(graph)
add_atomic_node(**kwargs)
Insert nodes into the graph from the cif file
add_bond_edge(**kwargs)
Add bond edges (weight factor = 1)
atomic_node_sanity_check()
Check for specific keyword/value pairs. Exit if non-existent
build_supercell(sc, lattice, track_molecule=False, molecule_len=0, redefine=None)
Construct a graph with nodes supporting the size of the supercell (sc) Oh man.. so ugly. NB: this replaces
and overwrites the original unit cell data
with a supercell. There may be a better way to do this if one needs to keep both the super- and
unit cells.
compute_angle_between(l, m, r)
compute_angles()
angles are attached to specific nodes, this way if a node is cut out of a graph, the angle comes with it.
b—–a
/
/
c
Must be updated with different adjacent nodes if a supercell is requested, and the angle crosses a periodic
image.
compute_bond_image_flag(n1, n2, cell)
Update bonds to contain bond type, distances, and min img shift.
compute_bond_typing()
Compute bond types and atom types based on the local edge environment. Messy, loads of ‘ifs’ is there a
better way to catch chemical features?
compute_bonding(cell, scale_factor=0.9)
Computes bonds between atoms based on covalent radii.
compute_cartesian_coordinates(cell)
Compute the cartesian coordinates for each atom node
compute_dihedral_between(a, b, c, d)
compute_dihedrals()
Dihedrals are attached to specific edges in the graph.
a
b–c d
the edge between b and c will contain all possible dihedral angles between the neighbours of b and c (this
includes a and d and other possible bonded atoms)
compute_improper_dihedrals()
Improper Dihedrals are attached to specific nodes in the graph.
a
b–c
the node b will contain all possible improper dihedral angles between the neighbours of b
compute_init_typing()
Find possible rings in the structure and initialize the hybridization for each atom. More refined determina-
tions of atom and bond types is computed below in compute_bond_typing
compute_min_img_distances(cell)
compute_topology_information(cell, tol, num_neighbours)
coplanar(node)
Determine if this node, and it’s neighbors are all co-planar.
correspondence_graph(graph, tol, general_metal=False, node_subset=None)
Generate a correspondence graph between the nodes and the SBU. tolerance is the distance tolerance for
the edge generation in the correspondence graph.
count_angles()
count_dihedrals()
count_impropers()
detect_clusters(num_neighbors, tol, type=’Inorganic’, general_metal=False)
Detect clusters such as the copper paddlewheel using maximum clique detection. This will assign specific
atoms with a special flag for use when building their force field.
setting general_metal to True will allow for cluster recognition of inorganic SBUs while ignoring the
specific element type of the metal, so long as it is a metal, it will be paired with other metals. This may
increase the time for SBU recognition.
edges_iter2(data=True)
fractional(coord)
img_offset(cells, cell, maxcell, flag, redefine, n1=0)
in_cell(coord)
min_img(coord)
min_img_distance(coords1, coords2, cell)
node_dict_factory
alias of [Link]
nodes_iter2(data=True)
Oh man, fixing to networkx 2.0
This probably breaks a lot of stuff in the code. THANKS NETWORKX!!!!!!!1 Extensive testing under
way. . .
recurse_bonds_to_end(node, pool=[], visited=[])
recurse_linear_chains(node, visited=[], excluded=[])
Messy recursion function to return all unique chains from a set of atoms between two metals (or terminal
atoms in the case of molecules)
redefine_lattice(redefinition, lattice)
Redefines the lattice based on the old lattice vectors. This was designed to convert non-orthogonal cells
to orthogonal boxes, but it could in principle be used to convert any cell to any other cell. (As long as the
redefined lattice are integer multiples of the old vectors)
reorder_labels(reorder_dic)
Re-order the labels of the nodes so that LAMMPS doesn’t complain. This issue only arises when a su-
percell is built, but isolated molecules are not replicated in the supercell (by user request). This creates a
discontinuity in the indices of the atoms, which breaks some features in LAMMPS.
show()
sorted_edge_list()
sorted_node_list()
store_original_size()
subgraph(nodelist)
Have to override subgraph from networkx. No idea why, but when [Link] is called in nx v >=
2.0, it returns a Graph object, not a MolecularGraph.
unwrap_node_coordinates(cell)
Must be done before supercell generation. This is a recursive method iterating over all edges. The design
is totally unpythonic and written in about 5 mins.. so be nice (PB)
update_symflag(cell, symflag, mincell, maxcell)
lammps_interface.structure_data.clean(name)
lammps_interface.structure_data.del_parenth(string)
lammps_interface.structure_data.from_CIF(cifname)
Reads the structure data from the CIF - currently does not read the symmetry of the cell - does not unpack the
assymetric unit (assumes P1) - assumes that the appropriate keys are in the cifobj (no error checking)
lammps_interface.structure_data.write_CIF(graph, cell)
Currently used for debugging purposes
lammps_interface.structure_data.write_PDB(graph, cell)
Program to write pdb file from structure graph. Doing this because MS v. 6 doesn’t do the CONECT lines
correctly.
lammps_interface.structure_data.write_RASPA_CIF(graph, cell, classifier=0)
Same as debugging cif write routine except _atom_site_label is now equal to _atom_site_description b/c
RASPA uses _atom_site_label as the type for assigning FF params
lammps_interface.structure_data.write_RASPA_sim_files(lammps_sim, classifier=0)
Write the RASPA pseudo_atoms.def file for this MOF All generic adsorbates info automatically included Addi-
tional framework atoms taken from lammps_interface anaylsis
classifier = 0 -> UFF atom label is used for pseudo atoms classifier = 1 -> cif label is used for pseudo atoms
(useful for
interface/defect systems where symmetry of charge density is very reduced)
Water models.
Lammps interface.
This program was designed for easy interface between the crystallographic information file (.cif) and the Large-scale
Atomic Molecular Massively Parallel Simulator (Lammps).
THREE
INSTALLATION
For development purposes, clone the repository and install it from source:
pip install -e .
51
lammps-interface, Release 0.1.1
52 Chapter 3. Installation
CHAPTER
FOUR
USAGE
lammps-interface --help
lammps-interface cif_file.cif
In order to implement module to your project check out Jupyter notebooks provided in this repository in /notebooks
for usage examples.
53
lammps-interface, Release 0.1.1
54 Chapter 4. Usage
CHAPTER
FIVE
LICENCE
55
lammps-interface, Release 0.1.1
56 Chapter 5. Licence
CHAPTER
SIX
CITATION
57
lammps-interface, Release 0.1.1
58 Chapter 6. Citation
CHAPTER
SEVEN
• genindex
• modindex
• search
59
lammps-interface, Release 0.1.1
l
lammps_interface, 49
lammps_interface.atomic, 17
lammps_interface.BTW, 3
lammps_interface.ccdc, 17
lammps_interface.CIFIO, 3
lammps_interface.create_cluster_v2, 17
lammps_interface.dreiding, 21
lammps_interface.Dubbeldam, 4
lammps_interface.ForceFields, 4
lammps_interface.gas_models, 21
lammps_interface.generic_raspa, 21
lammps_interface.InputHandler, 15
lammps_interface.lammps_main, 21
lammps_interface.lammps_potentials, 23
lammps_interface.mof_sbus, 43
lammps_interface.MOFFF, 15
lammps_interface.Molecules, 15
lammps_interface.structure_data, 43
lammps_interface.uff, 48
lammps_interface.uff4mof, 48
lammps_interface.uff_nonbonded, 49
lammps_interface.water_models, 49
61
lammps-interface, Release 0.1.1
Symbols attribute), 26
_Cell__mkcell() (lammps_interface.structure_data.Cell__dict__ (lammps_interface.lammps_potentials.[Link]
method), 43 attribute), 26
_Cell__mklammps() __dict__ (lammps_interface.lammps_potentials.[Link]
(lammps_interface.structure_data.Cell attribute), 27
method), 43 __dict__ (lammps_interface.lammps_potentials.[Link]
_Cell__mkparam() (lammps_interface.structure_data.Cell attribute), 27
method), 43 __dict__ (lammps_interface.lammps_potentials.[Link]
__dict__ (lammps_interface.[Link] attribute), 3 attribute), 27
__dict__ (lammps_interface.[Link] __dict__ (lammps_interface.lammps_potentials.[Link]
attribute), 8 attribute), 28
__dict__ (lammps_interface.[Link] at- __dict__ (lammps_interface.lammps_potentials.[Link]
tribute), 15 attribute), 28
__dict__ (lammps_interface.create_cluster_v2.Cluster __dict__ (lammps_interface.lammps_potentials.BondPotential
attribute), 17 attribute), 32
__dict__
__dict__ (lammps_interface.create_cluster_v2.LammpsSimulation (lammps_interface.lammps_potentials.BondPotential.Class2
attribute), 20 attribute), 28
__dict__
__dict__ (lammps_interface.lammps_main.LammpsSimulation (lammps_interface.lammps_potentials.[Link]
attribute), 21 attribute), 29
__dict__
__dict__ (lammps_interface.lammps_potentials.AnglePotential (lammps_interface.lammps_potentials.[Link]
attribute), 28 attribute), 29
__dict__
__dict__ (lammps_interface.lammps_potentials.[Link](lammps_interface.lammps_potentials.[Link]
attribute), 23 attribute), 29
__dict__
__dict__ (lammps_interface.lammps_potentials.AnglePotential.Class2(lammps_interface.lammps_potentials.[Link]
attribute), 24 attribute), 30
__dict__ (lammps_interface.lammps_potentials.[Link]
__dict__ (lammps_interface.lammps_potentials.[Link]
attribute), 23 attribute), 30
__dict__ (lammps_interface.lammps_potentials.[Link]
__dict__ (lammps_interface.lammps_potentials.[Link]
attribute), 23 attribute), 30
__dict__ (lammps_interface.lammps_potentials.[Link]
__dict__ (lammps_interface.lammps_potentials.[Link]
attribute), 24 attribute), 31
__dict__ (lammps_interface.lammps_potentials.[Link]
__dict__ (lammps_interface.lammps_potentials.[Link]
attribute), 24 attribute), 31
__dict__ (lammps_interface.lammps_potentials.[Link]
__dict__ (lammps_interface.lammps_potentials.[Link]
attribute), 25 attribute), 31
__dict__ (lammps_interface.lammps_potentials.DihedralPotential
__dict__ (lammps_interface.lammps_potentials.[Link]
attribute), 25 attribute), 36
__dict__ (lammps_interface.lammps_potentials.[Link]
__dict__ (lammps_interface.lammps_potentials.[Link]
attribute), 25 attribute), 32
__dict__ (lammps_interface.lammps_potentials.DihedralPotential.Class2
__dict__ (lammps_interface.lammps_potentials.[Link]
attribute), 26 attribute), 34
__dict__
__dict__ (lammps_interface.lammps_potentials.[Link](lammps_interface.lammps_potentials.DihedralPotential.Class2
63
lammps-interface, Release 0.1.1
attribute), 32 attribute), 41
__dict__ (lammps_interface.lammps_potentials.[Link]
__dict__ (lammps_interface.lammps_potentials.[Link]
attribute), 33 attribute), 41
__dict__ (lammps_interface.lammps_potentials.DihedralPotential.Class2.BondBond13
__dict__ (lammps_interface.lammps_potentials.[Link]
attribute), 33 attribute), 42
__dict__ (lammps_interface.lammps_potentials.[Link]
__dict__ (lammps_interface.lammps_potentials.PairPotential.LjCutTip4p
attribute), 33 attribute), 42
__dict__ (lammps_interface.lammps_potentials.[Link]
__dict__ (lammps_interface.lammps_potentials.[Link]
attribute), 33 attribute), 42
__dict__ (lammps_interface.lammps_potentials.[Link]
__dict__ (lammps_interface.structure_data.Cell at-
attribute), 34 tribute), 43
__dict__ (lammps_interface.lammps_potentials.[Link]
__dict__ (lammps_interface.structure_data.MDMC_config
attribute), 34 attribute), 45
__dict__ (lammps_interface.lammps_potentials.[Link]
__iadd__() (lammps_interface.structure_data.MolecularGraph
attribute), 35 method), 45
__dict__ (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.[Link] method), 3
attribute), 35 __init__() (lammps_interface.ForceFields.BTW_FF
__dict__ (lammps_interface.lammps_potentials.[Link]
method), 4
attribute), 35 __init__() (lammps_interface.[Link]
__dict__ (lammps_interface.lammps_potentials.[Link]
method), 5
attribute), 36 __init__() (lammps_interface.[Link]
__dict__ (lammps_interface.lammps_potentials.[Link]
method), 6
attribute), 36 __init__() (lammps_interface.ForceFields.EPM2_CO2
__dict__ (lammps_interface.lammps_potentials.[Link]
method), 7
attribute), 36 __init__() (lammps_interface.[Link]
__dict__ (lammps_interface.lammps_potentials.[Link]
method), 7
attribute), 37 __init__() (lammps_interface.ForceFields.MOF_FF
__dict__ (lammps_interface.lammps_potentials.ImproperPotential method), 8
attribute), 40 __init__() (lammps_interface.[Link]
__dict__ (lammps_interface.lammps_potentials.ImproperPotential.Class2
method), 9
attribute), 37 __init__() (lammps_interface.ForceFields.SPC_E
__dict__ (lammps_interface.lammps_potentials.[Link]
method), 10
attribute), 37 __init__() (lammps_interface.ForceFields.TIP3P
__dict__ (lammps_interface.lammps_potentials.[Link]
method), 10
attribute), 38 __init__() (lammps_interface.ForceFields.TIP4P
__dict__ (lammps_interface.lammps_potentials.[Link]
method), 11
attribute), 38 __init__() (lammps_interface.ForceFields.TIP5P
__dict__ (lammps_interface.lammps_potentials.[Link]
method), 12
attribute), 38 __init__() (lammps_interface.[Link]
__dict__ (lammps_interface.lammps_potentials.[Link]
method), 12
attribute), 39 __init__() (lammps_interface.ForceFields.UFF4MOF
__dict__ (lammps_interface.lammps_potentials.[Link]
method), 13
attribute), 39 __init__() (lammps_interface.[Link]
__dict__ (lammps_interface.lammps_potentials.[Link]
method), 14
attribute), 40 __init__() (lammps_interface.[Link]
__dict__ (lammps_interface.lammps_potentials.PairPotential method), 15
attribute), 43 __init__() (lammps_interface.Molecules.EPM2_CO2
__dict__ (lammps_interface.lammps_potentials.[Link]), 15
attribute), 40 __init__() (lammps_interface.Molecules.TIP4P_Water
__dict__ (lammps_interface.lammps_potentials.[Link]
method), 16
attribute), 40 __init__() (lammps_interface.Molecules.TIP5P_Water
__dict__ (lammps_interface.lammps_potentials.[Link]
method), 16
attribute), 41 __init__() (lammps_interface.create_cluster_v2.Cluster
__dict__ (lammps_interface.lammps_potentials.[Link]
method), 17
64 Index
lammps-interface, Release 0.1.1
__init__() (lammps_interface.create_cluster_v2.LammpsSimulation
__init__() (lammps_interface.lammps_potentials.[Link]
method), 20 method), 31
__init__() (lammps_interface.lammps_main.LammpsSimulation
__init__() (lammps_interface.lammps_potentials.[Link]
method), 21 method), 31
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 23 method), 32
__init__() (lammps_interface.lammps_potentials.AnglePotential.Class2
__init__() (lammps_interface.lammps_potentials.[Link]
method), 24 method), 34
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 23 method), 32
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 24 method), 33
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 24 method), 33
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 24 method), 33
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 25 method), 33
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 25 method), 34
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 25 method), 34
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 26 method), 35
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 26 method), 35
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 26 method), 35
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 27 method), 36
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 27 method), 36
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 27 method), 36
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 28 method), 37
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 28 method), 37
__init__() (lammps_interface.lammps_potentials.BondPotential.Class2
__init__() (lammps_interface.lammps_potentials.[Link]
method), 28 method), 37
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 29 method), 38
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 29 method), 38
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 29 method), 39
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 30 method), 39
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 30 method), 39
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 30 method), 40
__init__() (lammps_interface.lammps_potentials.[Link]
__init__() (lammps_interface.lammps_potentials.[Link]
method), 31 method), 40
Index 65
lammps-interface, Release 0.1.1
__init__() (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.[Link]
method), 40 attribute), 15
__init__() (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.Molecules.CO2
method), 41 attribute), 15
__init__() (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.Molecules.EPM2_CO2
method), 41 attribute), 16
__init__() (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.[Link]
method), 41 attribute), 16
__init__() (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.Molecules.TIP4P_Water
method), 42 attribute), 16
__init__() (lammps_interface.lammps_potentials.PairPotential.LjCutTip4pLong
__module__ (lammps_interface.Molecules.TIP5P_Water
method), 42 attribute), 16
__init__() (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.[Link] at-
method), 43 tribute), 17
__init__() (lammps_interface.structure_data.Cell __module__ (lammps_interface.create_cluster_v2.Cluster
method), 43 attribute), 18
__init__() (lammps_interface.structure_data.MDMC_config
__module__ (lammps_interface.create_cluster_v2.LammpsSimulation
method), 45 attribute), 20
__init__() (lammps_interface.structure_data.MolecularGraph
__module__ (lammps_interface.lammps_main.LammpsSimulation
method), 45 attribute), 21
__metaclass__ (lammps_interface.[Link]
__module__ (lammps_interface.lammps_potentials.AnglePotential
attribute), 8 attribute), 28
__module__ (lammps_interface.[Link] attribute), __module__ (lammps_interface.lammps_potentials.[Link]
3 attribute), 23
__module__ (lammps_interface.ForceFields.BTW_FF __module__ (lammps_interface.lammps_potentials.AnglePotential.Class2
attribute), 4 attribute), 24
__module__ (lammps_interface.[Link] __module__ (lammps_interface.lammps_potentials.AnglePotential.Class2
attribute), 5 attribute), 23
__module__ (lammps_interface.[Link] __module__ (lammps_interface.lammps_potentials.AnglePotential.Class2
attribute), 6 attribute), 24
__module__ (lammps_interface.ForceFields.EPM2_CO2 __module__ (lammps_interface.lammps_potentials.[Link]
attribute), 7 attribute), 24
__module__ (lammps_interface.[Link] __module__ (lammps_interface.lammps_potentials.[Link]
attribute), 7 attribute), 24
__module__ (lammps_interface.[Link] __module__ (lammps_interface.lammps_potentials.[Link]
attribute), 8 attribute), 25
__module__ (lammps_interface.ForceFields.MOF_FF __module__ (lammps_interface.lammps_potentials.[Link]
attribute), 8 attribute), 25
__module__ (lammps_interface.ForceFields.OverwriteFF__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 9 attribute), 25
__module__ (lammps_interface.ForceFields.SPC_E __module__ (lammps_interface.lammps_potentials.[Link]
attribute), 10 attribute), 26
__module__ (lammps_interface.ForceFields.TIP3P at- __module__ (lammps_interface.lammps_potentials.[Link]
tribute), 10 attribute), 26
__module__ (lammps_interface.ForceFields.TIP4P at- __module__ (lammps_interface.lammps_potentials.[Link]
tribute), 11 attribute), 26
__module__ (lammps_interface.ForceFields.TIP5P at- __module__ (lammps_interface.lammps_potentials.[Link]
tribute), 12 attribute), 27
__module__ (lammps_interface.[Link] at- __module__ (lammps_interface.lammps_potentials.[Link]
tribute), 12 attribute), 27
__module__ (lammps_interface.ForceFields.UFF4MOF __module__ (lammps_interface.lammps_potentials.[Link]
attribute), 13 attribute), 27
__module__ (lammps_interface.[Link] __module__ (lammps_interface.lammps_potentials.[Link]
attribute), 14 attribute), 28
66 Index
lammps-interface, Release 0.1.1
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 28 attribute), 36
__module__ (lammps_interface.lammps_potentials.BondPotential
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 32 attribute), 37
__module__ (lammps_interface.lammps_potentials.BondPotential.Class2
__module__ (lammps_interface.lammps_potentials.ImproperPotential
attribute), 28 attribute), 40
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 29 attribute), 38
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 29 attribute), 37
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 30 attribute), 38
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 30 attribute), 38
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 30 attribute), 39
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 31 attribute), 39
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 31 attribute), 39
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 31 attribute), 40
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.lammps_potentials.PairPotential
attribute), 31 attribute), 43
__module__ (lammps_interface.lammps_potentials.DihedralPotential
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 36 attribute), 40
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 32 attribute), 40
__module__ (lammps_interface.lammps_potentials.DihedralPotential.Class2
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 34 attribute), 41
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 32 attribute), 41
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 33 attribute), 41
__module__ (lammps_interface.lammps_potentials.DihedralPotential.Class2.BondBond13
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 33 attribute), 42
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 33 attribute), 42
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.lammps_potentials.[Link]
attribute), 33 attribute), 43
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.structure_data.Cell
attribute), 34 attribute), 43
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.structure_data.MDMC_config
attribute), 34 attribute), 45
__module__ (lammps_interface.lammps_potentials.[Link]
__module__ (lammps_interface.structure_data.MolecularGraph
attribute), 35 attribute), 45
__module__ (lammps_interface.lammps_potentials.[Link]
__or__() (lammps_interface.structure_data.MolecularGraph
attribute), 35 method), 45
__module__ (lammps_interface.lammps_potentials.[Link]
__repr__() (lammps_interface.lammps_potentials.[Link]
attribute), 35 method), 40
__module__ (lammps_interface.lammps_potentials.[Link]
__repr__() (lammps_interface.lammps_potentials.[Link]
attribute), 36 method), 40
__module__ (lammps_interface.lammps_potentials.[Link]
__repr__() (lammps_interface.lammps_potentials.[Link]
attribute), 36 method), 41
Index 67
lammps-interface, Release 0.1.1
__repr__() (lammps_interface.lammps_potentials.[Link]
method), 30
method), 41 __str__() (lammps_interface.lammps_potentials.[Link]
__repr__() (lammps_interface.lammps_potentials.[Link]
method), 31
method), 41 __str__() (lammps_interface.lammps_potentials.[Link]
__repr__() (lammps_interface.lammps_potentials.[Link]
method), 31
method), 42 __str__() (lammps_interface.lammps_potentials.[Link]
__repr__() (lammps_interface.lammps_potentials.PairPotential.LjCutTip4pLong
method), 31
method), 42 __str__() (lammps_interface.lammps_potentials.[Link]
__repr__() (lammps_interface.lammps_potentials.[Link]
method), 32
method), 43 __str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.[Link] method), 3 method), 34
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 23 method), 32
__str__() (lammps_interface.lammps_potentials.AnglePotential.Class2
__str__() (lammps_interface.lammps_potentials.[Link]
method), 24 method), 33
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 23 method), 33
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 24 method), 33
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 24 method), 34
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 24 method), 34
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 25 method), 34
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 25 method), 35
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 25 method), 35
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 26 method), 35
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 26 method), 36
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 26 method), 36
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 27 method), 37
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 27 method), 38
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 27 method), 37
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 28 method), 38
__str__() (lammps_interface.lammps_potentials.BondPotential.Class2
__str__() (lammps_interface.lammps_potentials.[Link]
method), 29 method), 38
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 29 method), 39
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 29 method), 39
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 30 method), 39
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
method), 30 method), 40
__str__() (lammps_interface.lammps_potentials.[Link]
__str__() (lammps_interface.lammps_potentials.[Link]
68 Index
lammps-interface, Release 0.1.1
method), 40 attribute), 27
__str__() (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 40 attribute), 27
__str__() (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 41 attribute), 28
__str__() (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 41 attribute), 28
__str__() (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 42 attribute), 28
__str__() (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.BondPotential
method), 42 attribute), 32
__str__() (lammps_interface.lammps_potentials.PairPotential.LjCutTip4pLong
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 42 attribute), 29
__str__() (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 43 attribute), 29
__weakref__ (lammps_interface.[Link] at- __weakref__ (lammps_interface.lammps_potentials.[Link]
tribute), 3 attribute), 29
__weakref__ (lammps_interface.[Link] __weakref__ (lammps_interface.lammps_potentials.[Link]
attribute), 8 attribute), 30
__weakref__ (lammps_interface.[Link] __weakref__ (lammps_interface.lammps_potentials.[Link]
attribute), 15 attribute), 30
__weakref__ (lammps_interface.create_cluster_v2.Cluster
__weakref__ (lammps_interface.lammps_potentials.[Link]
attribute), 18 attribute), 30
__weakref__ (lammps_interface.create_cluster_v2.LammpsSimulation
__weakref__ (lammps_interface.lammps_potentials.[Link]
attribute), 20 attribute), 31
__weakref__ (lammps_interface.lammps_main.LammpsSimulation
__weakref__ (lammps_interface.lammps_potentials.[Link]
attribute), 21 attribute), 31
__weakref__ (lammps_interface.lammps_potentials.AnglePotential
__weakref__ (lammps_interface.lammps_potentials.[Link]
attribute), 28 attribute), 31
__weakref__ (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.[Link]
attribute), 23 attribute), 31
__weakref__ (lammps_interface.lammps_potentials.AnglePotential.Class2
__weakref__ (lammps_interface.lammps_potentials.DihedralPotential
attribute), 24 attribute), 36
__weakref__ (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.DihedralPotential.C
attribute), 23 attribute), 32
__weakref__ (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.DihedralPotential.C
attribute), 24 attribute), 34
__weakref__ (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.DihedralPotential.C
attribute), 24 attribute), 32
__weakref__ (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.DihedralPotential.C
attribute), 24 attribute), 33
__weakref__ (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.DihedralPotential.C
attribute), 25 attribute), 33
__weakref__ (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.DihedralPotential.C
attribute), 25 attribute), 33
__weakref__ (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.DihedralPotential.C
attribute), 25 attribute), 34
__weakref__ (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.DihedralPotential.C
attribute), 26 attribute), 34
__weakref__ (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.DihedralPotential.F
attribute), 26 attribute), 34
__weakref__ (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.DihedralPotential.H
attribute), 26 attribute), 35
__weakref__ (lammps_interface.lammps_potentials.[Link]
__weakref__ (lammps_interface.lammps_potentials.DihedralPotential.H
Index 69
lammps-interface, Release 0.1.1
attribute), 35 property), 16
__weakref__ (lammps_interface.lammps_potentials.[Link]
attribute), 35 A
__weakref__ (lammps_interface.lammps_potentials.[Link]
a() (lammps_interface.structure_data.Cell property), 43
attribute), 36 add_atomic_node()
__weakref__ (lammps_interface.lammps_potentials.[Link]
(lammps_interface.structure_data.MolecularGraph
attribute), 36 method), 45
__weakref__ (lammps_interface.lammps_potentials.[Link]
add_bond_edge() (lammps_interface.structure_data.MolecularGraph
attribute), 36 method), 45
__weakref__ (lammps_interface.lammps_potentials.[Link]
add_co2_model() (lammps_interface.lammps_main.LammpsSimulation
attribute), 37 method), 21
__weakref__ (lammps_interface.lammps_potentials.ImproperPotential
add_data() (lammps_interface.[Link] method), 3
attribute), 40 add_distance_matrix() (in module
__weakref__ (lammps_interface.lammps_potentials.ImproperPotential.Class2
lammps_interface.mof_sbus), 43
attribute), 38 add_water_model()
__weakref__ (lammps_interface.lammps_potentials.[Link]
(lammps_interface.create_cluster_v2.LammpsSimulation
attribute), 37 method), 20
__weakref__ (lammps_interface.lammps_potentials.[Link]
add_water_model()
attribute), 38 (lammps_interface.lammps_main.LammpsSimulation
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 22
attribute), 38 alpha() (lammps_interface.structure_data.Cell prop-
__weakref__ (lammps_interface.lammps_potentials.[Link]
erty), 43
attribute), 39 angle_term() (lammps_interface.ForceFields.BTW_FF
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 4
attribute), 39 angle_term() (lammps_interface.[Link]
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 5
attribute), 39 angle_term() (lammps_interface.[Link]
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 6
attribute), 40 angle_term() (lammps_interface.ForceFields.EPM2_CO2
__weakref__ (lammps_interface.lammps_potentials.PairPotential method), 7
attribute), 43 angle_term() (lammps_interface.[Link]
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 8
attribute), 40 angle_term() (lammps_interface.[Link]
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 8
attribute), 41 angle_term() (lammps_interface.ForceFields.MOF_FF
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 8
attribute), 41 angle_term() (lammps_interface.ForceFields.SPC_E
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 10
attribute), 41 angle_term() (lammps_interface.ForceFields.TIP3P
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 10
attribute), 42 angle_term() (lammps_interface.ForceFields.TIP4P
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 11
attribute), 42 angle_term() (lammps_interface.ForceFields.TIP5P
__weakref__ (lammps_interface.lammps_potentials.PairPotential.LjCutTip4pLong
method), 12
attribute), 42 angle_term() (lammps_interface.[Link]
__weakref__ (lammps_interface.lammps_potentials.[Link]
method), 12
attribute), 43 angle_term() (lammps_interface.ForceFields.UFF4MOF
__weakref__ (lammps_interface.structure_data.Cell method), 13
attribute), 43 angle_term() (lammps_interface.[Link]
__weakref__ (lammps_interface.structure_data.MDMC_config method), 14
attribute), 45 AnglePotential (class in
_set_attr() (lammps_interface.[Link] lammps_interface.lammps_potentials), 23
method), 15 [Link] (class in
_type_() (lammps_interface.[Link] lammps_interface.lammps_potentials), 23
70 Index
lammps-interface, Release 0.1.1
Index 71
lammps-interface, Release 0.1.1
72 Index
lammps-interface, Release 0.1.1
compute_cluster_in_disgraph() compute_simulation_size()
(lammps_interface.create_cluster_v2.Cluster (lammps_interface.lammps_main.LammpsSimulation
method), 18 method), 22
compute_cluster_in_tree() compute_topology_information()
(lammps_interface.create_cluster_v2.Cluster (lammps_interface.structure_data.MolecularGraph
method), 18 method), 47
compute_dihedral_between() construct_data_file()
(lammps_interface.structure_data.MolecularGraph (lammps_interface.create_cluster_v2.LammpsSimulation
method), 46 method), 20
compute_dihedral_terms() construct_data_file()
(lammps_interface.[Link] (lammps_interface.lammps_main.LammpsSimulation
method), 8 method), 22
compute_dihedrals() construct_input_file()
(lammps_interface.structure_data.MolecularGraph (lammps_interface.create_cluster_v2.LammpsSimulation
method), 46 method), 20
compute_force_field_terms() construct_input_file()
(lammps_interface.[Link] (lammps_interface.lammps_main.LammpsSimulation
method), 8 method), 22
compute_force_field_terms() coplanar() (lammps_interface.structure_data.MolecularGraph
(lammps_interface.[Link] method), 47
method), 14 correspondence_graph()
compute_improper_dihedrals() (lammps_interface.structure_data.MolecularGraph
(lammps_interface.structure_data.MolecularGraph method), 47
method), 46 count_angles() (lammps_interface.create_cluster_v2.LammpsSimulati
compute_improper_terms() method), 20
(lammps_interface.[Link] count_angles() (lammps_interface.structure_data.MolecularGraph
method), 8 method), 47
compute_init_typing() count_dihedrals()
(lammps_interface.structure_data.MolecularGraph (lammps_interface.create_cluster_v2.LammpsSimulation
method), 47 method), 20
compute_midpoint_vector() count_dihedrals()
(lammps_interface.[Link] method), (lammps_interface.structure_data.MolecularGraph
17 method), 47
compute_min_img_distances() count_impropers()
(lammps_interface.structure_data.MolecularGraph (lammps_interface.create_cluster_v2.LammpsSimulation
method), 47 method), 20
compute_molecules() count_impropers()
(lammps_interface.create_cluster_v2.LammpsSimulation (lammps_interface.structure_data.MolecularGraph
method), 20 method), 47
compute_molecules() create_cluster_around_point()
(lammps_interface.lammps_main.LammpsSimulation (lammps_interface.create_cluster_v2.Cluster
method), 22 method), 18
compute_orthogonal_vector() create_cluster_around_point_v2()
(lammps_interface.[Link] method), (lammps_interface.create_cluster_v2.Cluster
17 method), 18
compute_primary_cluster() create_cluster_around_point_v3()
(lammps_interface.create_cluster_v2.Cluster (lammps_interface.create_cluster_v2.Cluster
method), 18 method), 18
compute_required_caps() crystal_system() (lammps_interface.structure_data.Cell
(lammps_interface.create_cluster_v2.Cluster property), 44
method), 18 cut_cappable_bonds()
compute_simulation_size() (lammps_interface.create_cluster_v2.Cluster
(lammps_interface.create_cluster_v2.LammpsSimulation method), 18
method), 20 cut_molecule() (lammps_interface.create_cluster_v2.LammpsSimulati
Index 73
lammps-interface, Release 0.1.1
method), 20 method), 9
cut_molecule() (lammps_interface.lammps_main.LammpsSimulation
detect_ff_terms()
method), 22 (lammps_interface.ForceFields.SPC_E
cxtd_comp_cap() (lammps_interface.create_cluster_v2.Cluster method), 10
method), 18 detect_ff_terms()
cxtd_comp_continuous() (lammps_interface.ForceFields.TIP3P
(lammps_interface.create_cluster_v2.Cluster method), 11
method), 18 detect_ff_terms()
cxtd_comp_convert_to_orig() (lammps_interface.ForceFields.TIP4P
(lammps_interface.create_cluster_v2.Cluster method), 11
method), 18 detect_ff_terms()
cxtd_comp_from_undirected() (lammps_interface.ForceFields.TIP5P
(lammps_interface.create_cluster_v2.Cluster method), 12
method), 18 detect_ff_terms()
cxtd_comp_num_keep() (lammps_interface.[Link] method),
(lammps_interface.create_cluster_v2.Cluster 13
method), 18 detect_ff_terms()
cxtd_comp_secondary_graph() (lammps_interface.ForceFields.UFF4MOF
(lammps_interface.create_cluster_v2.Cluster method), 13
method), 18 dihedral_term() (lammps_interface.ForceFields.BTW_FF
cxtd_comp_to_keep() method), 5
(lammps_interface.create_cluster_v2.Cluster dihedral_term() (lammps_interface.[Link]
method), 18 method), 5
dihedral_term() (lammps_interface.[Link]
D method), 6
debug_edges_to_cut() dihedral_term() (lammps_interface.ForceFields.EPM2_CO2
(lammps_interface.create_cluster_v2.Cluster method), 7
method), 19 dihedral_term() (lammps_interface.[Link]
method), 8
define_styles() (lammps_interface.create_cluster_v2.LammpsSimulation
method), 20 dihedral_term() (lammps_interface.[Link]
method), 8
define_styles() (lammps_interface.lammps_main.LammpsSimulation
method), 22 dihedral_term() (lammps_interface.ForceFields.MOF_FF
del_parenth() (in module method), 9
lammps_interface.structure_data), 48 dihedral_term() (lammps_interface.ForceFields.SPC_E
detect_clusters() method), 10
dihedral_term() (lammps_interface.ForceFields.TIP3P
(lammps_interface.structure_data.MolecularGraph
method), 47 method), 11
detect_ff_terms() dihedral_term() (lammps_interface.ForceFields.TIP4P
(lammps_interface.ForceFields.BTW_FF method), 11
method), 5 dihedral_term() (lammps_interface.ForceFields.TIP5P
detect_ff_terms() method), 12
(lammps_interface.[Link] dihedral_term() (lammps_interface.[Link]
method), 5 method), 13
detect_ff_terms() dihedral_term() (lammps_interface.ForceFields.UFF4MOF
(lammps_interface.[Link] method), 14
method), 6 dihedral_term() (lammps_interface.[Link]
detect_ff_terms() method), 14
(lammps_interface.ForceFields.EPM2_CO2 DihedralPotential (class in
method), 7 lammps_interface.lammps_potentials), 32
detect_ff_terms() [Link] (class in
(lammps_interface.[Link] lammps_interface.lammps_potentials), 32
method), 8 DihedralPotential.Class2 (class in
detect_ff_terms() lammps_interface.lammps_potentials), 32
(lammps_interface.ForceFields.MOF_FF [Link]
74 Index
lammps-interface, Release 0.1.1
(class in lammps_interface.lammps_potentials), F
32 fixcount() (lammps_interface.create_cluster_v2.LammpsSimulation
[Link] method), 20
(class in lammps_interface.lammps_potentials), fixcount() (lammps_interface.lammps_main.LammpsSimulation
32 method), 22
DihedralPotential.Class2.BondBond13 FMOFCu (class in lammps_interface.ForceFields), 7
(class in lammps_interface.lammps_potentials), ForceField (class in lammps_interface.ForceFields),
33 8
[Link] fractional() (lammps_interface.structure_data.MolecularGraph
(class in lammps_interface.lammps_potentials), method), 47
33 from_CIF() (in module
[Link] lammps_interface.structure_data), 48
(class in lammps_interface.lammps_potentials),
33 G
[Link] (class in
gamma() (lammps_interface.structure_data.Cell prop-
lammps_interface.lammps_potentials), 34
erty), 44
[Link] (class in
general_label() (lammps_interface.[Link]
lammps_interface.lammps_potentials), 34
static method), 4
[Link] (class in
geom_bond_atom_site_label_1()
lammps_interface.lammps_potentials), 35
(lammps_interface.[Link] static method),
[Link] (class in
4
lammps_interface.lammps_potentials), 35
geom_bond_atom_site_label_2()
[Link] (class in
(lammps_interface.[Link] static method),
lammps_interface.lammps_potentials), 35
4
[Link] (class in
geom_bond_distance()
lammps_interface.lammps_potentials), 37
(lammps_interface.[Link] static method),
[Link] (class in
4
lammps_interface.lammps_potentials), 36
geom_bond_site_symmetry_2()
[Link] (class in
(lammps_interface.[Link] static method),
lammps_interface.lammps_potentials), 36
4
[Link] (class in
get_BFS_tree() (lammps_interface.create_cluster_v2.Cluster
lammps_interface.lammps_potentials), 36
method), 19
disconnect_1D_building_blocks()
get_cell() (lammps_interface.structure_data.Cell
(lammps_interface.create_cluster_v2.Cluster
method), 44
method), 19
get_cell_inverse()
disconnect_external_building_blocks()
(lammps_interface.structure_data.Cell
(lammps_interface.create_cluster_v2.Cluster
method), 44
method), 19
get_element_label()
DOD (lammps_interface.Molecules.TIP5P_Water at-
(lammps_interface.[Link] method),
tribute), 16
4
Dreiding (class in lammps_interface.ForceFields), 5
get_non_loop_block()
Dubbeldam (class in lammps_interface.ForceFields), 6
(lammps_interface.[Link] method),
dummy() (lammps_interface.Molecules.TIP4P_Water
4
property), 16
get_nth_heirarcy_BFS_tree()
dummy() (lammps_interface.Molecules.TIP5P_Water
(lammps_interface.create_cluster_v2.Cluster
property), 16
method), 19
get_params() (lammps_interface.structure_data.Cell
E method), 44
edges_iter2() (lammps_interface.structure_data.MolecularGraph
get_start_and_kept_nodes()
method), 47 (lammps_interface.create_cluster_v2.Cluster
EPM2_CO2 (class in lammps_interface.ForceFields), 7 method), 19
EPM2_CO2 (class in lammps_interface.Molecules), 15 get_time() (in module lammps_interface.CIFIO), 4
get_time() (lammps_interface.[Link] method), 4
Index 75
lammps-interface, Release 0.1.1
76 Index
lammps-interface, Release 0.1.1
Index 77
lammps-interface, Release 0.1.1
O PairPotential.LjCutTip4pLong (class in
O_coord() (lammps_interface.Molecules.CO2 prop- lammps_interface.lammps_potentials), 42
erty), 15 [Link] (class in
Options (class in lammps_interface.InputHandler), 15 lammps_interface.lammps_potentials), 42
orthogonal_transformation() params() (lammps_interface.structure_data.Cell prop-
(lammps_interface.structure_data.Cell erty), 44
method), 44 parse_sym_flag_for_directionality()
overwrite_force_field_terms() (lammps_interface.create_cluster_v2.Cluster
(lammps_interface.[Link] method), 19
method), 14 parse_user_input()
OverwriteFF (class in lammps_interface.ForceFields), (lammps_interface.[Link]
9 method), 10
parse_user_input()
P (lammps_interface.[Link]
pair_coul_term() (lammps_interface.ForceFields.MOF_FF method), 14
method), 9 preliminary_truncate_BFS_tree()
pair_terms() (lammps_interface.ForceFields.BTW_FF (lammps_interface.create_cluster_v2.Cluster
method), 5 method), 19
pair_terms() (lammps_interface.[Link]
method), 6
R
pair_terms() (lammps_interface.[Link] (lammps_interface.Molecules.EPM2_CO2 at-
method), 7 tribute), 15
pair_terms() (lammps_interface.ForceFields.EPM2_CO2 Rdum (lammps_interface.Molecules.TIP4P_Water
method), 7 attribute), 16
pair_terms() (lammps_interface.[Link] Rdum (lammps_interface.Molecules.TIP5P_Water
method), 8 attribute), 16
pair_terms() (lammps_interface.ForceFields.MOF_FF read() (lammps_interface.[Link] method), 4
method), 9 read_xyz_center() (in module
pair_terms() (lammps_interface.ForceFields.SPC_E lammps_interface.create_cluster_v2), 21
method), 10 recurse_bonds_to_end()
pair_terms() (lammps_interface.ForceFields.TIP3P (lammps_interface.structure_data.MolecularGraph
method), 11 method), 47
pair_terms() (lammps_interface.ForceFields.TIP4P recurse_linear_chains()
method), 11 (lammps_interface.structure_data.MolecularGraph
pair_terms() (lammps_interface.ForceFields.TIP5P method), 47
method), 12 redefine_lattice()
pair_terms() (lammps_interface.[Link] (lammps_interface.structure_data.MolecularGraph
method), 13 method), 47
pair_terms() (lammps_interface.ForceFields.UFF4MOF reorder_labels() (lammps_interface.structure_data.MolecularGraph
method), 14 method), 47
PairPotential (class in ROH (lammps_interface.Molecules.TIP4P_Water at-
lammps_interface.lammps_potentials), 40 tribute), 16
[Link] (class in ROH (lammps_interface.Molecules.TIP5P_Water at-
lammps_interface.lammps_potentials), 40 tribute), 16
[Link] (class in rotation_from_vectors()
lammps_interface.lammps_potentials), 40 (lammps_interface.[Link]
[Link] (class in method), 16
lammps_interface.lammps_potentials), 41 rotation_matrix()
[Link] (class in (lammps_interface.[Link]
lammps_interface.lammps_potentials), 41 method), 16
[Link] (class in run_command_line_options()
lammps_interface.lammps_potentials), 41 (lammps_interface.[Link]
[Link] (class in method), 15
lammps_interface.lammps_potentials), 42
78 Index
lammps-interface, Release 0.1.1
S method), 11
special_commands()
set_cell() (lammps_interface.create_cluster_v2.LammpsSimulation
method), 21 (lammps_interface.ForceFields.TIP5P
set_cell() (lammps_interface.lammps_main.LammpsSimulation method), 12
method), 22 special_commands()
set_cell() (lammps_interface.structure_data.Cell (lammps_interface.[Link] method),
method), 44 13
special_commands()
set_graph() (lammps_interface.create_cluster_v2.LammpsSimulation
method), 21 (lammps_interface.ForceFields.UFF4MOF
set_graph() (lammps_interface.lammps_main.LammpsSimulationmethod), 14
method), 22 split_graph() (lammps_interface.create_cluster_v2.LammpsSimulatio
set_MDMC_config() method), 21
split_graph()
(lammps_interface.create_cluster_v2.LammpsSimulation (lammps_interface.lammps_main.LammpsSimulation
method), 20 method), 22
set_MDMC_config() store_original_size()
(lammps_interface.lammps_main.LammpsSimulation (lammps_interface.structure_data.MolecularGraph
method), 22 method), 48
set_params() (lammps_interface.structure_data.Cell str() (lammps_interface.[Link] method),
method), 44 16
show() (lammps_interface.structure_data.MolecularGraphsubgraph() (lammps_interface.structure_data.MolecularGraph
method), 48 method), 48
sorted_edge_list()
T
(lammps_interface.structure_data.MolecularGraph
method), 48 TIP3P (class in lammps_interface.ForceFields), 10
sorted_node_list() TIP4P (class in lammps_interface.ForceFields), 11
TIP4P_Water (class in lammps_interface.Molecules),
(lammps_interface.structure_data.MolecularGraph
method), 48 16
SPC_E (class in lammps_interface.ForceFields), 10 TIP5P (class in lammps_interface.ForceFields), 11
special_commands() TIP5P_Water (class in lammps_interface.Molecules),
(lammps_interface.ForceFields.BTW_FF 16
method), 5 truncate_all() (lammps_interface.create_cluster_v2.Cluster
special_commands() method), 19
(lammps_interface.[Link] truncation_criteria()
method), 6 (lammps_interface.create_cluster_v2.Cluster
special_commands() method), 19
(lammps_interface.[Link]
method), 7 U
special_commands() UFF (class in lammps_interface.ForceFields), 12
(lammps_interface.ForceFields.EPM2_CO2 UFF4MOF (class in lammps_interface.ForceFields), 13
method), 7 uff_angle_type() (lammps_interface.[Link]
special_commands() method), 13
(lammps_interface.[Link] uff_angle_type() (lammps_interface.ForceFields.UFF4MOF
method), 8 method), 14
special_commands() unique_angles() (lammps_interface.create_cluster_v2.LammpsSimula
(lammps_interface.ForceFields.MOF_FF method), 21
method), 9 unique_angles() (lammps_interface.[Link]
special_commands() method), 14
(lammps_interface.ForceFields.SPC_E unique_angles() (lammps_interface.lammps_main.LammpsSimulation
method), 10 method), 22
special_commands() unique_atoms() (lammps_interface.create_cluster_v2.LammpsSimulati
(lammps_interface.ForceFields.TIP3P method), 21
method), 11 unique_atoms() (lammps_interface.[Link]
special_commands() method), 14
(lammps_interface.ForceFields.TIP4P
Index 79
lammps-interface, Release 0.1.1
W
unique_atoms() (lammps_interface.lammps_main.LammpsSimulation
method), 22 Water (class in lammps_interface.Molecules), 17
unique_bonds() (lammps_interface.create_cluster_v2.LammpsSimulation
write_CIF() (in module
method), 21 lammps_interface.structure_data), 48
unique_bonds() (lammps_interface.ForceFields.UserFFwrite_cluster_to_host_xyz_v2()
method), 14 (lammps_interface.create_cluster_v2.Cluster
unique_bonds() (lammps_interface.lammps_main.LammpsSimulationmethod), 19
method), 22 write_cluster_to_xyz()
unique_dihedrals() (lammps_interface.create_cluster_v2.Cluster
(lammps_interface.create_cluster_v2.LammpsSimulation method), 19
method), 21 write_cluster_to_xyz_host_guest_v2()
unique_dihedrals() (lammps_interface.create_cluster_v2.Cluster
(lammps_interface.[Link] method), 20
method), 14 write_cutoff() (lammps_interface.create_cluster_v2.Cluster
unique_dihedrals() method), 20
(lammps_interface.lammps_main.LammpsSimulationwrite_lammps_files()
method), 22 (lammps_interface.create_cluster_v2.LammpsSimulation
unique_impropers() method), 21
(lammps_interface.create_cluster_v2.LammpsSimulation
write_lammps_files()
method), 21 (lammps_interface.lammps_main.LammpsSimulation
unique_impropers() method), 22
(lammps_interface.[Link] write_LSDALTON() (lammps_interface.create_cluster_v2.Cluster
method), 14 method), 19
unique_impropers() write_map_from_cluster_xyz_to_unique_types()
(lammps_interface.lammps_main.LammpsSimulation (lammps_interface.create_cluster_v2.Cluster
method), 22 method), 20
unique_pair_terms() write_map_from_MOLECULE_to_unique_types()
(lammps_interface.create_cluster_v2.LammpsSimulation (lammps_interface.create_cluster_v2.Cluster
method), 21 method), 20
unique_pair_terms() write_missing_uniques()
(lammps_interface.lammps_main.LammpsSimulation (lammps_interface.[Link]
method), 22 method), 10
unwrap_node_coordinates() write_missing_uniques()
(lammps_interface.structure_data.MolecularGraph (lammps_interface.[Link]
method), 48 method), 15
update_num_keep() write_PDB() (in module
(lammps_interface.create_cluster_v2.Cluster lammps_interface.structure_data), 48
method), 19 write_RASPA_CIF() (in module
update_supercell() lammps_interface.structure_data), 48
(lammps_interface.structure_data.Cell write_RASPA_sim_files() (in module
method), 44 lammps_interface.structure_data), 48
update_symflag() (lammps_interface.structure_data.MolecularGraph
method), 48 X
UserFF (class in lammps_interface.ForceFields), 14
xy() (lammps_interface.structure_data.Cell property),
44
V xz() (lammps_interface.structure_data.Cell property),
van_der_waals_pairs() 45
(lammps_interface.[Link]
method), 15 Y
visualize_n_levels_of_tree() yz() (lammps_interface.structure_data.Cell property),
(lammps_interface.create_cluster_v2.Cluster 45
method), 19
volume() (lammps_interface.structure_data.Cell prop-
erty), 44
80 Index