vermouth.processors.go_vs_includes module

Add the include statements and the virtual sites for Virtual Site Go model.

The VirtualGoSite model allows to stabilize the ternary structure of Martini proteins by applying Go potentials maintaining the contacts within the backbone. The Go potentials are not applied on the backbone beads directly, instead, they are applied on virtual sites overlapping with the backbone.

The processor defined in this module does not generate the Go potentials. Instead, they the potential is generated by a third party program. The third party program generate the interaction matrix for the Go potentials, and the exclusions as ITP files to be included in the right place in the protein ITP file. The processor adds an include statement at the end of the [ exclusions ] section. Would the third party program need the addition of other include statements, they can be added by adjusting the sections argument of the processor. To incorporate the include statements, the processor adds the required lines in the “post_section_lines” meta attribute of the molecules. This meta attribute is read by vermouth.gmx.itp.write_molecule_itp(). The include files are called “<moltype>_<section>_VirtGoSite.itp”.

In addition of writing the include statements, the processor adds virtual sites on top of the backbone beads. The virtual sites are added at the end of the molecule, they share the residue name, residue id, chain, and position of the underlying backbone bead. They are also added in the [ virtual_sitesn ] section.

class vermouth.processors.go_vs_includes.GoVirtIncludes(sections=('exclusions', ))[source]

Bases: vermouth.processors.processor.Processor

Add the include statements and the virtual sites for Virtual Site Go model.

See vermouth.processors.go_vs_includes for more details.

Every molecule must have a moltype name under the “moltype” key of the molecule meta.

Parameters:sections (collections.abc.Iterable[str], optional) – The sections to which to add an include statement.

See also

NameMolType
Assign molecule type names to the molecules in a system.

add_virtual_sites()

run_molecule(molecule)[source]
vermouth.processors.go_vs_includes.add_virtual_sites(molecule, prefix, backbone='BB', atomname='CA', charge=0)[source]

Add the virtual sites for GoMartini in the molecule.

One virtual site is added per backbone bead of the the Martini protein. Each virtual site copies the resid, resname, and chain of the backbone bead. It also copies the reference to the position array, so the virtual site position follows if the backbone bead is translated. The virtual sites are added after all the other atoms of the molecule, each in its own charge group, with “CA” as atomname, and a charge of 0. The atomname and charge can be set with the atomname and charge argument, respectively.

The bead type of the virtual sites is names “<prefix>_<resid>”. Where prefix is provided as an argument of the function, and is expected to be the molecule type name.

Parameters:
  • molecule (vermouth.molecule.Molecule) – The molecule to augment with virtual sites.
  • prefix (str) – The prefix to use for bead type names. Usually the molecule type name.
  • backbone (str) – The atomname of the backbone beads.
  • atomname (str) – The atomname of the virtual sites.
  • charge (float or int) – The charge of the virtual sites.