Szybki TK 1.7.1¶
New features¶
OESzybki::GetEntropy
added which takes a non-const multiconformer molecule and a reference to a new object OESzybkiEnsembleResults. The method evaluates ligand entropy in different environments as other existing methods, however in addition provides essential data on the ensemble of ligand conformations. Specifically, it returns the optimized ensemble of unique ligand conformations in its first parameter, and populates the OESzybkiEnsembleResults objects with entropy components data for the ensemble. The OESzybkiEnsembleResults also provides the data for individual unique optimized conformations in the ensemble; in particular the free energy of isolating a specific conformation from the entire ensemble. An example code explaining the usage of the newOESzybki::GetEntropy
method and the OESzybkiEnsembleResults class has been added.OESzybkiEnsembleResults class added that is mentioned above has been added.
Two new API methods have been added which control the temperature in the entropy estimation. These are: SetTemperature and GetTemperature. The default temperature is 298K.
Bug fixes¶
OESzybki::SetHarmonicConstraints
did not impose harmonic constraints on flexible part of the protein. The problem has been fixed.Trying to reuse an OESzybki instance after an entropy calculation sometimes (depending on the subsequent methods call order) caused a crash. To work around that problem it was necessary to use a new instance of the OESzybki class. This bug has been fixed.
Method
OESzybki::ClearFixAtoms
did not clear the unnecessary evaluation of the complete ligand energy at the very end of optimization with a subset of atoms frozen. The problem has been fixed.Protection against exhausting memory upon the usage of too many Coulomb atom pairs (for example in the attempt to optimize a large protein) has been added. Also, a confusing message upon exhausting the memory with too many vdW interactions has been removed.
A warning is now issued in the case where one of the three methods setting the protein flexibility is used (SetSideChainsFlexibility, SetPolarHFlexibility or SetResidueFlexibility) when protein is not set. Also, a request of single point calculation (using SetRunType) properly clears any previous settings of partial protein flexibility.
In the default optimization of a ligand inside the protein receptor the convergence criteria set by the method SetOptimizerType were not consistent with the intrinsic criteria of one the optimizers used. This inconsistency has been fixed.
Using conjugate gradient optimizer (set with the SetOptimizerType) in combination with the method SetExactVdWProteinLigand did not report the number of cycles made by the optimizer. This problem has been fixed.