shirtsgroup / InterMol

Conversion tool for molecular simulations
MIT License
181 stars 53 forks source link

Likely naive installation issue #142

Closed evanfeinberg closed 8 years ago

evanfeinberg commented 9 years ago

Dear InterMol developers,

It is wonderful that you all have created this much-needed project. I am quite new to molecular simulation, and have come across a problem that InterMol should be able to solve. I have a chemical system involving a membrane protein in solvent that I have generated with a few Schrödinger/Desmond tools, from protein preparation down to force field paramater assignment with Viparr, encapsulated in a .cms file. I would like to run a simple MD simulation in GROMACS using the system that was setup with Desmond tools. So it seems that I should use InterMol to convert the .cms to .gro and .top files compatible with GROMACS.

I downloaded the zip from GitHub and installed with the command "python setup.py install" in the "testing" directory. It seemed to install without a hitch. I then ran the given test command in the readme, "python convert.py --des_in /Users/evan/Downloads/InterMol-master/testing/inputs/Desmond/UnitTest/frag_opls2001/frag_opls2001.cms --gromacs --odir /users/evan/documents/schrodinger -e". While it did output two files, it also generated a bevy of errors, most of which are of form:

"Traceback (most recent call last): File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/intermol-0.1_dev-py2.7.egg/intermol/desmond_extension/desmond_parser.py", line 607, in load_ffio_block dihedralmatch.sum_parameters(newDihedralForce) AttributeError: 'bool' object has no attribute 'sum_parameters' "

Any idea what this means? Did I make some basic error in either installation or execution?

Thank you in advance for any help!!

Best regards, Evan

J-Rose commented 9 years ago

Hello Evan,

Glad to hear that InterMol is of use to you! Recently, InterMol has been undergoing some major changes, and this has left the master branch out-of-date. I would grabbing recommend grabbing a copy of the develop branch, installing it, and checking if the error persists. If it does, well, we'll work from there.

Sincerely, Jacob

On Mon, Oct 6, 2014 at 9:17 PM, evanfeinberg notifications@github.com wrote:

Dear InterMol developers,

It is wonderful that you all have created this much-needed project. I am quite new to molecular simulation, and have come across a problem that InterMol should be able to solve. I have a chemical system involving a membrane protein in solvent that I have generated with a few Schrödinger/Desmond tools, from protein preparation down to force field paramater assignment with Viparr, encapsulated in a .cms file. I would like to run a simple MD simulation in GROMACS using the system that was setup with Desmond tools. So it seems that I should use InterMol to convert the .cms to .gro and .top files compatible with GROMACS.

I downloaded the zip from GitHub and installed with the command "python setup.py install" in the "testing" directory. It seemed to install without a hitch. I then ran the given test command in the readme, "python convert.py --des_in /Users/evan/Downloads/InterMol-master/testing/inputs/Desmond/UnitTest/frag_opls2001/frag_opls2001.cms --gromacs --odir /users/evan/documents/schrodinger -e". While it did output two files, it also generated a bevy of errors, most of which are of form:

"Traceback (most recent call last): File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/intermol-0.1_dev-py2.7.egg/intermol/desmond_extension/desmond_parser.py", line 607, in load_ffio_block dihedralmatch.sum_parameters(newDihedralForce) AttributeError: 'bool' object has no attribute 'sum_parameters' "

Any idea what this means? Did I make some basic error in either installation or execution?

Thank you in advance for any help!!

Best regards, Evan

— Reply to this email directly or view it on GitHub https://github.com/shirtsgroup/InterMol/issues/142.

mrshirts commented 9 years ago

Hi, Evan-

Yep, this is something that is still in development -- almost there, but not quite yet! It's possible Desmond to Gromacs doesn't quite work because of changes. I would recommend

1) check out and try develop

2) Try commit 61d592a0ac3dc5fcc22d350ec074e733dd215e05 Date: Wed Jul 2 08:33:30 2014 -0400

That was used to generate several working tests, before we decided to blow up the whole thing and rearchitechture it.

3) Email us the test, and we'll get it working -- it will give us another stress test to help debug things! Note that it might take a week or so to get it totally converted.

evanfeinberg commented 9 years ago

Dear @J-Rose and @mrshirts,

Thank you so much for your speedy and helpful responses!

After installing the "develop" version, I ran the command listed in the readme, and it worked without a hitch ("python convert.py --des_in /Users/evan/Downloads/InterMol-master/testing/inputs/Desmond/UnitTest/frag_opls2001/frag_opls2001.cms --gromacs --odir /users/evan/documents/schrodinger").

However, the stress tests faired much less well. Here is the output from running: "python systems_test.py --stress -d -g" (output identical for both the "develop" version and for the system_test.py file in commit 61d592a -- should I also have downloaded the other two files in that commit as well?):

dn0a22f462:validation evan$ python systems_test.py --stress -d -g

                Results for DESMOND to DESMOND Conversion                     

Input File Status/Potential Energy Diff

DNA.cms 'NoneType' object has no attribute 'moleculeSet' HIV_wild_type.cms global name 'currentMoleculeType' is not defined Rilpivirine.cms Parsing [ restraints] not yet implemented lck_complex.cms 'NoneType' object has no attribute 'moleculeSet' lck_solvent.cms 'NoneType' object has no attribute 'moleculeSet' onemol.cms 'NoneType' object has no attribute 'moleculeSet' protein.cms 'NoneType' object has no attribute 'moleculeSet' simulated_annealing_example.cms 'NoneType' object has no attribute 'moleculeSet'

                Results for DESMOND to GROMACS Conversion                     

Input File Status/Potential Energy Diff

DNA.cms 'NoneType' object has no attribute 'moleculeSet' HIV_wild_type.cms global name 'currentMoleculeType' is not defined Rilpivirine.cms Parsing [ restraints] not yet implemented lck_complex.cms 'NoneType' object has no attribute 'moleculeSet' lck_solvent.cms 'NoneType' object has no attribute 'moleculeSet' onemol.cms 'NoneType' object has no attribute 'moleculeSet' protein.cms 'NoneType' object has no attribute 'moleculeSet' simulated_annealing_example.cms 'NoneType' object has no attribute 'moleculeSet'


In addition, when running the custom .cms file I outputted using Schrödinger/Desmond to insert a protein into a membrane, I called convert.py and received the following error message:

python convert.py --des_in /Users/evan/Downloads/my_test_file.cms --gromacs --odir /users/evan/documents/schrodinger

Traceback (most recent call last): File "convert.py", line 314, in main() File "convert.py", line 104, in main desmond_driver.readFile(args.des_in[0]) File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/intermol-0.1_dev-py2.7.egg/intermol/desmond_extension/desmond_driver.py", line 15, in readFile parser.read_file(infile) File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/intermol-0.1_dev-py2.7.egg/intermol/desmond_extension/desmond_parser.py", line 1021, in read_file self.load_ffio_block(lines, molname, self.ffio_blockpos[i], self.fblockpos[i+1]-1, sysDirectiveTopD, sysDirectiveStr, verbose) File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/intermol-0.1_dev-py2.7.egg/intermol/desmond_extension/desmond_parser.py", line 693, in load_ffio_block sysDirective[type](shared_args, sites_args) File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/intermol-0.1_dev-py2.7.egg/intermol/desmond_extension/desmond_parser.py", line 178, in parse_bonds npermol = len(currentMoleculeType.moleculeSet[0].atoms) AttributeError: 'NoneType' object has no attribute 'moleculeSet'


I will send the actual .cms file we were trying to convert to GROMACS in the morning when I get back to the lab/workstation.

Again, thank you both so much for looking into this!

Best regards, Evan

mrshirts commented 8 years ago

Am closing because so much has changed and most of these issues have be addressed (and others now have specific issues)