vermouth.processors.add_molecule_edges module

Processor adding edges between molecules.

class vermouth.processors.add_molecule_edges.AddMoleculeEdgesAtDistance(threshold, templates_from, templates_to, attribute='position', min_edges=0)[source]

Bases: Processor

Processor that adds edges within and between molecules.

The processor adds edges between atoms, within or between molecules, when the atoms are part of the selections provided for each end of the edges, and the atoms are closer than a given threshold.

Parameters:
  • threshold (float) – Distance threshold in nanometers under which to create an edge.

  • templates_from (list[dict]) – List of node templates to select the atoms at one end of the edges.

  • templates_to (list[dict]) – List of node template to select the atoms at the other end of the edges.

  • attribute (str) – Name of the attribute under which are stores the coordinates.

run_system(system)[source]

Run the processor on the system.

class vermouth.processors.add_molecule_edges.MergeNucleicStrands(threshold=0.3, templates_donnors=({'atomname': <Choice at 75f4d4e99450 value=['C2', 'N6']>, 'resname': <Choice at 75f4d4ea9160 value=['DA', 'DA3', 'DA5']>}, {'atomname': <Choice at 75f4d4ead6e0 value=['N1', 'N2']>, 'resname': <Choice at 75f4d4e99590 value=['DG', 'DG3', 'DG5']>}, {'atomname': 'N4', 'resname': <Choice at 75f4d4ead940 value=['DC', 'DC3', 'DC5']>}, {'atomname': 'N3', 'resname': <Choice at 75f4d4ed8830 value=['DT', 'DT3', 'DT5']>}), templates_acceptors=({'atomname': 'N1', 'resname': <Choice at 75f4d503fdf0 value=['DA', 'DA3', 'DA5']>}, {'atomname': 'O6', 'resname': <Choice at 75f4d503ff00 value=['DG', 'DG3', 'DG5']>}, {'atomname': <Choice at 75f4d507a750 value=['N3', 'O2']>, 'resname': <Choice at 75f4d507a650 value=['DC', 'DC3', 'DC5']>}, {'atomname': <Choice at 75f4d4fd3b60 value=['O2', 'O4']>, 'resname': <Choice at 75f4d4fd3890 value=['DT', 'DT3', 'DT5']>}), attribute='position')[source]

Bases: AddMoleculeEdgesAtDistance

Add edges between complementary nucleic acid strands.

By default, the edges are added in place of the hydrogen bonds between complementary bases.

Parameters:
  • threshold (float) – Distance threshold in nanometers under which to create an edge.

  • templates_donnors (list[dict]) – List of templates describing hydrogen donnors.

  • templates_acceptors (list[dict]) – List of templates describing hydrogen acceptors.

  • attribute (str) – Name of the attribute under which are store the node coordinates.