# 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`() | Return a BSON serialized representation.
  `to_dict`() | Return a dict representation of the virtual site.
  `to_json`([indent]) | Return a JSON serialized representation.
  `to_messagepack`() | Return a MessagePack representation.
  `to_pickle`() | Return a pickle serialized representation.
  `to_toml`() | Return a TOML serialized representation.
  `to_xml`([indent]) | Return an XML representation.
  `to_yaml`() | Return a YAML serialized representation.

  `__init__`(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__`(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`() | Return a BSON serialized representation.
  `to_dict`() | Return a dict representation of the virtual site.
  `to_json`([indent]) | Return a JSON serialized representation.
  `to_messagepack`() | Return a MessagePack representation.
  `to_pickle`() | Return a pickle serialized representation.
  `to_toml`() | Return a TOML serialized representation.
  `to_xml`([indent]) | Return an XML representation.
  `to_yaml`() | 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)

  `to_dict`()

    Return a dict representation of the virtual site.

  classmethod `from_dict`(vsite_dict)

    Create a virtual site from a dict representation.

  `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`.

  `molecule_particle_index`

    The index of this VirtualSite within the the list of particles in the parent `Molecule`. Note that this can be different from `molecule_virtual_site_index`.

  `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

  `sigma`

    The VdW sigma term of this VirtualSite

  `rmin_half`

    The VdW rmin_half term of this VirtualSite

  `name`

    The name of this VirtualSite

  `type`

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

  classmethod `from_bson`(serialized)

    Instantiate an object from a BSON serialized representation.

    Specification: http://bsonspec.org/

    Parameters
      serialized bytes

        A BSON serialized representation of the object

    Returns
      instance cls

        An instantiated object

  classmethod `from_json`(serialized)

    Instantiate an object from a JSON serialized representation.

    Specification: https://www.json.org/

    Parameters
      serialized str

        A JSON serialized representation of the object

    Returns
      instance cls

        An instantiated object

  classmethod `from_messagepack`(serialized)

    Instantiate an object from a MessagePack serialized representation.

    Specification: https://msgpack.org/index.html

    Parameters
      serialized bytes

        A MessagePack-encoded bytes serialized representation

    Returns
      instance cls

        Instantiated object.

  classmethod `from_pickle`(serialized)

    Instantiate an object from a pickle serialized representation.

    Warning

    This is not recommended for safe, stable storage since the pickle specification may change between Python versions.

    Parameters
      serialized str

        A pickled representation of the object

    Returns
      instance cls

        An instantiated object

  classmethod `from_toml`(serialized)

    Instantiate an object from a TOML serialized representation.

    Specification: https://github.com/toml-lang/toml

    Parameters
      serlialized str

        A TOML serialized representation of the object

    Returns
      instance cls

        An instantiated object

  classmethod `from_xml`(serialized)

    Instantiate an object from an XML serialized representation.

    Specification: https://www.w3.org/XML/

    Parameters
      serialized bytes

        An XML serialized representation

    Returns
      instance cls

        Instantiated object.

  classmethod `from_yaml`(serialized)

    Instantiate from a YAML serialized representation.

    Specification: http://yaml.org/

    Parameters
      serialized str

        A YAML serialized representation of the object

    Returns
      instance cls

        Instantiated object

  `molecule`

    The `Molecule` this atom is part of.

  `to_bson`()

    Return a BSON serialized representation.

    Specification: http://bsonspec.org/

    Returns
      serialized bytes

        A BSON serialized representation of the objecft

  `to_json`(indent=None)

    Return a JSON serialized representation.

    Specification: https://www.json.org/

    Parameters
      indent int, optional, default=None

        If not None, will pretty-print with specified number of spaces for indentation

    Returns
      serialized str

        A JSON serialized representation of the object

  `to_messagepack`()

    Return a MessagePack representation.

    Specification: https://msgpack.org/index.html

    Returns
      serialized bytes

        A MessagePack-encoded bytes serialized representation of the object

  `to_pickle`()

    Return a pickle serialized representation.

    Warning

    This is not recommended for safe, stable storage since the pickle specification may change between Python versions.

    Returns
      serialized str

        A pickled representation of the object

  `to_toml`()

    Return a TOML serialized representation.

    Specification: https://github.com/toml-lang/toml

    Returns
      serialized str

        A TOML serialized representation of the object

  `to_xml`(indent=2)

    Return an XML representation.

    Specification: https://www.w3.org/XML/

    Parameters
      indent int, optional, default=2

        If not None, will pretty-print with specified number of spaces for indentation

    Returns
      serialized bytes

        A MessagePack-encoded bytes serialized representation.

  `to_yaml`()

    Return a YAML serialized representation.

    Specification: http://yaml.org/

    Returns
      serialized str

        A YAML serialized representation of the object