Hi
I am trying to use ForceBalance to refine parameters for a potential. I am using OpenMM as my MD engine.
I have set up a trial run with some of my data and I get the following error when running ForceBalance:
"Residue 1 (LIG) does not match any template defined by the Forcefield".
However, I have used the same forcefield.xml file to run a simulation with OpenMM with no problems.
I am probably missing something, so I could use some help.
This is part of my all.gro file:
GENERATED BY OPEN BABEL JOB 0
21
1LIG SI1 1 -0.035 0.012 -0.047
1LIG O11 2 1.320 0.441 -0.910
1LIG O12 3 0.545 -1.201 0.932
1LIG O13 4 -1.289 -0.559 -0.978
1LIG O14 5 -0.547 1.301 0.870
1LIG SI2 6 2.305 1.792 -0.839
1LIG O21 7 3.034 1.564 0.664
1LIG O22 8 3.543 1.729 -1.955
1LIG O23 9 1.477 3.209 -1.063
1LIG SI3 10 1.932 -2.134 0.847
1LIG O31 11 3.319 -1.230 0.817
1LIG O32 12 2.041 -3.216 2.111
1LIG O33 13 1.596 -3.061 -0.521
1LIG SI4 14 -2.287 -1.891 -0.806
1LIG O41 15 -3.176 -1.437 0.553
1LIG O42 16 -3.393 -2.013 -2.048
1LIG O43 17 -1.452 -3.318 -0.712
1LIG SI5 18 -1.939 2.228 0.809
1LIG O51 19 -3.323 1.329 0.950
1LIG O52 20 -1.961 3.409 1.986
1LIG O53 21 -1.704 3.042 -0.650
4.50000 4.50000 4.50000
This is the part of the forcefield.xml file where I define the residue:
<Residues>
<Residue name="LIG">
<Atom name = "SI1" type="0"/>
<Atom name = "O11" type="1"/>
<Atom name = "O12" type="1"/>
<Atom name = "O13" type="1"/>
<Atom name = "O14" type="1"/>
<Atom name = "SI2" type="0"/>
<Atom name = "O21" type="1"/>
<Atom name = "O22" type="1"/>
<Atom name = "O23" type="1"/>
<Atom name = "SI3" type="0"/>
<Atom name = "O31" type="1"/>
<Atom name = "O32" type="1"/>
<Atom name = "O33" type="1"/>
<Atom name = "SI4" type="0"/>
<Atom name = "O41" type="1"/>
<Atom name = "O42" type="1"/>
<Atom name = "O43" type="1"/>
<Atom name = "SI5" type="0"/>
<Atom name = "O51" type="1"/>
<Atom name = "O52" type="1"/>
<Atom name = "O53" type="1"/>
<Bond from="0" to="1"/>
<Bond from="0" to="2"/>
<Bond from="0" to="3"/>
<Bond from="0" to="4"/>
<Bond from="1" to="5"/>
<Bond from="5" to="6"/>
<Bond from="5" to="7"/>
<Bond from="5" to="8"/>
<Bond from="2" to="9"/>
<Bond from="9" to="10"/>
<Bond from="9" to="11"/>
<Bond from="9" to="12"/>
<Bond from="3" to="13"/>
<Bond from="13" to="14"/>
<Bond from="13" to="15"/>
<Bond from="13" to="16"/>
<Bond from="4" to="17"/>
<Bond from="17" to="18"/>
<Bond from="17" to="19"/>
<Bond from="17" to="20"/>
</Residue>
</Residues>
and this is the pdb file that I use in OpenMM (and have put in the targets and in the setting directory)
COMPND UNNAMED
AUTHOR GENERATED BY OPEN BABEL 2.3.2
HETATM 1 SI1 LIG 1 0.000 0.000 0.000 1.00 0.00 SI
HETATM 2 O11 LIG 1 0.000 0.000 1.663 1.00 0.00 O
HETATM 3 O12 LIG 1 1.540 0.000 -0.626 1.00 0.00 O
HETATM 4 O13 LIG 1 -0.842 1.373 -0.411 1.00 0.00 O
HETATM 5 O14 LIG 1 -0.698 -1.373 -0.626 1.00 0.00 O
HETATM 6 SI2 LIG 1 0.220 -1.212 2.791 1.00 0.00 SI
HETATM 7 O21 LIG 1 1.759 -1.792 2.397 1.00 0.00 O
HETATM 8 O22 LIG 1 0.362 -0.611 4.340 1.00 0.00 O
HETATM 9 O23 LIG 1 -0.992 -2.338 2.729 1.00 0.00 O
HETATM 10 SI3 LIG 1 2.955 0.745 -0.141 1.00 0.00 SI
HETATM 11 O31 LIG 1 3.482 0.175 1.321 1.00 0.00 O
HETATM 12 O32 LIG 1 4.164 0.599 -1.280 1.00 0.00 O
HETATM 13 O33 LIG 1 2.522 2.381 -0.160 1.00 0.00 O
HETATM 14 SI4 LIG 1 -0.885 2.296 -1.803 1.00 0.00 SI
HETATM 15 O41 LIG 1 -1.377 1.169 -2.965 1.00 0.00 O
HETATM 16 O42 LIG 1 -2.097 3.440 -1.762 1.00 0.00 O
HETATM 17 O43 LIG 1 0.571 3.024 -2.103 1.00 0.00 O
HETATM 18 SI5 LIG 1 -2.290 -1.829 -0.847 1.00 0.00 SI
HETATM 19 O51 LIG 1 -3.061 -0.861 -1.946 1.00 0.00 O
HETATM 20 O52 LIG 1 -2.429 -3.429 -1.298 1.00 0.00 O
HETATM 21 O53 LIG 1 -2.904 -1.758 0.728 1.00 0.00 O
CONECT 1 5 3 4 2
CONECT 1
CONECT 2 1 6
CONECT 3 10 1
CONECT 4 14 1
CONECT 5 18 1
CONECT 6 2 7 9 8
CONECT 6
CONECT 7 6
CONECT 8 6
CONECT 9 6
CONECT 10 12 3 13 11
CONECT 10
CONECT 11 10
CONECT 12 10
CONECT 13 10
CONECT 14 15 17 16 4
CONECT 14
CONECT 15 14
CONECT 16 14
CONECT 17 14
CONECT 18 19 20 5 21
CONECT 18
CONECT 19 18
CONECT 20 18
CONECT 21 18
MASTER 0 0 0 0 0 0 0 0 21 0 21 0
END
Any ideas?
Residue mismatch with ForceField
- Olga Falagara
- Posts: 3
- Joined: Tue Jan 26, 2016 7:39 am
Re: Residue mismatch with ForceField
I fixed it (forcebalance would read the silicon atoms as sulfur atoms from the pdb files) with a few modifications on PDB.py and molecule.py
- Lee-Ping Wang
- Posts: 102
- Joined: Sun Jun 19, 2011 5:14 pm
Re: Residue mismatch with ForceField
Ah, thanks for coming back with the update. I admit I didn't see your earlier message.
If your changes to the code are useful in a broader context, would you consider contributing it back to the main repository at github.com/leeping/forcebalance ?
Thanks,
- Lee-Ping
If your changes to the code are useful in a broader context, would you consider contributing it back to the main repository at github.com/leeping/forcebalance ?
Thanks,
- Lee-Ping
- Olga Falagara
- Posts: 3
- Joined: Tue Jan 26, 2016 7:39 am
Re: Residue mismatch with ForceField
Thank you, I will as soon as I find my way around github
Olga
Olga