[MMTK] HarmonicDihedralRestraint problems
Konrad Hinsen
hinsen at cnrs-orleans.fr
Wed Apr 15 07:41:34 UTC 2009
On 08.04.2009, at 18:25, Qadir Timerghazin wrote:
> In fact, there are _two_ water molecules in my example, so there are 6
> atoms. The constrain is defined with:
> universe[0].H1, universe[0].O, universe[1].O, universe[1].H1 - note
> [0] and [1] indexes.
Ah, I see - that's in fact due to a bug in MMTK. Your script has two
assignments to universe.molecule. The second one should overwrite the
first one so that there is only one molecule in the end. I fixed this
bug, so your water script will not work with future MMTK releases.
You should use different attributes for each molecule:
universe.mol1 = Molecule('water')
universe.mol2 = Molecule('water')
or use anonymous molecules:
universe.addObject(Molecule('water'))
universe.addObject(Molecule('water'))
> FF modification file, which is inconvenient to post. Below is a
> protein example, which segfaults with the dihedral constraint.
That was in fact a trivial typo that was easy to fix. The fix will be
in future releases, but you can apply the attached patch file to your
current release as well.
Konrad.
--
---------------------------------------------------------------------
Konrad Hinsen
Centre de Biophysique Moléculaire, CNRS Orléans
Synchrotron Soleil - Division Expériences
Saint Aubin - BP 48
91192 Gif sur Yvette Cedex, France
Tel. +33-1 69 35 97 15
E-Mail: hinsen at cnrs-orleans.fr
---------------------------------------------------------------------
diff -r 45a5e9e687bb MMTK/ForceFields/Restraints.py
--- a/MMTK/ForceFields/Restraints.py Tue Apr 14 14:40:20 2009 +0200
+++ b/MMTK/ForceFields/Restraints.py Wed Apr 15 09:28:58 2009 +0200
@@ -163,7 +163,7 @@
params = self.evaluatorParameters(universe, subset1, subset2,
global_data)
['cosine_dihedral_term']
assert len(params) == 1
- indices = Numeric.array([params[:4]])
- parameters = Numeric.array([params[4:]])
+ indices = Numeric.array([params[0][:4]])
+ parameters = Numeric.array([params[0][4:]])
return [CosineDihedralTerm(universe._spec, indices,
parameters,
self.name)]
More information about the mmtk
mailing list