OESzybkiResults

class OESzybkiResults

Container for geometry optimization results, including final energies, individual force field component contributions, RMSD from starting geometry, and convergence status.

Constructors

OESzybkiResults() -> OESzybkiResults
OESzybkiResults(arg2: OESzybkiResults) -> OESzybkiResults

Default and copy constructors.

Clear

Clear() -> None

Removes all data from the OESzybkiResults object.

GetCPUTime

GetCPUTime() -> float

Returns CPU time in seconds for the optimization.

GetConfIdx

GetConfIdx() -> int

Returns conformer id number.

GetEnergyTerm

GetEnergyTerm(arg2: int) -> float

Returns the current energy value for a specified potential term. The integer values which determine potential terms are defined in the namespace OEPotentialTerms

GetFinalRMSGradient

GetFinalRMSGradient() -> float

Returns final RMS of forces, \(\sqrt\frac{\bf{g} \cdot \bf{g}}{n_v}\), where \(\bf{g}\) is the gradient vector and \(n_v\) the number of variables.

GetGradients

GetGradients(gradients: OEDoubleArray, atom: OEAtomBase) -> bool

Fills the passed double array with gradients for the atom passed as a second argument. Returns true if the gradients are successfully exported, false otherwise. Export of gradients is available only when the method OESzybkiGeneralOptions.SetCalculateGradients is called prior to the calculation performed with one of the OESzybki.operator() operators. Currently calculation of gradients is available only for single-point runs.

GetFinalTotalPotential

GetFinalTotalPotential() -> float

Returns the value of the optimized potential for the molecular system.

GetIntramolecularLigandEnergy

GetIntramolecularLigandEnergy() -> float

Returns the value of the value of intramolecular MMFF energy.

GetInitialRMSGradient

GetInitialRMSGradient() -> float

Returns the initial RMS of forces, \(\sqrt\frac{\bf{g} \cdot \bf{g}}{n_v}\), where \(\bf{g}\) is the gradient vector and \(n_v\) the number of variables.

GetInitialTotalPotential

GetInitialTotalPotential() -> float

Returns the value of the initial potential for the molecular system to be optimized.

GetInterEnergy

GetInterEnergy() -> float

Returns the interaction energy between protein (or DNA) and the ligand optimized inside the macromolecule. For ligands optimized in vacuum or in solution, this function returns 0.

GetMaxDisplacement

GetMaxDisplacement() -> float

Returns the maximum atomic displacement for a single atom in Å during optimization.

GetNumCycles

GetNumCycles() -> int

Returns the number of cycles performed by the optimizer.

GetNumFixAtoms

GetNumFixAtoms() -> int

Returns the number of atoms which will be fixed during optimization.

GetNumRotors

GetNumRotors() -> int

Returns the number of rotatable bonds in the molecule.

GetProteinRMSD

GetProteinRMSD() -> float

In the case of a partially optimized protein (residues, side chains, polar hydrogens in proximity to the ligand) the function returns the RMS displacement of a protein from its initial structure.

GetRMSD

GetRMSD() -> float

Returns the RMS displacement of the optimized structure with respect to the initial structure.

GetTotalEnergy

GetTotalEnergy() -> float

Returns the total energy of the optimized system. That includes all intra and inter molecular MMFF terms, solvation energy (Sheffield or PB, if present) and protein-ligand interaction energy if a ligand is optimized inside the protein. Harmonic energy constraint energy is excluded.

GetTotalEnergyWithHarmConstraint

GetTotalEnergyWithHarmConstraint() -> float

Returns total energy of the optimized system plus harmonic energy constraint.

IsActiveTerm

IsActiveTerm(arg2: int) -> bool

Returns true if the potential term specified by the parameter term is included in the potential function of the system. Possible parameters values are defined in the namespace OEPotentialTerms.

GetConfFreeEnergyFromEnsemble

GetConfFreeEnergyFromEnsemble() -> float

Returns the free energy of selecting a conformation out of the ensemble calculated as: \(-RTln(q/Q)\), where \(q\) is the partition function of a ligand conformer and \(Q\) is the partition function for the entire ensemble. The method will throw an error unless it is run following the call to OESzybki.GetEntropy method which takes the OESzybkiEnsembleResults instance as a second parameter, followed by the call to OESzybkiEnsembleResults.GetResultsForConformations on the returned OESzybkiEnsembleResults object.

GetVibEntropy

GetVibEntropy() -> float

Returns the vibrational entropy of a conformation in e.u. (cal/(mol K)) when entropy has been calculated with one of the OESzybki.GetEntropy methods.

GetRotEntropy

GetRotEntropy() -> float

Returns the rotational entropy of a conformation in e.u. (cal/(mol K)) when entropy has been calculated with one of the OESzybki.GetEntropy methods.

GetLnQvib

GetLnQvib() -> float

Returns the natural logarithm of a vibrational partition function when entropy has been calculated with one of the OESzybki.GetEntropy methods.

GetLnQrot

GetLnQrot() -> float

Returns the natural logarithm of a rotational partition function when entropy has been calculated with one of the OESzybki.GetEntropy methods.

IsUnique

IsUnique() -> bool

Returns true if the conformation is unique in terms of the structure. Although the method OESzybki.GetEntropy which takes a non-const OEMCMolBase object is guaranteed to return an ensemble of unique conformations, the other methods in oeszybki library do not. The method might be therefore useful to make sure if the current conformation is unique or not.

Print

Print(arg2: oeostream) -> None
Print(arg2: OEErrorHandler) -> None

Both functions allow the generation of log information on the optimized system. The following information is reported:

  • Conformer id

  • Number of fixed atoms (if any)

  • Number of torsions (if any and if optimization in torsion space is true)

  • Initial energy

  • Initial rms gradient

  • Final energy

  • Final rms gradient

  • RMS displacement upon optimization

  • Maximum displacement during optimization

  • Values of potential terms at final geometry