# openforcefield.topology.VirtualSite

class `openforcefield.topology.``VirtualSite`(atoms, charge_increments=None, epsilon=None, sigma=None, rmin_half=None, name=None)

  A particle representing a virtual site whose position is defined in terms of `Atom` positions.

  Note that chemical atoms are represented by the `Atom`.

  Warning

  This API is experimental and subject to change.

  Attributes
    `atoms`

      Atoms on whose position this VirtualSite depends.

    `charge_increments`

      Charges taken from this VirtualSite’s atoms and given to the VirtualSite

    `epsilon`

      The VdW epsilon term of this VirtualSite

    `molecule`

      The `Molecule` this atom is part of.

    `molecule_particle_index`

      The index of this VirtualSite within the the list of particles in the parent `Molecule`.

    `molecule_virtual_site_index`

      The index of this VirtualSite within the list of virtual sites within `Molecule` Note that this can be different from `particle_index`.

    `name`

      The name of this VirtualSite

    `rmin_half`

      The VdW rmin_half term of this VirtualSite

    `sigma`

      The VdW sigma term of this VirtualSite

    `type`

      The type of this VirtualSite (returns the class name as string)

  Methods

  `from_bson`(serialized) | Instantiate an object from a BSON serialized representation.
  `from_dict`(vsite_dict) | Create a virtual site from a dict representation.
  `from_json`(serialized) | Instantiate an object from a JSON serialized representation.
  `from_messagepack`(serialized) | Instantiate an object from a MessagePack serialized representation.
  `from_pickle`(serialized) | Instantiate an object from a pickle serialized representation.
  `from_toml`(serialized) | Instantiate an object from a TOML serialized representation.
  `from_xml`(serialized) | Instantiate an object from an XML serialized representation.
  `from_yaml`(serialized) | Instantiate from a YAML serialized representation.
  `to_bson`(self) | Return a BSON serialized representation.
  `to_dict`(self) | Return a dict representation of the virtual site.
  `to_json`(self[, indent]) | Return a JSON serialized representation.
  `to_messagepack`(self) | Return a MessagePack representation.
  `to_pickle`(self) | Return a pickle serialized representation.
  `to_toml`(self) | Return a TOML serialized representation.
  `to_xml`(self[, indent]) | Return an XML representation.
  `to_yaml`(self) | Return a YAML serialized representation.

  `__init__`(self, atoms, charge_increments=None, epsilon=None, sigma=None, rmin_half=None, name=None)

    Base class for VirtualSites

    Parameters
      atoms list of Atom of shape [N]

        atoms[index] is the corresponding Atom for weights[index]

      charge_increments list of floats of shape [N], optional, default=None

        The amount of charge to remove from the VirtualSite’s atoms and put in the VirtualSite. Indexing in this list should match the ordering in the atoms list. Default is None.

      sigma float, default=None

        Sigma term for VdW properties of virtual site. Default is None.

      epsilon float

        Epsilon term for VdW properties of virtual site. Default is None.

      rmin_half float

        Rmin_half term for VdW properties of virtual site. Default is None.

      name string or None, default=None

        The name of this virtual site. Default is None.

      virtual_site_type str

        Virtual site type.

      name str or None, default=None

        The name of this virtual site. Default is None

  Methods

  `__init__`(self, atoms[, charge_increments, …]) | Base class for VirtualSites
  `from_bson`(serialized) | Instantiate an object from a BSON serialized representation.
  `from_dict`(vsite_dict) | Create a virtual site from a dict representation.
  `from_json`(serialized) | Instantiate an object from a JSON serialized representation.
  `from_messagepack`(serialized) | Instantiate an object from a MessagePack serialized representation.
  `from_pickle`(serialized) | Instantiate an object from a pickle serialized representation.
  `from_toml`(serialized) | Instantiate an object from a TOML serialized representation.
  `from_xml`(serialized) | Instantiate an object from an XML serialized representation.
  `from_yaml`(serialized) | Instantiate from a YAML serialized representation.
  `to_bson`(self) | Return a BSON serialized representation.
  `to_dict`(self) | Return a dict representation of the virtual site.
  `to_json`(self[, indent]) | Return a JSON serialized representation.
  `to_messagepack`(self) | Return a MessagePack representation.
  `to_pickle`(self) | Return a pickle serialized representation.
  `to_toml`(self) | Return a TOML serialized representation.
  `to_xml`(self[, indent]) | Return an XML representation.
  `to_yaml`(self) | Return a YAML serialized representation.

  Attributes

  `atoms` | Atoms on whose position this VirtualSite depends.
  `charge_increments` | Charges taken from this VirtualSite’s atoms and given to the VirtualSite
  `epsilon` | The VdW epsilon term of this VirtualSite
  `molecule` | The `Molecule` this atom is part of.
  `molecule_particle_index` | The index of this VirtualSite within the the list of particles in the parent `Molecule`.
  `molecule_virtual_site_index` | The index of this VirtualSite within the list of virtual sites within `Molecule` Note that this can be different from `particle_index`.
  `name` | The name of this VirtualSite
  `rmin_half` | The VdW rmin_half term of this VirtualSite
  `sigma` | The VdW sigma term of this VirtualSite
  `type` | The type of this VirtualSite (returns the class name as string)