tinkertools / poltype2 Goto Github PK
View Code? Open in Web Editor NEWPoltype 2: Automated Parameterization and Free Energy Prediction for AMOEBA
License: Other
Poltype 2: Automated Parameterization and Free Energy Prediction for AMOEBA
License: Other
Had a couple of questions on some fragment calculations -- working with Justin to parameterize fragments for the AMOEBA lipid library.
I apologize if these are noob questions -- still moving from being an end-user of poltype to understanding how to troubleshoot each particular step in the workflow. Thanks.
Hi,
I am observing that poltype2 gets stuck directly after the first optimization step for a few larger molecules than methanol (e.g. penicillin G, p-coumaric acid). The opt_1.log file shows normal termination (last few lines):
Job cpu time: 0 days 5 hours 53 minutes 58.0 seconds.
Elapsed time: 0 days 0 hours 56 minutes 22.6 seconds.
File lengths (MBytes): RWF= 82 Int= 0 D2E= 0 Chk= 13 Scr= 1
Normal termination of Gaussian 16 at Sat Nov 13 01:40:57 2021.
poltype.log shows:
Sat Nov 13 00:44:29 2021 Running on host: c142.curta.zedat.fu-berlin.de
Sat Nov 13 00:44:29 2021 NEED QM Density Matrix: Executing Gaussian Opt and SP
Sat Nov 13 00:44:29 2021 Percent of jobs finished 0.0
Sat Nov 13 00:44:29 2021 Calling: GAUSS_SCRDIR=/scratch/jkozuch/Gau-PCC /trinity/shared/software/gaussian/g16_A03/g16/g16 PCC-opt_1.com path = /home/jkozuch/Param/PCC
At this point nothing happens for hours. I then restart poltype to continue from here, but the normally terminated *_opt_1.log is not recognized and is overwritten, as a new OPT_1 calculation starts.
My poltype.ini looks as follows:
structure=PCC.sdf
totalcharge=-1
numproc=8
maxmem=64GB
maxdisk=500GB
atmidx=455
use_gaus
rotalltors
The MeOH example with essentially the same input doesn't have an issue at this point. However, it seems to get stuck in the torsion section (unless there's something happening in the background). I also just checked methyl propionate as a smaller molecule with two torsions, instead of the one in MeOH) and I have the same issue - opt_1 is finished; nothing else happens after that; restart starts from scratch and overwrites opt_1.log.
Addition after I wrote this. I tried the series MeOH, EtOH, PrOH, and BuOH, making the molecule longer by one CH3 and I observe the issue described above with BuOH, where the first three molecules work. Everything is similar as stated above.
Best,
Jacek
From Poltype2 documentation, it seems that it is capable of creating force field parameters to simulate neat liquid. If I understand it correctly, it is able to adjust charges and vDW parameters so that the neat liquid will have a designated density.
If I run Poltype2 for benzene and get the resulting files, final.xyz and final.key. Then, copy final.xyz as benzene.xyz and copy final.key as benzene.key. Create a poltype.ini file as the following trying to parameterize neat liquid benzene at 298K.
density=874
keyfilenamelist=benzene.key
ligandxyzfilenamelist=benzene.xyz
equilibriatescheme=50,100,150,200,298,298
Doing the above gives me an error at the very beginning of the run. Poltype2 is pulled and built today.
Is the above the right way to parameterize liquid benzene with Poltype2?
Thanks so much.
CD Poon
University of North Carolina at Chapel Hill
Hi,
I hope you are well.
I am trying to install following this: https://github.com/TinkerTools/poltype2/blob/master/README/README_INSTALL.MD
after installing tinker, when I try to install tinker9, the cmake step gives me this error:
-- Configuring done
CMake Error at ext/interface/CMakeLists.txt:6 (add_library):
Cannot find source file:
../source/prtdcd.f
Tried extensions .c .C .c++ .cc .cpp .cxx .cu .mpp .m .M .mm .ixx .cppm .h
.hh .h++ .hm .hpp .hxx .in .txx .f .F .for .f77 .f90 .f95 .f03 .hip .ispc
CMake Error at ext/interface/CMakeLists.txt:6 (add_library):
No SOURCES given to target: tinkerObjF
I was wondering if you could kindly help me. Where can I find this file? Looks like it is missing on the github page.
As far as I can tell the poledit executable does not like the GDMA output... I had run this job (5,5'-Dinitro-2,2'-dithiodipyridine) previously without the new GDMA flags and it finished successfully. I have one other PolType job that terminated similarly (4-Methyl-2-nitroacetanilide), so maybe something with the nitro group? Any suggestions would be greatly appreciated! Please find the corresponding files here.
Hi,
I followed the steps mentioned in the README file, but When I am running the parametrization command I am getting following error:
ERROR: Cannot find Tinker poledit.x executable
Can you suggest where I might be going wrong
I'm preparing the force field for a covalently modified serine residue using poltype2. My aim is to use parameters from amoeba18bio to describe the serine backbone to ensure compatability, and keep these parameters fixed during parameterization. However, I cannot find the way to control this in README. Is there anything I can do?
I am getting an error during torsion refinement, because a torsion didn't reach it's target (see below). That's definitely something "new", i.e. since the introduction of XTB. I remember that before there was an "IF" that just ignored such occasions.
Below find a link to the zipped folder and an excerpt of the error message.
Thx in advance!
Jacek
https://1drv.ms/u/s!ApPMvraeXGN3hLJeJRm69hTmpASV8w?e=bJMCmV
...
Traceback (most recent call last):
File "/home/jkozuch/poltype2/PoltypeModules/poltype.py", line 7994, in RunPoltype
poltype.main()
File "/home/jkozuch/poltype2/PoltypeModules/poltype.py", line 3522, in main
params= self.GenerateParameters()
File "/home/jkozuch/poltype2/PoltypeModules/poltype.py", line 4911, in GenerateParameters
torgen.gen_torsion(self,optmol,self.torsionrestraint,mol)
File "/home/jkozuch/poltype2/PoltypeModules/torsiongenerator.py", line 1154, in gen_torsion
CheckIfQMOptReachedTargetDihedral(poltype,cartxyz,initialtinkerstructure,torset,optmol,variabletorlist,phaseangles) # QM usually freezes dof but xtb and ANI does not freeze so need to add check now.
File "/home/jkozuch/poltype2/PoltypeModules/torsiongenerator.py", line 781, in CheckIfQMOptReachedTargetDihedral
raise ValueError(string)
ValueError: Torsion did not reach target dihedral angle! torsion = [9, 11, 20, 21] tinker minimized dihedral angle is 167.8661215925513 but the optimized dihedral angle is at 176.5357700064363, tinker structure is oCNFbocDep-opt-1-3-115_preQMOPTprefit_xyzformat.xyz , opt strucuture is xtb-opt-1-3-115.xyz
...
Hi,
I'm not really sure if I'm just misunderstanding something, but there seems to be a strange offset in some of the png-output files from the torsion fit. See attached energy-png files, in particular, those for the torsion 5-1 and 5-8. Here the red data starts at 0 deg, while blue and others at ca. 30 deg. I assume there's a difference in definition when an torsion is 0 and when 360 deg.
I'm not sure if this is just an issue in representation or also something in the code that may cause issues with the torsion fit - the red curve is shifted in respect to the other ones.
Also, since I'm asking about torsions:
I'm not sure that I'm reading the torsion results correctly.
I've to stay that I'm still confused about the splines in the energy plots (is it a cumulative RMSD in reference to the energy at lowest angle?). I think in the previous Poltype2 version, the splines went through the data points, which made it much easier to decipher, which torsion is parameterized well or not. Maybe you could bring back the previous representation in addition to the current one?
Thanks!
Jacek
I have an issue when running the example ModifiedAminoAcid. After the "ModifiedSideChain.pdb" is created the the error "mindistance=min(minatomindextodistance.values()) ValueError: min() arg is an empty sequence" appears (full output below). Just running a molecule with poltype2 works. Below I also mosted my environment if that's useful to see.
Thanks in advance!
Jacek
Traceback (most recent call last):
File "/home/jkozuch/master/PoltypeModules/poltype.py", line 2503, in RunPoltype
poltype.main()
File "/home/jkozuch/master/PoltypeModules/poltype.py", line 1441, in main
knownresiduesymbs,modproidxs,proboundidxs,boundaryatomidxs,proOBmol,molname,modresiduelabel,proidxtoligidx,ligidxtoproidx,modmol,smarts,check,connectedatomidx,backboneindexesreference,modligidxs=modres.GenerateModifiedProteinPoltypeInput(self)
File "/home/jkozuch/master/PoltypeModules/modifiedresidues.py", line 1615, in GenerateModifiedProteinPoltypeInput
poltype.modifiedproteinpdbname,charge,connectedatomidx,backboneindexesreference=GenerateModifiedProteinPDB(poltype)
File "/home/jkozuch/master/PoltypeModules/modifiedresidues.py", line 1237, in GenerateModifiedProteinPDB
newpdbfilename,connectedatomidx=ConnectSideChainToBackbone(poltype,output)
File "/home/jkozuch/master/PoltypeModules/modifiedresidues.py", line 1292, in ConnectSideChainToBackbone
mindistance=min(minatomindextodistance.values())
ValueError: min() arg is an empty sequence
Traceback (most recent call last):
File "/home/jkozuch/master/PoltypeModules/poltype.py", line 2503, in RunPoltype
poltype.main()
File "/home/jkozuch/master/PoltypeModules/poltype.py", line 1441, in main
knownresiduesymbs,modproidxs,proboundidxs,boundaryatomidxs,proOBmol,molname,modresiduelabel,proidxtoligidx,ligidxtoproidx,modmol,smarts,check,connectedatomidx,backboneindexesreference,modligidxs=modres.GenerateModifiedProteinPoltypeInput(self)
File "/home/jkozuch/master/PoltypeModules/modifiedresidues.py", line 1615, in GenerateModifiedProteinPoltypeInput
poltype.modifiedproteinpdbname,charge,connectedatomidx,backboneindexesreference=GenerateModifiedProteinPDB(poltype)
File "/home/jkozuch/master/PoltypeModules/modifiedresidues.py", line 1237, in GenerateModifiedProteinPDB
newpdbfilename,connectedatomidx=ConnectSideChainToBackbone(poltype,output)
File "/home/jkozuch/master/PoltypeModules/modifiedresidues.py", line 1292, in ConnectSideChainToBackbone
mindistance=min(minatomindextodistance.values())
ValueError: min() arg is an empty sequence
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/jkozuch/master/PoltypeModules/poltype.py", line 2521, in
RunPoltype()
File "/home/jkozuch/master/PoltypeModules/poltype.py", line 2520, in RunPoltype
raise ValueError('Houston, we have a problem. Buy a developer some coffee!')
ValueError: Houston, we have a problem. Buy a developer some coffee!
Name Version Build Channel
_libgcc_mutex 0.1 conda_forge conda-forge
_openmp_mutex 4.5 1_gnu conda-forge
alsa-lib 1.2.3 h516909a_0 conda-forge
ambit 0.3 h137fa24_1 psi4
atomicwrites 1.4.0 py_0
attrs 21.2.0 pyhd3eb1b0_0
biopython 1.79 py37h5e8e339_1 conda-forge
blas 1.0 mkl
boost 1.74.0 py37h796e4cb_4 conda-forge
boost-cpp 1.74.0 hc6e9bd1_3 conda-forge
brotli 1.0.9 he6710b0_2
bzip2 1.0.8 h7f98852_4 conda-forge
c-ares 1.17.1 h27cfd23_0
ca-certificates 2021.10.26 h06a4308_2
cairo 1.16.0 h6cf1ce9_1008 conda-forge
cairocffi 1.2.0 pyhd8ed1ab_0 conda-forge
cairosvg 2.5.2 pyhd8ed1ab_0 conda-forge
certifi 2021.10.8 py37h06a4308_0
cffi 1.14.5 py37h261ae71_0
cftime 1.5.1.1 py37hb1e94ed_1 conda-forge
chemps2 1.8.9 h8c3debe_0 psi4
colorama 0.4.4 pyh9f0ad1d_0 conda-forge
cssselect2 0.2.1 pyh9f0ad1d_1 conda-forge
curl 7.78.0 h1ccaba5_0
cycler 0.10.0 py37_0
dbus 1.13.18 hb2f20db_0
deepdiff 3.3.0 py37_1 psi4
defusedxml 0.7.1 pyhd8ed1ab_0 conda-forge
dkh 1.2 h173d85e_2 psi4
expat 2.4.1 h2531618_2
fontconfig 2.13.1 h6c09931_0
fonttools 4.25.0 pyhd3eb1b0_0
freetype 2.11.0 h70c0345_0
gau2grid 1.3.1 h035aef0_0 psi4
gdma 2.2.6 h0e1e685_6 psi4
gettext 0.21.0 hf68c758_0
giflib 5.2.1 h7b6447c_0
git 2.32.0 pl5262hc120c5b_1
glib 2.68.4 h9c3ff4c_0 conda-forge
glib-tools 2.68.4 h9c3ff4c_0 conda-forge
greenlet 1.1.2 py37hcd2ae1e_1 conda-forge
griddataformats 0.6.0 pyhd8ed1ab_0 conda-forge
gsd 2.5.0 py37hb1e94ed_1 conda-forge
gst-plugins-base 1.18.5 hf529b03_0 conda-forge
gstreamer 1.18.5 h76c114f_0 conda-forge
hdf4 4.2.13 h3ca952b_2
hdf5 1.10.2 hba1933b_1
icu 68.2 h9c3ff4c_0 conda-forge
importlib-metadata 4.8.2 py37h89c1867_0 conda-forge
importlib_metadata 1.5.0 py37_0
importlib_resources 5.2.0 pyhd3eb1b0_1
intel-openmp 2021.4.0 h06a4308_3561
joblib 1.1.0 pyhd8ed1ab_0 conda-forge
jpeg 9d h7f8727e_0
jsonpickle 0.9.6 py37_0 psi4
kiwisolver 1.3.1 py37h2531618_0
krb5 1.19.2 hac12032_0
lcms2 2.12 h3be6417_0
ld_impl_linux-64 2.35.1 h7274673_9
libclang 11.1.0 default_ha53f305_1 conda-forge
libcurl 7.78.0 h0b77cf5_0
libedit 3.1.20210910 h7f8727e_0
libev 4.33 h7f8727e_1
libevent 2.1.10 h9b69904_4 conda-forge
libffi 3.3 he6710b0_2
libgcc-ng 11.2.0 h1d223b6_11 conda-forge
libgfortran-ng 7.5.0 ha8ba4b0_17
libgfortran4 7.5.0 ha8ba4b0_17
libglib 2.68.4 h3e27bee_0 conda-forge
libgomp 11.2.0 h1d223b6_11 conda-forge
libiconv 1.16 h516909a_0 conda-forge
libint 1.2.1 hb4a4fd4_6 psi4
libllvm11 11.1.0 hf817b99_2 conda-forge
libnetcdf 4.6.1 h10edf3e_2
libnghttp2 1.41.0 hf8bcb03_2
libogg 1.3.4 h7f98852_1 conda-forge
libopus 1.3.1 h7f98852_1 conda-forge
libpng 1.6.37 hbc83047_0
libpq 13.3 hd57d9b9_0 conda-forge
libssh2 1.9.0 h1ba5d50_1
libstdcxx-ng 11.2.0 he4da1e4_11 conda-forge
libtiff 4.2.0 h85742a9_0
libuuid 1.0.3 h7f8727e_2
libvorbis 1.3.7 h9c3ff4c_0 conda-forge
libwebp 1.2.0 h89dd481_0
libwebp-base 1.2.0 h27cfd23_0
libxc 4.3.4 h7b6447c_0 psi4
libxcb 1.14 h7b6447c_0
libxkbcommon 1.0.3 he3ba5ed_0 conda-forge
libxml2 2.9.12 h72842e0_0 conda-forge
libxslt 1.1.33 h15afd5d_2 conda-forge
lxml 4.6.4 py37h77fd288_0 conda-forge
lz4-c 1.9.3 h295c915_1
matplotlib 3.4.3 py37h06a4308_0
matplotlib-base 3.4.3 py37hbbc1b5f_0
mdanalysis 2.0.0 py37hcd2ae1e_1 conda-forge
mkl 2021.4.0 h06a4308_640
mkl-service 2.4.0 py37h7f8727e_0
mkl_fft 1.3.1 py37hd3c417c_0
mkl_random 1.2.2 py37h51133e4_0
mmtf-python 1.1.2 py_0 conda-forge
more-itertools 8.10.0 pyhd3eb1b0_0
msgpack-python 1.0.2 py37h2527ec5_2 conda-forge
munkres 1.1.4 py_0
mysql-common 8.0.25 ha770c72_0 conda-forge
mysql-libs 8.0.25 h935591d_0 conda-forge
ncurses 6.3 h7f8727e_2
netcdf4 1.4.2 py37h4b4f87f_0
networkx 2.6.3 pyhd8ed1ab_1 conda-forge
nspr 4.32 h9c3ff4c_1 conda-forge
nss 3.69 hb5efdd6_1 conda-forge
numpy 1.21.2 py37h20f2e39_0
numpy-base 1.21.2 py37h79a1101_0
olefile 0.46 py37_0
openbabel 2.4.1 py37hc189817_1 conda-forge
openssl 1.1.1l h7f8727e_0
packaging 21.0 pyhd3eb1b0_0
pandas 1.3.4 py37he8f5f7f_1 conda-forge
patsy 0.5.2 pyhd8ed1ab_0 conda-forge
pcmsolver 1.2.1.1 py37h6d17ec8_2 psi4
pcre 8.45 h295c915_0
pcre2 10.35 h14c3975_1
perl 5.26.2 h14c3975_0
pillow 8.4.0 py37h5aabda8_0
pint 0.17 pyhd8ed1ab_0 psi4
pip 21.2.2 py37h06a4308_0
pixman 0.40.0 h36c2ea0_0 conda-forge
pluggy 0.13.1 py37h06a4308_0
psi4 1.3.2+ecbda83 py37h06ff01c_1 psi4
psutil 5.7.2 py37h7b6447c_0 anaconda
py 1.10.0 pyhd3eb1b0_0
pycairo 1.20.1 py37hfff247e_1 conda-forge
pycparser 2.21 pyhd8ed1ab_0 conda-forge
pydantic 1.3 py37h516909a_0 psi4
pyparsing 3.0.4 pyhd3eb1b0_0
pyqt 5.12.3 py37h89c1867_7 conda-forge
pyqt-impl 5.12.3 py37he336c9b_7 conda-forge
pyqt5-sip 4.19.18 py37hcd2ae1e_7 conda-forge
pyqtchart 5.12 py37he336c9b_7 conda-forge
pyqtwebengine 5.12.1 py37he336c9b_7 conda-forge
pytest 4.6.11 py37_0
python 3.7.11 h12debd9_0
python-dateutil 2.8.2 pyhd3eb1b0_0
python_abi 3.7 2_cp37m conda-forge
pytz 2021.3 pyhd8ed1ab_0 conda-forge
qcelemental 0.17.0 py_0 psi4
qt 5.12.9 hda022c4_4 conda-forge
rdkit 2021.09.2 py37h13c2175_0 conda-forge
readline 8.1 h27cfd23_0
reportlab 3.5.68 py37h69800bb_0 conda-forge
scikit-learn 1.0.1 py37h51133e4_0
scipy 1.7.1 py37h292c36d_2
seaborn 0.11.2 hd8ed1ab_0 conda-forge
seaborn-base 0.11.2 pyhd8ed1ab_0 conda-forge
setuptools 58.0.4 py37h06a4308_0
simint 0.7 h642920c_1 psi4
sip 4.19.8 py37hf484d3e_0
six 1.16.0 pyhd3eb1b0_0
sqlalchemy 1.4.26 py37h5e8e339_1 conda-forge
sqlite 3.36.0 hc218d9a_0
statsmodels 0.13.0 py37hb1e94ed_1 conda-forge
svgutils 0.3.4 pyhd8ed1ab_0 conda-forge
threadpoolctl 3.0.0 pyh8a188c0_0 conda-forge
tinycss2 1.1.0 pyhd8ed1ab_0 conda-forge
tk 8.6.11 h1ccaba5_0
tornado 6.1 py37h27cfd23_0
tqdm 4.62.3 pyhd8ed1ab_0 conda-forge
typing_extensions 3.10.0.2 pyha770c72_0 conda-forge
wcwidth 0.2.5 pyhd3eb1b0_0
webencodings 0.5.1 py_1 conda-forge
wheel 0.37.0 pyhd3eb1b0_1
xorg-kbproto 1.0.7 h7f98852_1002 conda-forge
xorg-libice 1.0.10 h7f98852_0 conda-forge
xorg-libsm 1.2.2 h470a237_5 conda-forge
xorg-libx11 1.7.2 h7f98852_0 conda-forge
xorg-libxext 1.3.4 h7f98852_1 conda-forge
xorg-libxrender 0.9.10 h7f98852_1003 conda-forge
xorg-renderproto 0.11.1 h7f98852_1002 conda-forge
xorg-xextproto 7.3.0 h7f98852_1002 conda-forge
xorg-xproto 7.0.31 h7f98852_1007 conda-forge
xz 5.2.5 h7b6447c_0
zipp 3.6.0 pyhd8ed1ab_0 conda-forge
zlib 1.2.11 h7b6447c_3
zstd 1.4.9 haebb681_0
Hello:
I've successfully compiled the latest version of the code, along with Tinker Version 8.10.4 October 2022.
When I try to run the example in the hydrationfreenergy of phenol folder (poltype2/Examples/HydrationFreeEnergy/phenol), it fails with the following error:
Traceback (most recent call last):
File "/home/user/codes/poltype2/PoltypeModules/poltype.py", line 7485, in
RunPoltype()
File "/home/user/codes/poltype2/PoltypeModules/poltype.py", line 7459, in RunPoltype
poltype=PolarizableTyper()
File "", line 376, in init
File "/home/user/codes/poltype2/PoltypeModules/poltype.py", line 1229, in post_init
self.MolecularDynamics()
File "/home/user/codes/poltype2/PoltypeModules/poltype.py", line 2129, in MolecularDynamics
ann.main(self)
File "/home/user/codes/poltype2/PoltypeModules/annihilation.py", line 37, in main
box.BoxSetupProtocol(poltype)
File "/home/user/codes/poltype2/PoltypeModules/boxsetup.py", line 831, in BoxSetupProtocol
newfilename=CreateSolventBox(poltype,subaaxis,subbaxis,subcaxis,subwater,'water.xyz',key)
File "/home/user/codes/poltype2/PoltypeModules/boxsetup.py", line 433, in CreateSolventBox
submit.call_subsystem(poltype,cmdstr,wait=True)
File "/home/user/codes/poltype2/PoltypeModules/submitjobs.py", line 117, in call_subsystem
raise ValueError("ERROR: " + cmdstr+' '+'path'+' = '+os.getcwd())
ValueError: ERROR: xyzedit.x water.xyz -k MD_solv_config.key < xyzedit.in path = /home/user/codes/poltype2/Examples/HydrationFreeEnergy/phenol
Upon running the offending xyzedit.x command, it seems like the options may have changed... namely:
The Tinker XYZ File Editing Utility Can :
(1) Offset the Numbers of the Current Atoms
(2) Remove User Specified Individual Atoms
(3) Remove User Specified Types of Atoms
(4) Delete Inactive Atoms Beyond Cutoff Range
(5) Insertion of Individual Specified Atoms
(6) Replace Old Atom Type with a New Type
(7) Assign Connectivities for Linear Chain
(8) Assign Connectivities Based on Distance
(9) Assign Atom Types for BASIC Force Field
(10) Transfer Atom Types from Another Structure
(11) Convert Units from Bohrs to Angstroms
(12) Invert thru Origin to Give Mirror Image
(13) Translate All Atoms by an X,Y,Z-Vector
(14) Translate Center of Mass to the Origin
(15) Translate a Specified Atom to the Origin
(16) Translate and Rotate to Inertial Frame
(17) Rotate All Atoms Around a Specified Axis
(18) Move to Specified Rigid Body Coordinates
(19) Move Stray Molecules into Periodic Box
(20) Trim a Periodic Box to a Smaller Size
(21) Make Truncated Octahedron from Cubic Box
(22) Make Rhombic Dodecahedron from Cubic Box
(23) Append a Second XYZ File to Current One
(24) Create and Fill a Periodic Boundary Box
(25) Soak Current Molecule in Box of Solvent
(26) Place Monoatomic Ions around a Solute
Does the boxsetup.py script need updating?
Thanks!
Hello all,
I was trying to parameterize a set of molecules, however they all failed after the GDMA step with a segmentation fault. The GDMA input (NAME.gdmain) is as follows:
Title NAME gdmain
File dma.fchk density MP2
Angstrom
AU
Multipoles
Switch 4
Limit 2
Punch dma.punch
Radius H 0.325
Radius C 0.65
Radius N 0.65
Radius O 0.65
Radius F 0.65
Radius Cl 1.0
Radius Br 1.05
Radius I 1.1
Radius S 0.9
Radius P 0.9
Radus S 0.80
Start
Finish
The sulfur keyword is Radus instead of Radius.
Edit:
My input file had a typo in the following flag:
gdmacommand_Radus_S=0.80 --> gdmacommand_Radius_S=0.80
Is there a way to guide poltype2 in choosing a subset of tautomers for small molecule parameterization? I have a small molecule with 4 tautomeric states, but upon visual inspection, State_1 and State_3 are incorrect based on my known chemistry. Here is what poltype2 has generated so far:
ls -ltr
total 736
-rwxr-xr-x 1 blake blake 48 Apr 2 15:04 poltype.ini
-rw-r--r-- 1 blake blake 5869 Apr 2 15:04 MDH-195.sdf
-rw-r--r-- 1 blake blake 5270 Apr 2 15:04 MDH-195.mol
-rw-r--r-- 1 blake blake 5270 Apr 2 15:05 conftest.mol
-rw-r--r-- 1 blake blake 5270 Apr 2 15:05 extendedconf.mol
-rw-r--r-- 1 blake blake 5869 Apr 2 15:05 IonizationState_0.sdf
-rw-r--r-- 1 blake blake 5270 Apr 2 15:05 IonizationState_0.mol
-rw-r--r-- 1 blake blake 5979 Apr 2 15:05 IonizationState_1.sdf
-rw-r--r-- 1 blake blake 5371 Apr 2 15:05 IonizationState_1.mol
-rw-r--r-- 1 blake blake 5869 Apr 2 15:05 TautomerState_0.sdf
-rw-r--r-- 1 blake blake 5270 Apr 2 15:05 TautomerState_0.mol
-rw-r--r-- 1 blake blake 5869 Apr 2 15:05 TautomerState_1.sdf
-rw-r--r-- 1 blake blake 5270 Apr 2 15:05 TautomerState_1.mol
-rw-r--r-- 1 blake blake 5869 Apr 2 15:05 TautomerState_2.sdf
-rw-r--r-- 1 blake blake 5270 Apr 2 15:05 TautomerState_2.mol
-rw-r--r-- 1 blake blake 5869 Apr 2 15:05 TautomerState_3.sdf
-rw-r--r-- 1 blake blake 5270 Apr 2 15:05 TautomerState_3.mol
-rw-r--r-- 1 blake blake 2746 Apr 2 15:05 MDH-195-opt_1_temp.com
-rw-r--r-- 1 blake blake 4317 Apr 2 15:05 MDH-195-opt_1.psi4
-rw-r--r-- 1 blake blake 2746 Apr 2 15:05 MDH-195-opt_1.com
-rw-r--r-- 1 blake blake 431 Apr 2 15:05 MDH-195-poltype.log
-rw-r--r-- 1 blake blake 587296 Apr 2 17:09 MDH-195-opt_1.log
-rw-r--r-- 1 blake blake 65 Apr 2 17:09 psi.136377.clean
Is there a way to flag poltype2 so that it will skip over parameterization of State_1 and State_3? Or can I simply delete/move the unwanted tautomers? Otherwise I will be wasting twice as many CPU cycles to carry out this parameterization. Thanks.
I am trying to set up some MD runs to simulate a series of small molecules against a reference protein target using AMOEBA, and was able to generate parameter files for the small molecules in poltype2. However, when I compare my final.xyz and my input.sdf against each other, final.xyz has been translated away from the original position of input.sdf. My input.sdf was docked into the binding site of the target protein, so I was really hoping to avoid having to align my final.xyz to my input.sdf in order to set up my MD simulations.
The description of aligning a ligand to the coordinates of an unoccupied protein in the documentation here, but the impression I get from that documentation is that defining
complexedproteinpdbname=pdb3srd.pdb
uncomplexedproteinpdbname=3srd_filled.BL00020001_final.pdb
still assumes that your ligand is docked in the correct spatial coordinates with respect to the protein. If I am missing something in my understanding of the documentation, I apologize.
I think I am running out of memory even with 392GB for running standard pipeline for molecules size of ribociclib (62 atoms). The input for python poltype.py is:
structure=ribociclib.sdf
scratchpath=/scratch1/fs1/bolton/brian
cpujobsonly=False
numproc=16
It errors for Psi4 step with forrtl: severe (174): SIGSEGV, segmentation fault occurred
and here is trace:
forrtl: severe (174): SIGSEGV, segmentation fault occurred
Image PC Routine Line Source
libgdma.so 00007FA8EE65B0DC for__signal_handl Unknown Unknown
libpthread-2.27.s 00007FA8F5D1E980 Unknown Unknown Unknown
libc-2.27.so 00007FA8F4FF5C01 fseek Unknown Unknown
core.cpython-38-x 00007FA8F0F65581 _ZN3psi8DFHelper1 Unknown Unknown
core.cpython-38-x 00007FA8F0FE0610 _ZN3psi8DFHelper1 Unknown Unknown
core.cpython-38-x 00007FA8F0FE1274 _ZN3psi8DFHelper1 Unknown Unknown
core.cpython-38-x 00007FA8F121B435 _ZN3psi7MemDFJK13 Unknown Unknown
core.cpython-38-x 00007FA8F3479548 Unknown Unknown Unknown
core.cpython-38-x 00007FA8F34795BB Unknown Unknown Unknown
core.cpython-38-x 00007FA8F3061D69 Unknown Unknown Unknown
python3.8 000055EC0CDF0B94 PyCFunction_Call Unknown Unknown
python3.8 000055EC0CDFFF2E _PyObject_MakeTpC Unknown Unknown
python3.8 000055EC0CE75E1E Unknown Unknown Unknown
python3.8 000055EC0CE96D23 _PyEval_EvalFrame Unknown Unknown
python3.8 000055EC0CE73CF3 _PyEval_EvalCodeW Unknown Unknown
python3.8 000055EC0CE75807 Unknown Unknown Unknown
python3.8 000055EC0CE93725 _PyEval_EvalFrame Unknown Unknown
python3.8 000055EC0CE74F06 _PyFunction_Vecto Unknown Unknown
python3.8 000055EC0CE929EB _PyEval_EvalFrame Unknown Unknown
python3.8 000055EC0CE74F06 _PyFunction_Vecto Unknown Unknown
python3.8 000055EC0CE929EB _PyEval_EvalFrame Unknown Unknown
python3.8 000055EC0CE73CF3 _PyEval_EvalCodeW Unknown Unknown
python3.8 000055EC0CE750D8 _PyFunction_Vecto Unknown Unknown
python3.8 000055EC0CDE9DAE PyObject_Call Unknown Unknown
python3.8 000055EC0CE940A8 _PyEval_EvalFrame Unknown Unknown
python3.8 000055EC0CE73CF3 _PyEval_EvalCodeW Unknown Unknown
python3.8 000055EC0CE750D8 _PyFunction_Vecto Unknown Unknown
python3.8 000055EC0CDE9DAE PyObject_Call Unknown Unknown
python3.8 000055EC0CE940A8 _PyEval_EvalFrame Unknown Unknown
python3.8 000055EC0CE73CF3 _PyEval_EvalCodeW Unknown Unknown
python3.8 000055EC0CE750D8 _PyFunction_Vecto Unknown Unknown
python3.8 000055EC0CDE9DAE PyObject_Call Unknown Unknown
python3.8 000055EC0CE940A8 _PyEval_EvalFrame Unknown Unknown
python3.8 000055EC0CE73CF3 _PyEval_EvalCodeW Unknown Unknown
python3.8 000055EC0CE750D8 _PyFunction_Vecto Unknown Unknown
python3.8 000055EC0CE93725 _PyEval_EvalFrame Unknown Unknown
python3.8 000055EC0CE73CF3 _PyEval_EvalCodeW Unknown Unknown
python3.8 000055EC0CE74D59 PyEval_EvalCodeEx Unknown Unknown
python3.8 000055EC0CF19B5B PyEval_EvalCode Unknown Unknown
python3.8 000055EC0CF19BF3 Unknown Unknown Unknown
python3.8 000055EC0CF335B3 Unknown Unknown Unknown
python3.8 000055EC0CF37E1D PyRun_StringFlags Unknown Unknown
python3.8 000055EC0CF3829F Unknown Unknown Unknown
python3.8 000055EC0CDEDA5B Unknown Unknown Unknown
python3.8 000055EC0CE928CF _PyEval_EvalFrame Unknown Unknown
python3.8 000055EC0CE73CF3 _PyEval_EvalCodeW Unknown Unknown
python3.8 000055EC0CE74D59 PyEval_EvalCodeEx Unknown Unknown
python3.8 000055EC0CF19B5B PyEval_EvalCode Unknown Unknown
python3.8 000055EC0CF19BF3 Unknown Unknown Unknown
python3.8 000055EC0CF335B3 Unknown Unknown Unknown
python3.8 000055EC0CF385D2 Unknown Unknown Unknown
python3.8 000055EC0CF387B2 PyRun_SimpleFileE Unknown Unknown
python3.8 000055EC0CF38D2D Py_RunMain Unknown Unknown
python3.8 000055EC0CF38EE9 Py_BytesMain Unknown Unknown
libc-2.27.so 00007FA8F4F8FC87 __libc_start_main Unknown Unknown
python3.8 000055EC0CEAC989 Unknown Unknown Unknown
And this is Psi4 input:
molecule {
0 1
O -6.369787488209 0.758212450846 -0.849627614529
N -3.647767587514 0.346041302745 0.200691612299
N -1.327604539555 -0.306119339874 0.192661838416
N 6.472560499215 -0.715748777872 -0.162786953897
N -6.456741296627 2.588032900937 0.526290718055
N 0.212941995780 1.518418143018 -0.195955613549
N 9.127396724275 -1.347766501451 -0.893422154225
N 0.918049412138 -0.699071851876 0.135965102619
N 2.918384947439 -1.767575968563 0.192627516150
C -4.240385575906 -0.976507119452 0.399016865942
C -4.060331454931 -1.880938101936 -0.830552529452
C -3.644863370919 -1.754399121116 1.602318109537
C -3.998726994183 -3.283850791692 -0.230402943414
C -3.133145719845 -3.076378892798 1.015005804156
C -4.319784306597 1.547087309708 0.029047638009
C -2.306132598550 0.597674995440 0.085771223678
C -2.125794393475 1.984494853804 -0.153998843049
C -3.414472784565 2.574974789601 -0.188498172010
C -5.797694505315 1.575739591234 -0.112301589966
C -0.794736407981 2.386256776881 -0.289908639890
C -0.100274259761 0.218220026783 0.037858170427
C 7.096504336050 -1.962791795426 0.269773854776
C 7.032385997558 -0.280093120332 -1.449533726295
C 8.593618862583 -1.746767901239 0.405369562762
C 8.530068357169 -0.082185546003 -1.308834676670
C 5.059740017727 -0.683544283119 -0.116218947369
C -7.881943380461 2.734800874977 0.281134514848
C -5.936687060937 3.346927343826 1.651086244134
C 2.303577347316 -0.584145388598 0.036803644970
C 4.389853387283 0.541733108711 -0.259966094293
C 4.257203571404 -1.809675880242 0.107182846096
C 3.007874809620 0.608618377077 -0.195174448582
H -5.304337733868 -0.798421641579 0.554574269516
H -4.863438814448 -1.720545771601 -1.554666557249
H -3.106142186194 -1.646994848213 -1.312837084609
H -2.858814986670 -1.187984506441 2.105119708711
H -4.438491566846 -1.941047170607 2.333899504712
H -3.589206486951 -4.025675123925 -0.922849730912
H -5.003300788106 -3.619106059073 0.056711784981
H -3.187640405581 -3.905903874494 1.726787880405
H -2.088900931006 -2.955158582958 0.711997452229
H -3.672171947309 3.608157529994 -0.385721969334
H -0.519848426482 3.424355242060 -0.477450102798
H 6.921191307341 -2.787363824769 -0.442618945793
H 6.674110583103 -2.244185641145 1.239423729973
H 6.559384590650 0.659247663904 -1.744988029897
H 6.836527936256 -1.027738045464 -2.236996002192
H 8.767238168175 -0.994517187654 1.194174278332
H 9.071067943037 -2.683586652446 0.711700161664
H 8.707580966365 0.736362299373 -0.589606128111
H 8.953590609762 0.209989261417 -2.275712612652
H 10.139926453214 -1.245088128324 -0.831072651772
H 0.611479247647 -1.652148311440 0.308855779327
H -8.130390724767 2.225544615434 -0.647589222787
H -8.467607624332 2.296407743343 1.097619338650
H -8.124329593117 3.798421184049 0.204971098484
H -6.555140668020 3.159916080289 2.536758599417
H -4.911990779435 3.051550049424 1.862343950577
H -5.961828833470 4.420021126418 1.433307923659
H 4.965128628871 1.454782689009 -0.393539033033
H 4.691697655612 -2.798016989133 0.228555698618
H 2.476346892183 1.544415213137 -0.298967192883
}
memory 392GB
set_num_threads(16)
psi4_io.set_default_path("/scratch1/fs1/bolton/brian/psi4/Psi4-ribociclib")
set maxiter 500
set freeze_core True
set PROPERTIES_ORIGIN ["COM"]
set cubeprop_tasks ['esp']
set basis aug-cc-pVTZ
E, wfn = properties('mp2',properties=['dipole'],return_wfn=True)
cubeprop(wfn)
fchk(wfn, "ribociclib-esp.fchk")
oeprop(wfn,"GRID_ESP","WIBERG_LOWDIN_INDICES","MULLIKEN_CHARGES")
clean()
Hi,
I'm experiencing an issue during the xtb-opt step of torsion fitting due to an aromatic nitrile group in my molecule. The log file says:
File "/home/jkozuch/poltype2/PoltypeModules/poltype.py", line 7921, in RunPoltype
poltype.main()
File "/home/jkozuch/poltype2/PoltypeModules/poltype.py", line 3449, in main
params= self.GenerateParameters()
File "/home/jkozuch/poltype2/PoltypeModules/poltype.py", line 4838, in GenerateParameters
torgen.gen_torsion(self,optmol,self.torsionrestraint,mol)
File "/home/jkozuch/poltype2/PoltypeModules/torsiongenerator.py", line 1154, in gen_torsion
CheckIfQMOptReachedTargetDihedral(poltype,cartxyz,initialtinkerstructure,torset,optmol,variabletorlist,phaseangles) # QM usually freezes dof but xtb and ANI does not freeze so need to add check now.
File "/home/jkozuch/poltype2/PoltypeModules/torsiongenerator.py", line 781, in CheckIfQMOptReachedTargetDihedral
raise ValueError(string)
ValueError: Torsion did not reach target dihedr
[oCNFbocDep.txt](https://github.com/TinkerTools/poltype2/files/10700285/oCNFbocDep.txt)
al angle! torsion = [9, 11, 20, 21] tinker minimized dihedral angle is 210.3115077278189 but the optimized dihedral angle is at 206.6446276557323, tinker structure is oCNFbocDep-opt-5-9-214_preQMOPTprefit_xyzformat.xyz , opt strucuture is xtb-opt-5-9-214.xyz
In the torsion 9, 11, 20, 21, the [11]-[20]-[21] is roughly linear (C - C ≡ N), which is probably causing the error.
Attached find the sdf file (renamed to txt). I'm just downloading the file, so I'll zip it later and share a like a bit later, if that's helpful.
oCNFbocDep.txt
Thanks in advance!
Best,
Jacek
Dear Bryan,
While parameterizing hexamethylated maltose; Poltype encountered an error during the creation of fragmented jobs.
The IndexError is somehow related to the setup of torsions. The exact output of this error is not visible in the logs but
instead visible in the terminal:
Traceback (most recent call last):
File "/home/didier/poltype/PoltypeModules/poltype.py", line 1937, in RunPoltype
poltype.main()
File "/home/didier/poltype/PoltypeModules/poltype.py", line 1154, in main
params= self.GenerateParameters()
File "/home/didier/poltype/PoltypeModules/poltype.py", line 1789, in GenerateParameters
equivalentrotbndindexarrays,rotbndindextoringtor=frag.SpawnPoltypeJobsForFragments(self,rotbndindextoparentindextofragindex,rotbndindextofragment,rotbndindextofragmentfilepath,equivalentrotbndindexarrays,rotbndindextoringtor,equivalentrotbndindexmaps)
File "/home/didier/poltype/PoltypeModules/fragmenter.py", line 676, in SpawnPoltypeJobsForFragments
equivclasskey=torgen.get_class_key(poltype,equivparenttor[0],equivparenttor[1],equivparenttor[2],equivparenttor[3])
IndexError: list index out of range
The relevant poltype job has been compressed and uploaded to wetransfer. It is temporarily available at:
https://we.tl/t-DeUR4GIGZh
Can you make sense out of it?
Kind regards,
Didier
In continuation of pren/poltype#96
Dear all,
After rerunning the above job; I encountering a similar error with today its revision of poltype 2.
The fragment in question involves a cyclic structure. This structure encounters the above issue
of not reaching the target dihedral angle. This dihedral angle seems to be within the ring.
Kind regards,
Didier
I have been creating Docker images for Poltype2. When building the Docker images, it pulls the latest version of Poltype2 from GitHub. So, I have a Poltype2 Docker image based on the version of Poltype2 pulling on 24 May 2023. Using that Docker container, I am able to run the water example without any problem. Then, running Poltype2 with the Docker container for benzene also finishes nicely. However, when I add a nitro group to the benzene ring to become nitrobenzene, Poltype2 keeps running optimization and will not converge. Even after several hours, it is not able to finish up optimization and move on.
When I use the Poltype2 Docker image built on 22 December 2022, that version of Poltype2 has no problem running nitrobenzene and finishes in a few minutes.
In the Docker images, psi4 is installed and no Gaussian. I can see that the Temp/name-opt_1.psi4 file has changed quite a bit between the 2 versions I am testing.
Are there tricks to run nitrobenzene using the latest version of Poltype2? If there are, would you mind sharing those tricks?
CD Poon.
University of North Carolina at Chapel Hill
So I have prepared the forcefield for 1,1-dimethyl urea molecule using poltype2. But could not do the energy minimization of aqueous solution of 1,1-dimthyl urea properly.
Here is the output from the energy minimization output file:
Limited Memory BFGS Quasi-Newton Optimization :
QN Iter F Value G RMS F Move X Move Angle FG Call Comment
0 435.7564 9.0882 1
100 -6542.3830 2.8494 21.7142 0.0070 71.40 133 Success
200 -7606.5827 2.4792 6.3827 0.0070 73.93 233 Success
300 -8030.6801 1.9950 2.5074 0.0063 81.73 334 Success
318 -8052.9688 17.4755 -0.0000 0.0000 89.05 380 BadIntpln
LBFGS -- Incomplete Convergence due to BadIntpln
Final Function Value : -8052.9688
Final RMS Gradient : 17.4755
Final Gradient Norm : 1034.4556
TINKER-HP is Exiting following Normal Termination
Hi,
I am new to TinkerTools, I am trying to reproduce parameterization of ligand example. How much time it takes for parameterization to finish for lignad example. I got lots of warnings related to Open Babel. Is it detrimental to the results? And how long it takes to parameterize molecules with 50-100 atoms.
*** Open Babel Warning in ReadMolecule
Failed to kekulize aromatic bonds in MOL file
*** Open Babel Warning in ReadMolecule
Failed to kekulize aromatic bonds in MOL file
Hello,
I'm encountering difficulties installing the conda environment required for running poltype2. I've tried both the conda env create -f environment.yml
method and the approach outlined here, but both have resulted in conflicts between packages.
Do you have any suggestions on how to overcome this? Is it possible to provide a more general env.yml
file that doesn't explicitly list every package (including dependencies of main packages)? Ideally, this env.yml
file should not explicitly specify the packages builds, as this often ties them to specific architectures and operating systems, making them less portable in many instances.
Thank you in advance for your assistance.
Hi,
I am parametrizing a drug-like ligand with Poltype2 and it seems to take several days which exceeds the time limit on my cluster. I am wondering if there is a way to do some parallel computation on different nodes (i.e. submitting jobs to different nodes). Also, will poltype restore some checkpoint so that when I restarted the job it will continue to run from the point it stops previously.
Hello,
I was recently checking amoeba parameters for my molecule parametrized by the poltype2 protocol and I came across something I cannot resolve. Apparently, the atomic polarizabilities are assigned according to the file ~/path_to_poltype2/ParameterFiles/amoeba21polarize.prm. However, in your recent paper: https://pubs.acs.org/doi/pdf/10.1021/acs.jcim.1c01307 in Table 1, there are reported different values (especially if you have a look at values for sulfur and oxygens bonded to sulfur atoms).
Could you please comment on that, especially which set of parameters is more relevant or am I missing something?
Thank you in advance.
Hey Brandon,
I was running poltype for 90 atom molecule and the esp
from Psi4 keep getting killed with the basis used in poltype, so need to use less memory and used the 6-311G(d)
basis set. My final molecule after running analyze had -0.43844
charge. I tarred up the folder attached. It also has negative charge on the combined.xyz
of -0.00007 Electrons but not on the original tinker 408956424.xyz file. https://drive.google.com/file/d/13lahKVNAjrJ-wd6aa-nW0qYPdWPKCjIN/view?usp=sharing
$ analyze final.xyz -k final.key em | grep -A11 Charge
Total Electric Charge : 0.43844 Electrons
Dipole Moment Magnitude : 17370.525 Debye
$ analyze 408956424.xyz -k 408956424.key em | grep -A11 Charge
Total Electric Charge : 0.00000 Electrons
Dipole Moment Magnitude : 5.629 Debye
Dear Poltype2 Team,
a parameterization of a larger molecule (penicillin G in this case) crashes, because "memory cannot be allocated" during the torsion sp QM calculations (using Psi4). I've noticed that this coincides with a long list of "job has not responded since 0.25 h" errors in the poltype.log file and a long list of jobs that have been started in parallel.
I tried to control this issue by using "jobsatsametime=1", but this keyword seems not work (or I am misunderstanding its purpose). Instead 4 jobs are running at the same time, I suppose due to the "coresperjob=2" as default.
Unfortunately, I cannot try if this also happens with Gaussian, since we only have G16 on the HPC.
I am putting the folder of my parameterization onto a drive and will share it in a bit. However, I already wanted to post this, in case this is an easy fix.
Thanks in advance!
Best,
Jacek
Hello,
I'm a doctorate student who tries to parametrize one ligand using your software but I'm currently running into a wall about a problem that seems to be memory allocation :
MemoryError: std::bad_alloc
I'm attaching the files generated after the test if you had some time to help me resolve this issue.
Poltype-FBP.zip
Thank you for your attention.
Hi Brandon,
I just made a fresh pull of Poltype and now I am trying to run a simulation drug ligand and it just hangs here at the very beginning. It started to run before I did the pull but got an error with just made me decide to pull despite was probably a pdb error.
Calling: analyze /storage1/fs1/bolton/Active/projects/BWILEYtest/poltype2/VersionFiles/water.xyz -k /storage1/fs1/bolton/Active/projects/BWILEYtest/poltype2/VersionFiles/water.key e> version.out
This is the input poltype.ini file. Has anything changed to where this is now incorrect input? I am also getting a weird file called blank.txt
that is only 1 byte in size
complexedproteinpdbname=P00519_WT_fill.B99990001.tinker.pdb
numproc=16
ligandxyzfilenamelist=imatinib.xyz,dasatinib.xyz
keyfilenamelist=imatinib.key,dasatinib.key
submitlocally=False
Dear all,
For a supramolecular inclusion complex; I have tried to parameterize beta-cyclodextrin. Initially, I tried to parameterize the whole beta-cyclodextrin molecule. Unfortunately, just optimizing this geometry takes unfavorably long. On the one hand; I could attempt to use the BrianQC GPU interface to Psi4. Since my trial licence to BrianQC has expired however; I have decided to use a different strategy. Beta-cyclodextrin is a cyclic oligosaccharide, composed of seven α-D-glucopyranoside subunits. Without exceptions; these subunits are linked through α-1,4 glycosidic bonds. At face value; it seems to be the case that cyclodextrins can be parameterized by reusing parameters from two linked subunits. I therefore intend to reuse the atom-type values from the parameterized dimer.
So far; this scheme stranded with the final torsional parameters of the dimer. It seems that the zero torsions from key_4 could not be fitted to the calculated torsions of the fragments. Hence the ValueError and zero torsions in key_5. Is there a shorthand solution to this problem or does this particular case conflict with the existing parameterization code?
Kind regards,
Didier
Hi,
I'm having issues right before the ESP calculation when the _-poleditin.txt is used in poledit. Despite using "addhydrogentocharged=False", _-poleditin.txt contains 4 more atoms (I suppose H atoms for charged atoms), which makes poltype crash. I'm not sure if this has anything to do with the "userconformation=True" and "generateextendedconf=False". I'm using both because I do not want poltype to change the dihedral around the amide bond and the oxime double bond.
Attached find a zip with the SDF and poltype.in.
Thanks in advance for looking into this one!
Best,
Jacek
Hello,
I recently used your Poltype2 code to parametrize an organic molecule, namely N-methylsulfamate. However, when I check the final.key file containing the parameters, I see comments that poltype2 identified the three terminal oxygens with sulfur atoms (sulfur and the terminal oxygens indeed share the same polarizability parameter). The same situation happened also to the nitrogen atom that was assigned with parameters from hydrogen on non-aromatic nitrogen and the carbon atom that was identified as hydrogen on non-aromatic carbon.
Could you please help me to figure out where could be the potential issue? As I got it correctly, polarizabilities are taken from your database and only multipoles undergo the fitting to the qm-based electrostatic potential (in my parametrization I can see unique set of multipoles at each atom).
I also attach an archive containing the initial geometry in .sdf format, .ini file and the final.key file the outputted parameters.
poltype2-NMSM.zip
Thank you in advance for any advice.
There is one torsion parameter that was added to tinker here that is missing from poltypes2's amoebabio18.prm for C-terminal threonines. There were actually 8 more updates as well since then so may we should just copy over the one Dr. Ponder has been updating? I am wondering how unlikely there are threonines at the C-terminal of proteins. Could be a good trivia question 😄.
Undefined Torsional Parameters :
Type Atom Names Atom Classes
Torsion 1852-C 1851-CA 1856-C 1857-OH 30 7 7 10
I was trying to parameterize resorcinol (C6H6O2) when I encountered the following error:
rdkit.Chem.rdchem.AtomValenceException: Explicit valence for atom # 0 N, 4, is greater than permitted
However, resorcinol does not contain any nitrogens, so I was unsure why this SMARTS string is being generated in the first place.
EDIT:
I was sourcing an out-of-date conda environment. -_-
I made it to the initial multipole and polarization step of my fragments for a small molecule I am trying to parameterize, and came across this error in my poltype.log file:
Wed Apr 3 19:26:07 2024 Normal termination: logfile=4_5_Index_0-opt-2-3-107_preQMOPTprefit.alz path=/media/bak11/modulus/MDH/poltype/MDH-195/Temp/Fragments/4_5_Index_0/qm-torsion
Wed Apr 3 19:26:07 2024 All jobs have terminated ['4_5_Index_0-opt-2-3-107_preQMOPTprefit.alz']
Wed Apr 3 19:26:13 2024 Percent of jobs finished 0.0, jobs left = 13
Wed Apr 3 19:26:13 2024 Submitting: /media/bak11/binaries/miniconda3/envs/xtbenv/bin/xtb --gfn 2 --chrg 0 --uhf 0 4_5_Index_0-opt-2-3-275_preQMOPTprefit_xyzformat.xyz --opt --input xtb-opt-2-3-275_constr.txt > xtb-opt-2-3-275.log path = /media/bak11/modulus/MDH/poltype/MDH-195/Temp/Fragments/4_5_Index_0/qm-torsion
/bin/sh: 1: /media/bak11/binaries/miniconda3/envs/xtbenv/bin/xtb: not found
Wed Apr 3 20:26:13 2024 Error Job has not been updated in 1 hours last update time = 1.0000298017889824 hours logname=/media/bak11/modulus/MDH/poltype/MDH-195/Temp/Fragments/4_5_Index_0/qm-torsion/xtb-opt-2-3-275.log
Wed Apr 3 20:26:14 2024 ERROR termination: logfile=/media/bak11/modulus/MDH/poltype/MDH-195/Temp/Fragments/4_5_Index_0/qm-torsion/xtb-opt-2-3-275.log path=/media/bak11/modulus/MDH/poltype/MDH-195/Temp/Fragments/4_5_Index_0/qm-torsion
Wed Apr 3 20:26:14 2024 Percent of jobs finished 7.69, jobs left = 12
Wed Apr 3 20:26:14 2024 Submitting: /media/bak11/binaries/miniconda3/envs/xtbenv/bin/xtb --gfn 2 --chrg 0 --uhf 0 4_5_Index_0-opt-2-3-303_preQMOPTprefit_xyzformat.xyz --opt --input xtb-opt-2-3-303_constr.txt > xtb-opt-2-3-303.log path = /media/bak11/modulus/MDH/poltype/MDH-195/Temp/Fragments/4_5_Index_0/qm-torsion
/bin/sh: 1: /media/bak11/binaries/miniconda3/envs/xtbenv/bin/xtb: not found
Xtb is supposed to be a fallback if psi4 times out, but I noticed that it is not listed in the .yml files provided in the Environment folder. Is this an oversight since xtb and xtb-python are in the conda-forge channel, or has xtb been dropped from poltype2 and this is a legacy call in the torsion step?
And why is poltype2 calling for xtb in a separate environment?
Hi,
I am stuck at few places
GPU Device : Setting Device ID to 0 from GPU utilization
Backtrace
1 analyze9 0x17c64d
2 analyze9 0x164a54
3 analyze9 0x15c5a9
4 analyze9 0x18ca77
5 analyze9 0x19014f
6 analyze9 0x1915c4
7 analyze9 0x20f8d
8 /lib/x86_64-linux-gnu/libc.so.6 __libc_start_main
9 analyze9 0x21ebe
Terminating with uncaught exception : An internal array in Spatial requested 12994 elements, but only 7968 (48166) were allocated. Please increase Spatial::LSTCAP (current value 48) so as to make Spatial::LSTCAP166 >= 12994.
Poltype crashes during the parameterization of a 65-atom molecule.
The direct cause for the crash seems to originate from Poledit its failure
to fully assign polarization groups to the molecule. Parameterization thus
fails with the following log entries:
Undefined Atomic Multipole Parameters :
Warning, No Multipole Parameters for Atom 41
Warning, No Multipole Parameters for Atom 42
Warning, No Multipole Parameters for Atom 43
Warning, No Multipole Parameters for Atom 44
Additional Atomic Dipole Polarizability Parameters :
Atom Type Alpha Thole Group Atom Types
401 1.334 0.390 428
402 1.334 0.390 429
403 1.750 0.390 404 430
404 1.750 0.390 403
405 1.750 0.390 431
406 1.750 0.390 432
407 1.750 0.390 414
408 1.334 0.390 433
409 1.334 0.390 410
410 0.837 0.390 409 411
411 1.334 0.390 410 434
412 1.334 0.390 435
413 1.334 0.390 436
414 2.064 0.390 407
415 1.334 0.390 437
416 1.334 0.390 426
426 0.496 0.390 416
417 1.334 0.390 438
418 1.334 0.390 439
419 1.334 0.390 427
427 0.496 0.390 419
420 1.334 0.390 421
421 0.812 0.390 420 422
422 1.620 0.390 421 434
423 1.334 0.390 440
424 1.334 0.390
425 1.415 0.390 441
428 0.496 0.390 401
429 0.496 0.390 402
430 0.696 0.390 403
431 0.696 0.390 405
432 0.432 0.390 406
433 0.496 0.390 408
434 0.496 0.390 411
435 0.496 0.390 412
436 0.496 0.390 413
437 0.496 0.390 415
438 0.496 0.390 417
439 0.496 0.390 418
440 0.496 0.390 423
441 0.480 0.390 425
POLARGRP -- Check Polarization Groups for Atoms 26 and 56
POLARGRP -- Check Polarization Groups for Atoms 26 and 57
POLARGRP -- Check Polarization Groups for Atoms 27 and 58
POLARGRP -- Check Polarization Groups for Atoms 27 and 59
Tinker is Unable to Continue; Terminating the Current Calculation
Tue Dec 27 12:22:24 2022 Traceback (most recent call last):
File "/home/didier/poltype/PoltypeModules/poltype.py", line 7735, in RunPoltype
poltype.main()
File "/home/didier/poltype/PoltypeModules/poltype.py", line 3427, in main
params= self.GenerateParameters()
File "/home/didier/poltype/PoltypeModules/poltype.py", line 4698, in GenerateParameters
combinedxyz,combinedpot=esp.ElectrostaticPotentialFitting(self,xyzfnamelist,keyfnamelist,potnamelist)
File "/home/didier/poltype/PoltypeModules/electrostaticpotential.py", line 518, in ElectrostaticPotentialFitting
shutil.copy(combinedxyz.replace('.xyz','.key'),poltype.key3fnamefrompot)
File "/home/didier/anaconda3/envs/poltype/lib/python3.9/shutil.py", line 427, in copy
copyfile(src, dst, follow_symlinks=follow_symlinks)
File "/home/didier/anaconda3/envs/poltype/lib/python3.9/shutil.py", line 264, in copyfile
with open(src, 'rb') as fsrc:
FileNotFoundError: [Errno 2] No such file or directory: 'combined.key'
So far, I have tried rerunning the perl script and potential program to no avail.
The full parameterization directory has been archived and uploaded towards
the following WeTransfer link:
https://we.tl/t-kkC35zNHYH
Hi!
When torsion parameters are computed ab initio in a fragment, poltype produces those kind plots reporting the energy scan in the torsion and the fit results:
Actually a plot like the one reported here is rich in information but hard to understand for non-expert users.
Is it possible, maybe in one additional .png picture, to report only the reference curve (the QM) and a single curve, representing the scan done with the actual parameters which are obtained as a result of the torsion parametrization?
Additionally, it would also be very useful to have the minima of the reference and result curves highlighted in some way, with a convenient notation on the graph. This would really help a lot in the interpretation of the graph to analyze critical cases, where the torsion fit might have gone wrong.
Thanks in advance,
Daniele
Hello!
I read through the README_INSTALL.MD and don't feel like I learned anything about how to install poltype2
I already have Tinker 8.10.5, gaussian16 and gdma installed so I didn't follow the steps installing the CPU and GPU version
What do I need to do to install poltype2?
I don't find the README with random /home/user paths and zero explanation to be very useful. What do I need to adapt from the given bashrc file?
Could this maybe be updated or answered directly?
Thank you and all the best
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.