I believe this to be either a bug with LigParGen (command-line version only), or perhaps the online webserver is doing additional preparatory steps that I have not included for the command-line version.
Ligand Parameter Generator Based on
Jorgensen group's OPLS-AA/CM1A(-LBCC) FF
Created on Mon Feb 15 15:40:05 2016
@author: Leela S. Dodda leela.dodda@yale.edu
@author: William L. Jorgensen Lab
Expected Behavior
Able to build (or not) the same chemicals with the webserver and the command-line version of LigParGen
Actual Behavior
Hello,
I find that a neutral molecule (here the lipid POPC) build with both the online web server at http://zarbi.chem.yale.edu/ligpargen/ and also with the command-line tool. However, some negatively charged molecules (here the lipid POPA) only build with the online web server and throw an error with the command-line tool.
LBCC converter is activated
1 molecule converted
262 audit log messages
MOLECULE HAS A CHARGE of 0
Changing OS TO OE
Changing OS TO OE
Changing OS TO OE
DONE WITH OPENMM
DONE WITH Q
DONE WITH XPLOR
DONE WITH CHARMM/NAMD
DONE WITH GROMACS
DONE WITH LAMMPS
DONE WITH DESMOND
1.14*CM1A-LBCC is only available for neutral molecules
Assigning unscaled CM1A charges
1 molecule converted
238 audit log messages
MOLECULE HAS A CHARGE of -1
Traceback (most recent call last):
File "/usr/projects/mrmdesign/MCMD/CONDA_ENVS/my-ligpargen-env/bin/LigParGen", line 11, in
sys.exit(main())
File "/usr/projects/mrmdesign/MCMD/CONDA_ENVS/my-ligpargen-env/lib/python3.6/site-packages/LigParGen/Converter.py", line 90, in main
convert(**vars(args))
File "/usr/projects/mrmdesign/MCMD/CONDA_ENVS/my-ligpargen-env/lib/python3.6/site-packages/LigParGen/Converter.py", line 157, in convert
charge), "PROPOSED CHARGE IS NOT POSSIBLE: SOLUTE MAY BE AN OPEN SHELL"
AssertionError: PROPOSED CHARGE IS NOT POSSIBLE: SOLUTE MAY BE AN OPEN SHELL
PS: I get the same behavior if I build a PDB first with RdKit and use that as input to LigParGen instead of direct smiles string input.
Also please note that I tried both with the smiles string from a google search that gave me a smiles from abcam.com and also a cannonical version from this tool https://cactus.nci.nih.gov/translate/ and I got the same error.
Finally, I do realize that I don’t need to use LigParGen to get parameters for lipids. This is intended as an easily verifiable test case for something with a verifiably correct smiles string. My actual problems are with different phosphate containing molecules.
Issue Information
Software name & Version : $ LigParGen -h usage: LigParGen [-h] [-r RESNAME] [-s SMILES] [-m MOL] [-p PDB] [-o {0,1,2,3}] [-c {0,-1,1,-2,2}] [-l]
Expected Behavior
Able to build (or not) the same chemicals with the webserver and the command-line version of LigParGen
Actual Behavior
Hello,
I find that a neutral molecule (here the lipid POPC) build with both the online web server at http://zarbi.chem.yale.edu/ligpargen/ and also with the command-line tool. However, some negatively charged molecules (here the lipid POPA) only build with the online web server and throw an error with the command-line tool.
For POPC:
$ smiles="CCCCCCCCCCCCCCCC(=O)OCC(COP(=O)OCCN+(C)C)OC(=O)CCCCCCCC=CCCCCCCCC" $ charge=0 $ LigParGen -s $smiles -r UNK -c $charge -o 0 -l
LBCC converter is activated 1 molecule converted 262 audit log messages MOLECULE HAS A CHARGE of 0 Changing OS TO OE Changing OS TO OE Changing OS TO OE DONE WITH OPENMM DONE WITH Q DONE WITH XPLOR DONE WITH CHARMM/NAMD DONE WITH GROMACS DONE WITH LAMMPS DONE WITH DESMOND
For POPA:
$ smiles="CCCCCCCCCCCCCCCC(=O)OCC(COP([O-])=O)OC(=O)CCCCCCCC=CCCCCCCCC" $ charge=-1 $ LigParGen -s $smiles -r UNK -c $charge -o 0 -l
1.14*CM1A-LBCC is only available for neutral molecules Assigning unscaled CM1A charges 1 molecule converted 238 audit log messages MOLECULE HAS A CHARGE of -1 Traceback (most recent call last): File "/usr/projects/mrmdesign/MCMD/CONDA_ENVS/my-ligpargen-env/bin/LigParGen", line 11, in
sys.exit(main())
File "/usr/projects/mrmdesign/MCMD/CONDA_ENVS/my-ligpargen-env/lib/python3.6/site-packages/LigParGen/Converter.py", line 90, in main
convert(**vars(args))
File "/usr/projects/mrmdesign/MCMD/CONDA_ENVS/my-ligpargen-env/lib/python3.6/site-packages/LigParGen/Converter.py", line 157, in convert
charge), "PROPOSED CHARGE IS NOT POSSIBLE: SOLUTE MAY BE AN OPEN SHELL"
AssertionError: PROPOSED CHARGE IS NOT POSSIBLE: SOLUTE MAY BE AN OPEN SHELL
PS: I get the same behavior if I build a PDB first with RdKit and use that as input to LigParGen instead of direct smiles string input.
Also please note that I tried both with the smiles string from a google search that gave me a smiles from abcam.com and also a cannonical version from this tool https://cactus.nci.nih.gov/translate/ and I got the same error.
Finally, I do realize that I don’t need to use LigParGen to get parameters for lipids. This is intended as an easily verifiable test case for something with a verifiably correct smiles string. My actual problems are with different phosphate containing molecules.
Thank you, Chris.