ChemicalSystem#

class gufe.chemicalsystem.ChemicalSystem(components: dict[str, Component], name: str | None = '')#

A combination of Components that form a system

Containing a combination of SmallMoleculeComponent, SolventComponent and ProteinComponent, this object typically represents all the molecules in a simulation box.

Used as a node for an AlchemicalNetwork.

Parameters:
  • components – The molecular representation of the chemical state, including connectivity and coordinates. Given as a dict with user-defined labels as keys, Components as values.

  • name – Optional identifier for the chemical state; included with the other attributes as part of the (hashable) graph node itself when the chemical state is added to an AlchemicalNetwork.

Methods

component_diff

Compare the Components of this ChemicalSystem with the Components of another ChemicalSystem.

Attributes

components

The individual components of the chemical system.

name

Optional identifier for the chemical system.

total_charge

Formal charge for the ChemicalSystem.

component_diff(other) tuple[tuple[Component, ...], tuple[Component, ...]]#

Compare the Components of this ChemicalSystem with the Components of another ChemicalSystem.

Parameters:

other (ChemicalSystem) – The ChemicalSystem to compare to.

Returns:

A tuple containing two tuples. The first tuple contains the components that are unique to this ChemicalSystem, and the second tuple contains the components that are unique to the other ChemicalSystem.

Return type:

tuple[tuple[Component, …], tuple[Component, …]]

Raises:

TypeError – If other is not an instance of ChemicalSystem.

property components: dict[str, Component]#

The individual components of the chemical system.

Components include atomic connectivity and coordinates. This is a dict with user-defined labels as keys and Component instances as values.

property name#

Optional identifier for the chemical system.

Used as part of the (hashable) graph node itself when the chemical state is added to an AlchemicalNetwork.

property total_charge#

Formal charge for the ChemicalSystem.