ThermodynamicState

class propertyestimator.thermodynamics.ThermodynamicState(temperature=None, pressure=None)[source]

Data specifying a physical thermodynamic state obeying Boltzmann statistics.

Notes

Equality of two thermodynamic states is determined by comparing the temperature in kelvin to within 3 decimal places, and comparing the pressure (if defined) in pascals to within 3 decimal places.

Examples

Specify an NPT state at 298 K and 1 atm pressure.

>>> state = ThermodynamicState(temperature=298.0*unit.kelvin, pressure=1.0*unit.atmospheres)

Note that the pressure is only relevant for periodic systems.

__init__(temperature=None, pressure=None)[source]

Constructs a new ThermodynamicState object.

Parameters

Methods

__init__([temperature, pressure])

Constructs a new ThermodynamicState object.

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[, encoding])

Parses a typed json string into the corresponding class structure.

validate([attribute_type])

Validate the values of the attributes.

Attributes

beta

Returns one divided by the temperature multiplied by the molar gas constant

inverse_beta

Returns the temperature multiplied by the molar gas constant

pressure

The external pressure.

temperature

The external temperature.

property inverse_beta

Returns the temperature multiplied by the molar gas constant

property beta

Returns one divided by the temperature multiplied by the molar gas constant

temperature

The external temperature. The default value of this attribute is not set and must be set by the user..

Type

Quantity

pressure

The external pressure. The default value of this attribute is not set. This attribute is optional.

Type

Quantity

validate(attribute_type=None)[source]

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

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, encoding='utf8')

Parses a typed json string into the corresponding class structure.

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

  • encoding (str) – The encoding of the string_contents.

Returns

The parsed class.

Return type

Any