Skip to content

Commit 9c4878b

Browse files
committed
Fix bug: #1
1 parent 2b335a9 commit 9c4878b

File tree

1 file changed

+6
-7
lines changed

1 file changed

+6
-7
lines changed

lib/calculators.py

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -46,27 +46,26 @@ class RdKitEnergyCalculator(AbstractEnergyCalculator):
4646
def calculate(self, mol: Chem.Mol) -> float:
4747
mol = Chem.MolFromSmiles(Chem.MolToSmiles(mol))
4848
Chem.GetSymmSSSR(mol)
49-
49+
cids = AllChem.EmbedMultipleConfs(mol, numConfs=self.RECALCULATION_LOOPS)
5050
values = []
51-
for _ in range(self.RECALCULATION_LOOPS):
52-
force_field = self.get_force_field(mol)
51+
for i in range(self.RECALCULATION_LOOPS):
52+
force_field = self.get_force_field(mol,confId=cids[i])
5353
force_field.Initialize()
5454
force_field.Minimize()
5555

5656
values.append(force_field.CalcEnergy())
57-
5857
return min(values)
5958

60-
def get_force_field(self, molecule: Chem.Mol) -> AllChem.ForceField:
59+
def get_force_field(self, molecule: Chem.Mol, confId) -> AllChem.ForceField:
6160
Chem.AddHs(molecule)
6261
AllChem.EmbedMolecule(molecule)
6362

6463
if self.force_field == self.FORCE_FIELD_MMFF:
6564
properties = AllChem.MMFFGetMoleculeProperties(molecule)
66-
return AllChem.MMFFGetMoleculeForceField(molecule, properties)
65+
return AllChem.MMFFGetMoleculeForceField(molecule, properties, confId)
6766

6867
if self.force_field == self.FORCE_FIELD_UFF:
69-
return AllChem.UFFGetMoleculeForceField(molecule)
68+
return AllChem.UFFGetMoleculeForceField(molecule, confId)
7069

7170

7271
class BabelEnergyCalculator(AbstractEnergyCalculator):

0 commit comments

Comments
 (0)