Component

class openff.evaluator.substances.Component(smiles=UNDEFINED, role=Role.Solvent)[source]

Defines a single component in a chemical system, as well as it’s role within the system (if any).

__init__(smiles=UNDEFINED, role=Role.Solvent)[source]

Constructs a new Component object with either a label or a smiles string, but not both.

Notes

The label and smiles arguments are mutually exclusive, and only one can be passed while the other should be None.

Parameters
  • smiles (str) – A SMILES descriptor of the component

  • role (Role) – The role of this component in the system.

Methods

__init__([smiles, role])

Constructs a new Component object with either a label or a smiles string, but not both.

from_json(file_path)

Create this object from a JSON file.

get_attributes([attribute_type])

Returns all attributes of a specific attribute_type.

json([file_path, format])

Creates a JSON representation of this class.

parse_json(string_contents)

Parses a typed json string into the corresponding class structure.

validate([attribute_type])

Validate the values of the attributes.

Attributes

identifier

A unique identifier for this component.

role

The role of this component in the system.

smiles

The SMILES pattern which describes this component.

class Role(value)[source]

An enum which describes the role of a component in the system, such as whether the component is a solvent, a solute, a receptor etc.

These roles are mainly used by workflow to identify the correct species in a system, such as when doing docking or performing solvation free energy calculations.

smiles

The SMILES pattern which describes this component. The default value of this attribute is not set and must be set by the user.. This attribute is read-only.

Type

str

role

The role of this component in the system. The default value of this attribute is Role.Solvent. This attribute is read-only.

Type

Role

property identifier

A unique identifier for this component.

Type

str

classmethod from_json(file_path)

Create this object from a JSON file.

Parameters

file_path (str) – The path to load the JSON from.

Returns

The parsed class.

Return type

cls

classmethod get_attributes(attribute_type=None)

Returns all attributes of a specific attribute_type.

Parameters

attribute_type (type of Attribute, optional) – The type of attribute to search for.

Returns

The names of the attributes of the specified type.

Return type

list of str

json(file_path=None, format=False)

Creates a JSON representation of this class.

Parameters
  • file_path (str, optional) – The (optional) file path to save the JSON file to.

  • format (bool) – Whether to format the JSON or not.

Returns

The JSON representation of this class.

Return type

str

classmethod parse_json(string_contents)

Parses a typed json string into the corresponding class structure.

Parameters

string_contents (str or bytes) – The typed json string.

Returns

The parsed class.

Return type

Any

validate(attribute_type=None)

Validate the values of the attributes. If attribute_type is set, only attributes of that type will be validated.

Parameters

attribute_type (type of Attribute, optional) – The type of attribute to validate.

Raises

ValueError or AssertionError