Dear everyone

I am trying to do an optimization while constraining the distance between
two atoms on two separate non-connected fragments, using the open babel
python bindings with MMFF94 and conjugate gradients, with and without a
preliminary random rotor search. If this distance in the input structure is
close (~0.1Å) to the constraint requirement, things turn out fine, but
things go badly wrong when it's not close; the molecule basically blows up,
and other curiosities occur, such as the CG optimization being both
instantaneous and independent of changing the number of steps from 5000 to
12000.

I have attached the python script and two initial structures, one that works
and one that fails.

Any help or testimonies of similar experiences would be greatly appreciated,
as I am completely out of ideas at this point.

Best regards,
Kasper Thofte
University of Copenhagen
from openbabel import *
conv=OBConversion()
conv.SetInAndOutFormats('xyz','xyz')
mol=OBMol()
conv.ReadFile(mol,'AmideR.xyz')
cnstr=OBFFConstraints()
cnstr.AddDistanceConstraint(1,10,3.4)
FF=OBForceField.FindForceField("MMFF94")
FF.Setup(mol,cnstr)
#FF.SetConstraints(cnstr)
#FF.RandomRotorSearch(100,5000)
FF.ConjugateGradients(10000)
FF.GetCoordinates(mol)
for atom in OBMolAtomIter(mol):
	print atom.GetAtomicNum(), atom.GetX(), atom.GetY(), atom.GetZ()
conv.WriteFile(mol,'AmideRopt.xyz')

Attachment: AmideRfail.xyz
Description: Protein Databank data

Attachment: AmideRworks.xyz
Description: Protein Databank data

------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________
OpenBabel-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbabel-discuss

Reply via email to