Objective_function.Properties.esp_property module

Description

This module defines the ParaMol.Objective_function.Properties.esp_property.ESPProperty class, which is a ParaMol representation of the electrostatic potential property.

class ParaMol.Objective_function.Properties.esp_property.ESPProperty(systems=[], weight=None)

Bases: ParaMol.Objective_function.Properties.property.Property

ParaMol representation of the electrostatic potential (ESP) property.

Parameters
Variables
  • name (str) – ‘ESP’

  • systems (list of ParaMol.System.system.ParaMolSystem) – List of ParaMol Systems. Currently not used and it is set to None.

  • units (simtk.unit.Quantity) – kj/mol

  • value (float) – Current value of this property

  • weight (float) – Weight of this property in the objective function.

  • variance (list of floats) – Variance of the ESP for each system.

add_system(system)

Method that adds a system to the property.

Parameters

system (ParaMol.System.system.ParaMolSystem) – ParaMol System.

Returns

system (list of) – Attribute system that contains a list of ParaMol Systems.

calculate_property(esp_data)

Method that calculates the value of the energy property.

Parameters

esp_data (np.array) – Array containing the MM electrostatic potential for each conformation.

Notes

This method should be modified by the user if another objective function form is to be used. AMBER uses weigth**2 * (A-Aref)^2 instead of weigth * (A-Aref)^2 that ParaMol uses

Returns

value (float) – Value of the ESP contribution to the objective function.

calculate_variance()

Method that calculates the variance of the electrostatic potential.

Notes

The variance will be stored in the attribute self.variance. It is used as a normalization factor in the objective function because it introduces the correct rescaling that make the residuals.

Returns

variance (np.array of floats) – Array containing the variance of the QM (reference) ESP for each system.