diff options
-rw-r--r-- | sci-chemistry/ambertools/ChangeLog | 11 | ||||
-rw-r--r-- | sci-chemistry/ambertools/Manifest | 2 | ||||
-rw-r--r-- | sci-chemistry/ambertools/ambertools-1.5-r4.ebuild | 159 | ||||
-rw-r--r-- | sci-chemistry/ambertools/ambertools-12_p38.ebuild (renamed from sci-chemistry/ambertools/ambertools-12.ebuild) | 56 | ||||
-rw-r--r-- | sci-chemistry/ambertools/files/ambertools-1.5-bugfix_1-21.patch | 5330 | ||||
-rw-r--r-- | sci-chemistry/ambertools/files/ambertools-1.5-bugfix_22-27.patch | 3343 | ||||
-rw-r--r-- | sci-chemistry/ambertools/files/ambertools-1.5-bugfix_28.patch | 23 | ||||
-rw-r--r-- | sci-chemistry/ambertools/files/ambertools-1.5-gentoo2.patch | 1068 | ||||
-rw-r--r-- | sci-chemistry/ambertools/files/ambertools-1.5-overflow.patch | 30 | ||||
-rw-r--r-- | sci-chemistry/ambertools/files/ambertools-12-bugfix_14-26.patch | 14856 | ||||
-rw-r--r-- | sci-chemistry/ambertools/files/ambertools-12-gentoo.patch | 55 |
11 files changed, 89 insertions, 24844 deletions
diff --git a/sci-chemistry/ambertools/ChangeLog b/sci-chemistry/ambertools/ChangeLog index c46b0af1f..aa04ed0ed 100644 --- a/sci-chemistry/ambertools/ChangeLog +++ b/sci-chemistry/ambertools/ChangeLog @@ -1,7 +1,16 @@ # ChangeLog for sci-chemistry/ambertools -# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 +# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 # $Header: /var/cvsroot/gentoo-x86/sci-chemistry/ambertools/ChangeLog,v 1.2 2011/08/02 14:42:37 alexxy Exp $ + 11 Nov 2014; Justin Lecher <jlec@gentoo.org> -ambertools-1.5-r4.ebuild, + -ambertools-12.ebuild, +ambertools-12_p38.ebuild, + -files/ambertools-1.5-bugfix_1-21.patch, + -files/ambertools-1.5-bugfix_22-27.patch, + -files/ambertools-1.5-bugfix_28.patch, -files/ambertools-1.5-gentoo2.patch, + -files/ambertools-1.5-overflow.patch, + -files/ambertools-12-bugfix_14-26.patch, files/ambertools-12-gentoo.patch: + Drop old and large patches; apply all upstream patches until bugfix.38 + 28 Jun 2013; Christoph Junghans <ottxor@gentoo.org> ambertools-12.ebuild: fixed deps diff --git a/sci-chemistry/ambertools/Manifest b/sci-chemistry/ambertools/Manifest index 5ccd71741..14e4eacd0 100644 --- a/sci-chemistry/ambertools/Manifest +++ b/sci-chemistry/ambertools/Manifest @@ -1,2 +1,2 @@ -DIST AmberTools-1.5.tar.bz2 121062582 SHA256 0c7d397d2e91603bb9123ae68e91af3525269e60800ced360f68c13350651d7c SHA512 3366bfe6d0ee1f9b5b99b1d6aad4111093919fe43ab5e9753c62ae815dca958bfc660a3af9db83de71690624869ee5e47af51a6c8412c6bdcb32aecbefb01677 WHIRLPOOL 192f027f5480807cd36693c6c7d8e3b809f4032ecb1a1bf97df888bd02974fbd2bc8da4ea0e9d52062dce10e969bb72cc2f1ba9c4d627f6097492175ab025120 DIST AmberTools12.tar.bz2 89175545 SHA256 aff5dbc29b5b5b29a85ae465d3e250e225cd85deb2bce828833c2dc769e81009 SHA512 4c34d460fdedf00ade847040856d4bf7df65e7370d4a696dd858fdd3612c192ddc13dabde559bc1a7ae4068ba8040ee159479e247b2c1e59ed976a5aa6344970 WHIRLPOOL 3bc134875482d00d0d1861e9d87f4fef9fdebd1f6860b2c4623f48c23f6f8673df4b23069f3e9374ef9814d500f23f986250a1bcae093597c9e0a0c9d40d6c86 +DIST ambertools-bugfixes-12_p38.tar.xz 88340 SHA256 f130e18b256869ddbb81488c92354b94a762735541fcc070b0696a54d332f9ed SHA512 485123d81e689e06f2a1affc9f17d99e9ba18f92e464beb8fb9c835897693a1bd7d330a8bf9d3526c91eadb32a9b58692185e218c61002f0eeab22ff6efbbb08 WHIRLPOOL c830441291a1d58dcb02913cd89533c255a7c558e2a25806f11e89d89a4d6e7c2e92809fe5627105a096b2b4db98f73c4f9c4fdef6264e5c00edb52215b5d03f diff --git a/sci-chemistry/ambertools/ambertools-1.5-r4.ebuild b/sci-chemistry/ambertools/ambertools-1.5-r4.ebuild deleted file mode 100644 index 8eee31ca5..000000000 --- a/sci-chemistry/ambertools/ambertools-1.5-r4.ebuild +++ /dev/null @@ -1,159 +0,0 @@ -# Copyright 1999-2014 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI=4 - -inherit eutils fortran-2 multilib toolchain-funcs - -DESCRIPTION="A suite for carrying out complete molecular mechanics investigations" -HOMEPAGE="http://ambermd.org/#AmberTools" -SRC_URI=" - AmberTools-${PV}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~x86 ~amd64-linux" -IUSE="openmp X" - -RESTRICT="fetch" - -RDEPEND=" - virtual/cblas - virtual/lapack - sci-libs/clapack - sci-libs/arpack - sci-libs/cifparse-obj - sci-chemistry/mopac7 - sci-libs/netcdf - sci-libs/fftw:2.1 - sci-chemistry/reduce - virtual/fortran" -DEPEND="${RDEPEND} - dev-util/byacc - dev-libs/libf2c - sys-devel/ucpp" -S="${WORKDIR}/amber11" - -pkg_nofetch() { - einfo "Go to ${HOMEPAGE} and get ${A}" - einfo "Place it in ${DISTDIR}" -} - -pkg_setup() { - fortran-2_pkg_setup - if use openmp; then - tc-has-openmp || \ - die "Please select an openmp capable compiler like gcc[openmp]" - fi - AMBERHOME="${S}" -} - -src_prepare() { - epatch \ - "${FILESDIR}/${P}-bugfix_1-21.patch" \ - "${FILESDIR}/${P}-bugfix_22-27.patch" \ - "${FILESDIR}/${P}-bugfix_28.patch" \ - "${FILESDIR}/${P}-gentoo2.patch" \ - "${FILESDIR}/${P}-overflow.patch" - cd "${S}"/AmberTools/src - rm -r \ - arpack \ - blas \ - byacc \ - lapack \ - fftw-2.1.5 \ - fftw-3.2.2 \ - c9x-complex \ - cifparse \ - netcdf \ - pnetcdf \ - reduce \ - ucpp-1.3 \ - || die -} - -src_configure() { - cd "${S}"/AmberTools/src - sed -e "s:\\\\\$(LIBDIR)/arpack.a:-larpack:g" \ - -e "s:\\\\\$(LIBDIR)/lapack.a:$($(tc-getPKG_CONFIG) lapack --libs) -lclapack:g" \ - -e "s:\\\\\$(LIBDIR)/blas.a:$($(tc-getPKG_CONFIG) blas cblas --libs):g" \ - -e "s:\\\\\$(LIBDIR)/libdrfftw.a:${EPREFIX}/usr/$(get_libdir)/libdrfftw.a:g" \ - -e "s:\\\\\$(LIBDIR)/libdfftw.a:${EPREFIX}/usr/$(get_libdir)/libdrfftw.a:g" \ - -e "s:GENTOO_CFLAGS:${CFLAGS} -DBINTRAJ :g" \ - -e "s:GENTOO_CXXFLAGS:${CXXFLAGS}:g" \ - -e "s:GENTOO_FFLAGS:${FFLAGS}:g" \ - -e "s:GENTOO_LDFLAGS:${LDFLAGS}:g" \ - -e "s:fc=g77:fc=$(tc-getFC):g" \ - -e "s:\$netcdflib:$($(tc-getPKG_CONFIG) netcdf --libs):g" \ - -e "s:NETCDF=\$netcdf:NETCDF=netcdf.mod:g" \ - -i configure || die - sed -e "s:arsecond_:arscnd_:g" \ - -i sff/time.c \ - -i sff/sff.h \ - -i sff/sff.c || die - sed -e "s:\$(NAB):\$(NAB) -lrfftw:g" \ - -i nss/Makefile || die - - local myconf - - use X || myconf="${myconf} -noX11" - - use openmp && myconf="${myconf} -openmp" - - ./configure \ - ${myconf} \ - -nobintraj \ - -nomdgx \ - -nomtkpp \ - -nopython \ - -nosleap \ - gnu -} - -src_compile() { - cd "${S}"/AmberTools/src - emake || die -} - -src_test() { - cd "${S}"/AmberTools/test - make test || die -} - -src_install() { - rm -r bin/chemistry bin/MMPBSA_mods - rm bin/ante-MMPBSA.py bin/extractFrcmod.py - - for x in bin/* - do dobin ${x} || die - done - - dobin AmberTools/src/antechamber/mopac.sh - sed -e "s:\$AMBERHOME/bin/mopac:mopac7:g" \ - -i "${ED}/usr/bin/mopac.sh" || die - - # Make symlinks untill binpath for amber will be fixed - dodir /usr/share/${PN}/bin - cd "${ED}/usr/bin" - for x in * - do dosym /usr/bin/${x} /usr/share/${PN}/bin/${x} - done - cd "${S}" - - dodoc doc/AmberTools.pdf doc/leap_pg.pdf - dolib.a lib/* - insinto /usr/include/${PN} - doins include/* - insinto /usr/share/${PN} - doins -r dat - cd AmberTools - doins -r benchmarks - doins -r examples - doins -r test - - cat >> "${T}"/99ambertools <<- EOF - AMBERHOME="${EPREFIX}/usr/share/ambertools" - EOF - doenvd "${T}"/99ambertools -} diff --git a/sci-chemistry/ambertools/ambertools-12.ebuild b/sci-chemistry/ambertools/ambertools-12_p38.ebuild index fe192dcba..55acf2be1 100644 --- a/sci-chemistry/ambertools/ambertools-12.ebuild +++ b/sci-chemistry/ambertools/ambertools-12_p38.ebuild @@ -9,7 +9,8 @@ inherit eutils fortran-2 multilib toolchain-funcs DESCRIPTION="A suite for carrying out complete molecular mechanics investigations" HOMEPAGE="http://ambermd.org/#AmberTools" SRC_URI=" - AmberTools${PV}.tar.bz2" + AmberTools${PV%_p*}.tar.bz2 + http://dev.gentoo.org/~jlec/distfiles/${PN}-bugfixes-${PV}.tar.xz" LICENSE="GPL-2" SLOT="0" @@ -37,8 +38,9 @@ DEPEND="${RDEPEND} S="${WORKDIR}/amber12" pkg_nofetch() { - einfo "Go to ${HOMEPAGE} and get ${A}" - einfo "Place it in ${DISTDIR}" + einfo "Go to ${HOMEPAGE} and get AmberTools${PV%_p*}.tar.bz2" + einfo "and download http://dev.gentoo.org/~jlec/distfiles/${PN}-bugfixes-${PV}.tar.xz" + einfo "Place both into ${DISTDIR}" } pkg_setup() { @@ -52,9 +54,9 @@ pkg_setup() { src_prepare() { epatch \ - "${FILESDIR}/${P}-bugfix_14-26.patch" \ - "${FILESDIR}/${P}-gentoo.patch" - cd "${S}"/AmberTools/src + "${FILESDIR}"/${PN}-12-gentoo.patch \ + "${WORKDIR}"/bugfixes/bugfix.{14..38} + cd "${S}"/AmberTools/src || die rm -r \ arpack \ blas \ @@ -70,7 +72,7 @@ src_prepare() { } src_configure() { - cd "${S}"/AmberTools/src + cd "${S}"/AmberTools/src || die sed \ -e "s:\\\\\$(LIBDIR)/arpack.a:-larpack:g" \ -e "s:\\\\\$(LIBDIR)/lapack.a:$($(tc-getPKG_CONFIG) lapack --libs) -lclapack:g" \ @@ -87,10 +89,10 @@ src_configure() { -e "s:\$netcdfflag:$($(tc-getPKG_CONFIG) netcdf --libs):g" \ -e "s:NETCDF=\$netcdf:NETCDF=netcdf.mod:g" \ -i configure2 || die - sed -e "s:arsecond_:arscnd_:g" \ - -i sff/time.c \ - -i sff/sff.h \ - -i sff/sff.c || die + + sed \ + -e "s:arsecond_:arscnd_:g" \ + -i sff/time.c sff/sff.h sff/sff.c || die local myconf="--no-updates" @@ -98,12 +100,17 @@ src_configure() { use openmp && myconf="${myconf} -openmp" - cd "${S}" + cd "${S}" || die + + sed \ + -e '/patch_amber.py/d' \ + -i configure || die + ./configure \ ${myconf} \ -nobintraj \ -nomtkpp \ - gnu + gnu || die } src_test() { @@ -115,8 +122,14 @@ src_test() { emake test } +src_compile() { + emake \ + CC=$(tc-getCC) \ + FC=$(tc-getFC) +} + src_install() { - rm bin/*.py + rm bin/*.py || die for x in bin/* do @@ -124,16 +137,17 @@ src_install() { done dobin AmberTools/src/antechamber/mopac.sh - sed -e "s:\$AMBERHOME/bin/mopac:mopac7:g" \ + sed \ + -e "s:\$AMBERHOME/bin/mopac:mopac7:g" \ -i "${ED}/usr/bin/mopac.sh" || die # Make symlinks untill binpath for amber will be fixed dodir /usr/share/${PN}/bin - cd "${ED}/usr/bin" + cd "${ED}/usr/bin" || die for x in * - do dosym /usr/bin/${x} /usr/share/${PN}/bin/${x} + do dosym /usr/bin/${x} ../share/${PN}/bin/${x} done - cd "${S}" + cd "${S}" || die dodoc doc/AmberTools12.pdf dolib.a lib/* @@ -141,10 +155,8 @@ src_install() { doins include/* insinto /usr/share/${PN} doins -r dat - cd AmberTools - doins -r benchmarks - doins -r examples - doins -r test + cd AmberTools || die + doins -r benchmarks examples test cat >> "${T}"/99ambertools <<- EOF AMBERHOME="${EPREFIX}/usr/share/ambertools" diff --git a/sci-chemistry/ambertools/files/ambertools-1.5-bugfix_1-21.patch b/sci-chemistry/ambertools/files/ambertools-1.5-bugfix_1-21.patch deleted file mode 100644 index 911bc4dec..000000000 --- a/sci-chemistry/ambertools/files/ambertools-1.5-bugfix_1-21.patch +++ /dev/null @@ -1,5330 +0,0 @@ -diff -urN amber11.orig/AmberTools/src/configure amber11/AmberTools/src/configure ---- amber11.orig/AmberTools/src/configure 2011-04-14 15:30:55.000000000 +0300 -+++ amber11/AmberTools/src/configure 2011-10-25 15:01:28.222288537 +0300 -@@ -650,7 +650,7 @@ - if [ "$cuda" = 'yes' -o "$cuda_SPSP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then - pmemd_cu_includes='-I$(CUDA_HOME)/include -IB40C -IB40C/KernelCommon' - pmemd_cu_defines='-DCUDA' -- pmemd_cu_libs='-L$(CUDA_HOME)/lib64 -L$(CUDA_HOME)/lib -lcufft -lcudart ./cuda/cuda.a' -+ pmemd_cu_libs='-L$(CUDA_HOME)/lib64 -L$(CUDA_HOME)/lib -lcurand -lcufft -lcudart ./cuda/cuda.a' - if [ "$optimise" = 'no' ]; then - nvcc='$(CUDA_HOME)/bin/nvcc -use_fast_math -O0 -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20' - else -@@ -909,7 +909,7 @@ - - pmemd_cu_includes='-I$(CUDA_HOME)/include -IB40C -IB40C/KernelCommon' - pmemd_cu_defines='-DCUDA' -- pmemd_cu_libs='-L$(CUDA_HOME)/lib64 -L$(CUDA_HOME)/lib -lcufft -lcudart ./cuda/cuda.a' -+ pmemd_cu_libs='-L$(CUDA_HOME)/lib64 -L$(CUDA_HOME)/lib -lcurand -lcufft -lcudart ./cuda/cuda.a' - if [ "$optimise" = 'yes' ]; then - nvcc='$(CUDA_HOME)/bin/nvcc -use_fast_math -O3 -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20' - else -@@ -2111,21 +2111,21 @@ - echo "Change to \$AMBERHOME/src/ and type 'make clean' followed by" - echo "'make parallel_win'." - elif [ "$cuda" = 'yes' -o "$cuda_SPSP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then -- echo "The next step is to cd to ../../src and type 'make install'" -+ echo "The next step is to cd to ../../src and type 'make $installtype'" - else - echo "If you have amber11, the most common next step is to " -- echo "'cd ../../src; make clean; make install'. See the Users' Manual" -+ echo "'cd ../../src; make clean; make $installtype'. See the Users' Manual" - echo "for information on building a parallel version of AmberTools" - fi - elif [ "$cuda" = 'yes' -o "$cuda_SPSP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then -- echo "The next step is to cd to ../../src and type 'make install'" -+ echo "The next step is to cd to ../../src and type 'make $installtype'" - elif [ "$windows" = 'yes' ]; then - echo "The next step is to switch to a dos shell with ifort enabled." - echo "Change to \$AMBERHOME/src/ and type 'make serial_win'." - elif [ "$openmp" = 'yes' ]; then - echo "The next step is to type 'make nabonly'" - else -- echo "The next step is to type 'make install'" -+ echo "The next step is to type 'make $installtype'" - fi - echo " " - -@@ -2149,7 +2149,7 @@ - echo " NOTE: after installing AmberTools, if you want to compile" - echo " Amber11 using AmberTools 1.5, you must run the " - echo " AT15_Amber11.py script first, e.g.:" -- echo " cd $AMBERHOME; ./AT15_Amber11.py; make $installtype" -+ echo " cd $AMBERHOME; ./AT15_Amber11.py; cd src; make $installtype" - echo " (See the Amber11 Users' Manual for full instructions," - echo " and be sure to have a backup, since the AT15_Amber11.py" - echo " script will modify your Amber11 files.)" -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Action_Center.cpp amber11/AmberTools/src/cpptraj/src/Action_Center.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/Action_Center.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Action_Center.cpp 2011-10-25 15:01:28.108288642 +0300 -@@ -72,7 +72,7 @@ - // else - // mass = NULL; - -- if (!origin && P->ifbox==0) { -+ if (!origin && P->BoxType==0) { - mprintf(" Error: Center::setup: Box center specified but no box information.\n"); - //fprintf(stdout," Centering on origin.\n"); - return 1; -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Action_Closest.cpp amber11/AmberTools/src/cpptraj/src/Action_Closest.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/Action_Closest.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Action_Closest.cpp 2011-10-25 15:01:28.108288642 +0300 -@@ -181,8 +181,8 @@ - // NOTE: Should box be figured out from read-in coords? - imageType = 0; - if (!noimage) { -- imageType = P->ifbox; -- if (P->ifbox==0) { -+ imageType = P->BoxType; -+ if (P->BoxType==0) { - mprintf(" Warning: Closest::setup: "); - mprintf(" Imaging specified but no box information in prmtop %s\n",P->parmName); - mprintf(" No imaging can occur..\n"); -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Action_Distance.cpp amber11/AmberTools/src/cpptraj/src/Action_Distance.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/Action_Distance.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Action_Distance.cpp 2011-10-25 15:01:28.194288563 +0300 -@@ -57,8 +57,6 @@ - mprintf(" DISTANCE: %s to %s",Mask1.maskString, Mask2.maskString); - if (noimage) - mprintf(", non-imaged"); -- else -- mprintf(", imaged"); - if (useMass) - mprintf(", center of mass"); - else -@@ -68,6 +66,11 @@ - return 0; - } - -+/* -+ * Distance::setup() -+ * Determine what atoms each mask pertains to for the current parm file. -+ * Also determine whether imaging should be performed. -+ */ - int Distance::setup() { - - if ( Mask1.SetupMask(P,debug) ) return 1; -@@ -89,11 +92,19 @@ - // Check imaging - check box based on prmtop box - imageType = 0; - if (!noimage) { -- imageType = P->ifbox; -- if (P->ifbox==0 && debug>0) { -+ imageType = P->BoxType; -+ if (P->BoxType==0 && debug>0) { - mprintf(" Warning: No box info in %s, disabling imaging.\n",P->parmName); - } - } -+ -+ // Print imaging info for this parm -+ mprintf(" DISTANCE: %s to %s",Mask1.maskString, Mask2.maskString); -+ if (imageType > 0) -+ mprintf(", imaged"); -+ else -+ mprintf(", imaging off"); -+ mprintf(".\n"); - - return 0; - } -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Action_DSSP.cpp amber11/AmberTools/src/cpptraj/src/Action_DSSP.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/Action_DSSP.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Action_DSSP.cpp 2011-10-25 15:01:28.195288561 +0300 -@@ -76,7 +76,7 @@ - int selected, atom, res; - Residue RES; - -- // Set up mask -+ // Set up mask for this parm - if ( Mask.SetupMask(P,debug) ) return 1; - if ( Mask.None() ) { - mprintf(" Error: DSSP::setup: Mask has no atoms.\n"); -@@ -90,25 +90,25 @@ - Nres=P->nres; - //mprintf(" DSSP: Setting up for %i residues.\n",Nres); - -- // Free up SecStruct if previously allocated. -- // NOTE: In action setup, should check if Parm has really changed... -- SecStruct.clear(); -+ // Set up for each residue of the current Parm if not already set-up. - for (res = 0; res < Nres; res++) { -- RES.sstype=SECSTRUCT_NULL; -- RES.isSelected=false; -- RES.C=-1; -- RES.O=-1; -- RES.N=-1; -- RES.H=-1; -- RES.CO_HN_Hbond.assign( Nres, 0 ); -- RES.SSprob[0]=0.0; -- RES.SSprob[1]=0.0; -- RES.SSprob[2]=0.0; -- RES.SSprob[3]=0.0; -- RES.SSprob[4]=0.0; -- RES.SSprob[5]=0.0; -- RES.SSprob[6]=0.0; -- SecStruct.push_back(RES); -+ if (res>=(int)SecStruct.size()) { -+ RES.sstype=SECSTRUCT_NULL; -+ RES.isSelected=false; -+ RES.C=-1; -+ RES.O=-1; -+ RES.N=-1; -+ RES.H=-1; -+ RES.CO_HN_Hbond.assign( Nres, 0 ); -+ RES.SSprob[0]=0.0; -+ RES.SSprob[1]=0.0; -+ RES.SSprob[2]=0.0; -+ RES.SSprob[3]=0.0; -+ RES.SSprob[4]=0.0; -+ RES.SSprob[5]=0.0; -+ RES.SSprob[6]=0.0; -+ SecStruct.push_back(RES); -+ } - } - - // Go through all atoms in mask. Set up a residue for each C, O, N, and H atom -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Action_Image.cpp amber11/AmberTools/src/cpptraj/src/Action_Image.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/Action_Image.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Action_Image.cpp 2011-10-25 15:01:28.110288640 +0300 -@@ -98,14 +98,14 @@ - useMass = false; - } - -- if (P->ifbox==0) { -+ if (P->BoxType==0) { - mprintf(" Error: Image::setup: Parm %s does not contain box information.\n", - P->parmName); - return 1; - } - - ortho = false; -- if (P->ifbox==1 && triclinic==OFF) ortho=true; -+ if (P->BoxType==1 && triclinic==OFF) ortho=true; - - if (triclinic == FAMILIAR) { - if (ComMask!=NULL) { -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Action_Outtraj.cpp amber11/AmberTools/src/cpptraj/src/Action_Outtraj.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/Action_Outtraj.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Action_Outtraj.cpp 2011-10-25 15:01:28.129288623 +0300 -@@ -6,6 +6,9 @@ - // CONSTRUCTOR - Outtraj::Outtraj() { - //fprintf(stderr,"Outtraj Con\n"); -+ min=0.0; -+ max=0.0; -+ Dset=NULL; - } - - // DESTRUCTOR -@@ -13,11 +16,40 @@ - - /* - * Outtraj::init() -- * Action wrapper for trajout -+ * Action wrapper for trajout. -+ * Expected call: outtraj <filename> [ trajout args ] -+ * [maxmin <dataset> min <min> max <max> - */ - int Outtraj::init() { -+ char *datasetName; -+ -+#ifdef MPI -+ mprintf("ERROR: OUTTRAJ currently not functional with MPI.\n"); -+ return 1; -+#endif -+ -+ mprintf(" OUTTRAJ: Will write to [%s]\n",A->Arg(1)); -+ outtraj.SetDebug(debug); -+ // If maxmin, get the name of the dataset as well as the max and min values. -+ datasetName = A->getKeyString("maxmin",NULL); -+ if (datasetName!=NULL) { -+ Dset = DSL->Get(datasetName); -+ if (Dset==NULL) { -+ mprintf("Error: Outtraj maxmin: Could not get dataset %s\n",datasetName); -+ return 1; -+ } else { -+ // Currently dont allow for string datasets -+ if (Dset->Type()==STRING) { -+ mprintf("Error: Outtraj maxmin: String dataset (%s) not supported.\n",datasetName); -+ return 1; -+ } -+ max = A->getKeyDouble("max",0.0); -+ min = A->getKeyDouble("min",0.0); -+ mprintf(" maxmin: Printing trajectory frames based on %lf <= %s <= %lf\n", -+ min, datasetName, max); -+ } -+ } - -- mprintf(" OUTTRAJ: [%s]\n",A->ArgLine()); - return ( outtraj.Add(A,PFL,worldsize) ); - } - -@@ -33,8 +65,32 @@ - * Outtraj::action() - */ - int Outtraj::action() { -+ double dVal; -+ int iVal; - -- return ( outtraj.Write(currentFrame, F, P) ); -+ // If dataset defined, check if frame is within max/min -+ if (Dset!=NULL) { -+ if (Dset->Type() == DOUBLE) { -+ if (Dset->Get(&dVal, currentFrame)) return 1; -+ } else if (Dset->Type() == INT) { -+ if (Dset->Get(&iVal, currentFrame)) return 1; -+ dVal = (double) iVal; -+ } else -+ return 1; -+ //mprintf("DBG: maxmin: dVal = %lf\n",dVal); -+ // If value from dataset not within min/max, exit now. -+ if (dVal < min || dVal > max) return 0; -+ } -+ if ( outtraj.Write(currentFrame, F, P) != 0 ) return 1; -+ return 0; - } - -+/* -+ * Outtraj::print() -+ * Close trajectory. -+ */ -+void Outtraj::print() { -+ mprintf(" OUTTRAJ: [%s] Wrote %i frames.\n",A->Arg(1),outtraj.front()->CurrentFrame()); -+ outtraj.Close(); -+} - -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Action_Outtraj.h amber11/AmberTools/src/cpptraj/src/Action_Outtraj.h ---- amber11.orig/AmberTools/src/cpptraj/src/Action_Outtraj.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Action_Outtraj.h 2011-10-25 15:01:28.129288623 +0300 -@@ -6,6 +6,9 @@ - - class Outtraj: public Action { - TrajoutList outtraj; -+ double max; -+ double min; -+ DataSet *Dset; - public: - Outtraj(); - ~Outtraj(); -@@ -13,5 +16,6 @@ - int init(); - //int setup(); - int action(); -+ void print(); - }; - #endif -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Action_Rms2d.cpp amber11/AmberTools/src/cpptraj/src/Action_Rms2d.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/Action_Rms2d.cpp 1970-01-01 03:00:00.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Action_Rms2d.cpp 2011-10-25 15:01:28.074288674 +0300 -@@ -0,0 +1,71 @@ -+// Rms2d -+#include "Action_Rms2d.h" -+#include "CpptrajStdio.h" -+ -+// CONSTRUCTOR -+Rms2d::Rms2d() { -+ //fprintf(stderr,"Rms2d Con\n"); -+ nofit=false; -+ useMass=false; -+} -+ -+// DESTRUCTOR -+Rms2d::~Rms2d() { } -+ -+/* -+ * Rms2d::init() -+ * Expected call: rms2d <mask> <refmask> [rmsout filename] [mass] [nofit] -+ * Dataset name will be the last arg checked for. Check order is: -+ * 1) Keywords -+ * 2) Masks -+ * 3) Dataset name -+ */ -+int Rms2d::init() { -+ char *mask0, *maskRef; -+ -+ // Get keywords -+ nofit = A->hasKey("nofit"); -+ useMass = A->hasKey("mass"); -+ rmsdFile = A->getKeyString("rmsout",NULL); -+ -+ // Get the RMS mask string for frames -+ mask0 = A->getNextMask(); -+ FrameMask.SetMaskString(mask0); -+ // Get RMS mask string for reference -+ maskRef = A->getNextMask(); -+ // If no reference mask specified, make same as RMS mask -+ if (maskRef==NULL) maskRef=mask0; -+ RefMask.SetMaskString(maskRef); -+ -+ mprintf(" RMS2D: (%s) to (%s)",FrameMask.maskString,RefMask.maskString); -+ if (nofit) -+ mprintf(" (no fitting)"); -+ if (useMass) -+ mprintf(" (mass-weighted)"); -+ if (rmsdFile!=NULL) -+ mprintf(" output to %s",rmsdFile); -+ mprintf("\n"); -+ -+ return 0; -+} -+ -+/* -+ * Rms2d::setup() -+ * Not important for Rms2d, initial pass is only for storing frames. -+ */ -+int Rms2d::setup() { -+ return 0; -+} -+ -+/* -+ * Rms2d::action() -+ * Store current frame as a reference frame. -+ */ -+int Rms2d::action() { -+ -+ ReferenceFrames.Add(F,P); -+ -+ return 0; -+} -+ -+ -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Action_Rms2d.h amber11/AmberTools/src/cpptraj/src/Action_Rms2d.h ---- amber11.orig/AmberTools/src/cpptraj/src/Action_Rms2d.h 1970-01-01 03:00:00.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Action_Rms2d.h 2011-10-25 15:01:28.075288673 +0300 -@@ -0,0 +1,21 @@ -+#ifndef INC_ACTION_RMS2D_H -+#define INC_ACTION_RMS2D_H -+// Rms2d -+#include "Action.h" -+ -+class Rms2d: public Action { -+ FrameList ReferenceFrames; -+ bool nofit; -+ bool useMass; -+ AtomMask RefMask; -+ AtomMask FrameMask; -+ char *rmsdFile; -+ public: -+ Rms2d(); -+ ~Rms2d(); -+ -+ int init(); -+ int setup(); -+ int action(); -+}; -+#endif -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Action_Rmsd.cpp amber11/AmberTools/src/cpptraj/src/Action_Rmsd.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/Action_Rmsd.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Action_Rmsd.cpp 2011-10-25 15:01:28.229288531 +0300 -@@ -256,6 +256,7 @@ - PerResRMSD=new DataSetList(); - resName[4]='\0'; - for (it=ResRange.begin(); it!=ResRange.end(); it++) { -+ //res = *it - 1; // res is the internal resnumber, *it the user resnumber - // Get corresponding reference resnum - if none specified use current res - if (RefRange.empty()) - refRes = (*it); -@@ -263,7 +264,18 @@ - refRes = RefRange.front(); - RefRange.pop_front(); - } -- //res = *it - 1; // res is the internal resnumber, *it the user resnumber -+ -+ // Check if either the residue num or the reference residue num out of range. -+ if ( (*it) < 1 || (*it) > P->nres) { -+ mprintf(" Warning: Rmsd: perres: Specified residue # %i is out of range.\n",*it); -+ continue; -+ } -+ if ( refRes < 1 || refRes > P->nres ) { -+ mprintf(" Warning: Rmsd: perres: Specified reference residue # %i is out of range.\n", -+ refRes); -+ continue; -+ } -+ - // Setup Dataset Name to be name of this residue - P->ResName(resName,(*it)-1); - -diff -urN amber11.orig/AmberTools/src/cpptraj/src/AmberNetcdf.cpp amber11/AmberTools/src/cpptraj/src/AmberNetcdf.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/AmberNetcdf.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/AmberNetcdf.cpp 2011-10-25 15:01:28.131288621 +0300 -@@ -49,6 +49,7 @@ - * and close calls. - */ - void AmberNetcdf::close() { -+ if (ncid<0) return; - checkNCerr(nc_close(ncid),"Closing netcdf file."); - if (debug>0) rprintf("Successfully closed ncid %i\n",ncid); - ncid=-1; -@@ -92,8 +93,10 @@ - * Open the netcdf file, read all dimension and variable IDs, close. - */ - int AmberNetcdf::SetupRead() { -- char *attrText; // For checking conventions and version -- int spatial; // For checking spatial dimensions -+ char *attrText; // For checking conventions and version -+ int spatial; // For checking spatial dimensions -+ double box[6]; // For checking box type -+ size_t start[3], count[3]; // For checking box type - - if (open()) return 1; - -@@ -147,15 +150,15 @@ - if ( nc_inq_varid(ncid,"cell_lengths",&cellLengthVID)==NC_NOERR ) { - if (checkNCerr(nc_inq_varid(ncid,"cell_angles",&cellAngleVID), - "Getting cell angles.")!=0) return 1; -- if (debug>0) mprintf(" Netcdf Box information found.\n"); -- if (P->ifbox==0) { -- mprintf("Warning: Netcdf file contains box info but no box info found\n"); -- mprintf(" in associated parmfile %s; defaulting to orthogonal.\n", -- P->parmName); -- isBox=1; -- } else { -- isBox=P->ifbox; -- } -+ if (debug>0) mprintf(" Netcdf Box information found.\n"); -+ // Determine box type from angles -+ start[0]=0; start[1]=0; start[2]=0; -+ count[0]=1; count[1]=3; count[2]=0; -+ if ( checkNCerr(nc_get_vara_double(ncid, cellLengthVID, start, count, box), -+ "Getting cell lengths.")!=0 ) return 1; -+ if ( checkNCerr(nc_get_vara_double(ncid, cellAngleVID, start, count, box+3), -+ "Getting cell angles.")!=0 ) return 1; -+ CheckBoxType(box); - } - - // Replica Temperatures -@@ -258,7 +261,7 @@ - "Defining cell angular variable.")) return 1; - - // Box Info -- if (isBox>0) { -+ if (BoxType!=0) { - dimensionID[0]=frameDID; - dimensionID[1]=cell_spatialDID; - if (checkNCerr(nc_def_var(ncid,"cell_lengths",NC_DOUBLE,2,dimensionID,&cellLengthVID), -@@ -362,7 +365,7 @@ - "Getting frame %i",set)!=0 ) return 1; - - // Read box info -- if (isBox!=0) { -+ if (BoxType!=0) { - count [1]=3; - count [2]=0; - if ( checkNCerr(nc_get_vara_double(ncid, cellLengthVID, start, count, F->box), -@@ -399,7 +402,7 @@ - F->frameToFloat(Coord); - - // write coords -- start[0]=set; -+ start[0]=currentFrame; - start[1]=0; - start[2]=0; - count[0]=1; -@@ -409,7 +412,7 @@ - "Netcdf Writing frame %i",set)) return 1; - - // write box -- if (isBox>0 && cellLengthVID!=-1) { -+ if (BoxType!=0 && cellLengthVID!=-1) { - count[1]=3; - count[2]=0; - if (checkNCerr(nc_put_vara_double(ncid,cellLengthVID,start,count,F->box), -@@ -427,6 +430,8 @@ - - nc_sync(ncid); // Necessary after every write?? - -+ currentFrame++; -+ - return 0; - } - -diff -urN amber11.orig/AmberTools/src/cpptraj/src/AmberParm.cpp amber11/AmberTools/src/cpptraj/src/AmberParm.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/AmberParm.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/AmberParm.cpp 2011-10-25 15:01:28.231288529 +0300 -@@ -1,6 +1,12 @@ - /* AmberParm.cpp -- * Class that holds parameter information. Can be read in from Amber Topology -- * or PDB files. -+ * Class that holds parameter information. Can be read in from Amber Topology, -+ * PDB, or Mol2 files (implemented in the ReadParmXXX functions). The following -+ * parameters of AmberParm must always be set: -+ * The NATOM, NRES, and IFBOX entries of the values array. -+ * The names, resnames, resnums arrays. -+ * The natom and nres variables. -+ * NOTES: -+ * Eventually make the mol2 read parm function use the AddBond function. - */ - #include <cstdlib> - #include <cstring> -@@ -11,7 +17,7 @@ - #include "CpptrajStdio.h" - - #define AMBERPOINTERS 31 -- -+#define TRUNCOCTBETA 109.4712206344906917365733534097672 - #define ELECTOAMBER 18.2223 - #define AMBERTOELEC 1/ELECTOAMBER - // ============================================================= -@@ -21,7 +27,7 @@ - * Given a residue number, set buffer with residue name. Replace blanks with _ - */ - void AmberParm::ResName(char *buffer, int res) { -- if (res<0 || res>nres) return; -+ if (res<0 || res>=nres) return; - strcpy(buffer, resnames[res]); - if (buffer[3]==' ') buffer[3]='_'; - } -@@ -203,7 +209,9 @@ - bondsh=NULL; - types=NULL; - atomsPerMol=NULL; -- Box=NULL; -+ Box[0]=0.0; Box[1]=0.0; Box[2]=0.0; -+ Box[3]=0.0; Box[4]=0.0; Box[5]=0.0; -+ BoxType=0; - pindex=0; - parmFrames=0; - outFrame=0; -@@ -217,7 +225,6 @@ - solventMoleculeStop=NULL; - natom=0; - nres=0; -- ifbox=0; - parmName=NULL; - SurfaceInfo=NULL; - } -@@ -234,7 +241,6 @@ - if (bonds!=NULL) free(bonds); - if (bondsh!=NULL) free(bondsh); - if (atomsPerMol!=NULL) free(atomsPerMol); -- if (Box!=NULL) free(Box); - if (solventMoleculeStart!=NULL) free(solventMoleculeStart); - if (solventMoleculeStop!=NULL) free(solventMoleculeStop); - if (solventMask!=NULL) free(solventMask); -@@ -271,54 +277,7 @@ - return NULL; - } - --/* -- * AmberParm::OpenParm() -- * Attempt to open file and read in parameters. -- */ --int AmberParm::OpenParm(char *filename) { -- if ( File.SetupFile(filename,READ,UNKNOWN_FORMAT, UNKNOWN_TYPE,debug) ) return 1; -- -- // Copy parm filename to parmName. Separate from File.filename in case of stripped parm -- parmName=(char*) malloc( (strlen(File.basefilename)+1) * sizeof(char)); -- strcpy(parmName,File.basefilename); -- -- if ( File.OpenFile() ) return 1; -- -- switch (File.fileFormat) { -- case AMBERPARM : if (ReadParmAmber()) return 1; break; -- case PDBFILE : if (ReadParmPDB() ) return 1; break; -- case MOL2FILE : if (ReadParmMol2() ) return 1; break; -- default: -- rprintf("Unknown parameter file type: %s\n",File.filename); -- return 1; -- } -- -- File.CloseFile(); -- -- // Create a last dummy residue in resnums that holds natom, which would be -- // the atom number of the next residue if it existed. Atom #s in resnums -- // should correspond with cpptraj atom #s (start from 0) instead of Amber -- // atom #s (start from 1). -- // Do this to be consistent with ptrajmask selection behavior - saves an -- // if-then statement. -- resnums=(int*) realloc(resnums,(nres+1)*sizeof(int)); -- resnums[nres]=natom; -- // DEBUG -- //fprintf(stdout,"==== DEBUG ==== Resnums for %s:\n",File.filename); -- //for (err=0; err<nres; err++) -- // fprintf(stdout," %i: %i\n",err,resnums[err]); -- -- // Set up solvent information -- SetSolventInfo(); -- -- if (debug>0) { -- mprintf(" Number of atoms= %i\n",natom); -- mprintf(" Number of residues= %i\n",nres); -- } -- -- return 0; --} -- -+// ---------========= ROUTINES PERTAINING TO SURFACE AREA =========--------- - /* - * AmberParm::AssignLCPO() - * Assign parameters for LCPO method. All radii are incremented by 1.4 Ang. -@@ -478,6 +437,7 @@ - return 0; - } - -+// ---------========= ROUTINES PERTAINING TO SOLVENT INFO =========--------- - /* - * AmberParm::SetSolventInfo() - * Assuming atomsPerMol has been read in, set solvent information. -@@ -536,7 +496,56 @@ - - return 0; - } -- -+ -+// --------========= ROUTINES PERTAINING TO READING PARAMETERS =========-------- -+/* -+ * AmberParm::OpenParm() -+ * Attempt to open file and read in parameters. -+ */ -+int AmberParm::OpenParm(char *filename) { -+ if ( File.SetupFile(filename,READ,UNKNOWN_FORMAT, UNKNOWN_TYPE,debug) ) return 1; -+ -+ // Copy parm filename to parmName. Separate from File.filename in case of stripped parm -+ parmName=(char*) malloc( (strlen(File.basefilename)+1) * sizeof(char)); -+ strcpy(parmName,File.basefilename); -+ -+ if ( File.OpenFile() ) return 1; -+ -+ switch (File.fileFormat) { -+ case AMBERPARM : if (ReadParmAmber()) return 1; break; -+ case PDBFILE : if (ReadParmPDB() ) return 1; break; -+ case MOL2FILE : if (ReadParmMol2() ) return 1; break; -+ default: -+ rprintf("Unknown parameter file type: %s\n",File.filename); -+ return 1; -+ } -+ -+ File.CloseFile(); -+ -+ // Create a last dummy residue in resnums that holds natom, which would be -+ // the atom number of the next residue if it existed. Atom #s in resnums -+ // should correspond with cpptraj atom #s (start from 0) instead of Amber -+ // atom #s (start from 1). -+ // Do this to be consistent with ptrajmask selection behavior - saves an -+ // if-then statement. -+ resnums=(int*) realloc(resnums,(nres+1)*sizeof(int)); -+ resnums[nres]=natom; -+ // DEBUG -+ //fprintf(stdout,"==== DEBUG ==== Resnums for %s:\n",File.filename); -+ //for (err=0; err<nres; err++) -+ // fprintf(stdout," %i: %i\n",err,resnums[err]); -+ -+ // Set up solvent information -+ SetSolventInfo(); -+ -+ if (debug>0) { -+ mprintf(" Number of atoms= %i\n",natom); -+ mprintf(" Number of residues= %i\n",nres); -+ } -+ -+ return 0; -+} -+ - /* - * AmberParm::ReadParmAmber() - * Read parameters from Amber Topology file -@@ -544,6 +553,7 @@ - int AmberParm::ReadParmAmber() { - int err, atom; - int *solvent_pointer; -+ double *boxFromParm; - - if (debug>0) mprintf("Reading Amber Topology file %s\n",parmName); - -@@ -555,7 +565,6 @@ - - natom=values[NATOM]; - nres=values[NRES]; -- ifbox=values[IFBOX]; - if (debug>0) - mprintf(" Amber top contains %i atoms, %i residues.\n",natom,nres); - -@@ -583,7 +592,8 @@ - if (bonds==NULL) {mprintf("Error in bonds w/o H.\n"); err++;} - bondsh=(int*) getFlagFileValues("BONDS_INC_HYDROGEN",values[NBONH]*3); - if (bondsh==NULL) {mprintf("Error in bonds inc H.\n"); err++;} -- if (ifbox>0) { -+ // Get solvent info if IFBOX>0 -+ if (values[IFBOX]>0) { - solvent_pointer=(int*) getFlagFileValues("SOLVENT_POINTERS",3); - if (solvent_pointer==NULL) { - mprintf("Error in solvent pointers.\n"); -@@ -596,12 +606,20 @@ - } - atomsPerMol=(int*) getFlagFileValues("ATOMS_PER_MOLECULE",molecules); - if (atomsPerMol==NULL) {mprintf("Error in atoms per molecule.\n"); err++;} -- Box=(double*) getFlagFileValues("BOX_DIMENSIONS",4); -- if (Box==NULL) {mprintf("Error in Box information.\n"); err++;} -+ // boxFromParm = {OLDBETA, BOX(1), BOX(2), BOX(3)} -+ boxFromParm=(double*) getFlagFileValues("BOX_DIMENSIONS",4); -+ if (boxFromParm==NULL) {mprintf("Error in Box information.\n"); err++;} -+ // Determine box type: 1-Ortho, 2-Nonortho -+ SetBoxInfo(boxFromParm[0],boxFromParm[1],boxFromParm[2],boxFromParm[3]); -+ free(boxFromParm); - if (debug>0) { - mprintf(" %s contains box info: %i mols, first solvent mol is %i\n", - parmName, molecules, firstSolvMol); -- mprintf(" BOX: %lf %lf %lf %lf\n",Box[0],Box[1],Box[2],Box[3]); -+ mprintf(" BOX: %lf %lf %lf | %lf %lf %lf\n",Box[0],Box[1],Box[2],Box[3],Box[4],Box[5]); -+ if (BoxType==1) -+ mprintf(" Box is orthogonal.\n"); -+ else -+ mprintf(" Box is non-orthogonal.\n"); - } - } - -@@ -686,6 +704,7 @@ - values = (int*) calloc(AMBERPOINTERS, sizeof(int)); - values[NATOM] = natom; - values[NRES] = nres; -+ values[IFBOX] = 0; - - if (debug>0) - mprintf(" PDB contains %i atoms, %i residues, %i molecules.\n", -@@ -799,6 +818,7 @@ - values[NRES] = nres; - values[NBONH] = numbondsh; - values[MBONA] = numbonds; -+ values[IFBOX] = 0; - - mprintf(" Mol2 contains %i atoms, %i residues,\n", natom,nres); - mprintf(" %i bonds to H, %i other bonds.\n", numbondsh,numbonds); -@@ -806,6 +826,61 @@ - return 0; - } - -+// ---------===========================================================--------- -+/* -+ * AmberParm::SetBoxInfo() -+ * Given 3 box lengths and an angle determine the box type and set -+ * the box information. If called with negative beta, set no box. -+ * Currently recognized betas: -+ * 90.00 - Orthogonal -+ * 109.47 - Truncated octahedral -+ * 60.00 - Rhombic dodecahedron -+ * Any other beta just sets all angles to beta and a warning is printed. -+ */ -+int AmberParm::SetBoxInfo(double beta, double bx, double by, double bz) { -+ int ifbox=0; -+ -+ // Determine box type from beta (none, ortho, non-ortho (truncated oct/triclinic) -+ if (beta<=0.0) { -+ if (BoxType>0) -+ mprintf(" %s: Removing box information.\n",parmName); -+ BoxType=0; -+ ifbox=0; -+ Box[0]=0.0; Box[1]=0.0; Box[2]=0.0; -+ Box[3]=0.0; Box[4]=0.0; Box[5]=0.0; -+ } else if (beta == 90.0) { -+ BoxType=1; -+ ifbox=1; -+ Box[0]=bx; Box[1]=by; Box[2]=bz; -+ Box[3]=90.0; Box[4]=90.0; Box[5]=90.0; -+ if (debug>0) mprintf(" %s: Setting box to be orthogonal.\n",parmName); -+ } else if (beta > 109.47 && beta < 109.48) { -+ BoxType=2; -+ ifbox=2; -+ Box[0]=bx; Box[1]=by; Box[2]=bz; -+ //Box[3] = TRUNCOCTBETA; -+ Box[3] = beta; -+ Box[4]=Box[3]; Box[5]=Box[3]; -+ if (debug>0) mprintf(" %s: Setting box to be a truncated octahedron, angle is %lf\n", -+ parmName,Box[3]); -+ } else if (beta == 60.0) { -+ BoxType=2; -+ ifbox=1; -+ Box[0]=bx; Box[1]=by; Box[2]=bz; -+ Box[3]=60.0; Box[4]=90.0; Box[5]=60.0; -+ if (debug>0) -+ mprintf(" %s: Setting box to be a rhombic dodecahedron, alpha=gamma=60.0, beta=90.0\n", -+ parmName); -+ } else { -+ BoxType=2; -+ ifbox=1; -+ Box[0]=bx; Box[1]=by; Box[2]=bz; -+ Box[3]=beta; Box[4]=beta; Box[5]=beta; -+ mprintf(" Warning: %s: Unrecognized box type, beta is %lf\n",beta); -+ } -+ return 0; -+} -+ - /* - * AmberParm::AtomInfo() - * Print parm information for atom. -@@ -829,8 +904,8 @@ - */ - void AmberParm::Info(char *buffer) { - -- sprintf(buffer,"%i atoms, %i res, box %i, %i mol, %i solvent mol, %i frames", -- natom,nres,ifbox,molecules,solventMolecules,parmFrames); -+ sprintf(buffer,"%i atoms, %i res, boxtype %i, %i mol, %i solvent mol, %i frames", -+ natom,nres,BoxType,molecules,solventMolecules,parmFrames); - } - - // NOTE: The following atomToX functions do not do any memory checks! -@@ -963,6 +1038,7 @@ - return bonds; - } - -+// ---------===========================================================--------- - /* - * AmberParm::modifyStateByMap() - * Currently only intended for use with AtomMap. -@@ -1028,24 +1104,21 @@ - // Set up new parm information - newParm->natom = this->natom; - newParm->nres = this->nres; -- newParm->ifbox = this->ifbox; - newParm->parmFrames = this->parmFrames; - - // Give mapped parm the same pindex as original parm - newParm->pindex = this->pindex; - - // Copy box information -- if (this->Box!=NULL) { -- newParm->Box=(double*) malloc(4*sizeof(double)); -- for (int i=0; i<4; i++) -- newParm->Box[i] = this->Box[i]; -- } -+ for (int i=0; i<6; i++) -+ newParm->Box[i] = this->Box[i]; -+ newParm->BoxType=this->BoxType; - - // Set values up - // NOTE: Eventually set all pointers up? - newParm->values[NATOM] = newParm->natom; - newParm->values[NRES] = newParm->nres; -- newParm->values[IFBOX] = newParm->ifbox; -+ newParm->values[IFBOX] = this->values[IFBOX]; - - return newParm; - } -@@ -1152,7 +1225,6 @@ - // Set up new parm information - newParm->natom = j; - newParm->nres = jres+1; -- newParm->ifbox = this->ifbox; - newParm->parmFrames = this->parmFrames; - if (this->molecules>0) - newParm->molecules = jmol+1; -@@ -1184,26 +1256,25 @@ - } - - // Copy box information -- if (this->Box!=NULL) { -- newParm->Box=(double*) malloc(4*sizeof(double)); -- for (i=0; i<4; i++) -- newParm->Box[i] = this->Box[i]; -- } -+ for (i=0; i<6; i++) -+ newParm->Box[i] = this->Box[i]; -+ newParm->BoxType=this->BoxType; - - // Set values up - // NOTE: Eventually set all pointers up? - newParm->values[NATOM] = newParm->natom; - newParm->values[NRES] = newParm->nres; -- newParm->values[IFBOX] = newParm->ifbox; -+ newParm->values[IFBOX] = this->values[IFBOX]; - - mprintf(" New parmtop contains %i atoms.\n",newParm->natom); - mprintf(" %i residues.\n",newParm->nres); - mprintf(" %i molecules.\n",newParm->molecules); -- mprintf(" %i solvent molcules.\n",newParm->solventMolecules); -+ mprintf(" %i solvent molecules.\n",newParm->solventMolecules); - - return newParm; - } - -+// ---------===========================================================--------- - /* - * AmberParm::DataToBuffer() - * Return char buffer containing N data elements stored in I, D, or C with -@@ -1267,6 +1338,7 @@ - char *buffer; - int solvent_pointer[3]; - int atom; -+ double parmBox[4]; - - if (parmName==NULL) return 1; - -@@ -1346,7 +1418,7 @@ - } - - // SOLVENT POINTERS -- if (ifbox>0) { -+ if (values[IFBOX]>0) { - PrintFlagFormat(&outfile, "%FLAG SOLVENT_POINTERS", "%FORMAT(3I8)"); - solvent_pointer[0]=finalSoluteRes; - solvent_pointer[1]=molecules; -@@ -1360,8 +1432,12 @@ - outfile.IO->Write(buffer, sizeof(char), BufferSize); - - // BOX DIMENSIONS -+ parmBox[0] = Box[4]; // beta -+ parmBox[1] = Box[0]; // boxX -+ parmBox[2] = Box[1]; // boxY -+ parmBox[3] = Box[2]; // boxZ - PrintFlagFormat(&outfile, "%FLAG BOX_DIMENSIONS", "%FORMAT(5E16.8)"); -- buffer = DataToBuffer(buffer,"%FORMAT(5E16.8)", NULL, Box, NULL, 4); -+ buffer = DataToBuffer(buffer,"%FORMAT(5E16.8)", NULL, parmBox, NULL, 4); - outfile.IO->Write(buffer, sizeof(char), BufferSize); - } - -diff -urN amber11.orig/AmberTools/src/cpptraj/src/AmberParm.h amber11/AmberTools/src/cpptraj/src/AmberParm.h ---- amber11.orig/AmberTools/src/cpptraj/src/AmberParm.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/AmberParm.h 2011-10-25 15:01:28.117288634 +0300 -@@ -75,14 +75,14 @@ - int *resnums; // IPRES(NRES) - int natom; // NATOM - int nres; // NRES -- int ifbox; // IFBOX - int finalSoluteRes; // IPTRES - int molecules; // NSPM - int firstSolvMol; // NSPSOL - int *atomsPerMol; // NSP(NSPM) - double *mass; // AMASS(NATOM) - double *charge; // CHARGE(NATOM) -- double *Box; // OLDBETA, BOX(1), BOX(2), BOX(3) -+ double Box[6]; // X, Y, Z, alpha, beta, gamma -+ int BoxType; // 0: None, 1: Orthogonal, 2: Non-orthogonal - // From Ptraj - char *solventMask; // T for atoms in the solvent - int solventMolecules; // number of solvent molecules -@@ -96,6 +96,7 @@ - ~AmberParm(); - void ResName(char *, int); - int OpenParm(char *); -+ int SetBoxInfo(double,double,double,double); - int SetSurfaceInfo(); - int SetSolventInfo(); - void AtomInfo(int); -diff -urN amber11.orig/AmberTools/src/cpptraj/src/AmberRestart.cpp amber11/AmberTools/src/cpptraj/src/AmberRestart.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/AmberRestart.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/AmberRestart.cpp 2011-10-25 15:01:28.125288626 +0300 -@@ -109,7 +109,7 @@ - frameSize+=frameSize; - - // If box coords are present, allocate extra space for them -- if (isBox>0) { -+ if (BoxType!=0) { - numBoxCoords=6; - frameSize+=((numBoxCoords*12)+1); - } -@@ -167,13 +167,12 @@ - - // If 0 probably at EOF. No box or velo. - // } else if (lineSize==0) { -- isBox=0; -+ BoxType=0; - hasVelocity=0; - - // If 36 or 72 (+1 newline) box info. - } else if (lineSize==37 || lineSize==73) { -- isBox=1; -- numBoxCoords = (lineSize-1) / 12; -+ getBoxType(frameBuffer,lineSize); - hasVelocity=0; - - // If filled framebuffer again, has velocity info. Check for box after velocity. -@@ -182,15 +181,14 @@ - if (File->IO->Gets(buffer,82)==0) { - lineSize=strlen(buffer); - if (lineSize==37 || lineSize==73) { -- isBox=1; -- numBoxCoords = (lineSize-1) / 12; -+ getBoxType(buffer,lineSize); - } else { - mprintf("Error: AmberRestart::SetupRead():\n"); - mprintf(" Expect only 3 or 6 box coords in box coord line.\n"); - return 1; - } - } else -- isBox=0; -+ BoxType=0; - - // Otherwise, who knows what was read? - } else { -@@ -202,12 +200,12 @@ - - // Recalculate the frame size - if (hasVelocity) frameSize+=frameSize; -- if (isBox) frameSize+=( (numBoxCoords*12) + 1 ); -+ if (BoxType!=0) frameSize+=( (numBoxCoords*12) + 1 ); - frameBuffer=(char*) realloc(frameBuffer, frameSize*sizeof(char)); - - if (debug > 0) { -- mprintf(" Amber Restart isBox=%i hasVelocity=%i numBoxCoords=%i\n", -- isBox,hasVelocity,numBoxCoords); -+ mprintf(" Amber Restart BoxType=%i hasVelocity=%i numBoxCoords=%i\n", -+ BoxType,hasVelocity,numBoxCoords); - mprintf(" Amber Restart frameSize= %i\n",frameSize); - } - -@@ -221,6 +219,20 @@ - } - - /* -+ * AmberRestart::getBoxType() -+ * Based on input buffer, determine box type and num box coords. -+ */ -+void AmberRestart::getBoxType(char *boxline, int boxlineSize) { -+ double box[6]; -+ numBoxCoords = (boxlineSize-1) / 12; -+ if (numBoxCoords>3) { -+ sscanf(boxline, "%8lf%8lf%8lf%8lf%8lf%8lf",box,box+1,box+2,box+3,box+4,box+5); -+ CheckBoxType(box); -+ } else -+ BoxType = P->BoxType; -+} -+ -+/* - * AmberRestart::getFrame() - * Get the restart file frame. If velocities are present, read those too. - */ -@@ -251,7 +263,7 @@ - //F->V->printAtomCoord(0); - } - // Convert box to Frame if present -- if (isBox) { -+ if (BoxType!=0) { - if ( (bufferPosition = F->BufferToBox(bufferPosition, numBoxCoords, 12))==NULL ) { - mprintf("Error: AmberRestart::getFrame: * detected in box coordinates of %s\n", - trajfilename); -@@ -287,7 +299,7 @@ - if (F->V!=NULL) // NOTE: Use hasVelocity in addition/instead? - bufferPosition = F->V->FrameToBuffer(bufferPosition,"%12.7lf",12,6); - // Write box to buffer -- if (isBox) -+ if (BoxType!=0) - bufferPosition = F->BoxToBuffer(bufferPosition, numBoxCoords, "%12.7lf",12); - - //if (seekable) fseek(fp, titleSize+(set*frameSize),SEEK_SET); -@@ -297,6 +309,8 @@ - - File->IO->Close(); - -+ currentFrame++; -+ - return 0; - } - -diff -urN amber11.orig/AmberTools/src/cpptraj/src/AmberRestart.h amber11/AmberTools/src/cpptraj/src/AmberRestart.h ---- amber11.orig/AmberTools/src/cpptraj/src/AmberRestart.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/AmberRestart.h 2011-10-25 15:01:28.118288633 +0300 -@@ -14,6 +14,7 @@ - - int SetupRead(); - int SetupWrite(); -+ void getBoxType(char *, int); - - public: - -diff -urN amber11.orig/AmberTools/src/cpptraj/src/AmberRestartNC.cpp amber11/AmberTools/src/cpptraj/src/AmberRestartNC.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/AmberRestartNC.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/AmberRestartNC.cpp 2011-10-25 15:01:28.126288625 +0300 -@@ -60,15 +60,8 @@ - /* - * AmberRestartNC::open() - * Open up Netcdf restart file and set all dimension and variable IDs. -- * This is done every time the file is opened up since Im not sure -- * the variable IDs stay the same throughout each opening. -- * Could eventually be separated. -- * NOTE: Replace attrText allocs with static buffer? - */ - int AmberRestartNC::open() { -- char *attrText; // For checking conventions and version -- int spatial; // For checking spatial dimensions -- - mprintf("DEBUG: AmberRestartNC::open() called for %s, ncid=%i\n",File->filename,ncid); - // If already open, return - if (ncid!=-1) return 0; -@@ -94,6 +87,23 @@ - // Netcdf files are always seekable - seekable=1; - -+ return 0; -+} -+ -+/* -+ * AmberRestartNC::SetupRead() -+ * Set up netcdf restart file for reading, get all variable and dimension IDs. -+ * Also check number of atoms against associated parmtop. -+ * NOTE: Replace attrText allocs with static buffer? -+ */ -+int AmberRestartNC::SetupRead() { -+ char *attrText; // For checking conventions and version -+ int spatial; // For checking spatial dimensions -+ double box[6]; -+ size_t start[2], count[2]; -+ -+ if (open()) return 1; -+ - // Get global attributes - if (title==NULL) title = GetAttrText(ncid,NC_GLOBAL, "title"); - attrText = GetAttrText(ncid,NC_GLOBAL, "Conventions"); -@@ -147,20 +157,18 @@ - mprintf(" Netcdf restart time= %lf\n",restartTime); - - // Box info -- // NOTE: If no box info found in parm should really try to determine correct -- // box type from angles. - if ( nc_inq_varid(ncid,"cell_lengths",&cellLengthVID)==NC_NOERR ) { - if (checkNCerr(nc_inq_varid(ncid,"cell_angles",&cellAngleVID), - "Getting cell angles.")!=0) return 1; -- if (debug>0) mprintf(" Netcdf restart Box information found.\n"); -- if (P->ifbox==0) { -- mprintf("Warning: Netcdf restart file contains box info but no box info found\n"); -- mprintf(" in associated parmfile %s; defaulting to orthogonal.\n", -- P->parmName); -- isBox=1; -- } else { -- isBox=P->ifbox; -- } -+ if (debug>0) mprintf(" Netcdf restart Box information found.\n"); -+ // Determine box type from angles -+ start[0]=0; start[1]=0; -+ count[0]=3; count[1]=0; -+ if ( checkNCerr(nc_get_vara_double(ncid, cellLengthVID, start, count, box), -+ "Getting cell lengths.")!=0 ) return 1; -+ if ( checkNCerr(nc_get_vara_double(ncid, cellAngleVID, start, count, box+3), -+ "Getting cell angles.")!=0 ) return 1; -+ CheckBoxType(box); - } - - // Replica Temperatures -@@ -175,15 +183,6 @@ - //int cell_spatialDID, cell_angularDID; - //int spatialVID, cell_spatialVID, cell_angularVID; - -- return 0; --} -- --/* -- * AmberRestartNC::SetupRead() -- * Just a frontend to open for now. Also check number of atoms. -- */ --int AmberRestartNC::SetupRead() { -- if (open()) return 1; - if (ncatom!=P->natom) { - mprintf("Warning: Number of atoms in NetCDF restart file %s (%i) does not\n", - File->filename,ncatom); -@@ -210,7 +209,7 @@ - */ - int AmberRestartNC::setupWriteForSet(int set) { - int dimensionID[NC_MAX_VAR_DIMS]; -- size_t start[3], count[3]; -+ size_t start[2], count[2]; - char buffer[1024]; - char xyz[3]; - char abc[15] = { 'a', 'l', 'p', 'h', 'a', -@@ -280,7 +279,7 @@ - "Defining cell angular variable.")) return 1; - - // Box Info -- if (isBox>0) { -+ if (BoxType!=0) { - dimensionID[0]=cell_spatialDID; - if (checkNCerr(nc_def_var(ncid,"cell_lengths",NC_DOUBLE,1,dimensionID,&cellLengthVID), - "Defining cell length variable.")) return 1; -@@ -388,9 +387,9 @@ - } - - // Read box info -- if (isBox!=0) { -- count [0]=3; -- count [1]=0; -+ if (BoxType!=0) { -+ count[0]=3; -+ count[1]=0; - if ( checkNCerr(nc_get_vara_double(ncid, cellLengthVID, start, count, F->box), - "Getting cell lengths.")!=0 ) return 1; - if ( checkNCerr(nc_get_vara_double(ncid, cellAngleVID, start, count, &(F->box[3])), -@@ -425,7 +424,7 @@ - } - - // write box -- if (isBox>0 && cellLengthVID!=-1) { -+ if (BoxType!=0 && cellLengthVID!=-1) { - count[0]=3; - count[1]=0; - if (checkNCerr(nc_put_vara_double(ncid,cellLengthVID,start,count,F->box), -@@ -439,6 +438,8 @@ - // Close file for this set - close(); - -+ currentFrame++; -+ - return 0; - } - -diff -urN amber11.orig/AmberTools/src/cpptraj/src/AmberTraj.cpp amber11/AmberTools/src/cpptraj/src/AmberTraj.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/AmberTraj.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/AmberTraj.cpp 2011-10-25 15:01:28.226288534 +0300 -@@ -104,16 +104,18 @@ - rprintf("Error: AmberTraj::getFrame: * detected in coordinates of %s\n",trajfilename); - return 1; - } -- if (isBox) { -+ if (BoxType!=0) { - if ( (bufferPosition = F->BufferToBox(bufferPosition,numBoxCoords,8))==NULL ) { - rprintf("Error: AmberTraj::getFrame: * detected in box coordinates of %s\n", - trajfilename); - return 1; - } -- // Set box angles to parmtop default -- F->box[3] = P->Box[0]; -- F->box[4] = P->Box[0]; -- F->box[5] = P->Box[0]; -+ // Set box angles to parmtop default if not read in -+ if (numBoxCoords==3) { -+ F->box[3] = P->Box[3]; -+ F->box[4] = P->Box[4]; -+ F->box[5] = P->Box[5]; -+ } - } - return 0; - } -@@ -138,20 +140,22 @@ - } - - bufferPosition = F->FrameToBuffer(bufferPosition,"%8.3lf",8,10); -- if (isBox) -+ if (BoxType!=0) - bufferPosition = F->BoxToBuffer(bufferPosition,numBoxCoords,"%8.3lf",8); - - outFrameSize = (int) (bufferPosition - frameBuffer); - - //if (seekable) - // NOTE: Seek only needs to happen when traj file changes -- offset = (off_t) set; -- offset *= (off_t) outFrameSize; -- offset += (off_t) titleSize; -- File->IO->Seek( offset); -+ //offset = (off_t) currentFrame; -+ //offset *= (off_t) outFrameSize; -+ //offset += (off_t) titleSize; -+ //File->IO->Seek( offset); - - if (File->IO->Write(frameBuffer,sizeof(char),outFrameSize)) return 1; - -+ currentFrame++; -+ - return 0; - } - -@@ -163,8 +167,10 @@ - int AmberTraj::SetupRead() { - char buffer[BUFFER_SIZE]; - int frame_lines; -- int lineSize; -- long long int file_size, frame_size; -+ int lineSize, maxi; -+ bool sizeFound; -+ long long int file_size, frame_size, title_size, tmpfsize; -+ double box[6]; // For checking box coordinates - - // Attempt to open the file. open() sets the title and titleSize - if (open()) return 1; -@@ -219,7 +225,7 @@ - - if (strncmp(buffer,"REMD",4)==0 || strncmp(buffer,"HREMD",5)==0) { - // REMD header - no box coords -- isBox=0; -+ BoxType=0; - } else if (lineSize<80) { - /* Line is shorter than 80 chars, indicates box coords. - * Length of the line HAS to be a multiple of 8, and probably could be -@@ -228,53 +234,108 @@ - */ - if (debug>0) mprintf(" Box line is %i chars.\n",lineSize); - if ( ((lineSize-1)%24)!=0 ) { -- rprintf("Error in box coord line.\nExpect only 3 or 6 box coords.\n"); -+ mprintf("Error in box coord line. Expect only 3 or 6 box coords.\n"); - return 1; - } - numBoxCoords=(lineSize-1) / 8; - if (debug>0) mprintf(" Detected %i box coords.\n",numBoxCoords); -- frameSize+=lineSize; -- // Reallocate frame buffer accordingly -- frameBuffer=(char*) realloc(frameBuffer,frameSize * sizeof(char)); -- if (P->ifbox==0) { -- rprintf( "Warning: Box coords detected in trajectory but not defined in topology!\n"); -- rprintf(" Setting box type to rectangular.\n"); -- isBox=1; -+ // Determine box type based on angles. Angles are usually not printed -+ // for orthogonal and truncated octahedral boxes, but check here just -+ // to be safe. If no angles present use parmtop Box Type. -+ if (numBoxCoords>3) { -+ sscanf(buffer, "%8lf%8lf%8lf%8lf%8lf%8lf",box,box+1,box+2,box+3,box+4,box+5); -+ CheckBoxType(box); - } else { -- isBox = P->ifbox; -+ BoxType = P->BoxType; -+ // If box coords are present in traj but no box in parm, print warning -+ if (BoxType == 0) -+ mprintf("Warning: %s has box coordinates but no box info in %s\n", -+ trajfilename,P->parmName); - } -+ // Reallocate frame buffer accordingly -+ frameSize+=lineSize; -+ frameBuffer=(char*) realloc(frameBuffer,frameSize * sizeof(char)); - } - } - -- /* Calculate number of frames. If not possible and this is not a -- * compressed file the trajectory is probably corrupted. Frames will -- * be read until EOF. -- * NOTE: It is necessary to use the stat command to get the file size -- * instead of fseek in case the file has been popen'd. -- * NOTE: Need the uncompressed file size! -- */ -- if (File->uncompressed_size>0) -- file_size = File->uncompressed_size; -- else -- file_size=File->file_size; -+ // Calculate Frames and determine seekable. If not possible and this is not a -+ // compressed file the trajectory is probably corrupted. Frames will -+ // be read until EOF (Frames = -1). - if (debug>0) -- rprintf("Title offset=%i FrameSize=%i UncompressedFileSize=%lli\n", -- titleSize,frameSize,file_size); -- frame_size = (long long int) titleSize; -- file_size = file_size - frame_size; // Subtract title size from file total size. -+ rprintf("Title offset=%i FrameSize=%i Size=%lu UncompressedFileSize=%lu\n", -+ titleSize,frameSize,File->file_size,File->uncompressed_size); -+ title_size = (long long int) titleSize; - frame_size = (long long int) frameSize; -- Frames = (int) (file_size / frame_size); -- -- if ( (file_size % frame_size) == 0 ) { -- seekable = 1; -- stop = Frames; -+ // -----==== AMBER TRAJ COMPRESSED ====------ -+ if (File->compressType!=NONE) { -+ // If the uncompressed size of compressed file is reported as <= 0, -+ // uncompressed size cannot be determined. Read coordinates until -+ // EOF. -+ if (File->uncompressed_size <= 0) { -+ mprintf("Warning: %s: Uncompressed size of trajectory could not be determined.\n", -+ File->filename); -+ if (File->compressType==BZIP2) -+ mprintf(" (This is normal for bzipped files)\n"); -+ mprintf(" Number of frames could not be calculated.\n"); -+ mprintf(" Frames will be read until EOF.\n"); -+ Frames = -1; -+ seekable = false; -+ } else { -+ file_size = File->uncompressed_size; -+ file_size = file_size - title_size; -+ // Frame calculation for large gzip files -+ // If uncompressed size is less than compressed size, uncompressed -+ // size is likely > 4GB. -+ if (File->compressType == GZIP && file_size < (long long int) File->file_size) { -+ // Since this is gzip compressed, if the file_size % frame size != 0, -+ // it could be that the uncompressed filesize > 4GB. Since -+ // ISIZE = uncompressed % 2^32, -+ // try ((file_size + (2^32 * i)) % frame_size) and see if any are 0. -+ if ( (file_size % frame_size) != 0) { -+ // Determine the maximum number of iterations to try based on the -+ // fact that Amber trajectories typically compress about 3x with -+ // gzip. -+ tmpfsize = ((File->file_size * 4) - File->uncompressed_size) / 4294967296LL; -+ maxi = (int) tmpfsize; -+ maxi++; -+ if (debug>1) -+ mprintf("\tLooking for uncompressed gzip size > 4GB, %i iterations.\n",maxi); -+ tmpfsize = 0; -+ sizeFound=false; -+ for (int i = 0; i < maxi; i++ ) { -+ tmpfsize = (4294967296LL * i) + file_size; -+ if ( (tmpfsize % frame_size) == 0) {sizeFound=true; break;} -+ } -+ if (sizeFound) file_size = tmpfsize; -+ } -+ } -+ if ((file_size % frame_size) == 0) { -+ Frames = (int) (file_size / frame_size); -+ seekable = true; -+ } else { -+ mprintf("Warning: %s: Number of frames in compressed traj could not be determined.\n", -+ File->filename); -+ mprintf(" Frames will be read until EOF.\n"); -+ Frames=-1; -+ seekable=false; -+ } -+ } -+ // ----==== AMBER TRAJ NOT COMPRESSED ====---- - } else { -- stop = -1; -- Frames = -1; -- seekable = 0; -- mprintf(" Error: Could not predict # frames in %s. This usually indicates \n",File->filename); -- mprintf(" a corrupted trajectory. Frames will be read until EOF.\n"); -+ file_size = File->file_size; -+ file_size = file_size - title_size; -+ Frames = (int) (file_size / frame_size); -+ if ( (file_size % frame_size) == 0 ) { -+ seekable = true; -+ } else { -+ mprintf("Warning: %s: Could not accurately predict # frames. This usually \n", -+ File->filename); -+ mprintf(" indicates a corrupted trajectory. Will attempt to read %i frames.\n", -+ Frames); -+ seekable=false; -+ } - } -+ stop = Frames; - - if (debug>0) - rprintf("Atoms: %i FrameSize: %i TitleSize: %i NumBox: %i Seekable: %i Frames: %i\n\n", -@@ -315,7 +376,9 @@ - frameSize += hasREMD; - - // If box coords are present, allocate extra space for them -- if (isBox>0) { -+ // NOTE: Currently only writing box lengths for all box types. This means -+ // writing triclinic box type is currently not supported. -+ if (BoxType!=0) { - numBoxCoords=3; // Only write out box lengths for trajectories - frameSize+=((numBoxCoords*8)+1); - } -diff -urN amber11.orig/AmberTools/src/cpptraj/src/ArgList.cpp amber11/AmberTools/src/cpptraj/src/ArgList.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/ArgList.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/ArgList.cpp 2011-10-25 15:01:28.101288648 +0300 -@@ -146,8 +146,16 @@ - return argline; - } - --/* -- * ArgList::Command() -+/* ArgList::Arg() -+ * Return arg at specified position. -+ */ -+char *ArgList::Arg(int pos) { -+ if (pos>-1 && pos<nargs) -+ return arglist[pos]; -+ return NULL; -+} -+ -+/* ArgList::Command() - * Check the first arg for command - * Mark and return. Return even if marked. - */ -diff -urN amber11.orig/AmberTools/src/cpptraj/src/ArgList.h amber11/AmberTools/src/cpptraj/src/ArgList.h ---- amber11.orig/AmberTools/src/cpptraj/src/ArgList.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/ArgList.h 2011-10-25 15:01:28.102288647 +0300 -@@ -15,6 +15,7 @@ - void Add(char *); - void print(); - char *ArgLine(); -+ char *Arg(int); - - char *Command(); - int CommandIs(const char *); -diff -urN amber11.orig/AmberTools/src/cpptraj/src/AtomMap.cpp amber11/AmberTools/src/cpptraj/src/AtomMap.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/AtomMap.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/AtomMap.cpp 2011-10-25 15:01:28.081288667 +0300 -@@ -6,6 +6,7 @@ - #include "TorsionRoutines.h" - // DEBUG - #include "Mol2File.h" -+#include <cstdio> - - //--------- PRIVATE ROUTINES --------------------------------------- - /* -@@ -463,21 +464,27 @@ - // Write atommap out as a mol2 file, useful for checking bond info - void atommap::WriteMol2(char *m2filename) { - Mol2File outfile; -- int *Selected; -+ AtomMask M1; - // Temporary parm to play with - AmberParm *tmpParm; -+ Frame *tmpFrame; - - // Create mask containing all atoms -- Selected = (int*) malloc(natom*sizeof(int)); -- for (int atom=0; atom<natom; atom++) Selected[atom]=atom; -+ //for (int atom=0; atom<natom; atom++) Selected[atom]=atom; - // Fake strip, just use as crap way to copy -- tmpParm = P->modifyStateByMask(Selected,natom); -- free(Selected); -+ //tmpParm = P->modifyStateByMask(Selected,natom); -+ //free(Selected); - // Modify the bonds array to include this info -- tmpParm->ResetBondInfo(); -- for (int atom=0; atom<natom; atom++) -- for (int bond=0; bond < M[atom].nbond; bond++) -- tmpParm->AddBond(atom, M[atom].bond[bond], 0); -+ //tmpParm->ResetBondInfo(); -+ //for (int atom=0; atom<natom; atom++) -+ // for (int bond=0; bond < M[atom].nbond; bond++) -+ // tmpParm->AddBond(atom, M[atom].bond[bond], 0); -+ // Create mask with all mapped atoms -+ for (int atom=0; atom<natom; atom++) {if (M[atom].isMapped) M1.AddAtom(atom);} -+ // Strip so only mapped atoms remain -+ tmpParm = P->modifyStateByMask(M1.Selected,M1.Nselected); -+ tmpFrame = new Frame(M1.Nselected,NULL); -+ tmpFrame->SetFrameFromMask(F, &M1); - - // Trajectory Setup - outfile.File=new PtrajFile(); -@@ -485,13 +492,14 @@ - outfile.trajfilename = outfile.File->basefilename; - outfile.debug=debug; - outfile.SetTitle(m2filename); -- outfile.P=P; -+ outfile.P=tmpParm; - outfile.SetupWrite(); - outfile.open(); -- outfile.F=F; -+ outfile.F=tmpFrame; - outfile.writeFrame(0); - outfile.close(); - delete tmpParm; -+ delete tmpFrame; - } - // ============================================================================ - -@@ -1032,6 +1040,13 @@ - int iterations=0; - - numAtomsMapped=MapUniqueAtoms(Ref, Tgt); -+ // DEBUG -+ //char name[1024]; -+ //sprintf(name,"Ref.%i.mol2",iterations); -+ //Ref->WriteMol2(name); -+ //sprintf(name,"Tgt.%i.mol2",iterations); -+ //Tgt->WriteMol2(name); -+ // END DEBUG - if (debug>0) - mprintf("* MapUniqueAtoms: %i atoms mapped.\n",numAtomsMapped); - if (numAtomsMapped==0) return 1; -@@ -1045,17 +1060,35 @@ - iterations++; - // First assign based on bonds to unique (already mapped) atoms. - numAtomsMapped=mapBondsToUnique(Ref,Tgt); -+ // DEBUG -+ //sprintf(name,"Ref.%i.u.mol2",iterations); -+ //Ref->WriteMol2(name); -+ //sprintf(name,"Tgt.%i.u.mol2",iterations); -+ //Tgt->WriteMol2(name); -+ // END DEBUG - if (debug>0) - mprintf("* [%3i] mapBondsToUnique: %i atoms mapped.\n",iterations,numAtomsMapped); - if (numAtomsMapped<0) return 1; - // Next assign based on chirality - numAtomsMapped=mapChiral(Ref,Tgt); -+ // DEBUG -+ //sprintf(name,"Ref.%i.c.mol2",iterations); -+ //Ref->WriteMol2(name); -+ //sprintf(name,"Tgt.%i.c.mol2",iterations); -+ //Tgt->WriteMol2(name); -+ // END DEBUG - if (debug>0) - mprintf("* [%3i] mapChiral: %i atoms mapped.\n",iterations,numAtomsMapped); - if (numAtomsMapped<0) return 1; - if (numAtomsMapped>0) continue; - // Last assign based on index/element - numAtomsMapped=mapByIndex(Ref,Tgt); -+ // DEBUG -+ //sprintf(name,"Ref.%i.i.mol2",iterations); -+ //Ref->WriteMol2(name); -+ //sprintf(name,"Tgt.%i.i.mol2",iterations); -+ //Tgt->WriteMol2(name); -+ // END DEBUG - if (debug>0) - mprintf("* [%3i] mapByIndex: %i atoms mapped.\n",iterations,numAtomsMapped); - if (numAtomsMapped<0) return 1; -diff -urN amber11.orig/AmberTools/src/cpptraj/src/CoordFileList.cpp amber11/AmberTools/src/cpptraj/src/CoordFileList.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/CoordFileList.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/CoordFileList.cpp 2011-10-25 15:01:28.201288557 +0300 -@@ -1,4 +1,5 @@ - // CoordFileList -+#include <cstddef> - #include <cstring> // strcmp - #include "CoordFileList.h" - #include "CpptrajStdio.h" -diff -urN amber11.orig/AmberTools/src/cpptraj/src/cpptrajdepend amber11/AmberTools/src/cpptraj/src/cpptrajdepend ---- amber11.orig/AmberTools/src/cpptraj/src/cpptrajdepend 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/cpptrajdepend 2011-10-25 15:01:28.107288643 +0300 -@@ -2,7 +2,7 @@ - AmberNetcdf.o : AmberNetcdf.cpp AmberNetcdf.h AmberParm.h ArgList.h AtomMask.h BaseFileIO.h CpptrajStdio.h Frame.h NetcdfRoutines.h PtrajFile.h Range.h TrajFile.h - AmberParm.o : AmberParm.cpp AmberParm.h BaseFileIO.h CpptrajStdio.h Mol2FileRoutines.h PDBfileRoutines.h PtrajFile.h - AmberTraj.o : AmberTraj.cpp AmberParm.h AmberTraj.h ArgList.h AtomMask.h BaseFileIO.h CpptrajStdio.h Frame.h PtrajFile.h Range.h TrajFile.h --TrajFile.o : TrajFile.cpp AmberParm.h ArgList.h AtomMask.h BaseFileIO.h CpptrajStdio.h Frame.h PtrajFile.h PtrajMpi.h Range.h TrajFile.h -+TrajFile.o : TrajFile.cpp AmberParm.h ArgList.h AtomMask.h BaseFileIO.h CpptrajStdio.h Frame.h PtrajFile.h Range.h TrajFile.h - Frame.o : Frame.cpp AmberParm.h AtomMask.h BaseFileIO.h CpptrajStdio.h DistRoutines.h Frame.h PtrajFile.h TorsionRoutines.h vectormath.h - PtrajState.o : PtrajState.cpp Action.h AmberParm.h ArgList.h AtomMask.h BaseFileIO.h CoordFileList.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h Frame.h FrameList.h ParmFileList.h PtrajActionList.h PtrajFile.h PtrajMpi.h PtrajState.h Range.h ReferenceList.h TrajFile.h TrajinList.h TrajoutList.h - ArgList.o : ArgList.cpp ArgList.h CpptrajStdio.h -@@ -13,7 +13,7 @@ - TrajoutList.o : TrajoutList.cpp AmberParm.h ArgList.h AtomMask.h BaseFileIO.h CoordFileList.h CpptrajStdio.h Frame.h ParmFileList.h PtrajFile.h Range.h TrajFile.h TrajoutList.h - ReferenceList.o : ReferenceList.cpp AmberParm.h ArgList.h AtomMask.h BaseFileIO.h CoordFileList.h CpptrajStdio.h Frame.h FrameList.h ParmFileList.h PtrajFile.h Range.h ReferenceList.h TrajFile.h - CoordFileList.o : CoordFileList.cpp AmberNetcdf.h AmberParm.h AmberRestart.h AmberRestartNC.h AmberTraj.h ArgList.h AtomMask.h BaseFileIO.h Conflib.h CoordFileList.h CpptrajStdio.h Frame.h Mol2File.h PDBfile.h ParmFileList.h PtrajFile.h Range.h RemdTraj.h TrajFile.h TrajinList.h --PtrajActionList.o : PtrajActionList.cpp Action.h Action_Angle.h Action_Center.h Action_Closest.h Action_DSSP.h Action_Dihedral.h Action_Distance.h Action_Hbond.h Action_Image.h Action_Mask.h Action_NAstruct.h Action_Outtraj.h Action_Pucker.h Action_Radgyr.h Action_Rmsd.h Action_Strip.h Action_Surf.h AmberParm.h ArgList.h AtomMap.h AtomMask.h AxisType.h BaseFileIO.h CoordFileList.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h Frame.h FrameList.h ParmFileList.h PtrajActionList.h PtrajFile.h Range.h TrajFile.h TrajoutList.h -+PtrajActionList.o : PtrajActionList.cpp Action.h Action_Angle.h Action_Center.h Action_Closest.h Action_DSSP.h Action_Dihedral.h Action_Distance.h Action_Hbond.h Action_Image.h Action_Mask.h Action_NAstruct.h Action_Outtraj.h Action_Pucker.h Action_Radgyr.h Action_Rms2d.h Action_Rmsd.h Action_Strip.h Action_Surf.h AmberParm.h ArgList.h AtomMap.h AtomMask.h AxisType.h BaseFileIO.h CoordFileList.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h Frame.h FrameList.h ParmFileList.h PtrajActionList.h PtrajFile.h Range.h TrajFile.h TrajoutList.h - DataSet.o : DataSet.cpp CpptrajStdio.h DataSet.h - DataSetList.o : DataSetList.cpp CpptrajStdio.h DataSet.h DataSetList.h intDataSet.h mapDataSet.h stringDataSet.h - vectormath.o : vectormath.cpp CpptrajStdio.h vectormath.h -@@ -23,9 +23,9 @@ - DataFile.o : DataFile.cpp BaseFileIO.h CpptrajStdio.h DataFile.h DataSet.h PtrajFile.h - DataFileList.o : DataFileList.cpp BaseFileIO.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h PtrajFile.h - PDBfile.o : PDBfile.cpp AmberParm.h ArgList.h AtomMask.h BaseFileIO.h CpptrajStdio.h Frame.h PDBfile.h PDBfileRoutines.h PtrajFile.h Range.h TrajFile.h --PtrajFile.o : PtrajFile.cpp BaseFileIO.h Bzip2File.h CpptrajStdio.h GzipFile.h MpiFile.h NetcdfRoutines.h PDBfileRoutines.h PtrajFile.h PtrajMpi.h StdFile.h -+PtrajFile.o : PtrajFile.cpp BaseFileIO.h Bzip2File.h CpptrajStdio.h GzipFile.h Mol2FileRoutines.h MpiFile.h NetcdfRoutines.h PDBfileRoutines.h PtrajFile.h PtrajMpi.h StdFile.h - PDBfileRoutines.o : PDBfileRoutines.cpp PDBfileRoutines.h --AtomMap.o : AtomMap.cpp Action.h AmberParm.h ArgList.h AtomMap.h AtomMask.h BaseFileIO.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h Frame.h FrameList.h PDBfileRoutines.h ParmFileList.h PtrajFile.h TorsionRoutines.h -+AtomMap.o : AtomMap.cpp Action.h AmberParm.h ArgList.h AtomMap.h AtomMask.h BaseFileIO.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h Frame.h FrameList.h Mol2File.h ParmFileList.h PtrajFile.h Range.h TorsionRoutines.h TrajFile.h - BaseFileIO.o : BaseFileIO.cpp BaseFileIO.h PtrajMpi.h - StdFile.o : StdFile.cpp BaseFileIO.h StdFile.h - GzipFile.o : GzipFile.cpp BaseFileIO.h CpptrajStdio.h GzipFile.h -@@ -62,3 +62,4 @@ - Action_Pucker.o : Action_Pucker.cpp Action.h Action_Pucker.h AmberParm.h ArgList.h AtomMask.h BaseFileIO.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h Frame.h FrameList.h ParmFileList.h PtrajFile.h - Range.o : Range.cpp ArgList.h CpptrajStdio.h Range.h - Action_Outtraj.o : Action_Outtraj.cpp Action.h Action_Outtraj.h AmberParm.h ArgList.h AtomMask.h BaseFileIO.h CoordFileList.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h Frame.h FrameList.h ParmFileList.h PtrajFile.h PtrajMpi.h Range.h TrajFile.h TrajoutList.h -+Action_Rms2d.o : Action_Rms2d.cpp Action.h Action_Rms2d.h AmberParm.h ArgList.h AtomMask.h BaseFileIO.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h Frame.h FrameList.h ParmFileList.h PtrajFile.h -diff -urN amber11.orig/AmberTools/src/cpptraj/src/DataFile.cpp amber11/AmberTools/src/cpptraj/src/DataFile.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/DataFile.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/DataFile.cpp 2011-10-25 15:01:28.098288651 +0300 -@@ -65,8 +65,49 @@ - isInverted=true; - } - --/* -- * DataFile::AddSet() -+/* DataFile::SetPrecision() -+ * Set precision of the specified dataset to width.precision. If '*' specified -+ * set for all datasets in file. -+ */ -+void DataFile::SetPrecision(char *dsetName, int widthIn, int precisionIn) { -+ int precision, dset; -+ DataSet *Dset = NULL; -+ -+ if (dsetName==NULL) { -+ mprintf("Error: SetPrecision must be called with dataset name or '*'.\n"); -+ return; -+ } -+ if (widthIn<1) { -+ mprintf("Error: SetPrecision (%s): Cannot set width < 1.\n",filename); -+ return; -+ } -+ precision=precisionIn; -+ if (precisionIn<0) precision=0; -+ // If <dsetName>=='*' specified set precision for all data sets -+ if (dsetName[0]=='*') { -+ mprintf(" Setting width.precision for all sets in %s to %i.%i\n", -+ filename,widthIn,precision); -+ for (dset=0; dset<Nsets; dset++) -+ SetList[dset]->SetPrecision(widthIn,precision); -+ -+ // Otherwise find dataset <dsetName> and set precision -+ } else { -+ mprintf(" Setting width.precision for dataset %s to %i.%i\n", -+ dsetName,widthIn,precision); -+ for (dset=0; dset<Nsets; dset++) { -+ if ( strcmp(SetList[dset]->Name(), dsetName)==0 ) { -+ Dset=SetList[dset]; -+ break; -+ } -+ } -+ if (Dset!=NULL) -+ Dset->SetPrecision(widthIn,precision); -+ else -+ mprintf("Error: Dataset %s not found in datafile %s\n",dsetName,filename); -+ } -+} -+ -+/* DataFile::AddSet() - * Add given set to this datafile - */ - int DataFile::AddSet(DataSet *D) { -diff -urN amber11.orig/AmberTools/src/cpptraj/src/DataFile.h amber11/AmberTools/src/cpptraj/src/DataFile.h ---- amber11.orig/AmberTools/src/cpptraj/src/DataFile.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/DataFile.h 2011-10-25 15:01:28.098288651 +0300 -@@ -30,6 +30,7 @@ - void SetXlabel(char*); - void SetInverted(); - void SetNoXcol(); -+ void SetPrecision(char *, int, int); - int AddSet(DataSet *); - int NameIs(char *); - void DataSetNames(); -diff -urN amber11.orig/AmberTools/src/cpptraj/src/DataFileList.cpp amber11/AmberTools/src/cpptraj/src/DataFileList.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/DataFileList.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/DataFileList.cpp 2011-10-25 15:01:28.201288557 +0300 -@@ -1,4 +1,5 @@ - // DataFileList -+#include <cstddef> - #include "DataFileList.h" - #include "CpptrajStdio.h" - -diff -urN amber11.orig/AmberTools/src/cpptraj/src/DataSet.cpp amber11/AmberTools/src/cpptraj/src/DataSet.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/DataSet.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/DataSet.cpp 2011-10-25 15:01:28.094288655 +0300 -@@ -1,6 +1,7 @@ - // DataSet - #include <cstdlib> - #include <cstring> -+#include <cstdio> // sprintf - #include "DataSet.h" - #include "CpptrajStdio.h" - -@@ -11,12 +12,73 @@ - N=0; - isDynamic=false; - current=0; -+ width = 0; -+ precision = 0; -+ format = NULL; -+ dType = UNKNOWN_DATA; - } - - // DESTRUCTOR - DataSet::~DataSet() { - //fprintf(stderr,"DataSet Destructor\n"); - if (name!=NULL) free(name); -+ if (format!=NULL) free(format); -+} -+ -+/* -+ * DataSet::setFormatString() -+ * Set up the output format string for each data element based on the given -+ * dataType and the current width, and precision. -+ */ -+void DataSet::setFormatString() { -+ size_t stringWidth = 0; -+ int wWidth = 0; -+ int pWidth = 0; -+ -+ if (format!=NULL) {free(format); format=NULL;} -+ -+ // Calc num of chars necessary to hold width -+ wWidth = (width / 10) + 1; -+ -+ switch (dType) { -+ case DOUBLE : -+ // Calc num of chars necessary to hold precision -+ pWidth = (precision / 10) + 1; -+ // String fmt: " %w.plf\0" -+ stringWidth = pWidth + wWidth + 6; -+ format = (char*) malloc( stringWidth * sizeof(char) ); -+ sprintf(format, " %%%i.%ilf", width, precision); -+ break; -+ case STRING : -+ // String fmt: " %s" -+ format = (char*) malloc( 4 * sizeof(char) ); -+ strcpy(format, " %s"); -+ break; -+ case INT : -+ // String fmt: " %wi" -+ stringWidth = wWidth + 4; -+ format = (char*) malloc( stringWidth * sizeof(char) ); -+ sprintf(format, " %%%ii", width); -+ break; -+ case UNKNOWN_DATA : -+ mprintf("Internal Error: setFormatString called with unknown data type.\n"); -+ } -+ -+ if (format==NULL) -+ mprintf("Error: setFormatString: Could not allocate memory for string.\n"); -+ // DEBUG -+ //else -+ // mprintf("DEBUG: Format string: [%s]\n",format); -+} -+ -+/* -+ * DataSet::SetPrecision() -+ * Set dataset width and precision and recalc output format string. -+ */ -+void DataSet::SetPrecision(int widthIn, int precisionIn) { -+ width=widthIn; -+ precision=precisionIn; -+ setFormatString(); - } - - /* -diff -urN amber11.orig/AmberTools/src/cpptraj/src/DataSet.h amber11/AmberTools/src/cpptraj/src/DataSet.h ---- amber11.orig/AmberTools/src/cpptraj/src/DataSet.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/DataSet.h 2011-10-25 15:01:28.103288646 +0300 -@@ -36,12 +36,18 @@ - class DataSet { - protected: - char *name; // Name of the dataset -+ dataType dType; // The dataset type - int N; // Number of data elements - int current; // The current data element -+ int width; // The output width of a data element -+ int precision; // The output precision of a data element (if applicable) -+ char *format; // Format of output -+ - bool isDynamic; // True : N is not known, reallocate as N increases - // False: N is known, allocate for N - // If not isDynamic, Allocate will reserve space for N data elements - virtual int Allocate( ) { return 0; } -+ void setFormatString(); - - public: - -@@ -51,13 +57,16 @@ - virtual int Xmax() { return 0; } - virtual int isEmpty(int) { return 0; } - virtual void Add( int, void * ) { return; } -+ virtual int Get( void *, int ) { return 1; } - virtual char *Write(char*, int) { return 0; } - virtual int Width() { return 0; } - virtual int Sync() { return 0; } - -+ void SetPrecision(int,int); - int Setup(char*,int); - void Info(); - char *Name() { return name; } - int CheckSet(); -+ dataType Type() {return dType;} - }; - #endif -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Frame.cpp amber11/AmberTools/src/cpptraj/src/Frame.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/Frame.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Frame.cpp 2011-10-25 15:01:28.120288631 +0300 -@@ -60,8 +60,38 @@ - if (Mass!=NULL) free(Mass); - } - --/* -- * Frame::Copy() -+/* Frame::ZeroCoords() -+ * Set all coords to 0.0 -+ */ -+void Frame::ZeroCoords() { -+ for (int coord=0; coord < N; coord++) -+ X[coord]=0.0; -+} -+ -+/* Frame::AddCoord() -+ * Add the coord values from the input frame to the coord values of -+ * this frame. -+ */ -+void Frame::AddCoord(Frame *FrameIn) { -+ if (FrameIn->N != this->N) { -+ mprintf("Error: Frame::AddCoord: Attempting to add %i coords to %i coords.\n", -+ FrameIn->N,this->N); -+ } else { -+ for (int coord=0; coord < N; coord++) -+ this->X[coord] += FrameIn->X[coord]; -+ } -+} -+ -+/* Frame::Divide() -+ * Divide all coord values by input. Dont do it if the number is too small. -+ */ -+void Frame::Divide(double divisor) { -+ if (divisor < SMALL) return; -+ for (int coord=0; coord < N; coord++) -+ X[coord] /= divisor; -+} -+ -+/* Frame::Copy() - * Return a copy of the frame - */ - Frame *Frame::Copy() { -@@ -423,21 +453,21 @@ - * Based on useMassIn, calculate geometric center (false) or center of mass - * (true) of the atoms in each mask. - */ --double Frame::DIST2(AtomMask *Mask1, AtomMask *Mask2, bool useMassIn, int ifbox, -+double Frame::DIST2(AtomMask *Mask1, AtomMask *Mask2, bool useMassIn, int boxType, - double *ucell, double *recip) { - double a1[3], a2[3]; - - COM(Mask1, a1, useMassIn); - COM(Mask2, a2, useMassIn); - -- if (ifbox == 0) -+ if (boxType == 0) - return DIST2_NoImage(a1, a2); -- else if (ifbox == 1) -+ else if (boxType == 1) - return DIST2_ImageOrtho(a1, a2, this->box); -- else if (ifbox == 2) -+ else if (boxType == 2) - return DIST2_ImageNonOrtho(a1, a2, ucell, recip); - -- mprintf(" Error: Frame::DIST: Unrecognized box type (%i)\n.", ifbox); -+ mprintf(" Error: Frame::DIST: Unrecognized box type (%i)\n.", boxType); - - return (-1.0); - } -@@ -445,8 +475,11 @@ - /* - * Frame::DIST2() - * Return the distance between atoms A1 and A2 with optional imaging. -+ * 0 = None -+ * 1 = Orthorhombic -+ * 2 = Non-orthorhombic - */ --double Frame::DIST2(int A1, int A2, int ifbox, double *ucell, double *recip) { -+double Frame::DIST2(int A1, int A2, int boxType, double *ucell, double *recip) { - int atom3; - double a1[3], a2[3]; - -@@ -459,14 +492,14 @@ - a2[1] = X[atom3+1]; - a2[2] = X[atom3+2]; - -- if (ifbox == 0) -+ if (boxType == 0) - return DIST2_NoImage(a1, a2); -- else if (ifbox == 1) -+ else if (boxType == 1) - return DIST2_ImageOrtho(a1, a2, this->box); -- else if (ifbox == 2) -+ else if (boxType == 2) - return DIST2_ImageNonOrtho(a1, a2, ucell, recip); - -- mprintf(" Error: Frame::DIST: Unrecognized box type (%i)\n.", ifbox); -+ mprintf(" Error: Frame::DIST: Unrecognized box type (%i)\n.", boxType); - - return (-1.0); - } -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Frame.h amber11/AmberTools/src/cpptraj/src/Frame.h ---- amber11.orig/AmberTools/src/cpptraj/src/Frame.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Frame.h 2011-10-25 15:01:28.092288656 +0300 -@@ -22,6 +22,9 @@ - Frame(AtomMask *, double *); - virtual ~Frame(); // Destructor is virtual since this class can be inherited - -+ void ZeroCoords(); -+ void AddCoord(Frame*); -+ void Divide(double); - void printAtomCoord(int); - void GetCoord(double *, int); - void SetCoord(int, double *); -diff -urN amber11.orig/AmberTools/src/cpptraj/src/FrameList.cpp amber11/AmberTools/src/cpptraj/src/FrameList.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/FrameList.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/FrameList.cpp 2011-10-25 15:01:28.073288675 +0300 -@@ -13,7 +13,8 @@ - delete frameList[i]; - } - --/* FrameList::Add() -+/* -+ * FrameList::Add() - * Add given Frame to the FrameList. Store trajectory name that this frame - * came from in frameNames. Store the associated parm in FrameParm. - */ -@@ -29,6 +30,18 @@ - FrameParm.Add(P); - Nframe++; - return 0; -+} -+ -+/* -+ * FrameList::Add() -+ * Add given Frame to the FrameList. Store the associated parm in FrameParm. -+ */ -+int FrameList::Add(Frame *F, AmberParm *P) { -+ if (F==NULL || P==NULL) return 1; -+ frameList.push_back(F); -+ FrameParm.Add(P); -+ Nframe++; -+ return 0; - } - - /* -diff -urN amber11.orig/AmberTools/src/cpptraj/src/FrameList.h amber11/AmberTools/src/cpptraj/src/FrameList.h ---- amber11.orig/AmberTools/src/cpptraj/src/FrameList.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/FrameList.h 2011-10-25 15:01:28.073288675 +0300 -@@ -18,6 +18,7 @@ - ~FrameList(); - - int Add(Frame *, char *, AmberParm *,int); -+ int Add(Frame *, AmberParm *); - AmberParm *GetFrameParm(int); - int GetFrameIndex(char *); - Frame *GetFrame(int idx); -diff -urN amber11.orig/AmberTools/src/cpptraj/src/GzipFile.cpp amber11/AmberTools/src/cpptraj/src/GzipFile.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/GzipFile.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/GzipFile.cpp 2011-10-25 15:01:28.227288533 +0300 -@@ -77,18 +77,24 @@ - - /* - * GzipFile::Read() -+ * NOTE: gzread returns 0 on EOF, -1 on error - */ - int GzipFile::Read(void *buffer, size_t size, size_t count) { - //size_t numread; - int numread; -+ int expectedread; -+ -+ expectedread = (int)size; -+ expectedread *= (int)count; - // Should never be able to call Read when fp is NULL. - //if (fp==NULL) { - // fprintf(stdout,"Error: GzipFile::Read: Attempted to read NULL file pointer.\n"); - // return 1; - //} -- numread = gzread(fp, buffer, size * count); -- if (numread == -1) return -1; -- -+ numread = gzread(fp, buffer, expectedread); -+ if (numread != expectedread) return -1; -+ //if (numread < 1 ) return -1; -+ - // NOTE: Check for errors here. - return numread; - } -diff -urN amber11.orig/AmberTools/src/cpptraj/src/intDataSet.cpp amber11/AmberTools/src/cpptraj/src/intDataSet.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/intDataSet.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/intDataSet.cpp 2011-10-25 15:01:28.103288646 +0300 -@@ -5,6 +5,14 @@ - #include "PtrajMpi.h" - #include "CpptrajStdio.h" - using namespace std; -+ -+// CONSTRUCTOR -+intDataSet::intDataSet() { -+ width=12; -+ dType=INT; -+ setFormatString(); -+} -+ - /* - * intDataSet::Xmax(() - * Return the maximum X value added to this set. By convention this is -@@ -33,8 +41,21 @@ - current++; - } - --/* -- * intDataSet::isEmpty() -+/* intDataSet::Get() -+ * Get data at frame, put into vOut. Return 1 if no data at frame. -+ */ -+int intDataSet::Get(void *vOut, int frame) { -+ int *value; -+ -+ if (vOut==NULL) return 1; -+ value = (int*) vOut; -+ it=Data.find( frame ); -+ if (it == Data.end()) return 1; -+ *value = (*it).second; -+ return 0; -+} -+ -+/* intDataSet::isEmpty() - */ - int intDataSet::isEmpty(int frame) { - it = Data.find( frame ); -@@ -52,17 +73,17 @@ - it = Data.find( frame ); - if (it == Data.end()) - //sprintf(buffer," %12s","NoData"); -- sprintf(buffer," %12i", 0); -+ sprintf(buffer, format, 0); - else -- sprintf(buffer," %12i",(*it).second); -- return (buffer + 13); -+ sprintf(buffer, format, (*it).second); -+ return (buffer + width + 1); - } - - /* - * intDataSet::Width() - */ - int intDataSet::Width() { -- return 13; -+ return (width + 1); - } - - /* -diff -urN amber11.orig/AmberTools/src/cpptraj/src/intDataSet.h amber11/AmberTools/src/cpptraj/src/intDataSet.h ---- amber11.orig/AmberTools/src/cpptraj/src/intDataSet.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/intDataSet.h 2011-10-25 15:01:28.104288645 +0300 -@@ -11,9 +11,12 @@ - std::map<int,int> Data; - std::map<int,int>::iterator it; - public: -+ intDataSet(); -+ - int Xmax(); - int isEmpty(int); - void Add( int, void * ); -+ int Get(void *, int); - char *Write(char *, int); - int Width(); - int Sync(); -diff -urN amber11.orig/AmberTools/src/cpptraj/src/main.cpp amber11/AmberTools/src/cpptraj/src/main.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/main.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/main.cpp 2011-10-25 15:01:28.228288532 +0300 -@@ -6,7 +6,7 @@ - #include "PtrajMpi.h" - #include "CpptrajStdio.h" - #ifndef CPPTRAJ_VERSION_STRING --#define CPPTRAJ_VERSION_STRING "V1.0.5" -+#define CPPTRAJ_VERSION_STRING "V1.1.1" - #endif - - void Usage(char *programName) { -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Makefile amber11/AmberTools/src/cpptraj/src/Makefile ---- amber11.orig/AmberTools/src/cpptraj/src/Makefile 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Makefile 2011-10-25 15:01:28.075288673 +0300 -@@ -16,7 +16,8 @@ - Action_Radgyr.cpp Conflib.cpp Action_Mask.cpp Action_Closest.cpp \ - NetcdfRoutines.cpp AmberRestartNC.cpp CpptrajStdio.cpp Mol2File.cpp \ - Mol2FileRoutines.cpp Action_NAstruct.cpp DistRoutines.cpp AxisType.cpp \ -- TorsionRoutines.cpp Action_Pucker.cpp Range.cpp Action_Outtraj.cpp -+ TorsionRoutines.cpp Action_Pucker.cpp Range.cpp Action_Outtraj.cpp \ -+ Action_Rms2d.cpp - - OBJECTS=main.o AmberNetcdf.o AmberParm.o AmberTraj.o TrajFile.o \ - Frame.o PtrajState.o ArgList.o ptrajmask.o Action_Distance.o \ -@@ -32,7 +33,8 @@ - Action_Radgyr.o Conflib.o Action_Mask.o Action_Closest.o \ - NetcdfRoutines.o AmberRestartNC.o CpptrajStdio.o Mol2File.o \ - Mol2FileRoutines.o Action_NAstruct.o DistRoutines.o AxisType.o \ -- TorsionRoutines.o Action_Pucker.o Range.o Action_Outtraj.o -+ TorsionRoutines.o Action_Pucker.o Range.o Action_Outtraj.o \ -+ Action_Rms2d.o - - HEADERS=AmberNetcdf.h AmberParm.h AmberTraj.h TrajFile.h \ - Frame.h PtrajState.h ArgList.h ptrajmask.h Action.h Action_Distance.h \ -@@ -48,7 +50,8 @@ - Action_Radgyr.h Conflib.h Action_Mask.h Action_Closest.h \ - NetcdfRoutines.h AmberRestartNC.h CpptrajStdio.h Mol2File.h \ - Mol2FileRoutines.h Action_NAstruct.h DistRoutines.h AxisType.h \ -- TorsionRoutines.h Action_Pucker.h Range.h Action_Outtraj.h -+ TorsionRoutines.h Action_Pucker.h Range.h Action_Outtraj.h \ -+ Action_Rms2d.h - - all: cpptraj$(SFX) - -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Makefile_at amber11/AmberTools/src/cpptraj/src/Makefile_at ---- amber11.orig/AmberTools/src/cpptraj/src/Makefile_at 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Makefile_at 2011-10-25 15:01:28.076288672 +0300 -@@ -16,7 +16,8 @@ - Action_Radgyr.cpp Conflib.cpp Action_Mask.cpp Action_Closest.cpp \ - NetcdfRoutines.cpp AmberRestartNC.cpp CpptrajStdio.cpp Mol2File.cpp \ - Mol2FileRoutines.cpp Action_NAstruct.cpp DistRoutines.cpp AxisType.cpp \ -- TorsionRoutines.cpp Action_Pucker.cpp Range.cpp Action_Outtraj.cpp -+ TorsionRoutines.cpp Action_Pucker.cpp Range.cpp Action_Outtraj.cpp \ -+ Action_Rms2d.cpp - - OBJECTS=main.o AmberNetcdf.o AmberParm.o AmberTraj.o TrajFile.o \ - Frame.o PtrajState.o ArgList.o ptrajmask.o Action_Distance.o \ -@@ -32,7 +33,8 @@ - Action_Radgyr.o Conflib.o Action_Mask.o Action_Closest.o \ - NetcdfRoutines.o AmberRestartNC.o CpptrajStdio.o Mol2File.o \ - Mol2FileRoutines.o Action_NAstruct.o DistRoutines.o AxisType.o \ -- TorsionRoutines.o Action_Pucker.o Range.o Action_Outtraj.o -+ TorsionRoutines.o Action_Pucker.o Range.o Action_Outtraj.o \ -+ Action_Rms2d.o - - HEADERS=AmberNetcdf.h AmberParm.h AmberTraj.h TrajFile.h \ - Frame.h PtrajState.h ArgList.h ptrajmask.h Action.h Action_Distance.h \ -@@ -48,7 +50,8 @@ - Action_Radgyr.h Conflib.h Action_Mask.h Action_Closest.h \ - NetcdfRoutines.h AmberRestartNC.h CpptrajStdio.h Mol2File.h \ - Mol2FileRoutines.h Action_NAstruct.h DistRoutines.h AxisType.h \ -- TorsionRoutines.h Action_Pucker.h Range.h Action_Outtraj.h -+ TorsionRoutines.h Action_Pucker.h Range.h Action_Outtraj.h \ -+ Action_Rms2d.h - - all: cpptraj$(SFX) - -diff -urN amber11.orig/AmberTools/src/cpptraj/src/mapDataSet.cpp amber11/AmberTools/src/cpptraj/src/mapDataSet.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/mapDataSet.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/mapDataSet.cpp 2011-10-25 15:01:28.104288645 +0300 -@@ -6,6 +6,14 @@ - #include "CpptrajStdio.h" - using namespace std; - -+// CONSTRUCTOR -+mapDataSet::mapDataSet() { -+ width = 12; -+ precision = 4; -+ dType=DOUBLE; -+ setFormatString(); -+} -+ - /* - * mapDataSet::Xmax(() - * Return the maximum X value added to this set. By convention this is -@@ -34,8 +42,23 @@ - current++; - } - --/* -- * mapDataSet::isEmpty() -+/* mapDataSet::Get() -+ * Get data at frame, put into vOut. Return 1 if no data at frame. -+ */ -+int mapDataSet::Get(void *vOut, int frame) { -+ double *value; -+ -+ if (vOut==NULL) return 1; -+ //mprintf("DEBUG: Attempting to get double frame %i\n",frame); -+ value = (double*) vOut; -+ it=Data.find( frame ); -+ if (it == Data.end()) return 1; -+ //mprintf("DEBUG: Double frame %i is %lf\n",frame,(*it).second); -+ *value = (*it).second; -+ return 0; -+} -+ -+/* mapDataSet::isEmpty() - */ - int mapDataSet::isEmpty(int frame) { - it = Data.find( frame ); -@@ -53,17 +76,17 @@ - it = Data.find( frame ); - if (it == Data.end()) - //sprintf(buffer," %12s","NoData"); -- sprintf(buffer," %12.4lf", 0.0); -+ sprintf(buffer, format, 0.0); - else -- sprintf(buffer," %12.4lf",(*it).second); -- return (buffer + 13); -+ sprintf(buffer, format,(*it).second); -+ return (buffer + width + 1); - } - - /* - * mapDataSet::Width() - */ - int mapDataSet::Width() { -- return 13; -+ return (width + 1); - } - - /* -diff -urN amber11.orig/AmberTools/src/cpptraj/src/mapDataSet.h amber11/AmberTools/src/cpptraj/src/mapDataSet.h ---- amber11.orig/AmberTools/src/cpptraj/src/mapDataSet.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/mapDataSet.h 2011-10-25 15:01:28.105288645 +0300 -@@ -7,14 +7,16 @@ - */ - #include <map> - #include "DataSet.h" --//using namespace std; - class mapDataSet : public DataSet { - std::map<int,double> Data; - std::map<int,double>::iterator it; - public: -+ mapDataSet(); -+ - int Xmax(); - int isEmpty(int); - void Add( int, void * ); -+ int Get(void *, int); - char *Write(char *, int); - int Width(); - int Sync(); -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Mol2File.cpp amber11/AmberTools/src/cpptraj/src/Mol2File.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/Mol2File.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Mol2File.cpp 2011-10-25 15:01:28.127288624 +0300 -@@ -239,6 +239,8 @@ - if (writeMode==2) - File->IO->Close(); - -+ currentFrame++; -+ - return 0; - } - -diff -urN amber11.orig/AmberTools/src/cpptraj/src/PDBfile.cpp amber11/AmberTools/src/cpptraj/src/PDBfile.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/PDBfile.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/PDBfile.cpp 2011-10-25 15:01:28.128288623 +0300 -@@ -207,6 +207,9 @@ - } else if (writeMode==1) { - File->IO->Printf("ENDMDL\n"); - } -+ -+ currentFrame++; -+ - return 0; - } - -diff -urN amber11.orig/AmberTools/src/cpptraj/src/PtrajActionList.cpp amber11/AmberTools/src/cpptraj/src/PtrajActionList.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/PtrajActionList.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/PtrajActionList.cpp 2011-10-25 15:01:28.105288645 +0300 -@@ -20,6 +20,7 @@ - #include "Action_NAstruct.h" - #include "Action_Pucker.h" - #include "Action_Outtraj.h" -+#include "Action_Rms2d.h" - - // Constructor - PtrajActionList::PtrajActionList() { -@@ -56,6 +57,7 @@ - - // Decide what action this is based on the command. - if (A->CommandIs("distance")) {Act=new Distance;} -+ else if (A->CommandIs("rms2d")) {Act=new Rms2d; } - else if (A->CommandIs("rmsd",3)) {Act=new Rmsd; } - else if (A->CommandIs("dihedral")) {Act=new Dihedral;} - else if (A->CommandIs("atommap")) {Act=new AtomMap; } -@@ -166,6 +168,8 @@ - err = ActionList[act]->DoAction(FrameAddress, frameIn); - if (err==1) { - // Treat actions that fail as if they could not be set up -+ mprintf("Warning: Action [%s] failed, frame %i.\n",ActionList[act]->CmdLine(), -+ frameIn); - ActionList[act]->noSetup=1; - } else if (err==2) { - // Return value of 2 requests return to original frame -diff -urN amber11.orig/AmberTools/src/cpptraj/src/PtrajFile.cpp amber11/AmberTools/src/cpptraj/src/PtrajFile.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/PtrajFile.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/PtrajFile.cpp 2011-10-25 15:01:28.196288560 +0300 -@@ -113,6 +113,7 @@ - void PtrajFile::CloseFile() { - if (isOpen) { - IO->Close(); -+ if (debug>0) rprintf("Closed %s.\n",filename); - isOpen=0; - } - } -@@ -417,8 +418,8 @@ - // Standard file size is in the frame_stat struct - uncompressed_size = IO->Size(filename); - -- // Determine format -- // Read first 3 bytes again to determine format by magic number -+ // ========== Determine format ========== -+ // ---------- Read first 3 bytes again to determine format by magic number ---------- - IO->Open(filename,"rb"); // NOTE: Err Check - memset(magic,0,3*sizeof(unsigned char)); - IO->Read(magic ,1,1); -@@ -454,7 +455,7 @@ - return 0; - } - -- // ID by file characteristics; read the first two lines -+ // ---------- ID by file characteristics; read the first two lines ---------- - // Initialize buffers to NULL - buffer1[0]='\0'; - buffer2[0]='\0'; -@@ -472,17 +473,6 @@ - } - } - -- // Reopen and scan for Tripos mol2 molecule section -- // 0 indicates section found. -- IO->Open(filename,"r"); -- if (!Mol2ScanTo(this, MOLECULE)) { -- if (debug>0) mprintf(" TRIPOS MOL2 file\n"); -- fileFormat=MOL2FILE; -- IO->Close(); -- return 0; -- } -- IO->Close(); -- - // If both lines have PDB keywords, assume PDB - if (isPDBkeyword(buffer1) && isPDBkeyword(buffer2)) { - if (debug>0) mprintf(" PDB file\n"); -@@ -491,7 +481,8 @@ - } - - // If either buffer contains a TRIPOS keyword assume Mol2 -- // NOTE: This will fail on tripos files with extensive header comments -+ // NOTE: This will fail on tripos files with extensive header comments. -+ // A more expensive check for mol2 files is below. - if (strncmp(buffer1,"@<TRIPOS>", 9)==0 || - strncmp(buffer2,"@<TRIPOS>", 9)==0) { - if (debug>0) mprintf(" TRIPOS MOL2 file\n"); -@@ -547,7 +538,19 @@ - } - } - -- // NOTE: EXPERIMENTAL -+ // ---------- MORE EXPENSIVE CHECKS ---------- -+ // Reopen and scan for Tripos mol2 molecule section -+ // 0 indicates section found. -+ IO->Open(filename,"r"); -+ if (!Mol2ScanTo(this, MOLECULE)) { -+ if (debug>0) mprintf(" TRIPOS MOL2 file\n"); -+ fileFormat=MOL2FILE; -+ IO->Close(); -+ return 0; -+ } -+ IO->Close(); -+ -+ // ---------- EXPERIMENTAL ---------- - // If the file format is still undetermined and the file name is conflib.dat, - // assume this is a conflib.dat file from LMOD. Cant think of a better way to - // detect this since there is no magic number but the file is binary. -diff -urN amber11.orig/AmberTools/src/cpptraj/src/PtrajMpi.c amber11/AmberTools/src/cpptraj/src/PtrajMpi.c ---- amber11.orig/AmberTools/src/cpptraj/src/PtrajMpi.c 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/PtrajMpi.c 2011-10-25 15:01:28.100288649 +0300 -@@ -460,7 +460,10 @@ - } - - err = MPI_Allreduce(input, Return, count, currentType, currentOp, MPI_COMM_WORLD); -- if (err!=MPI_SUCCESS) printMPIerr(err, "Performing allreduce for %i elements\n",count); -+ if (err!=MPI_SUCCESS) { -+ printMPIerr(err, "Performing allreduce.\n"); -+ rprintf("Error: allreduce failed for %i elements.\n",count); -+ } - - if (parallel_check_error(err)!=0) return 1; - return 0; -diff -urN amber11.orig/AmberTools/src/cpptraj/src/PtrajState.cpp amber11/AmberTools/src/cpptraj/src/PtrajState.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/PtrajState.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/PtrajState.cpp 2011-10-25 15:01:28.214288545 +0300 -@@ -7,7 +7,8 @@ - #include "CpptrajStdio.h" - - // Constructor --PtrajState::PtrajState() { -+PtrajState::PtrajState() { -+ TotalErrors=0; - debug=0; - showProgress=1; - } -@@ -291,6 +292,7 @@ - char *df_cmd = NULL; - char *name1 = NULL; - char *name2 = NULL; -+ int width,precision; - DataFile *df; - - if (DF_Args.empty()) return; -@@ -349,6 +351,19 @@ - } - mprintf(" Not printing x column for datafile %s\n",name1); - df->SetNoXcol(); -+ -+ // datafile precision -+ // Usage: datafile precision <filename> <dataset> [<width>] [<precision>] -+ // If width/precision not specified default to 12.4 -+ } else if ( strcmp(df_cmd,"precision")==0 ) { -+ if (df==NULL) { -+ mprintf("Error: datafile precision: DataFile %s does not exist.\n",name1); -+ continue; -+ } -+ name2 = A->getNextString(); -+ width = A->getNextInteger(12); -+ precision = A->getNextInteger(4); -+ df->SetPrecision(name2,width,precision); - } - - } // END loop over datafile args -@@ -374,7 +389,7 @@ - - // ========== S E T U P P H A S E ========== - // Calculate frame division among trajectories -- maxFrames=trajFileList.SetupFrames(); -+ maxFrames=trajFileList.SetupFrames(worldrank,worldsize); - - // Parameter file information - parmFileList.Print(); -@@ -442,7 +457,7 @@ - // Perform Actions on Frame - ptrajActionList.DoActions(&CurrentFrame, actionSet); - // Do Output -- outFileList.Write(outputSet, CurrentFrame, CurrentParm); -+ outFileList.Write(actionSet, CurrentFrame, CurrentParm); - #ifdef DEBUG - dbgprintf("\tDEBUG: %30s: %4i\n",CurrentParm->parmName,CurrentParm->outFrame); - #endif -diff -urN amber11.orig/AmberTools/src/cpptraj/src/PtrajState.h amber11/AmberTools/src/cpptraj/src/PtrajState.h ---- amber11.orig/AmberTools/src/cpptraj/src/PtrajState.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/PtrajState.h 2011-10-25 15:01:28.093288656 +0300 -@@ -20,6 +20,7 @@ - DataFileList DFL; // List of datafiles that data sets will be written to - ArgList *A; // Current argument list - std::list<ArgList*> DF_Args; // List of commands pertaining to datafile creation etc -+ int TotalErrors; // Sum of all returned error statuses - int debug; - - void SetGlobalDebug(int); // Set debug level for all components -diff -urN amber11.orig/AmberTools/src/cpptraj/src/ReferenceList.cpp amber11/AmberTools/src/cpptraj/src/ReferenceList.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/ReferenceList.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/ReferenceList.cpp 2011-10-25 15:01:28.093288656 +0300 -@@ -20,11 +20,15 @@ - */ - int ReferenceList::Add(ArgList *A, ParmFileList *parmFileList, int worldsize) { - TrajFile *T; -- int startArg; -+ int startArg,stopArg,offsetArg; -+ bool average = false; - - // Set up common arguments from arglist - if (this->ProcessArgList(A,parmFileList)) return 1; - -+ // Check if we want to obtain the average structure -+ average = A->hasKey("average"); -+ - // Set up basic file to determine type and format - T = this->SetupTrajectory(trajfilename, fileAccess, UNKNOWN_FORMAT, UNKNOWN_TYPE); - -@@ -45,10 +49,18 @@ - // Get user-specified start arg - // NOTE: For compatibility with ptraj start from 1 - startArg=A->getNextInteger(1); -- T->SetArgs(startArg,startArg,1); -+ stopArg=startArg; -+ offsetArg=1; -+ // Get user-specified stop and offset only if getting avg structure -+ if (average) { -+ stopArg=A->getNextInteger(-1); -+ offsetArg=A->getNextInteger(1); -+ } -+ T->SetArgs(startArg,stopArg,offsetArg); - - // Add to trajectory file list -- this->push_back(T); -+ this->push_back(T); -+ Average.push_back(average); - - return 0; - } -@@ -60,9 +72,11 @@ - * place that frame in refFrames. - */ - int ReferenceList::SetupRefFrames(FrameList *refFrames) { -- int trajFrames; -- Frame *F; -+ int trajFrames, global_set; -+ double Nframes; -+ Frame *F, *AvgFrame; - int skipValue; -+ int refTrajNum = 0; - - mprintf("\nREFERENCE COORDS:\n"); - if (this->empty()) { -@@ -72,7 +86,13 @@ - - for (it = this->begin(); it != this->end(); it++) { - // Setup the reference traj for reading. Should only be 1 frame. -- trajFrames=(*it)->setupFrameInfo(-1); -+ // NOTE: For MPI, calling setupFrameInfo with worldrank 0, worldsize 1 for -+ // all ranks. This is to ensure each thread has a copy of the ref -+ // struct. -+ // Calling setupFrameInfo with -1 to ensure the Parm frame count is -+ // not updated. -+ -+ trajFrames=(*it)->setupFrameInfo(-1,0,1); - if ((*it)->total_read_frames<1) { - rprintf("Error: No frames could be read for reference %s, skipping\n", - (*it)->trajfilename); -@@ -89,12 +109,34 @@ - skipValue=(*it)->skip; - (*it)->skip=0; - } -- (*it)->Begin(&trajFrames, 0); -- // Get and copy the 1 frame from Traj, then close -- // NOTE: What happens when not seekable? -+ // Start trajectory read -+ global_set=0; -+ (*it)->Begin(&global_set, 0); - (*it)->PrintInfo(1); -- (*it)->NextFrame(&trajFrames); -- F=(*it)->F->Copy(); -+ // If averaging requested, loop over specified frames and avg coords. -+ if (Average[refTrajNum++]) { -+ mprintf(" Averaging over %i frames.\n",trajFrames); -+ AvgFrame = new Frame((*it)->P->natom, (*it)->P->mass); -+ AvgFrame->ZeroCoords(); -+ global_set = 0; -+ Nframes = 0.0; -+ while ( (*it)->NextFrame(&global_set) ) { -+ AvgFrame->AddCoord( (*it)->F ); -+ Nframes++; -+ } -+ if (Nframes < 1.0) { -+ mprintf("Error: reference average: # frames read is less than 1.\n"); -+ F=NULL; -+ } else { -+ AvgFrame->Divide( Nframes ); -+ F=AvgFrame->Copy(); -+ } -+ delete AvgFrame; -+ // If no averaging, get and copy the 1 frame from Traj, then close -+ } else { -+ (*it)->NextFrame(&trajFrames); -+ F=(*it)->F->Copy(); -+ } - // DEBUG - //fprintf(stdout,"DEBUG: Ref Coord Atom 0\n"); - //F->printAtomCoord(0); -diff -urN amber11.orig/AmberTools/src/cpptraj/src/ReferenceList.h amber11/AmberTools/src/cpptraj/src/ReferenceList.h ---- amber11.orig/AmberTools/src/cpptraj/src/ReferenceList.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/ReferenceList.h 2011-10-25 15:01:28.094288655 +0300 -@@ -5,7 +5,7 @@ - #include "FrameList.h" - - class ReferenceList : public CoordFileList { -- -+ std::vector<bool> Average; - public: - - ReferenceList(); -diff -urN amber11.orig/AmberTools/src/cpptraj/src/RemdTraj.cpp amber11/AmberTools/src/cpptraj/src/RemdTraj.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/RemdTraj.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/RemdTraj.cpp 2011-10-25 15:01:28.122288629 +0300 -@@ -88,7 +88,7 @@ - // NOTE: Should check that this is the case for ALL frames. - stop = T->Frames; - Frames = T->Frames; -- isBox = T->isBox; -+ BoxType = T->BoxType; - trajfilename = T->File->basefilename; - // Add it to the list - REMDtraj.push_back(T); -@@ -190,12 +190,12 @@ - return 1; - } - // Check that #Frames and box info matches -- if ( Frames!=T->Frames || isBox!=T->isBox ) { -+ if ( Frames!=T->Frames || BoxType!=T->BoxType ) { - mprintf( -- " ERROR: REMDTRAJ: #Frames (%i) or box info (%i) in replica does not match\n", -- T->Frames, T->isBox); -- mprintf(" values in lowest replica (Frames=%i, box=%i)\n", -- Frames,isBox); -+ " ERROR: REMDTRAJ: #Frames (%i) or box type (%i) in replica does not match\n", -+ T->Frames, T->BoxType); -+ mprintf(" values in lowest replica (Frames=%i, boxtype=%i)\n", -+ Frames,BoxType); - delete T; - free(repFilename); - free(Prefix); -diff -urN amber11.orig/AmberTools/src/cpptraj/src/stringDataSet.cpp amber11/AmberTools/src/cpptraj/src/stringDataSet.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/stringDataSet.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/stringDataSet.cpp 2011-10-25 15:01:28.097288652 +0300 -@@ -6,6 +6,13 @@ - #include "PtrajMpi.h" - #include "CpptrajStdio.h" - using namespace std; -+ -+// CONSTRUCTOR -+stringDataSet::stringDataSet() { -+ dType=STRING; -+ setFormatString(); -+} -+ - /* - * stringDataSet::Xmax(() - * Return the maximum X value added to this set. By convention this is -@@ -54,10 +61,10 @@ - - it = Data.find( frame ); - if (it == Data.end()) { -- sprintf(buffer," %s", "NoData"); -+ sprintf(buffer, format, "NoData"); - return (buffer + 7); - } else -- sprintf(buffer," %s",(*it).second.c_str()); -+ sprintf(buffer, format, (*it).second.c_str()); - - return (buffer + (*it).second.size() + 1); - } -diff -urN amber11.orig/AmberTools/src/cpptraj/src/stringDataSet.h amber11/AmberTools/src/cpptraj/src/stringDataSet.h ---- amber11.orig/AmberTools/src/cpptraj/src/stringDataSet.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/stringDataSet.h 2011-10-25 15:01:28.097288652 +0300 -@@ -12,6 +12,8 @@ - std::map<int,std::string> Data; - std::map<int,std::string>::iterator it; - public: -+ stringDataSet(); -+ - int Xmax(); - int isEmpty(int); - void Add( int, void * ); -diff -urN amber11.orig/AmberTools/src/cpptraj/src/TrajFile.cpp amber11/AmberTools/src/cpptraj/src/TrajFile.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/TrajFile.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/TrajFile.cpp 2011-10-25 15:01:28.122288629 +0300 -@@ -2,7 +2,6 @@ - #include <cstdlib> - #include <cstring> - #include "TrajFile.h" --#include "PtrajMpi.h" // worldrank and worldsize needed to calc frame division - #include "CpptrajStdio.h" - - // CONSTRUCTOR -@@ -18,7 +17,7 @@ - start=0; - stop=-1; - offset=1; -- isBox=0; -+ BoxType=0; - title=NULL; - P=NULL; - frameskip=0; -@@ -45,12 +44,17 @@ - void TrajFile::SetTitle(char *titleIn) { - size_t titleSize; - -+ //mprintf("DEBUG: Attempting to set title for %s: [%s]\n",trajfilename,titleIn); - if (titleIn==NULL) return; - titleSize = strlen(titleIn); -- if (titleSize==0) return; -+ //mprintf(" Title size is %i\n",titleSize); -+ if (titleSize==0) { -+ mprintf("Warning: TrajFile::SetTitle(): Title for %s is 0 length.\n",trajfilename); -+ return; -+ } - this->title = (char*) malloc( (titleSize+1) * sizeof(char)); - if (this->title==NULL) { -- mprintf("Error: TrajFile::SetTitle(): Could not allocate memory for title.\n"); -+ mprintf("Error: SetTitle: Could not allocate memory for title of %s.\n",trajfilename); - return; - } - strcpy(this->title, titleIn); -@@ -59,6 +63,30 @@ - } - - /* -+ * TrajFile::CheckBoxType() -+ * Set the trajectory box type (ortho/nonortho) based on box angles. -+ * Check the current box type against the associated parmfile box type. -+ * Print a warning if they are different. -+ */ -+void TrajFile::CheckBoxType(double *box) { -+ // Determine orthogonal / non-orthogonal from angles -+ if (box[3]==0.0 || box[4]==0.0 || box[5]==0.0) -+ BoxType=0; -+ else if (box[3]==90.0 && box[4]==90.0 && box[5]==90.0) -+ BoxType=1; -+ else -+ BoxType=2; -+ if (P->BoxType != BoxType) { -+ mprintf("Warning: %s contains box info of type %i (beta %lf)\n",trajfilename, -+ BoxType,box[4]); -+ mprintf(" but associated parmfile %s has box type %i (beta %lf)\n",P->parmName, -+ P->BoxType,P->Box[4]); -+ //mprintf(" Box information from trajectory will be used.\n"); -+ } -+ if (debug>0) mprintf(" %s: Box type is %i (beta=%lf)\n",trajfilename,BoxType,box[4]); -+} -+ -+/* - * TrajFile::PrintInfo() - * Print general trajectory information. Call TrajFile->Info for specific information. - */ -@@ -68,7 +96,7 @@ - - mprintf(", Parm %i",P->pindex); - -- if (isBox) mprintf(" (with box info)"); -+ if (BoxType>0) mprintf(" (with box info)"); - - if (showExtended==0) { - mprintf("\n"); -@@ -85,7 +113,7 @@ - mprintf(": Writing %i frames", P->parmFrames); - if (File->access==APPEND) mprintf(", appended"); // NOTE: Dangerous if REMD - } -- if (debug>0) mprintf(", %i atoms, Box %i, seekable %i",P->natom,isBox,seekable); -+ if (debug>0) mprintf(", %i atoms, Box %i, seekable %i",P->natom,BoxType,seekable); - mprintf("\n"); - } - -@@ -164,7 +192,7 @@ - * Note that the input frames start counting from 1, output starts counting from 0! - * If called with maxFrames=-1 dont update the frame in parm file. - */ --int TrajFile::setupFrameInfo(int maxFrames) { -+int TrajFile::setupFrameInfo(int maxFrames, int worldrank, int worldsize) { - int Nframes; - int ptraj_start_frame, ptraj_end_frame; - int traj_start_frame, traj_end_frame; -diff -urN amber11.orig/AmberTools/src/cpptraj/src/TrajFile.h amber11/AmberTools/src/cpptraj/src/TrajFile.h ---- amber11.orig/AmberTools/src/cpptraj/src/TrajFile.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/TrajFile.h 2011-10-25 15:01:28.128288623 +0300 -@@ -25,44 +25,44 @@ - int offset; // Number of frames to skip while processing - - // --== Inherited by child classes ==-- -- virtual int open() { return 0; } // Open the file, prepare for coord read/write -- virtual void close() {} // Close the file -+ virtual int open() { return 0; } // Open the file, prepare for coord read/write -+ virtual void close() {} // Close the file -+ -+ void CheckBoxType(double *); // Check that traj boxtype matches parm - - public: - int debug; // Level of debug information to print - char *trajfilename; // The base trajectory filename -- // NOTE: I hate that the following are public. Only necessary for REMD processing!! -+ // NOTE: I hate that the 2 following are public. Only necessary for REMD processing!! - int Frames; // Total number of frames in trajectory - int total_read_frames; // Total number of frames that will be read -- int isBox; // >0 means trajectory has box information -- -+ int BoxType; // 0: None, 1: Ortho, 2: NonOrtho - Range *FrameRange; // list of frames to be written out - int hasTemperature; // 1 means trajectory has temperature information - PtrajFile *File; // Class that handles basic file IO - AmberParm *P; // Memory address of the associated parmfile - Frame *F; // Hold coordinates of the current frame -- int skip; /* READ: If =1 do not process this input trajectory -- WRITE: If =1 this traj has been set up for write */ -+ int skip; // READ: If =1 do not process this input trajectory -+ // WRITE: If =1 this traj has been set up for write - - TrajFile(); // Constructor - virtual ~TrajFile(); // Destructor - virtual since this class is inherited. - -- int Start() { return start; } -+ int Start() { return start; } -+ int CurrentFrame() { return currentFrame; } - void SetTitle(char *); // Set trajectory title. - void PrintInfo(int); // Print trajectory Information -- int setupFrameInfo(int); // Set actual start/stop based on total #frames and #threads -- int Begin(int *, int); /* Prepare traj for processing. Set output start value, calcd in -- * setupFrameInfo. Allocate memory for F. -- */ -- int Begin(); // Prepare trajectory for output -- int NextFrame(int*); // Put the next target frame into F. -- void End(); // Close trajectory and free F memory -- void progressBar(); // Display trajectory progress to screen --// void progressBar2(); // Display trajectory progress to screen -- -- void SetArgs(int,int,int); // Set the stop, start, and offset args from user input -+ int Begin(int *, int); // Prepare traj for processing. Set output start value, calcd in -+ // setupFrameInfo. Allocate memory for F. -+ int Begin(); // Prepare trajectory for output -+ int NextFrame(int*); // Put the next target frame into F. -+ void End(); // Close trajectory and free F memory -+ void progressBar(); // Display trajectory progress to screen -+// void progressBar2(); // Display trajectory progress to screen -+ int setupFrameInfo(int,int,int); // Set actual start/stop based on total #frames and #threads -+ void SetArgs(int,int,int); // Set the stop, start, and offset args from user input - // --== Inherited by child classes ==-- -- virtual int getFrame(int) { return 1; } // Read the next coord frame into F -+ virtual int getFrame(int) { return 1; } // Read specified frame into F - virtual int SetupRead() { return 1; } // Set file up for reading - virtual int WriteArgs(ArgList*){ return 0; } // (Opt.) Process any args related to writing - virtual int SetupWrite() { return 1; } // Set file up for writing -diff -urN amber11.orig/AmberTools/src/cpptraj/src/TrajinList.cpp amber11/AmberTools/src/cpptraj/src/TrajinList.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/TrajinList.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/TrajinList.cpp 2011-10-25 15:01:28.201288557 +0300 -@@ -1,4 +1,5 @@ - // TrajinList -+#include <cstddef> - #include "TrajinList.h" - #include "RemdTraj.h" - #include "CpptrajStdio.h" -@@ -70,7 +71,7 @@ - * actual start and stop and how many frames total will be processed. - * Return the number of frames to be processed. - */ --int TrajinList::SetupFrames() { -+int TrajinList::SetupFrames(int worldrank, int worldsize) { - int maxFrames, trajFrames; - - mprintf("\nTRAJECTORIES:\n"); -@@ -78,7 +79,7 @@ - maxFrames=0; - - for (it = this->begin(); it != this->end(); it++) { -- trajFrames = (*it)->setupFrameInfo(maxFrames); -+ trajFrames = (*it)->setupFrameInfo(maxFrames,worldrank,worldsize); - if (trajFrames==-1) { - maxFrames=-1; - } -diff -urN amber11.orig/AmberTools/src/cpptraj/src/TrajinList.h amber11/AmberTools/src/cpptraj/src/TrajinList.h ---- amber11.orig/AmberTools/src/cpptraj/src/TrajinList.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/TrajinList.h 2011-10-25 15:01:28.090288658 +0300 -@@ -13,7 +13,7 @@ - // NOTE: worldsize is passed in as last arg to avoid include of PtrajMpi - int Add(ArgList *A, ParmFileList *, int); - // TRAJIN: Set up frames to be processed -- int SetupFrames(); -+ int SetupFrames(int,int); - }; - #endif - -diff -urN amber11.orig/AmberTools/src/cpptraj/src/TrajoutList.cpp amber11/AmberTools/src/cpptraj/src/TrajoutList.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/TrajoutList.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11/AmberTools/src/cpptraj/src/TrajoutList.cpp 2011-10-25 15:01:28.202288556 +0300 -@@ -1,4 +1,5 @@ - // TrajoutList -+#include <cstddef> - #include "TrajoutList.h" - #include "CpptrajStdio.h" - -@@ -20,7 +21,6 @@ - */ - int TrajoutList::Add(ArgList *A, ParmFileList *parmFileList, int worldsize) { - TrajFile *T; -- int boxInfo; - FileFormat writeFormat; - FileType writeType; - char *onlyframes; -@@ -29,7 +29,6 @@ - if (this->ProcessArgList(A,parmFileList)) return 1; - - // Init variables -- boxInfo=0; - writeFormat=AMBERTRAJ; - writeType=UNKNOWN_TYPE; - -@@ -56,10 +55,6 @@ - if (worldsize>1 && writeFormat!=AMBERRESTART) - writeType=MPIFILE; - -- // Set box info from parm file unless nobox is set. -- boxInfo=P->ifbox; -- if (A->hasKey("nobox")) boxInfo=0; -- - // Set up basic file for given type and format - // If type is unknown it will be determined from extension or will be standard (default) - T = this->SetupTrajectory(trajfilename, fileAccess, writeFormat, writeType); -@@ -90,10 +85,11 @@ - // Set parameter file - T->P=P; - -- // Set box information (only needed for write) -- T->isBox=boxInfo; -+ // Set box type from parm file unless "nobox" specified -+ T->BoxType=P->BoxType; -+ if (A->hasKey("nobox")) T->BoxType=0; - -- // No setup here; Write is set up after first frame read in PtrajState::Run -+ // No more setup here; Write is set up when first frame written. - // Add to trajectory file list - this->push_back(T); - -diff -urN amber11.orig/AmberTools/src/etc/chemistry/amber/readparm.py amber11/AmberTools/src/etc/chemistry/amber/readparm.py ---- amber11.orig/AmberTools/src/etc/chemistry/amber/readparm.py 2011-04-14 15:30:17.000000000 +0300 -+++ amber11/AmberTools/src/etc/chemistry/amber/readparm.py 2011-10-25 15:01:28.200288558 +0300 -@@ -118,22 +118,44 @@ - """ Parses the fortran format statement. Recognizes ints, exponents, and strings. - Returns the number of items/line, size of each item, and type of data """ - -+ # Get rid of ( and ) specifiers in Fortran format strings. This is a hack, but -+ # should work for existing chamber prmtop files -+ -+ format_string = format_string.replace('(','').replace(')','') -+ -+ # Fix case for E, I, and F -+ -+ format_string = format_string.replace('e','E') -+ format_string = format_string.replace('i','I') -+ format_string = format_string.replace('f','F') -+ - if 'a' in format_string: # this is a string - format_parts = format_string.split('a') -- return int(format_parts[0]), int(format_parts[1]), 'str' -+ try: -+ return int(format_parts[0]), int(format_parts[1]), 'str', None -+ except: -+ return 1, 80, 'str', None - - elif 'I' in format_string: # this is an integer - format_parts = format_string.split('I') -- return int(format_parts[0]), int(format_parts[1]), 'int' -+ if len(format_parts[0].strip()) == 0: format_parts[0] = 1 -+ return int(format_parts[0]), int(format_parts[1]), 'int', None - - elif 'E' in format_string: # this is a floating point decimal - format_parts = format_string.split('E') - decimal_parts = format_parts[1].split('.') -- return int(format_parts[0]), int(decimal_parts[0]), 'dec' -+ if len(format_parts[0].strip()) == 0: format_parts[0] = 1 -+ return int(format_parts[0]), int(decimal_parts[0]), 'dec', int(decimal_parts[1]) -+ -+ elif 'F' in format_string: # this is also a floating point decimal -+ format_parts = format_string.split('F') -+ decimal_parts = format_parts[1].split('.') -+ if len(format_parts[0].strip()) == 0: format_parts[0] = 1 -+ return int(format_parts[0]), int(decimal_parts[0]), 'dec', int(decimal_parts[1]) - - else: - print >> stderr, 'Error: Unrecognized format "%s"!' % format_string -- return 1, 80, 'str' -+ return 1, 80, 'str', None - - # +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - -@@ -275,7 +297,7 @@ - - elif prmlines[i][0:7] == '%FORMAT': - self.formats[current_flag] = prmlines[i][8:len(prmlines[i].strip())-1] -- number_items_perline, size_item, dat_type = _parseFormat(self.formats[current_flag]) -+ number_items_perline, size_item, dat_type, junk = _parseFormat(self.formats[current_flag]) - gathering_data = True - - elif gathering_data: -@@ -339,17 +361,17 @@ - flag = self.flag_list[i] - new_prm.write('%%FLAG %s\n' % flag) - new_prm.write('%%FORMAT(%s)\n' % self.formats[flag]) -- number_items_perline, size_item, dat_type = _parseFormat(self.formats[flag]) -- if dat_type == 'dec': -- decnum = int(self.formats[flag].split('E')[1].split('.')[1]) -+ number_items_perline, size_item, dat_type, decnum = _parseFormat(self.formats[flag]) - line = '' - num_items = 0 - if len(self.parm_data[flag]) == 0: # empty field... - new_prm.write('\n') - continue - for j in range(len(self.parm_data[flag])): # write data in new_prm -- if dat_type == 'dec': -+ if dat_type == 'dec' and 'E' in self.formats[flag].upper(): - line += ('%%%s.%sE' % (size_item, decnum)) % self.parm_data[flag][j] -+ elif dat_type == 'dec' and 'F' in self.formats[flag].upper(): -+ line += ('%%%s.%sF' % (size_item, decnum)) % self.parm_data[flag][j] - elif dat_type == 'int': - line += ('%%%sd' % size_item) % self.parm_data[flag][j] - else: -@@ -764,7 +786,8 @@ - self.LJ_types[self.parm_data["AMBER_ATOM_TYPE"][i]] = self.parm_data["ATOM_TYPE_INDEX"][i] - - for i in range(self.pointers["NTYPES"]): -- lj_index = (i + 1) * (i + 2) / 2 - 1 # n(n+1)/2 th position adjusted for indexing from 0 -+ lj_index = self.parm_data["NONBONDED_PARM_INDEX"][ -+ self.pointers["NTYPES"] * i + i - 1] - 1 - if self.parm_data["LENNARD_JONES_BCOEF"][lj_index] < 1.0e-6: - self.LJ_radius.append(0) - self.LJ_depth.append(0) -diff -urN amber11.orig/AmberTools/src/leap/src/leap/amber.c amber11/AmberTools/src/leap/src/leap/amber.c ---- amber11.orig/AmberTools/src/leap/src/leap/amber.c 2011-03-10 20:12:06.000000000 +0200 -+++ amber11/AmberTools/src/leap/src/leap/amber.c 2011-10-25 15:01:28.139288613 +0300 -@@ -36,6 +36,10 @@ - * UNITs and PARMSETs. - */ - -+ /* Arunima Singh (UGA) */ -+ /* 20110420 */ -+ /* Added SCEE/SCNB */ -+ - #include "basics.h" - #include "vector.h" - #include "classes.h" -@@ -240,23 +244,47 @@ - * - * Read the proper torsion parameter terms. - */ -+ -+/* Arunima Singh added reading in of scee and scnb fields for proper torsions 20110420 */ - static void - zAmberReadParmSetPropers( PARMSET psParms, FILE *fIn ) - { - STRING sLine; --int iRead, iN; -+int iRead, iN, iRead2, iRead3; - STRING saStr[10]; --double dDivisions, dKp, dP0, dN; -+double dDivisions, dKp, dP0, dN, dScee, dScnb; -+char *cScee, *cScnb; - - memset(saStr, 0, sizeof(saStr)); /* for Purify */ - while (1) { - FGETS( sLine, fIn ); - NODASHES(sLine); -- iRead = sscanf( sLine, "%s %s %s %s %lf %lf %lf %lf", -+ -+ iRead = sscanf( sLine, "%s %s %s %s %lf %lf %lf %lf ", - saStr[0], saStr[1], saStr[2], saStr[3], - &dDivisions, &dKp, &dP0, &dN ); -- if ( iRead <= 0 ) -+ -+ cScee = strstr(sLine, "SCEE"); -+ if(cScee!=NULL) { -+ iRead2 = sscanf( cScee, "SCEE=%lf", &dScee); -+ iRead++; -+ } -+ -+ cScnb = strstr(sLine, "SCNB"); -+ if(cScnb!=NULL) { -+ iRead3 = sscanf( cScnb, "SCNB=%lf", &dScnb); -+ iRead++; -+ } -+ -+ if ( iRead <= 0 ) - break; -+ -+ if ( iRead == 8 ) /*Arunima Singh*/ -+ { -+ dScee = 1.2; -+ dScnb = 2.0; -+ } -+ - MESSAGE(( "Read: %s\n", sLine )); - - if ( sLine[0] == ' ' && sLine[1] == ' ') { -@@ -277,14 +305,37 @@ - zAmberConvertWildCard( saStr[3] ); - iParmSetAddProperTerm( psParms, - saStr[0], saStr[1], saStr[2], saStr[3], -- abs(iN), dKp, dP0*DEGTORAD, "" ); -+ abs(iN), dKp, dP0*DEGTORAD, dScee, dScnb, "" ); -+ -+ - while( iN < 0 ) { - FGETS( sLine, fIn ); - NODASHES(sLine); - MESSAGE(( "Read extra term: %s\n", sLine )); -- iRead = sscanf( &sLine[11], "%lf %lf %lf %lf", -+ iRead = sscanf( &sLine[11], "%lf %lf %lf %lf ", - &dDivisions, &dKp, &dP0, &dN ); -- if ( iRead<=0 ) break; -+ -+ cScee = strstr(sLine, "SCEE"); -+ if(cScee!=NULL) { -+ iRead2 = sscanf( cScee, "SCEE=%lf", &dScee); -+ iRead++; -+ } -+ -+ cScnb = strstr(sLine, "SCNB"); -+ if(cScnb!=NULL) { -+ iRead3 = sscanf( cScnb, "SCNB=%lf", &dScnb); -+ iRead++; -+ } -+ -+ -+ if ( iRead == 4 ) /*Arunima Singh*/ -+ { -+ dScee = 1.2; -+ dScnb = 2.0; -+ } -+ -+ -+ if ( iRead<=0 ) break; - - if ( dDivisions == 0.0 ) - dDivisions = 1.0; -@@ -292,7 +343,7 @@ - iN = (int)floor(dN+0.5); - iParmSetAddProperTerm( psParms, - saStr[0], saStr[1], saStr[2], saStr[3], -- abs(iN), dKp, dP0*DEGTORAD, "" ); -+ abs(iN), dKp, dP0*DEGTORAD, dScee, dScnb, "" ); - } - if ( iRead <= 0 ) - break; -@@ -311,7 +362,7 @@ - STRING sLine; - int iRead, iN; - STRING saStr[10]; --double dKp, dP0, dN; -+double dKp, dP0, dN, dScee, dScnb; - BOOL bPrintLine; - - memset(saStr, 0, sizeof(saStr)); /* for Purify */ -@@ -335,6 +386,8 @@ - zAmberConvertWildCard( saStr[2] ); - zAmberConvertWildCard( saStr[3] ); - iN = (int)dN; -+ dScee = 0.0; -+ dScnb = 0.0; - - /* - * check everything in case a format or other user error -@@ -362,7 +415,7 @@ - - iParmSetAddImproperTerm( psParms, - saStr[0], saStr[1], saStr[2], saStr[3], -- iN, dKp, dP0*DEGTORAD, "" ); -+ iN, dKp, dP0*DEGTORAD, dScee, dScnb, "" ); - } - if ( iRead > 0 ) - VP0(( "WARNING: incomplete Improper Torsion line:\n%s", sLine )); -diff -urN amber11.orig/AmberTools/src/leap/src/leap/build.c amber11/AmberTools/src/leap/src/leap/build.c ---- amber11.orig/AmberTools/src/leap/src/leap/build.c 2011-03-10 20:12:06.000000000 +0200 -+++ amber11/AmberTools/src/leap/src/leap/build.c 2011-10-25 15:01:28.140288613 +0300 -@@ -42,8 +42,9 @@ - * - */ - -- -- -+ /* Arunima Singh (UGA) */ -+ /* 20110420 */ -+ /* Added SCEE/SCNB */ - - #include "basics.h" - -@@ -1567,7 +1568,7 @@ - LOOP lAtoms, lTemp; - ATOM aAtom, aAtom1, aAtom2, aAtom3, aAtom4; - BOOL bM1, bM2, bM3, bM4, bOneMinimizedAtom; --double dKb, dR0, dKt, dT0, dTkub, dRkub, dKp, dP0; -+double dKb, dR0, dKt, dT0, dTkub, dRkub, dKp, dP0, dScee, dScnb; - STRING sAtom1, sAtom2, sAtom3, sAtom4, sDesc; - PARMSET psTemp; - TORSION tTorsion; -@@ -1757,7 +1758,7 @@ - ParmSetTORSIONTerm( tTorsion, i, - &iIndex, - sAtom1, sAtom2, sAtom3, sAtom4, -- &iN, &dKp, &dP0, sDesc ); -+ &iN, &dKp, &dP0, &dScee, &dScnb, sDesc ); - if ( !bMinimizerAddTorsion( mStrain, - aAtom1, aAtom2, aAtom3, aAtom4, - (double)iN, dKp, dP0 )) { -diff -urN amber11.orig/AmberTools/src/leap/src/leap/model.c amber11/AmberTools/src/leap/src/leap/model.c ---- amber11.orig/AmberTools/src/leap/src/leap/model.c 2011-04-14 15:30:17.000000000 +0300 -+++ amber11/AmberTools/src/leap/src/leap/model.c 2011-10-25 15:01:28.141288612 +0300 -@@ -39,7 +39,9 @@ - * are determined from atom types. - */ - -- -+ /* Arunima Singh (UGA) */ -+ /* 20110420 */ -+ /* Added SCEE/SCNB */ - - - #include "basics.h" -@@ -781,16 +783,6 @@ - maPAtom++; - } - } -- if ( iAtomCoordination(aX) != -- 1 + maPAtom - &(mtTorsions.maaXBonds[0]) ) { -- VP0(( "Error: Atom %s has force field coordination %i\n" -- " but only %i bonded neighbors.\n" -- " The cause may be an incorrect atom type, and\n" -- " the effect may be a crash very soon.\n", -- sContainerFullDescriptor((CONTAINER)aX,s1), -- iAtomCoordination(aX), -- 1 + maPAtom - &(mtTorsions.maaXBonds[0]) )); -- } - for ( i=iAtomCoordination(aX); i<MAXBONDS; i++ ) { - maPAtom->aAtom = NULL; - maPAtom++; -@@ -824,16 +816,6 @@ - maPAtom++; - } - } -- if ( iAtomCoordination(aY) != -- 1 + maPAtom - &(mtTorsions.maaYBonds[0]) ) { -- VP0(( "Error: Atom %s has force field coordination %i\n" -- " but only %i bonded neighbors.\n" -- " The cause may be an incorrect atom type, and\n" -- " the effect may be a crash very soon.\n", -- sContainerFullDescriptor((CONTAINER)aY,s1), -- iAtomCoordination(aY), -- 1 + maPAtom - &(mtTorsions.maaYBonds[0]) )); -- } - for ( i=iAtomCoordination(aY); i<MAXBONDS; i++ ) { - maPAtom->aAtom = NULL; - maPAtom++; -@@ -1205,6 +1187,8 @@ - int iN; - double dK; - double dE; -+ double dSce; /*Arunima Singh*/ -+ double dScn; /*Arunima Singh*/ - } H_PROPERPARMt; - - typedef struct { -@@ -1222,12 +1206,13 @@ - - /* Keep iHybrid2 <= iHybrid3 */ - -+/* Arunima Singh 20110413. Added Scee and Scnb AMBER defaults of 1.2 and 2.0 */ - #define TFORCE 20.0 - static H_PROPERPARMt SppaPropers[] = { --{ HSP3, HSP3, 3, 1.0, 0.0 }, /* Non bond */ --{ HSP2, HSP3, 6, -2.0, 0.0 }, /* Non bond */ --{ HSP2, HSP2, 2, -4.0, 0.0 }, /* Pi bond overlap */ --{ HSP1, HSP1, 1, 0.0, 0.0 } /* Not interesting */ -+{ HSP3, HSP3, 3, 1.0, 0.0, 1.2, 2.0 }, /* Non bond */ -+{ HSP2, HSP3, 6, -2.0, 0.0, 1.2, 2.0 }, /* Non bond */ -+{ HSP2, HSP2, 2, -4.0, 0.0, 1.2, 2.0 }, /* Pi bond overlap */ -+{ HSP1, HSP1, 1, 0.0, 0.0, 1.2, 2.0 } /* Not interesting */ - }; - - #define AFORCE 100.0 -@@ -1290,6 +1275,8 @@ - SppaPropers[i].iN, - SppaPropers[i].dK, - SppaPropers[i].dE, -+ SppaPropers[i].dSce, -+ SppaPropers[i].dScn, - sDesc ); - } - } -diff -urN amber11.orig/AmberTools/src/leap/src/leap/parmSet.c amber11/AmberTools/src/leap/src/leap/parmSet.c ---- amber11.orig/AmberTools/src/leap/src/leap/parmSet.c 2011-03-10 20:12:06.000000000 +0200 -+++ amber11/AmberTools/src/leap/src/leap/parmSet.c 2011-10-25 15:01:28.143288610 +0300 -@@ -54,7 +54,9 @@ - * search routines REQUIRE pre-ordering. - */ - -- -+ /* Arunima Singh (UGA) */ -+ /* 20110420 */ -+ /* Added SCEE/SCNB */ - - #include "basics.h" - -@@ -965,6 +967,8 @@ - /* - * copy into 1 vararray & set iType - */ -+ -+ /*Arunima Singh added scee and scnb into the database */ - vaTorsTypes = vaVarArrayCopy2( psLib->vaTorsions, psLib->vaImpropers ); - tP = PVAI(vaTorsTypes,TORSIONPARMt,0); - for (i=0; i<iVarArrayElementCount(psLib->vaTorsions); i++, tP++) -@@ -980,8 +984,12 @@ - 7, "n", - (char *)&(PVAI(vaTorsTypes,TORSIONPARMt,0)->iN), - iVarArrayElementSize(vaTorsTypes), -- 0, NULL, NULL, 0, -- 0, NULL, NULL, 0, -+ 9, "scee", -+ (char *)&(PVAI(vaTorsTypes,TORSIONPARMt,0)->dScee), -+ iVarArrayElementSize(vaTorsTypes), -+ 10, "scnb", -+ (char *)&(PVAI(vaTorsTypes,TORSIONPARMt,0)->dScnb), -+ iVarArrayElementSize(vaTorsTypes), - 0, NULL, NULL, 0, - 0, NULL, NULL, 0, - 0, NULL, NULL, 0, -@@ -1008,7 +1016,7 @@ - 4, "type4", - (char *)&(PVAI(vaTorsTypes,TORSIONPARMt,0)->sType4), - iVarArrayElementSize(vaTorsTypes), -- 9, "desc", -+ 11, "desc", - (char *)&(PVAI(vaTorsTypes,TORSIONPARMt,0)->sDesc), - iVarArrayElementSize(vaTorsTypes) - ); -@@ -1586,10 +1594,15 @@ - * Add a torsion parameter to the PARMSET. - * Return the index. - */ -+ -+ /* Arunima Singh (UGA) */ -+ /* 20110420 */ -+ /* Added SCEE/SCNB */ -+ - int - iParmSetAddProperTerm( PARMSET psLib, - char *sType1, char *sType2, char *sType3, char *sType4, -- int iN, double dKp, double dP0, char *sDesc ) -+ int iN, double dKp, double dP0, double dScee, double dScnb, char *sDesc ) - { - TORSIONPARMt tpTorsion; - -@@ -1605,6 +1618,8 @@ - tpTorsion.dKp = dKp; - tpTorsion.iN = iN; - tpTorsion.dP0 = dP0; -+ tpTorsion.dScee = dScee; -+ tpTorsion.dScnb = dScnb; - strcpy( tpTorsion.sOrder, "0123" ); - if ( sDesc != NULL ) - strcpy( tpTorsion.sDesc, sDesc ); -@@ -1633,7 +1648,7 @@ - int - iParmSetAddImproperTerm( PARMSET psLib, - char *sType1, char *sType2, char *sType3, char *sType4, -- int iN, double dKp, double dP0, char *sDesc ) -+ int iN, double dKp, double dP0, double dScee, double dScnb, char *sDesc ) - { - TORSIONPARMt tpImproper; - orderStr sOrder; -@@ -2022,7 +2037,7 @@ - void - ParmSetTORSIONTerm( TORSION tTorsion, int iTorsionIndex, int *iPParmSetIndex, - char *cPType1, char *cPType2, char *cPType3, char *cPType4, -- int *iPN, double *dPKp, double *dPP0, char *sDesc ) -+ int *iPN, double *dPKp, double *dPP0, double *dPScee, double *dPScnb, char *sDesc ) - { - TORSION_MATCHt *tmPCur; - -@@ -2035,6 +2050,8 @@ - *iPN = tmPCur->tpTorsion.iN; - *dPKp = tmPCur->tpTorsion.dKp; - *dPP0 = tmPCur->tpTorsion.dP0; -+ *dPScee = tmPCur->tpTorsion.dScee; -+ *dPScnb = tmPCur->tpTorsion.dScnb; - strcpy(sDesc, tmPCur->tpTorsion.sDesc); - } - -@@ -2050,7 +2067,7 @@ - BOOL - bParmSetTORSIONAddProperTerm( TORSION tTorsion, - char *cPType1, char *cPType2, char *cPType3, char *cPType4, -- int iN, double dKp, double dP0, char *sDesc ) -+ int iN, double dKp, double dP0, double dScee, double dScnb, char *sDesc ) - { - TORSIONPARMt tpTorsion; - -@@ -2066,6 +2083,8 @@ - tpTorsion.iN = iN; - tpTorsion.dKp = dKp; - tpTorsion.dP0 = dP0; -+ tpTorsion.dScee = dScee; -+ tpTorsion.dScnb = dScnb; - strcpy(tpTorsion.sDesc, sDesc); - strcpy( tpTorsion.sOrder, "0123" ); - -@@ -2087,7 +2106,7 @@ - BOOL - bParmSetTORSIONAddImproperTerm( TORSION tTorsion, - char *cPType1, char *cPType2, char *cPType3, char *cPType4, -- int iN, double dKp, double dP0, char *sDesc ) -+ int iN, double dKp, double dP0, double dScee, double dScnb, char *sDesc ) - { - TORSIONPARMt tpTorsion; - orderStr sOrder; -@@ -2104,6 +2123,8 @@ - tpTorsion.iN = iN; - tpTorsion.dKp = dKp; - tpTorsion.dP0 = dP0; -+ tpTorsion.dScee = dScee; -+ tpTorsion.dScnb = dScnb; - strcpy(tpTorsion.sDesc, sDesc); - strcpy( tpTorsion.sOrder, sOrder ); - -@@ -2516,7 +2537,7 @@ - void - ParmSetTorsion( PARMSET psLib, int i, - char *sType1, char *sType2, char *sType3, char *sType4, -- int *iPN, double *dPKp, double *dPP0, char *sDesc) -+ int *iPN, double *dPKp, double *dPP0, double *dPScee, double *dPScnb, char *sDesc) - { - TORSIONPARMt *tpPTorsion; - -@@ -2531,6 +2552,8 @@ - strcpy( sType4, WILD_CARD_TYPE ); - *iPN = 0; - *dPKp = 0; -+ *dPScee = 0; -+ *dPScnb = 0; - *dPP0 = 0; - strcpy( sDesc, "??" ); - return; -@@ -2543,7 +2566,10 @@ - *iPN = tpPTorsion->iN; - *dPKp = tpPTorsion->dKp; - *dPP0 = tpPTorsion->dP0; -+ *dPScee = tpPTorsion->dScee; -+ *dPScnb = tpPTorsion->dScnb; - strcpy( sDesc, tpPTorsion->sDesc ); -+ - } - - -@@ -2557,7 +2583,7 @@ - void - ParmSetImproper( PARMSET psLib, int i, - char *sType1, char *sType2, char *sType3, char *sType4, -- int *iPN, double *dPKp, double *dPP0, char *sDesc) -+ int *iPN, double *dPKp, double *dPP0, double *dPScee, double *dPScnb, char *sDesc) - { - TORSIONPARMt *tpPImproper; - -@@ -2573,6 +2599,8 @@ - *iPN = 0; - *dPKp = 0; - *dPP0 = 0; -+ *dPScee = 0; -+ *dPScnb = 0; - strcpy( sDesc, "??" ); - return; - } -@@ -2584,6 +2612,8 @@ - *iPN = tpPImproper->iN; - *dPKp = tpPImproper->dKp; - *dPP0 = tpPImproper->dP0; -+ *dPScee = tpPImproper->dScee; -+ *dPScnb = tpPImproper->dScnb; - strcpy( sDesc, tpPImproper->sDesc ); - } - -@@ -2740,7 +2770,7 @@ - void - ParmSetUpdateTorsion( PARMSET psLib, int i, - char *sType1, char *sType2, char *sType3, char *sType4, -- int *iPN, double *dPKp, double *dPP0, char *sDescription) -+ int *iPN, double *dPKp, double *dPP0, double *dPScee, double *dPScnb, char *sDescription) - { - TORSIONPARMt *tpPTorsion; - orderStr sOrder; -@@ -2754,6 +2784,8 @@ - if ( iPN != (int*)NULL ) tpPTorsion->iN = *iPN; - if ( dPKp != (double*)NULL) tpPTorsion->dKp = *dPKp; - if ( dPP0 != (double*)NULL) tpPTorsion->dP0 = *dPP0; -+ if ( dPScee != (double*)NULL) tpPTorsion->dScee = *dPScee; -+ if ( dPScnb != (double*)NULL) tpPTorsion->dScnb = *dPScnb; - if (sDescription != (char*)NULL ) strcpy(tpPTorsion->sDesc, sDescription); - - strcpy( sOrder, "0123" ); -@@ -2777,7 +2809,7 @@ - void - ParmSetUpdateImproper( PARMSET psLib, int i, - char *sType1, char *sType2, char *sType3, char *sType4, -- int *iPN, double *dPKp, double *dPP0, char *sDescription) -+ int *iPN, double *dPKp, double *dPP0, double *dPScee, double *dPScnb, char *sDescription) - { - TORSIONPARMt *tpPTorsion; - orderStr sOrder; -@@ -2790,6 +2822,8 @@ - if ( iPN != (int*)NULL ) tpPTorsion->iN = *iPN; - if ( dPKp != (double*)NULL) tpPTorsion->dKp = *dPKp; - if ( dPP0 != (double*)NULL) tpPTorsion->dP0 = *dPP0; -+ if ( dPScee != (double*)NULL) tpPTorsion->dScee = *dPScee; -+ if ( dPScnb != (double*)NULL) tpPTorsion->dScnb = *dPScnb; - if (sDescription != (char*)NULL ) strcpy(tpPTorsion->sDesc, sDescription); - - strcpy( sOrder, "0123" ); -@@ -2979,6 +3013,7 @@ - tpPCur->sType1, tpPCur->sType2, - tpPCur->sType3, tpPCur->sType4, - tpPCur->iN, tpPCur->dKp, tpPCur->dP0/DEGTORAD, -+ tpPCur->dScee, tpPCur->dScnb, - tpPCur->sOrder, tpPCur->sDesc ); - } - } -@@ -2996,6 +3031,7 @@ - tpPCur->sType1, tpPCur->sType2, - tpPCur->sType3, tpPCur->sType4, - tpPCur->iN, tpPCur->dKp, tpPCur->dP0/DEGTORAD, -+ tpPCur->dScee, tpPCur->dScnb, - tpPCur->sDesc ); - } - } -diff -urN amber11.orig/AmberTools/src/leap/src/leap/parmSet.h amber11/AmberTools/src/leap/src/leap/parmSet.h ---- amber11.orig/AmberTools/src/leap/src/leap/parmSet.h 2011-03-10 20:12:06.000000000 +0200 -+++ amber11/AmberTools/src/leap/src/leap/parmSet.h 2011-10-25 15:01:28.144288609 +0300 -@@ -42,6 +42,9 @@ - * - * - */ -+ /* Arunima Singh (UGA) */ -+ /* 20110420 */ -+ /* Added SCEE/SCNB */ - - #ifndef PARMSET_H - #define PARMSET_H -@@ -96,6 +99,8 @@ - int iN; - double dKp; - double dP0; -+ double dScee; /* for propers */ /* Arunima Singh */ -+ double dScnb; /* for propers */ /* Arunima Singh */ - orderStr sOrder; /* for impropers */ - DESCRIPTION sDesc; - } TORSIONPARMt; -@@ -158,10 +163,10 @@ - double dKt, double dT0, double dTkub, double dRkub, char *sDesc); - extern int iParmSetAddProperTerm(PARMSET psLib, - char *sType1, char *sType2, char *sType3, char *sType4, -- int iN, double dKp, double dP0, char *sDesc); -+ int iN, double dKp, double dP0, double dScee, double dScnb, char *sDesc); /* for proper dihedrals */ /* Arunima Singh */ - extern int iParmSetAddImproperTerm(PARMSET psLib, - char *sType1, char *sType2, char *sType3, char *sType4, -- int iN, double dKp, double dP0, char *sDesc); -+ int iN, double dKp, double dP0, double dScee, double dScnb, char *sDesc); /* Arunima Singh : added for proper dihedrals, but has to be included in impropers to maintain common data structure usage */ - extern int iParmSetAddHBond(PARMSET psLib, char *sType1, char *sType2, - double dA, double dB, char *sDesc); - -@@ -216,15 +221,15 @@ - extern void ParmSetTORSIONTerm(TORSION tTorsion, int iTorsionIndex, - int *iPParmSetIndex, - char *cPTyp1, char *cPTyp2, char *cPTyp3, char *cPTyp4, -- int *iPN, double *dPKp, double *dPP0, char *sDesc ); -+ int *iPN, double *dPKp, double *dPP0, double *dPScee, double *dPScnb, char *sDesc ); - extern BOOL bParmSetTORSIONAddProperTerm(TORSION tTorsion, - char *cPType1, char *cPType2, - char *cPType3, char *cPType4, -- int iN, double dKp, double dP0, char *sDesc); -+ int iN, double dKp, double dP0, double dScee, double dScnb, char *sDesc); - extern BOOL bParmSetTORSIONAddImproperTerm(TORSION tTorsion, - char *cPType1, char *cPType2, - char *cPType3, char *cPType4, -- int iN, double dKp, double dP0, char *sDesc); -+ int iN, double dKp, double dP0, double dScee, double dScnb, char *sDesc); - extern void ParmSetTORSIONOrderAtoms(); - extern void ParmSetImproperOrderAtoms( TORSION tTorsion, int iTorsionIndex, - char *cPaTypes[4], int iaIndexes[4] ); -@@ -268,10 +273,10 @@ - char *sDesc); - extern void ParmSetTorsion(PARMSET psLib, int i, - char *sType1, char *sType2, char *sType3, char *sType4, -- int *iPN, double *dPKp, double *dPP0, char *sDesc); -+ int *iPN, double *dPKp, double *dPP0, double *dPScee, double *dPScnb, char *sDesc); - extern void ParmSetImproper(PARMSET psLib, int i, - char *sType1, char *sType2, char *sType3, char *sType4, -- int *iPN, double *dPKp, double *dPP0, char *sDesc); -+ int *iPN, double *dPKp, double *dPP0, double *dPScee, double *dPScnb, char *sDesc); - extern void ParmSetHBond(PARMSET psLib, int i, char *sType1, char *sType2, - double *dPA, double *dPB, char *sDesc); - -@@ -296,11 +301,11 @@ - double *dPKt, double *dPT0, char *sDescription); - extern void ParmSetUpdateTorsion(PARMSET psLib, int i, - char *sType1, char *sType2, char *sType3, char *sType4, -- int *iPN, double *dPKp, double *dPP0, -+ int *iPN, double *dPKp, double *dPP0, double *dPScee, double *dPScnb, - char *sDescription); - extern void ParmSetUpdateImproper(PARMSET psLib, int i, - char *sType1, char *sType2, char *sType3, char *sType4, -- int *iPN, double *dPKp, double *dPP0, -+ int *iPN, double *dPKp, double *dPP0, double *dPScee, double *dPScnb, - char *sDescription); - extern void ParmSetUpdateHBond(PARMSET psLib, int i, - char *sType1, char *sType2, -diff -urN amber11.orig/AmberTools/src/leap/src/leap/unitio.c amber11/AmberTools/src/leap/src/leap/unitio.c ---- amber11.orig/AmberTools/src/leap/src/leap/unitio.c 2011-03-10 20:12:06.000000000 +0200 -+++ amber11/AmberTools/src/leap/src/leap/unitio.c 2011-10-25 15:01:28.192288568 +0300 -@@ -70,6 +70,10 @@ - * zbUnitIOIndexBondParameters and zUnitDoAtoms are now "extern functions" - */ - -+ /* Arunima Singh (UGA) */ -+ /* 20110420 */ -+ /* Added SCEE/SCNB */ -+ - #include <time.h> - - #include "basics.h" -@@ -1585,7 +1589,9 @@ - tC.dKp = tpA->dKp; - tC.iN = tpA->iN; - tC.dP0 = tpA->dP0; -- VarArrayAdd(vaB, (GENP) & tC); -+ tC.dScee = tpA->dScee; -+ tC.dScnb = tpA->dScnb; -+ VarArrayAdd(vaB, (GENP) & tC); - iIndex++; - iOldIndex = iParmOffset + iA + 1; - -@@ -1615,6 +1621,10 @@ - continue; - if (tpB->dP0 != tpA->dP0) - continue; -+ if (tpB->dScee != tpA->dScee) -+ continue; -+ if (tpB->dScnb != tpA->dScnb) -+ continue; - - /* - * B is a duplicate of A -@@ -1698,12 +1708,12 @@ - int iTerm, iPertTerm; - BOOL bDone, bUse, bUsePert, bCopy, bCopyPert, bEnd, bPertEnd; - int iN, iPertIndex, iPertN, iLastN, iLastPertN; -- double dKp, dP0, dPertKp, dPertP0; -+ double dKp, dP0, dScee, dScnb, dPertKp, dPertP0, dPertScee, dPertScnb; - BOOL bCalc14, bCalcPert14; - #ifdef DEBUG2 - STRING s1, s2, s3, s4; - int iTParm, iTmp; -- double dTK, dTP; -+ double dTK, dTP, dTScee, dTScnb; - STRING sT1, sT2, sT3, sT4, sTemp; - #endif - STRING sDesc; -@@ -2016,9 +2026,9 @@ - ParmSetTORSIONTerm(tTorsion, i, - &iTParm, - sT1, sT2, sT3, sT4, -- &iTmp, &dTK, &dTP, sTemp); -- MESSAGE(("Term %3d %d %s-%s-%s-%s %d %lf %lf\n", -- i, iTParm, sT1, sT2, sT3, sT4, iTmp, dTK, dTP)); -+ &iTmp, &dTK, &dTP, &dTScee, &dTScnb, sTemp); -+ MESSAGE(("Term %3d %d %s-%s-%s-%s %d %lf %lf %lf %lf\n", -+ i, iTParm, sT1, sT2, sT3, sT4, iTmp, dTK, dTP, dTScee, dTScnb)); - } - if (bPerturbTorsion) { - MESSAGE(("Pert%s %s-%s-%s-%s found %d terms\n", -@@ -2029,9 +2039,9 @@ - ParmSetTORSIONTerm(tPertTorsion, i, - &iTParm, - sT1, sT2, sT3, sT4, -- &iTmp, &dTK, &dTP, sTemp); -- MESSAGE(("Term %3d %d %s-%s-%s-%s %d %lf %lf\n", -- i, iTParm, sT1, sT2, sT3, sT4, iTmp, dTK, dTP)); -+ &iTmp, &dTK, &dTP, &dTScee, &dTScnb, sTemp); -+ MESSAGE(("Term %3d %d %s-%s-%s-%s %d %lf %lf %lf %lf\n", -+ i, iTParm, sT1, sT2, sT3, sT4, iTmp, dTK, dTP dTScee, dTScnb)); - } - } - #endif -@@ -2061,7 +2071,7 @@ - ParmSetTORSIONTerm(tTorsion, iTerm, - &iIndex, - sAtom1, sAtom2, sAtom3, sAtom4, -- &iN, &dKp, &dP0, sDesc); -+ &iN, &dKp, &dP0, &dScee, &dScnb, sDesc); - MESSAGE(("First non-perturbed multiplicity: %d\n", iN)); - } else { - if (bProper) { -@@ -2082,7 +2092,7 @@ - ParmSetTORSIONTerm(tPertTorsion, iPertTerm, - &iPertIndex, - sPert1, sPert2, sPert3, sPert4, -- &iPertN, &dPertKp, &dPertP0, sDesc); -+ &iPertN, &dPertKp, &dPertP0, &dPertScee, &dPertScnb, sDesc); - MESSAGE(("First perturbed multiplicity: %d\n", iPertN)); - } else - bPertEnd = TRUE; -@@ -2175,14 +2185,14 @@ - if (bProper) - iIndex = iParmSetAddProperTerm(uUnit->psParameters, - sAtom1, sAtom2, sAtom3, -- sAtom4, iN, dKp, dP0, -- sDesc); -+ sAtom4, iN, dKp, dP0, -+ dScee, dScnb, sDesc); - /* else if ( !GDefaults.iCharmm ) ???---should I do this???? */ - else - iIndex = iParmSetAddImproperTerm(uUnit->psParameters, - sAtom1, sAtom2, - sAtom3, sAtom4, iN, -- dKp, dP0, sDesc); -+ dKp, dP0, dScee, dScnb, sDesc); - } - if (bCopyPert) { - if (bProper) { -@@ -2190,13 +2200,13 @@ - sPert1, sPert2, - sPert3, sPert4, - iPertN, dPertKp, -- dPertP0, sDesc); -+ dPertP0, dScee, dScnb, sDesc); - } else { - iPertIndex = - iParmSetAddImproperTerm(uUnit->psParameters, - sPert1, sPert2, sPert3, - sPert4, iPertN, dPertKp, -- dPertP0, sDesc); -+ dPertP0, dScee, dScnb, sDesc); - } - MESSAGE(("iPertIndex = %d\n", iPertIndex)); - } -@@ -2215,7 +2225,7 @@ - ParmSetTORSIONTerm(tTorsion, iTerm, - &iIndex, - sAtom1, sAtom2, sAtom3, sAtom4, -- &iN, &dKp, &dP0, sDesc); -+ &iN, &dKp, &dP0, &dScee, &dScnb, sDesc); - } - MESSAGE( - ("Advancing non-perturbed multiplicity to %d\n", -@@ -2231,7 +2241,7 @@ - ParmSetTORSIONTerm(tPertTorsion, iPertTerm, - &iPertIndex, - sPert1, sPert2, sPert3, sPert4, -- &iPertN, &dPertKp, &dPertP0, sDesc); -+ &iPertN, &dPertKp, &dPertP0, &dPertScee, &dPertScnb, sDesc); - } - MESSAGE( - ("Advancing perturbed multiplicity to %d\n", -@@ -3988,7 +3998,7 @@ - SAVEATOMt *saPAtom; - SAVETORSIONt *stPTorsion; - SAVERESTRAINTt *srPRestraint; -- double dMass, dPolar, dR, dKb, dR0, dKt, dT0, dTkub, dRkub, dKp, dP0, -+ double dMass, dPolar, dR, dKb, dR0, dKt, dT0, dTkub, dRkub, dKp, dP0, dScee, dScnb, - dC, dD, dTemp; - STRING sAtom1, sAtom2, sAtom3, sAtom4, sType1, sType2; - int iN, iAtoms, iMaxAtoms, iTemp, iAtom, iCalc14, iProper; -@@ -4585,16 +4595,16 @@ - iParmSetTotalImproperParms(uUnit->psParameters))); - for (i = 0; i < iParmSetTotalTorsionParms(uUnit->psParameters); i++) { - ParmSetTorsion(uUnit->psParameters, i, sAtom1, sAtom2, -- sAtom3, sAtom4, &iN, &dKp, &dP0, sDesc); -- MESSAGE(("Torsion %d %s-%s-%s-%s %d %lf %lf\n", -- i, sAtom1, sAtom2, sAtom3, sAtom4, iN, dKp, dP0)); -+ sAtom3, sAtom4, &iN, &dKp, &dP0, &dScee, &dScnb, sDesc); -+ MESSAGE(("Torsion %d %s-%s-%s-%s %d %lf %lf %lf %lf\n", -+ i, sAtom1, sAtom2, sAtom3, sAtom4, iN, dKp, dP0, dScee, dScnb)); - FortranWriteDouble(dKp); - } - for (i = 0; i < iParmSetTotalImproperParms(uUnit->psParameters); i++) { - ParmSetImproper(uUnit->psParameters, i, sAtom1, sAtom2, -- sAtom3, sAtom4, &iN, &dKp, &dP0, sDesc); -- MESSAGE(("Improper %d %s-%s-%s-%s %d %lf %lf\n", -- i, sAtom1, sAtom2, sAtom3, sAtom4, iN, dKp, dP0)); -+ sAtom3, sAtom4, &iN, &dKp, &dP0, &dScee, &dScnb, sDesc); -+ MESSAGE(("Improper %d %s-%s-%s-%s %d %lf %lf %lf %lf\n", -+ i, sAtom1, sAtom2, sAtom3, sAtom4, iN, dKp, dP0, dScee, dScnb)); - FortranWriteDouble(dKp); - } - /* Write the torsion RESTRAINT constants AND set the index */ -@@ -4612,13 +4622,13 @@ - FortranFormat(5, DBLFORMAT); - for (i = 0; i < iParmSetTotalTorsionParms(uUnit->psParameters); i++) { - ParmSetTorsion(uUnit->psParameters, i, sAtom1, sAtom2, -- sAtom3, sAtom4, &iN, &dKp, &dP0, sDesc); -+ sAtom3, sAtom4, &iN, &dKp, &dP0, &dScee, &dScnb, sDesc); - dTemp = iN; - FortranWriteDouble(dTemp); - } - for (i = 0; i < iParmSetTotalImproperParms(uUnit->psParameters); i++) { - ParmSetImproper(uUnit->psParameters, i, sAtom1, sAtom2, -- sAtom3, sAtom4, &iN, &dKp, &dP0, sDesc); -+ sAtom3, sAtom4, &iN, &dKp, &dP0, &dScee, &dScnb, sDesc); - dTemp = iN; - FortranWriteDouble(dTemp); - } -@@ -4637,12 +4647,12 @@ - FortranFormat(5, DBLFORMAT); - for (i = 0; i < iParmSetTotalTorsionParms(uUnit->psParameters); i++) { - ParmSetTorsion(uUnit->psParameters, i, sAtom1, sAtom2, -- sAtom3, sAtom4, &iN, &dKp, &dP0, sDesc); -+ sAtom3, sAtom4, &iN, &dKp, &dP0, &dScee, &dScnb, sDesc); - FortranWriteDouble(dP0); - } - for (i = 0; i < iParmSetTotalImproperParms(uUnit->psParameters); i++) { - ParmSetImproper(uUnit->psParameters, i, sAtom1, sAtom2, -- sAtom3, sAtom4, &iN, &dKp, &dP0, sDesc); -+ sAtom3, sAtom4, &iN, &dKp, &dP0, &dScee, &dScnb, sDesc); - FortranWriteDouble(dP0); - } - /* Write the torsion RESTRAINT constants AND set the index */ -@@ -4650,6 +4660,60 @@ - RESTRAINTLOOP(RESTRAINTTORSION, dN, i + 1); - FortranEndLine(); - -+ /* Arunima Singh (UGA) */ -+ /* 20110420 */ -+ /* Added Printing SCEE/SCNB */ -+ -+ -+ /* -17.5A- SCEE for torsions */ -+ FortranDebug("-17.5A-"); -+ -+ MESSAGE(("Writing SCEE scale factor for torsion interaction\n")); -+ FortranFormat(1, "%-80s"); -+ FortranWriteString("%FLAG SCEE_SCALE_FACTOR"); -+ FortranWriteString("%FORMAT(5E16.8)"); -+ FortranFormat(5, DBLFORMAT); -+ for (i = 0; i < iParmSetTotalTorsionParms(uUnit->psParameters); i++) { -+ ParmSetTorsion(uUnit->psParameters, i, sAtom1, sAtom2, -+ sAtom3, sAtom4, &iN, &dKp, &dP0, &dScee, &dScnb, sDesc); -+ FortranWriteDouble(dScee); -+ } -+ for (i = 0; i < iParmSetTotalImproperParms(uUnit->psParameters); i++) { -+ ParmSetImproper(uUnit->psParameters, i, sAtom1, sAtom2, -+ sAtom3, sAtom4, &iN, &dKp, &dP0, &dScee, &dScnb, sDesc); -+ FortranWriteDouble(dScee); -+ } -+ /* Write the torsion RESTRAINT constants AND set the index */ -+ /* for where the interaction can find its constants */ -+ RESTRAINTLOOP(RESTRAINTTORSION, dX0, i + 1); -+ FortranEndLine(); -+ -+ /* -17.5B- SCNB for torsions */ -+ FortranDebug("-17.5B-"); -+ -+ MESSAGE(("Writing SCNB scale factor for torsion interaction\n")); -+ FortranFormat(1, "%-80s"); -+ FortranWriteString("%FLAG SCNB_SCALE_FACTOR"); -+ FortranWriteString("%FORMAT(5E16.8)"); -+ FortranFormat(5, DBLFORMAT); -+ for (i = 0; i < iParmSetTotalTorsionParms(uUnit->psParameters); i++) { -+ ParmSetTorsion(uUnit->psParameters, i, sAtom1, sAtom2, -+ sAtom3, sAtom4, &iN, &dKp, &dP0, &dScee, &dScnb, sDesc); -+ FortranWriteDouble(dScnb); -+ } -+ for (i = 0; i < iParmSetTotalImproperParms(uUnit->psParameters); i++) { -+ ParmSetImproper(uUnit->psParameters, i, sAtom1, sAtom2, -+ sAtom3, sAtom4, &iN, &dKp, &dP0, &dScee, &dScnb, sDesc); -+ FortranWriteDouble(dScnb); -+ } -+ /* Write the torsion RESTRAINT constants AND set the index */ -+ /* for where the interaction can find its constants */ -+ RESTRAINTLOOP(RESTRAINTTORSION, dX0, i + 1); -+ FortranEndLine(); -+ -+ /* Arunima Singh */ -+ /* End of adding SCEE/SCNB */ -+ - /* -18- Not used, reserved for future use, uses NATYP */ - /* Corresponds to the AMBER SOLTY array */ - FortranDebug("-18-"); -@@ -6009,7 +6073,7 @@ - SAVEATOMt *saPAtom; - SAVETORSIONt *stPTorsion; - SAVERESTRAINTt *srPRestraint; --double dMass, dPolar, dR, dKb, dR0, dKt, dT0, dTkub, dRkub, dKp, dP0, dC, dD, dTemp; -+double dMass, dPolar, dR, dKb, dR0, dKt, dT0, dTkub, dRkub, dKp, dP0, dScee, dScnb, dC, dD, dTemp; - STRING sAtom1, sAtom2, sAtom3, sAtom4, sType1, sType2; - int iN, iAtoms, iMaxAtoms, iTemp, iAtom, iCalc14, iProper; - int iElement, iHybridization, iStart, iFirstSolvent; -@@ -6547,19 +6611,19 @@ - for ( i=0; i<iParmSetTotalTorsionParms(uUnit->psParameters); i++ ) { - ParmSetTorsion( uUnit->psParameters, i, sAtom1, sAtom2, - sAtom3, sAtom4, -- &iN, &dKp, &dP0, sDesc ); -- MESSAGE(( "Torsion %d %s-%s-%s-%s %d %lf %lf\n", -+ &iN, &dKp, &dP0, &dScee, &dScnb, sDesc ); -+ MESSAGE(( "Torsion %d %s-%s-%s-%s %d %lf %lf %lf %lf\n", - i, sAtom1, sAtom2, sAtom3, sAtom4, -- iN, dKp, dP0 )); -+ iN, dKp, dP0, dScee, dScnb )); - FortranWriteDouble( dKp ); - } - for ( i=0; i<iParmSetTotalImproperParms(uUnit->psParameters); i++ ) { - ParmSetImproper( uUnit->psParameters, i, sAtom1, sAtom2, - sAtom3, sAtom4, -- &iN, &dKp, &dP0, sDesc ); -- MESSAGE(( "Improper %d %s-%s-%s-%s %d %lf %lf\n", -+ &iN, &dKp, &dP0, &dScee, &dScnb, sDesc ); -+ MESSAGE(( "Improper %d %s-%s-%s-%s %d %lf %lf %lf %lf\n", - i, sAtom1, sAtom2, sAtom3, sAtom4, -- iN, dKp, dP0 )); -+ iN, dKp, dP0, dScee, dScnb )); - FortranWriteDouble( dKp ); - } - /* Write the torsion RESTRAINT constants AND set the index */ -@@ -6575,14 +6639,14 @@ - for ( i=0; i<iParmSetTotalTorsionParms(uUnit->psParameters); i++ ) { - ParmSetTorsion( uUnit->psParameters, i, sAtom1, sAtom2, - sAtom3, sAtom4, -- &iN, &dKp, &dP0, sDesc ); -+ &iN, &dKp, &dP0, &dScee, &dScnb, sDesc ); - dTemp = iN; - FortranWriteDouble( dTemp ); - } - for ( i=0; i<iParmSetTotalImproperParms(uUnit->psParameters); i++ ) { - ParmSetImproper( uUnit->psParameters, i, sAtom1, sAtom2, - sAtom3, sAtom4, -- &iN, &dKp, &dP0, sDesc ); -+ &iN, &dKp, &dP0, &dScee, &dScnb, sDesc ); - dTemp = iN; - FortranWriteDouble( dTemp ); - } -@@ -6599,13 +6663,13 @@ - for ( i=0; i<iParmSetTotalTorsionParms(uUnit->psParameters); i++ ) { - ParmSetTorsion( uUnit->psParameters, i, sAtom1, sAtom2, - sAtom3, sAtom4, -- &iN, &dKp, &dP0, sDesc ); -+ &iN, &dKp, &dP0, &dScee, &dScnb, sDesc ); - FortranWriteDouble( dP0 ); - } - for ( i=0; i<iParmSetTotalImproperParms(uUnit->psParameters); i++ ) { - ParmSetImproper( uUnit->psParameters, i, sAtom1, sAtom2, - sAtom3, sAtom4, -- &iN, &dKp, &dP0, sDesc ); -+ &iN, &dKp, &dP0, &dScee, &dScnb, sDesc ); - FortranWriteDouble( dP0 ); - } - /* Write the torsion RESTRAINT constants AND set the index */ -diff -urN amber11.orig/AmberTools/src/leap/src/leap/xaImproperParmTable.c amber11/AmberTools/src/leap/src/leap/xaImproperParmTable.c ---- amber11.orig/AmberTools/src/leap/src/leap/xaImproperParmTable.c 2011-03-10 20:12:06.000000000 +0200 -+++ amber11/AmberTools/src/leap/src/leap/xaImproperParmTable.c 2011-10-25 15:01:28.193288566 +0300 -@@ -37,7 +37,9 @@ - * Handle editing of parameters in a table format. - */ - -- -+ /* Arunima Singh (UGA) */ -+ /* 20110420 */ -+ /* Added SCEE/SCNB */ - - #include <X11/IntrinsicP.h> - #include <X11/StringDefs.h> -@@ -59,7 +61,10 @@ - #define NC 4 - #define KPC 5 - #define P0C 6 --#define DESCC 7 -+#define SCEE 7 /*Arunima Singh*/ -+#define SCNB 8 /*Arunima Singh*/ -+#define DESCC 9 /*Arunima Singh: Changed value from 7 to 9 to include scee and scnb*/ -+ - - #define MAXTYPELEN 5 - #define DESCLEN 32 -@@ -129,13 +134,15 @@ - int iN; - double dKp; - double dP0; -+double dScee; -+double dScnb; - char sDesc[DESCLEN]; - - - iptPCur = (IMPROPERPARMTABLEt*)PXATClientPointer(tTable); - - ParmSetImproper( iptPCur->psParmSet, iRow, -- sType1, sType2, sType3, sType4, &iN, &dKp, &dP0, sDesc ); -+ sType1, sType2, sType3, sType4, &iN, &dKp, &dP0, &dScee, &dScnb, sDesc ); - - switch ( iCol ) { - case TYPE1C: -@@ -171,6 +178,14 @@ - } - return(SsBuffer); - break; -+ case SCEE: -+ sprintf( SsBuffer, DBLFMT, dScee ); -+ return(SsBuffer); -+ break; -+ case SCNB: -+ sprintf( SsBuffer, DBLFMT, dScnb ); -+ return(SsBuffer); -+ break; - case DESCC: - strcpy( SsBuffer, sDesc ); - return( SsBuffer ); -@@ -259,6 +274,16 @@ - if ( !strcmp( cPData, "0" )) break; - return("P0 field must be '0' or 'Pi'."); - break; -+ case SCEE: -+ if ( !bStringToDouble( cPData, &dValue ) ) { -+ return("Invalid character in Scee field."); -+ } -+ break; -+ case SCNB: -+ if ( !bStringToDouble( cPData, &dValue ) ) { -+ return("Invalid character in Scnb field."); -+ } -+ break; - case DESCC: - if ( strlen(cPData)>DESCLEN-1 ) { - sprintf( SsError, "%s %d characters.", -@@ -384,11 +409,33 @@ - return("P0 field must be '0' or 'Pi'."); - } - -+ /* -+ * Scee -+ */ -+ *iPErrCol = 7; -+ cPData = col[7]; -+ if ( !bStringToDouble( cPData, &dValue ) ) { -+ return("Invalid character in Scee field."); -+ } else if ( dValue < 0.0 ) { -+ return("Scee cannot be negative."); -+ } -+ -+ /* -+ * Scnb -+ */ -+ *iPErrCol = 8; -+ cPData = col[8]; -+ if ( !bStringToInt( cPData, &iValue ) ) { -+ return("Invalid character in Scnb field."); -+ } else if ( dValue < 0.0 ) { -+ return("Scnb cannot be negative."); -+ } -+ - /* - * Desc - */ -- *iPErrCol = 7; -- cPData = col[7]; -+ *iPErrCol = 9; -+ cPData = col[9]; - if ( strlen(cPData) > DESCLEN-1 ) { - sprintf( SsError, "%s %d characters.", - "Parameter Description cannot be longer than", -@@ -413,7 +460,8 @@ - int iN; - double dKp; - double dP0; -- -+double dScee; -+double dScnb; - - iptPCur = (IMPROPERPARMTABLEt*) PXATClientPointer(tTable); - psParmSet = iptPCur->psParmSet; -@@ -444,7 +492,7 @@ - col[0], col[1], col[2], col[3] )); - if ( iRow != iParmSetAddImproperTerm( psParmSet, - col[0], col[1], col[2], col[3], -- iN, dKp, dP0, col[7] ) ) -+ iN, dKp, dP0, dScee, dScnb, col[9] ) ) - DFATAL(( "programming err 2 in zXAIPTAcceptRow\n" )); - } else { - /* -@@ -452,7 +500,7 @@ - */ - ParmSetUpdateImproper( psParmSet, iRow, - col[0], col[1], col[2], col[3], -- &iN, &dKp, &dP0, col[7] ); -+ &iN, &dKp, &dP0, &dScee, &dScnb, col[9] ); - } - } - -diff -urN amber11.orig/AmberTools/src/leap/src/leap/xaTorsionParmTable.c amber11/AmberTools/src/leap/src/leap/xaTorsionParmTable.c ---- amber11.orig/AmberTools/src/leap/src/leap/xaTorsionParmTable.c 2011-03-10 20:12:06.000000000 +0200 -+++ amber11/AmberTools/src/leap/src/leap/xaTorsionParmTable.c 2011-10-25 15:01:28.194288563 +0300 -@@ -37,6 +37,9 @@ - * Handle editing of parameters in a table format. - */ - -+ /* Arunima Singh (UGA) */ -+ /* 20110420 */ -+ /* Added SCEE/SCNB */ - - #include <X11/IntrinsicP.h> - #include <X11/StringDefs.h> -@@ -58,7 +61,9 @@ - #define NC 4 - #define KPC 5 - #define P0C 6 --#define DESCC 7 -+#define SCEE 7 /*Arunima Singh*/ -+#define SCNB 8 /*Arunima Singh*/ -+#define DESCC 9 /*Arunima Singh: Changed value from 7 to 9 to include scee and scnb*/ - - #define MAXTYPELEN 5 - #define DESCLEN 32 -@@ -112,7 +117,7 @@ - * zcPXATPTGetElement - * - * Get the values for the elements of the TABLE from the -- * particular Torsion Parmeter Entry. -+ * particular Torsion Parameter Entry. - */ - static char * - zcPXATPTGetElement( TABLE tTable, int iCol, int iRow ) -@@ -126,13 +131,15 @@ - int iN; - double dKp; - double dP0; -+double dScee; -+double dScnb; - char sDesc[DESCLEN]; - - - tptPCur = (TORSIONPARMTABLEt*)PXATClientPointer(tTable); - - ParmSetTorsion( tptPCur->psParmSet, iRow, -- sType1, sType2, sType3, sType4, &iN, &dKp, &dP0, sDesc ); -+ sType1, sType2, sType3, sType4, &iN, &dKp, &dP0, &dScee, &dScnb, sDesc ); - - switch ( iCol ) { - case TYPE1C: -@@ -168,6 +175,14 @@ - } - return(SsBuffer); - break; -+ case SCEE: -+ sprintf( SsBuffer, DBLFMT, dScee ); -+ return(SsBuffer); -+ break; -+ case SCNB: -+ sprintf( SsBuffer, DBLFMT, dScnb ); -+ return(SsBuffer); -+ break; - case DESCC: - strcpy( SsBuffer, sDesc ); - return( SsBuffer ); -@@ -256,6 +271,16 @@ - if ( !strcmp( cPData, "0" )) break; - return("P0 field must be '0' or 'Pi'."); - break; -+ case SCEE: -+ if ( !bStringToDouble( cPData, &dValue ) ) { -+ return("Invalid character in Scee field."); -+ } -+ break; -+ case SCNB: -+ if ( !bStringToDouble( cPData, &dValue ) ) { -+ return("Invalid character in Scnb field."); -+ } -+ break; - case DESCC: - if ( strlen(cPData)>DESCLEN-1 ) { - sprintf( SsError, "%s %d characters.", -@@ -379,11 +404,33 @@ - return("P0 field must be '0' or 'Pi'."); - } - -+ /* -+ * Scee -+ */ -+ *iPErrCol = 7; -+ cPData = col[7]; -+ if ( !bStringToDouble( cPData, &dValue ) ) { -+ return("Invalid character in Scee field."); -+ } else if ( dValue < 0.0 ) { -+ return("Scee cannot be negative."); -+ } -+ -+ /* -+ * Scnb -+ */ -+ *iPErrCol = 8; -+ cPData = col[8]; -+ if ( !bStringToInt( cPData, &iValue ) ) { -+ return("Invalid character in Scnb field."); -+ } else if ( dValue < 0.0 ) { -+ return("Scnb cannot be negative."); -+ } -+ - /* - * Desc - */ -- *iPErrCol = 7; -- cPData = col[7]; -+ *iPErrCol = 9; -+ cPData = col[9]; - if ( strlen(cPData) > DESCLEN-1 ) { - sprintf( SsError, "%s %d characters.", - "Parameter Description cannot be longer than", -@@ -408,6 +455,8 @@ - int iN; - double dKp; - double dP0; -+double dScee; -+double dScnb; - - tptPCur = (TORSIONPARMTABLEt*) PXATClientPointer(tTable); - psParmSet = tptPCur->psParmSet; -@@ -438,15 +487,15 @@ - col[0], col[1], col[2], col[3] )); - if ( iRow != iParmSetAddProperTerm( psParmSet, - col[0], col[1], col[2], col[3], -- iN, dKp, dP0, col[7] ) ) -- DFATAL(( "programming err 2 in zXATPTAcceptRow\n" )); -+ iN, dKp, dP0, dScee, dScnb, col[9] ) ) /*Arunima singh*/ -+ DFATAL(( "programming err 2 in zXATPTAcceptRow\n" )); - } else { - /* - * update row in place - */ - ParmSetUpdateTorsion( psParmSet, iRow, - col[0], col[1], col[2], col[3], -- &iN, &dKp, &dP0, col[7] ); -+ &iN, &dKp, &dP0, &dScee, &dScnb, col[9] ); /*Arunima singh*/ - } - } - -diff -urN amber11.orig/AmberTools/src/mmpbsa_py/MMPBSA_mods/alamdcrd.py amber11/AmberTools/src/mmpbsa_py/MMPBSA_mods/alamdcrd.py ---- amber11.orig/AmberTools/src/mmpbsa_py/MMPBSA_mods/alamdcrd.py 2011-04-14 15:30:17.000000000 +0300 -+++ amber11/AmberTools/src/mmpbsa_py/MMPBSA_mods/alamdcrd.py 2011-10-25 15:01:28.132288620 +0300 -@@ -371,7 +371,7 @@ - coords_received = _scaledistance(coords_tosend, chdist) - - for i in range(3): -- new_coords.append(coords_received[x+3]) -+ new_coords.append(coords_received[i+3]) - - coords_tosend = [] - coords_received = [] -diff -urN amber11.orig/AmberTools/src/mmpbsa_py/MMPBSA.pypp amber11/AmberTools/src/mmpbsa_py/MMPBSA.pypp ---- amber11.orig/AmberTools/src/mmpbsa_py/MMPBSA.pypp 2011-04-14 15:30:17.000000000 +0300 -+++ amber11/AmberTools/src/mmpbsa_py/MMPBSA.pypp 2011-10-25 15:01:28.238288523 +0300 -@@ -412,6 +412,7 @@ - INPUT['solvcut'] = float(INPUT['solvcut']) - INPUT['tolerance'] = float(INPUT['tolerance']) - INPUT['rism_verbose'] = int(INPUT['rism_verbose']) -+ INPUT['inp'] = int(INPUT['inp']) - except ValueError, err: - print >> sys.stderr, 'Error: Invalid input data types! Check input file for proper float/int/string arguments.' - print >> sys.stderr, ' %s' % err -@@ -998,7 +999,7 @@ - if master: MMPBSA_timer.StartTimer('ptraj') - - # create the dummy inpcrd files -- if isinerr != 1 and (INPUT['gbrun'] or INPUT['pbrun']): -+ if isinerr != 1 and (INPUT['gbrun'] or INPUT['pbrun'] or INPUT['rismrun']): - os.system('%s %s _MMPBSA_mutant_complexinpcrd.in > _MMPBSA_ptraj9.out 2>&1' % (ptraj, FILES['mutant_complex_prmtop'])) - if not stability and FILES['mutant_receptor_prmtop'] == FILES['receptor_prmtop']: - os.system('%s %s _MMPBSA_mutant_ligandinpcrd.in > _MMPBSA_ptraj11.out 2>&1' % (ptraj, FILES['mutant_ligand_prmtop'])) -diff -urN amber11.orig/AmberTools/src/mmpbsa_py/setup.sh amber11/AmberTools/src/mmpbsa_py/setup.sh ---- amber11.orig/AmberTools/src/mmpbsa_py/setup.sh 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mmpbsa_py/setup.sh 2011-10-25 15:01:28.133288619 +0300 -@@ -10,7 +10,8 @@ - - # require AMBERHOME - if [ -z $AMBERHOME ]; then -- export AMBERHOME=`dirname \`dirname $PWD\`` -+ AMBERHOME=`dirname \`dirname $PWD\`` -+ export AMBERHOME=`dirname $AMBERHOME` - echo "AMBERHOME is not set. Assuming it is $AMBERHOME" - fi - -diff -urN amber11.orig/AmberTools/src/pbsa/amg1r5.f amber11/AmberTools/src/pbsa/amg1r5.f ---- amber11.orig/AmberTools/src/pbsa/amg1r5.f 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/pbsa/amg1r5.f 2011-10-25 15:01:28.203288555 +0300 -@@ -3707,7 +3707,7 @@ - - !+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - !+ [Enter a one-line description of real function cgeps here] --real function cgeps(k,s2,a,u,f,ia,ja,iw, & -+_REAL_ function cgeps(k,s2,a,u,f,ia,ja,iw, & - imin,imax,iminw,m,ierr,ium) - - implicit _REAL_ (a-h,o-z) -@@ -3753,7 +3753,7 @@ - - !+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - !+ [Enter a one-line description of real function cgalf here] --real function cgalf(k,s2,a,u,f,ia,ja,iw, & -+_REAL_ function cgalf(k,s2,a,u,f,ia,ja,iw, & - imin,imax,iminw,m) - - implicit _REAL_ (a-h,o-z) -@@ -3971,7 +3971,7 @@ - - !+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - !+ [Enter a one-line description of real function random here] --real function random(s) -+_REAL_ function random(s) - - ! FUNCTION TO CREATE "RANDOM" SEQUENCE OF NUMBERS BETWEEN 0 AND 0.1 - -diff -urN amber11.orig/AmberTools/src/pbsa/Makefile amber11/AmberTools/src/pbsa/Makefile ---- amber11.orig/AmberTools/src/pbsa/Makefile 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/pbsa/Makefile 2011-10-25 15:01:28.228288532 +0300 -@@ -204,6 +204,14 @@ - cd ../c9x-complex && $(MAKE) libmc.a; \ - fi - -+pb_init.o: pb_init.f -+ $(FPP) $(FPPFLAGS) $(AMBERFPPFLAGS) $< > _$< -+ $(FC) -c -O0 $(FFLAGS) $(AMBERFFLAGS) -o $@ _$< -+ -+pb_init.SANDER.o: pb_init.f -+ $(FPP) $(FPPFLAGS) $(AMBERFPPFLAGS) -DSANDER $< > _$< -+ $(FC) -c -O0 $(FFLAGS) $(AMBERFFLAGS) -o $@ _$< -+ - %.LIBPBSA.o: %.f - $(FPP) $(FPPFLAGS) $(AMBERFPPFLAGS) -DLIBPBSA $< > _$< - $(FC) -c $(FOPTFLAGS) $(FFLAGS) $(AMBERFFLAGS) -o $@ _$< -diff -urN amber11.orig/AmberTools/src/ptraj/actions.c amber11/AmberTools/src/ptraj/actions.c ---- amber11.orig/AmberTools/src/ptraj/actions.c 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/ptraj/actions.c 2011-10-25 15:01:28.235288526 +0300 -@@ -46,6 +46,7 @@ - #include "ptraj.h" - #include <string.h> - #include <stdarg.h> -+#include <float.h> - - /* - * The code in this file implements the various "actions" of ptraj to -@@ -4809,8 +4810,14 @@ - * set the minimum distance to the solute to be larger than - * any possible (imaged!!!) distance - */ -- min = box[0] + box[1] + box[2]; -- min = min * min; -+ if (box[0]!=0.0 && box[1]!=0.0 && box[2]!=0.0) { -+ min = box[0] + box[1] + box[2]; -+ min = min * min; -+ } else { -+ // No box information, set to arbitrarily large max -+ min=DBL_MAX; -+ } -+ - for (i=0; i < oldstate->solventMolecules; i++) { - minDistance[i] = min; - sortindex[i] = i; -@@ -16752,9 +16759,12 @@ - */ - - structInfo = (transformSecondaryStructInfo *) action->carg1; -- if (structInfo->filename != NULL) -+ if (structInfo->filename != NULL) { -+ i = (int) strlen(structInfo->filename); -+ i+=5; -+ structInfo->filename = (char*) realloc(structInfo->filename, i*sizeof(char)); - outFile = safe_fopen(strcat(structInfo->filename, ".sum"), "w"); -- else -+ } else - outFile = stdout; - - fprintf(outFile, "#ResNum\t3-10-Helix\talpha-helix\tPI-Helix\tparallel-Sheet\tantip.-Sheet\tTurn\n"); -@@ -18123,17 +18133,26 @@ - /* - * process the remaining arguments - */ -- if ( (buffer = argumentStackKeyToString(argumentStackPointer, "principal", NULL)) != NULL ) { -+ if ( argumentStackContains(argumentStackPointer, "principal") ) { - vectorInfo->mode = VECTOR_PRINCIPAL_X; -- if (strcmp(buffer, "x") == 0) -- vectorInfo->mode = VECTOR_PRINCIPAL_X; -- else if (strcmp(buffer, "y") == 0) -- vectorInfo->mode = VECTOR_PRINCIPAL_Y; -- else if (strcmp(buffer, "z") == 0) -- vectorInfo->mode = VECTOR_PRINCIPAL_Z; -- safe_free(buffer); -- } -- else if (argumentStackContains(argumentStackPointer, "dipole")) -+ /* DRR - Check the next argument for x, y, or z. If none of these -+ * are present, put the argument back on the stack. -+ */ -+ buffer = getArgumentString(argumentStackPointer, NULL); -+ if (buffer!=NULL) { -+ if (strcmp(buffer, "x") == 0) { -+ vectorInfo->mode = VECTOR_PRINCIPAL_X; -+ safe_free(buffer); -+ } else if (strcmp(buffer, "y") == 0) { -+ vectorInfo->mode = VECTOR_PRINCIPAL_Y; -+ safe_free(buffer); -+ } else if (strcmp(buffer, "z") == 0) { -+ vectorInfo->mode = VECTOR_PRINCIPAL_Z; -+ safe_free(buffer); -+ } else -+ pushBottomStack(argumentStackPointer, buffer); -+ } -+ } else if (argumentStackContains(argumentStackPointer, "dipole")) - vectorInfo->mode = VECTOR_DIPOLE; - else if (argumentStackContains(argumentStackPointer, "box")) - vectorInfo->mode = VECTOR_BOX; -@@ -18263,6 +18282,11 @@ - vectorInfo->mode == VECTOR_CORRIRED || - vectorInfo->mode == VECTOR_MASK){ - buffer = getArgumentString(argumentStackPointer, NULL); -+ if (buffer==NULL) { -+ fprintf(stdout,"Error: vector: specified vector mode requires a second mask.\n"); -+ freeTransformVectorMemory(action); -+ return -1; -+ } - vectorInfo->mask2 = processAtomMask(buffer, action->state); - safe_free(buffer); - } -@@ -18885,7 +18909,7 @@ - /* - * USAGE: - * -- * watershell mask [lower <lower cut>] [upper <upper cut>] [noimage] -+ * watershell mask filename [lower <lower cut>] [upper <upper cut>] [noimage] - * - * action argument usage: - * -@@ -18917,11 +18941,25 @@ - action->iarg1 = argumentStackContains(argumentStackPointer, "noimage"); - - buffer = getArgumentString(argumentStackPointer, NULL); -+ if (buffer==NULL) { -+ fprintf(stdout,"ERROR: WATERSHELL: Solute mask must be specified.\n"); -+ return -1; -+ } -+ - info->soluteMask = processAtomMask(buffer, action->state); -+ if (info->soluteMask==NULL) { -+ fprintf(stdout,"ERROR: WATERSHELL: Solute mask %s corresponds to 0 atoms.\n",buffer); -+ safe_free(buffer); -+ return -1; -+ } - safe_free(buffer); - - info->filename = getArgumentString(argumentStackPointer, NULL); -- -+ if (info->filename==NULL) { -+ fprintf(stdout,"ERROR: WATERSHELL: Output filename must be specified.\n"); -+ return -1; -+ } -+ - info->lowerCutoff = - argumentStackKeyToDouble(argumentStackPointer, "lower", info->lowerCutoff); - info->upperCutoff = -@@ -18932,6 +18970,17 @@ - info->solventMask = processAtomMask(buffer, action->state); - else - info->solventMask = processAtomMask(":WAT", action->state); -+ if (info->solventMask==NULL) { -+ if (buffer!=NULL) -+ fprintf(stdout,"ERROR: WATERSHELL: Solvent mask %s corresponds to 0 atoms.\n",buffer); -+ else { -+ fprintf(stdout,"ERROR: WATERSHELL: Default solvent mask :WAT corresponds to 0 atoms.\n"); -+ fprintf(stdout, -+ " Solvent mask can be specified as the third argument.\n"); -+ } -+ safe_free(buffer); -+ return -1; -+ } - safe_free(buffer); - - action->carg1 = (void *) info; -diff -urN amber11.orig/AmberTools/src/ptraj/ptraj.c amber11/AmberTools/src/ptraj/ptraj.c ---- amber11.orig/AmberTools/src/ptraj/ptraj.c 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/ptraj/ptraj.c 2011-10-25 15:01:28.224288536 +0300 -@@ -2059,7 +2059,8 @@ - int start = 1; - int stop = 1; - int frame_lines, title_size, seekable; -- long long int file_size, frame_size; -+ int maxi, sizeFound; // For large gzip file calc, Amber Traj -+ long long int file_size, frame_size, tmpfsize; - long int endoffset; - float *binposScratch; - FILE *fp; -@@ -2439,16 +2440,54 @@ - file_size = file_size - frame_size; // Subtract title size from file total size. - frame_size = (long long int) trajInfo->frameSize; - trajInfo->Nframes = (int) (file_size / frame_size); -+ -+ // Frame calculation for large gzip files -+ // If uncompressed size is less than compressed size, uncompressed -+ // size is likely > 4GB. -+ if (trajInfo->compressType == 1 && file_size < (long long int)frame_stat.st_size) { -+ // Since this is gzip compressed, if the file_size % frame size != 0, -+ // it could be that the uncompressed filesize > 4GB. Since -+ // ISIZE = uncompressed % 2^32, -+ // try ((file_size + (2^32 * i)) % frame_size) and see if any are 0. -+ if ( (file_size % frame_size) != 0) { -+ // Determine the maximum number of iterations to try based on the -+ // fact that Amber trajectories typically compress about 3x with -+ // gzip. If the number of frames cannot accurately be calculated -+ // use the max estimated file size to estimate # frames so that -+ // ptraj actions allocate enough memory. -+ tmpfsize = (long long int) frame_stat.st_size; -+ tmpfsize *= 4; -+ tmpfsize = (tmpfsize - file_size) / 4294967296LL; -+ maxi = (int) tmpfsize; -+ maxi++; -+ if (prnlev>1) -+ printf("\tLooking for uncompressed gzip size > 4GB, %i iterations.\n",maxi); -+ tmpfsize = 0; -+ sizeFound=0; -+ for (i = 0; i < maxi; i++ ) { -+ tmpfsize = (4294967296LL * i) + file_size; -+ if ( (tmpfsize % frame_size) == 0) {sizeFound=1; break;} -+ } -+ if (sizeFound) { -+ printf("Warning: Cannot accurately determine # of frames in gzipped trajectory %s.\n", -+ filename); -+ printf(" This usually indicates the trajectory is corrupted.\n"); -+ printf(" Ptraj will attempt to estimate the correct number of frames.\n"); -+ } -+ file_size = tmpfsize; -+ trajInfo->Nframes = (int) (file_size / frame_size); -+ } -+ } -+ - if (prnlev>0) fprintf(stdout," File has %i frames.\n",trajInfo->Nframes); - if ( (file_size % frame_size) == 0 ) { - seekable = 1; -- stop = trajInfo->Nframes; - } else { -- stop = -1; - seekable = 0; - fprintf(stderr, "%s: Could not predict number of frames for AMBER trajectory file: %s\n", ROUTINE, filename); - fprintf(stderr, "\tIf this is not a compressed file then there is a problem\n"); - } -+ stop = trajInfo->Nframes; - - actualAtoms = totalAtoms; - //trajInfo->frameSize = frame_size; -@@ -2569,6 +2608,8 @@ - trajInfo->isBox = isBox; - trajInfo->isVelocity = isVelocity; - trajInfo->type = type; -+ // If compressed, no seek possible -+ if (trajInfo->compressType > 0) trajInfo->seekable=0; - - // This should eventually get its own structure - if (type==COORD_CHARMM_TRAJECTORY) -diff -urN amber11.orig/AmberTools/src/rism/amber_rism_interface.f amber11/AmberTools/src/rism/amber_rism_interface.f ---- amber11.orig/AmberTools/src/rism/amber_rism_interface.f 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/rism/amber_rism_interface.f 2011-10-25 15:01:28.241288520 +0300 -@@ -815,7 +815,6 @@ - !redo calculation with charges off - call rism3d_unsetCharges(rism_3d) - call rism3d_solve(rism_3d,rismprm%saveprogress,rismprm%progress,rismprm%maxstep,rismprm%tolerance) -- call rism3d_resetCharges(rism_3d) - - !setup memory space - apol_exchem => apol_mpi_buffer(1:rism_3d%solv%natom) -@@ -825,6 +824,7 @@ - apol_exchem = rism3d_exchem(rism_3d,rismprm%asympCorr)*KB*rism_3d%solv%temperature - apol_exchemGF = rism3d_exchemGF(rism_3d,rismprm%asympCorr)*KB*rism_3d%solv%temperature - -+ call rism3d_resetCharges(rism_3d) - !parallel communication - #ifdef MPI - # ifdef USE_MPI_IN_PLACE -diff -urN amber11.orig/AmberTools/src/rism/rism1d_potential_c.f amber11/AmberTools/src/rism/rism1d_potential_c.f ---- amber11.orig/AmberTools/src/rism/rism1d_potential_c.f 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/rism/rism1d_potential_c.f 2011-10-25 15:01:28.242288519 +0300 -@@ -124,7 +124,7 @@ - type(solvMDL), intent(in) :: mdl - _REAL_, intent(in) :: density - integer :: oldnv -- integer :: iv1, iv2, ivv, iv, iat, imlt -+ integer :: iv1, iv2, ivv, iv, iat, imlt, isp - - !increment scalar variables - oldnv = this%nv -@@ -139,7 +139,10 @@ - this%nat(this%nsp) = mdl%ntype - this%mta => safemem_realloc(this%mta, max(ubound(this%mta,1),mdl%ntype), this%nsp) - this%mta(1:mdl%ntype,this%nsp) = mdl%multi -- -+ !zero out multiplicity for unused indicies in previously add species -+ do isp=1, this%nsp -+ this%mta(this%nat(isp)+1:,isp)=0 -+ end do - this%mtv => safemem_realloc(this%mtv,this%nv) - this%mtv(oldnv+1:this%nv) = mdl%multi - -@@ -178,7 +181,7 @@ - this%rminv => safemem_realloc(this%rminv,this%nv) - this%rminv(oldnv+1:this%nv) = mdl%rmin/2d0 - -- this%rma => safemem_realloc(this%rma,3,ubound(this%mta,1),maxval(this%nat),this%nsp) -+ this%rma => safemem_realloc(this%rma,3,maxval(this%mta),maxval(this%nat),this%nsp,.true.,.false.) - iv = 0 - do iat=1,this%nat(this%nsp) - do imlt = 1, this%mta(iat,this%nsp) -@@ -186,7 +189,7 @@ - this%rma(:,imlt,iat,this%nsp) = mdl%coord(:,iv) - end do - end do -- this%wlmvv => safemem_realloc(this%wlmvv,ubound(this%mta,1),this%nv,this%nv) -+ this%wlmvv => safemem_realloc(this%wlmvv,maxval(this%mta),this%nv,this%nv) - call intramolecular_dist(this) - - !data arrays in the original 1D-RISM code had an offset of 0 in the first index (like C). -@@ -269,7 +272,7 @@ - r,rs, rs6,ri6, usr,usra - - _REAL_ :: d0x(this%nv), d0y(this%nv), d1z(this%nv), & -- wkvv(this%nv,this%nv) -+ wkvv(this%nv,this%nv), erfc_test - _REAL_, external :: erfc - - -@@ -478,10 +481,21 @@ - r = (ir-1)*this%dr - k = (ir-1)*this%dk - qvv = charge*this%qspv(iv1)*this%qspv(iv2) -- this%hlrvv(ir,ivv) = -qvv/this%dielconst & -- * 0.5d0 * exp((this%smear*this%kappa/2.d0)**2) & -- * ( exp(-this%kappa*r)*erfc(this%kappa*this%smear/2.d0 - r/this%smear) & -- - exp(this%kappa*r)*erfc(this%kappa*this%smear/2.d0 + r/this%smear) ) -+ !for large grids with short Debye lengths the positive -+ !exponent can overflow. erfc is already zero at this -+ !point. So we test erfc to see if we can avoid the -+ !exponent -+ erfc_test = erfc(this%kappa*this%smear/2.d0 + r/this%smear) -+ if(erfc_test > sqrt(tiny(1d0)))then -+ this%hlrvv(ir,ivv) = -qvv/this%dielconst & -+ * 0.5d0 * exp((this%smear*this%kappa/2.d0)**2) & -+ * ( exp(-this%kappa*r)*erfc(this%kappa*this%smear/2.d0 - r/this%smear) & -+ - exp(this%kappa*r)*erfc_test ) -+ else -+ this%hlrvv(ir,ivv) = -qvv/this%dielconst & -+ * 0.5d0 * exp((this%smear*this%kappa/2.d0)**2) & -+ * ( exp(-this%kappa*r)*erfc(this%kappa*this%smear/2.d0 - r/this%smear)) -+ end if - this%hlkvv(ir,ivv) = -qvv/this%dielconst & - * 4.d0*pi*exp(-(0.5d0*this%smear*k)**2) * k/(k**2+this%kappa**2) - enddo -diff -urN amber11.orig/AmberTools/src/rism/rism3d_c.f amber11/AmberTools/src/rism/rism3d_c.f ---- amber11.orig/AmberTools/src/rism/rism3d_c.f 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/rism/rism3d_c.f 2011-10-25 15:01:28.245288516 +0300 -@@ -1086,26 +1086,26 @@ - !reallocate arrays that require preservation of their contents - #if defined(MPI) - this%cuvWRK => safemem_realloc(this%cuvWRK,this%grid%nr(1),this%grid%nr(2),this%grid%nr(3),& -- this%solv%natom,this%NVec,.true.) -+ this%solv%natom,this%NVec,.true.,.true.) - if(rism3d_solu_charged(this%solu))then - this%oldcuvChg => safemem_realloc(this%oldcuvChg,this%grid%nr(1),this%grid%nr(2),& -- this%grid%nr(3),this%solv%natom,this%ncuvsteps,.true.) -+ this%grid%nr(3),this%solv%natom,this%ncuvsteps,.true.,.true.) - this%oldcuv => this%oldcuvChg - else - this%oldcuvNoChg => safemem_realloc(this%oldcuvNoChg,this%grid%nr(1),this%grid%nr(2),& -- this%grid%nr(3),this%solv%natom,this%ncuvsteps,.true.) -+ this%grid%nr(3),this%solv%natom,this%ncuvsteps,.true.,.true.) - this%oldcuv => this%oldcuvNoChg - end if - #else - this%cuvWRK => safemem_realloc(this%cuvWRK,this%grid%nr(1),this%grid%nr(2),this%grid%nr(3),& -- this%solv%natom,this%NVec,.true.) -+ this%solv%natom,this%NVec,.true.,.true.) - if(rism3d_solu_charged(this%solu))then - this%oldcuvChg => safemem_realloc(this%oldcuvChg,this%grid%nr(1),this%grid%nr(2),& -- this%grid%nr(3),this%solv%natom,this%ncuvsteps,.true.) -+ this%grid%nr(3),this%solv%natom,this%ncuvsteps,.true.,.true.) - this%oldcuv => this%oldcuvChg - else - this%oldcuvNoChg => safemem_realloc(this%oldcuvNoChg,this%grid%nr(1),this%grid%nr(2),& -- this%grid%nr(3),this%solv%natom,this%ncuvsteps,.true.) -+ this%grid%nr(3),this%solv%natom,this%ncuvsteps,.true.,.true.) - this%oldcuv => this%oldcuvNoChg - end if - !!$ this%oldcuv => safemem_realloc(this%oldcuv,this%grid%nr(1),this%grid%nr(2),& -diff -urN amber11.orig/AmberTools/src/rism/rism3d_opendx.f amber11/AmberTools/src/rism/rism3d_opendx.f ---- amber11.orig/AmberTools/src/rism/rism3d_opendx.f 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/rism/rism3d_opendx.f 2011-10-25 15:01:28.205288553 +0300 -@@ -49,9 +49,11 @@ - module procedure readDXHeader_file, readDXHeader_unit - end interface readDXHeader - -+#if 0 - interface readDX - module procedure readDX_3D,readDX_3D_data, readDX_1D, readDX_1D_data - end interface readDX -+#endif - contains - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!Reads in a OpenDX file header. Expects -@@ -160,6 +162,7 @@ - end if - end subroutine readDXHeader_unit - -+#if 0 - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!Reads in a OpenDX file, returning data in a pointer, allocating necessary memory. Expects - !!!a 3D, regularly spaced grid in ASCII format. -@@ -311,6 +314,7 @@ - call readDX_data(unit,data,ndata,npos) - close(unit) - end subroutine readDX_1D_data -+#endif - - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!write to file in open DX format for use in VMD. When writing in -diff -urN amber11.orig/AmberTools/src/rism/rism3d.snglpnt.nab amber11/AmberTools/src/rism/rism3d.snglpnt.nab ---- amber11.orig/AmberTools/src/rism/rism3d.snglpnt.nab 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/rism/rism3d.snglpnt.nab 2011-10-25 15:01:28.243288518 +0300 -@@ -632,6 +632,7 @@ - mm_options(sprintf("centering=%d, zerofrc=%d, apply_rism_force=%d",rismOpt.centering,rismOpt.zerofrc,rismOpt.apply_rism_force)); - mm_options(sprintf("polarDecomp=%d",rismOpt.polarDecomp)); - mm_options(sprintf("ntwrism=%d, verbose=%d, progress=%d",rismOpt.ntwrism,rismOpt.verbose,rismOpt.progress)); -+mm_options(sprintf("asympCorr=%d",rismOpt.asympcorr)); - mm_options(sprintf("saveprogress=%d",rismOpt.saveprogress)); - mme_init( m, NULL, "::Z", p_xyz, NULL); - -diff -urN amber11.orig/AmberTools/src/rism/safemem.f amber11/AmberTools/src/rism/safemem.f ---- amber11.orig/AmberTools/src/rism/safemem.f 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/rism/safemem.f 2011-10-25 15:01:28.247288515 +0300 -@@ -46,13 +46,13 @@ - !logical :: Current number of bytes of logical memory allocated - !char :: Current number of bytes of character memory allocated - !total :: Current number of bytes of total memory allocated -- integer*8 :: int,real,logical,char,total -+ integer*8 :: int=0,real=0,logical=0,char=0,total=0 - !maxint :: Current number of bytes of integer memory allocated - !maxreal :: Current number of bytes of real memory allocated - !maxlogical :: Current number of bytes of logical memory allocated - !maxchar :: Current number of bytes of character memory allocated - !max :: Current number of bytes of total memory allocated -- integer*8 :: maxint,maxreal,maxlogical,maxchar,max -+ integer*8 :: maxint=0,maxreal=0,maxlogical=0,maxchar=0,max=0 - end type memTracker - - !BYTES_PER_GIGABYTES :: used to convert between bytes and GB -@@ -352,6 +352,9 @@ - !!! n4 :: size of the fourth dimension - !!! preserve :: boolean indicating whether or not to preserve the contents of - !!! the array (optional) -+!!! center :: when preserving the contents of the array, center the -+!!! data in the array instead of preserving the value at each -+!!! index - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - FUNCTION safemem_realloc_4d_real(p, n1, n2, n3, n4, preserve, center) - implicit none -@@ -369,7 +372,7 @@ - #endif /*RISM_DEBUG*/ - prsrv = .true. - if(present(preserve)) prsrv=preserve -- cntr = .true. -+ cntr = .false. - if(present(center)) cntr=center - - if(.not.prsrv .and. associated(p)) then -@@ -499,6 +502,9 @@ - !!! n5 :: size of the fifth dimension - !!! preserve :: boolean indicating whether or not to preserve the contents of - !!! the array (optional) -+!!! center :: when preserving the contents of the array, center the -+!!! data in the array instead of preserving the value at each -+!!! index - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - FUNCTION safemem_realloc_5d_real(p, n1, n2, n3, n4, n5, preserve, center) - implicit none -@@ -516,7 +522,7 @@ - #endif /*RISM_DEBUG*/ - prsrv = .true. - if(present(preserve)) prsrv = preserve -- cntr=.true. -+ cntr=.false. - if(present(center)) cntr = center - - if(.not.prsrv .and. associated(p)) then -@@ -1006,7 +1012,7 @@ - !work around for old gfortran bug - ! if(associated(p)) deallocate(p,STAT=safemem_dealloc_pointer_1d_logical) - if(associated(p))then -- call memadd_c(totalmem,-product(ubound(p))*kind(p)) -+ call memadd_l(totalmem,-product(ubound(p))*kind(p)) - deallocate(p,STAT=temp) - end if - safemem_dealloc_pointer_1d_logical = temp -diff -urN amber11.orig/AmberTools/src/sqm/qm2_energy.f amber11/AmberTools/src/sqm/qm2_energy.f ---- amber11.orig/AmberTools/src/sqm/qm2_energy.f 2011-03-11 20:43:13.000000000 +0200 -+++ amber11/AmberTools/src/sqm/qm2_energy.f 2011-10-25 15:01:28.206288552 +0300 -@@ -277,7 +277,7 @@ - - ! Add PM6 corrections to Heat of Formation - if (qmmm_nml%qmtheory%PM6) then -- escf = escf + pm6_correction() -+ escf = escf + hofCorrection() - end if - - call timer_stop(TIME_QMMMENERGYSCF) -diff -urN amber11.orig/AmberTools/src/sqm/qm2_get_qm_forces.f amber11/AmberTools/src/sqm/qm2_get_qm_forces.f ---- amber11.orig/AmberTools/src/sqm/qm2_get_qm_forces.f 2011-03-11 20:43:13.000000000 +0200 -+++ amber11/AmberTools/src/sqm/qm2_get_qm_forces.f 2011-10-25 15:01:28.208288550 +0300 -@@ -250,7 +250,7 @@ - ! -------------------------------------------- - if (qmmm_nml%qmtheory%PM6) then - natom = qmmm_struct%nquant_nlink -- call pm6_correction(natom, dxyzqm) -+ call hofCorrectionGradient(natom, dxyzqm) - end if - - if(qmmm_nml%peptide_corr) then -diff -urN amber11.orig/AmberTools/src/sqm/qm2_pm6_hof_module.f amber11/AmberTools/src/sqm/qm2_pm6_hof_module.f ---- amber11.orig/AmberTools/src/sqm/qm2_pm6_hof_module.f 2011-03-11 20:43:13.000000000 +0200 -+++ amber11/AmberTools/src/sqm/qm2_pm6_hof_module.f 2011-10-25 15:01:28.209288549 +0300 -@@ -21,8 +21,7 @@ - implicit none - - private -- public :: pm6_correction -- public :: corInfoType, print -+ public :: corInfoType, print, hofCorrection, hofCorrectionGradient - public :: cct, nsp2 - public :: strlen - -@@ -30,11 +29,6 @@ - module procedure printCorInfoType - end interface - -- interface pm6_correction -- module procedure hofCorrection -- module procedure hofCorrectionGradient -- end interface -- - ! Data type collecting information on PM6 HOF corrections - type corInfoType - logical :: inUse ! correction in use ? -diff -urN amber11.orig/AmberTools/test/cpptraj/Test_General/RunTest.sh amber11/AmberTools/test/cpptraj/Test_General/RunTest.sh ---- amber11.orig/AmberTools/test/cpptraj/Test_General/RunTest.sh 2011-04-14 15:30:21.000000000 +0300 -+++ amber11/AmberTools/test/cpptraj/Test_General/RunTest.sh 2011-10-25 15:01:28.215288544 +0300 -@@ -25,7 +25,7 @@ - DoTest PhiPsi.dat.save PhiPsi.dat - DoTest test.crd.save test.crd - DoTest a1.dat.save a1.dat --DoTest test.rst7.103.save Restart/test.rst7.103 -+DoTest test.rst7.103.save Restart/test.rst7.123 - DoTest test.nc.save test.nc - DoTest r4.dat.save r4.dat - DoTest a2.dat.gz.save a2.dat.gz -diff -urN amber11.orig/AmberTools/test/mmpbsa_py/11_3D-RISM/FINAL_RESULTS_MMPBSA.dat.save amber11/AmberTools/test/mmpbsa_py/11_3D-RISM/FINAL_RESULTS_MMPBSA.dat.save ---- amber11.orig/AmberTools/test/mmpbsa_py/11_3D-RISM/FINAL_RESULTS_MMPBSA.dat.save 2011-04-14 15:30:22.000000000 +0300 -+++ amber11/AmberTools/test/mmpbsa_py/11_3D-RISM/FINAL_RESULTS_MMPBSA.dat.save 2011-10-25 15:01:28.247288515 +0300 -@@ -1,4 +1,4 @@ --| Run on Tue Mar 8 15:33:18 PST 2011 -+| Run on Fri Oct 7 17:12:46 EDT 2011 - - |Input file: - |-------------------------------------------------------------- -@@ -32,14 +32,14 @@ - ------------------------------------------------------------------------------- - VDWAALS -4.6380 0.3291 0.2327 - EEL -425.3449 4.5554 3.2212 --ERISM -164.0501 3.9611 2.8009 -- POLAR -219.8772 4.0588 2.8700 -- APOLAR 55.8271 0.0977 0.0691 -+ERISM -164.0499 3.9609 2.8008 -+ POLAR -235.0781 4.4994 3.1816 -+ APOLAR 71.0282 0.5386 0.3808 - - G gas -429.9829 4.2263 2.9885 --G solv -164.0501 3.9611 2.8009 -+G solv -164.0499 3.9609 2.8008 - --TOTAL -594.0331 0.2653 0.1876 -+TOTAL -594.0329 0.2655 0.1877 - - - Receptor: -@@ -48,8 +48,8 @@ - VDWAALS -3.9302 0.2702 0.1910 - EEL -254.1833 4.5196 3.1959 - ERISM -79.2939 3.0131 2.1306 -- POLAR -118.9799 3.1556 2.2314 -- APOLAR 39.6860 0.1425 0.1008 -+ POLAR -126.9784 3.4713 2.4546 -+ APOLAR 47.6845 0.4582 0.3240 - - G gas -258.1136 4.2494 3.0048 - G solv -79.2939 3.0131 2.1306 -@@ -62,12 +62,12 @@ - ------------------------------------------------------------------------------- - VDWAALS -0.7056 0.0606 0.0428 - EEL -170.5448 1.1864 0.8389 --ERISM -85.2510 0.0719 0.0509 -- POLAR -101.3724 0.0489 0.0346 -- APOLAR 16.1214 0.0230 0.0163 -+ERISM -85.2510 0.0719 0.0508 -+ POLAR -108.6574 0.0351 0.0249 -+ APOLAR 23.4064 0.1070 0.0757 - - G gas -171.2505 1.2470 0.8818 --G solv -85.2510 0.0719 0.0509 -+G solv -85.2510 0.0719 0.0508 - - TOTAL -256.5015 1.1751 0.8309 - -@@ -77,15 +77,15 @@ - ------------------------------------------------------------------------------- - VDWAALS -0.0021 0.0017 0.0012 - EEL -0.6167 1.2222 0.8642 --ERISM 0.4947 1.0198 0.7211 -- POLAR 0.4750 0.9520 0.6732 -- APOLAR 0.0198 0.0678 0.0480 -+ERISM 0.4950 1.0196 0.7210 -+ POLAR 0.5577 0.9929 0.7021 -+ APOLAR -0.0627 0.0267 0.0189 - - DELTA G gas -0.6189 1.2239 0.8654 --DELTA G solv 0.4947 1.0198 0.7211 -+DELTA G solv 0.4950 1.0196 0.7210 - - -- DELTA G binding = -0.1241 +/- 0.2041 0.1443 -+ DELTA G binding = -0.1239 +/- 0.2043 0.1445 - - - ------------------------------------------------------------------------------- -@@ -99,8 +99,8 @@ - VDWAALS -4.6380 0.3291 0.2327 - EEL -425.3449 4.5554 3.2212 - ERISM -187.9280 4.0576 2.8691 -- POLAR -221.3631 4.0723 2.8795 -- APOLAR 33.4351 0.0147 0.0104 -+ POLAR -236.5648 4.5137 3.1916 -+ APOLAR 48.6367 0.4561 0.3225 - - G gas -429.9829 4.2263 2.9885 - G solv -187.9280 4.0576 2.8691 -@@ -113,12 +113,12 @@ - ------------------------------------------------------------------------------- - VDWAALS -3.9302 0.2702 0.1910 - EEL -254.1833 4.5196 3.1959 --ERISM -94.4232 3.0803 2.1781 -- POLAR -119.8020 3.1352 2.2169 -- APOLAR 25.3788 0.0549 0.0388 -+ERISM -94.4233 3.0804 2.1781 -+ POLAR -127.8003 3.4511 2.4403 -+ APOLAR 33.3771 0.3707 0.2621 - - G gas -258.1136 4.2494 3.0048 --G solv -94.4232 3.0803 2.1781 -+G solv -94.4233 3.0804 2.1781 - - TOTAL -352.5368 1.1691 0.8267 - -@@ -128,14 +128,14 @@ - ------------------------------------------------------------------------------- - VDWAALS -0.7056 0.0606 0.0428 - EEL -170.5448 1.1864 0.8389 --ERISM -94.0188 0.0538 0.0381 -- POLAR -102.0695 0.0274 0.0194 -- APOLAR 8.0506 0.0264 0.0187 -+ERISM -94.0185 0.0541 0.0383 -+ POLAR -109.3544 0.0565 0.0399 -+ APOLAR 15.3358 0.1106 0.0782 - - G gas -171.2505 1.2470 0.8818 --G solv -94.0188 0.0538 0.0381 -+G solv -94.0185 0.0541 0.0383 - --TOTAL -265.2693 1.1932 0.8437 -+TOTAL -265.2690 1.1929 0.8435 - - - Differences (Complex - Receptor - Ligand): -@@ -143,15 +143,15 @@ - ------------------------------------------------------------------------------- - VDWAALS -0.0021 0.0017 0.0012 - EEL -0.6167 1.2222 0.8642 --ERISM 0.5140 1.0311 0.7291 -- POLAR 0.5083 0.9645 0.6820 -- APOLAR 0.0057 0.0666 0.0471 -+ERISM 0.5137 1.0314 0.7293 -+ POLAR 0.5900 1.0061 0.7114 -+ APOLAR -0.0762 0.0253 0.0179 - - DELTA G gas -0.6189 1.2239 0.8654 --DELTA G solv 0.5140 1.0311 0.7291 -+DELTA G solv 0.5137 1.0314 0.7293 - - -- DELTA G binding = -0.1049 +/- 0.1928 0.1363 -+ DELTA G binding = -0.1051 +/- 0.1926 0.1362 - - - ------------------------------------------------------------------------------- -diff -urN amber11.orig/AmberTools/test/nab/rism3d.snglpnt.2.out.check amber11/AmberTools/test/nab/rism3d.snglpnt.2.out.check ---- amber11.orig/AmberTools/test/nab/rism3d.snglpnt.2.out.check 2011-04-14 15:30:23.000000000 +0300 -+++ amber11/AmberTools/test/nab/rism3d.snglpnt.2.out.check 2011-10-25 15:01:28.248288514 +0300 -@@ -32,6 +32,7 @@ - mm_options: ntwrism=1 - mm_options: verbose=0 - mm_options: progress=0 -+ mm_options: asympCorr=1 - mm_options: saveprogress=0 - |3D-RISM thermodynamic data key - |solute_epot [kcal/mol] : Total LJ Coulomb Bond Angle Dihedral H-Bond LJ-14 Coulomb-14 Restraints 3D-RISM -@@ -74,13 +75,13 @@ - 3D-RISM processing complete. - - |Timing summary: --| Initialize 0.042 -+| Initialize 0.046 - | Molec. Dyn. 0.000 - | Normal Mode 0.000 - | Conj. Grad. 0.000 - | Newton 0.000 - |------------------------- --| Total 0.042 -+| Total 0.046 - - |1st derivative timing summary: - | constraints 0.000 -@@ -91,7 +92,7 @@ - | nonbond 0.000 - | gen. Born 0.000 - | Poisson Boltzmann 0.000 --| 3D-RISM 10.167 -+| 3D-RISM 8.211 - | Other 0.000 - |------------------------- --| Total 10.167 -+| Total 8.212 -diff -urN amber11.orig/AmberTools/test/nab/rism3d.snglpnt.out.check amber11/AmberTools/test/nab/rism3d.snglpnt.out.check ---- amber11.orig/AmberTools/test/nab/rism3d.snglpnt.out.check 2011-04-14 15:30:23.000000000 +0300 -+++ amber11/AmberTools/test/nab/rism3d.snglpnt.out.check 2011-10-25 15:01:28.248288514 +0300 -@@ -31,6 +31,7 @@ - mm_options: ntwrism=0 - mm_options: verbose=0 - mm_options: progress=0 -+ mm_options: asympCorr=1 - mm_options: saveprogress=0 - |3D-RISM thermodynamic data key - |solute_epot [kcal/mol] : Total LJ Coulomb Bond Angle Dihedral H-Bond LJ-14 Coulomb-14 Restraints 3D-RISM -@@ -55,10 +56,10 @@ - rism_volume: 1.93595981E+002 - rism_exNumb: -6.38184158E+000 -1.27637588E+001 - rism_exChrg: -3.20562831E-005 5.40924893E+000 -5.40928099E+000 --rism_polar_: -1.31661477E+001 -4.40204657E+001 3.08543179E+001 --rism_apolar: 2.96543934E+001 7.56776450E+001 -4.60232516E+001 --rism_polGF_: -1.34197324E+001 -4.39508092E+001 3.05310768E+001 --rism_apolGF: 1.97398606E+001 7.11960080E+001 -5.14561474E+001 -+rism_polar_: -1.47850626E+001 -1.09412958E+001 -3.84376682E+000 -+rism_apolar: 3.12733083E+001 4.25984751E+001 -1.13251668E+001 -+rism_polGF_: -1.50386472E+001 -1.08716393E+001 -4.16700794E+000 -+rism_apolGF: 2.13587755E+001 3.81168382E+001 -1.67580627E+001 - - Frame: 2 of 3 - solute_epot: -3.41386230E-001 2.56854615E+000 -8.23476129E+001 3.38717466E-002 3.59735615E-001 7.49048012E+000 0.00000000E+000 4.97044290E+000 5.01391318E+001 0.00000000E+000 1.64440184E+001 -@@ -68,10 +69,10 @@ - rism_volume: 1.93535504E+002 - rism_exNumb: -6.37993323E+000 -1.27596468E+001 - rism_exChrg: 9.31177385E-005 5.40763142E+000 -5.40753830E+000 --rism_polar_: -1.31967073E+001 -4.40467251E+001 3.08500178E+001 --rism_apolar: 2.96407256E+001 7.56851573E+001 -4.60444317E+001 --rism_polGF_: -1.34505678E+001 -4.39769309E+001 3.05263631E+001 --rism_apolGF: 1.97272712E+001 7.12038497E+001 -5.14765785E+001 -+rism_polar_: -1.48191496E+001 -1.09491800E+001 -3.86996959E+000 -+rism_apolar: 3.12631679E+001 4.25876122E+001 -1.13244443E+001 -+rism_polGF_: -1.50730101E+001 -1.08793858E+001 -4.19362428E+000 -+rism_apolGF: 2.13497135E+001 3.81063046E+001 -1.67565911E+001 - - Frame: 3 of 3 - solute_epot: -6.77945271E-001 2.31243593E+000 -8.22812685E+001 9.08980189E-002 3.84286510E-001 7.48894041E+000 0.00000000E+000 4.91668330E+000 5.00274224E+001 0.00000000E+000 1.63826567E+001 -@@ -81,21 +82,21 @@ - rism_volume: 1.93468855E+002 - rism_exNumb: -6.37771162E+000 -1.27552065E+001 - rism_exChrg: 9.18518609E-005 5.40574837E+000 -5.40565652E+000 --rism_polar_: -1.32423609E+001 -4.40992117E+001 3.08568508E+001 --rism_apolar: 2.96250176E+001 7.57232232E+001 -4.60982056E+001 --rism_polGF_: -1.34968274E+001 -4.40292606E+001 3.05324332E+001 --rism_apolGF: 1.97126459E+001 7.12421943E+001 -5.15295484E+001 -+rism_polar_: -1.48691739E+001 -1.09507135E+001 -3.91846037E+000 -+rism_apolar: 3.12518306E+001 4.25747250E+001 -1.13228944E+001 -+rism_polGF_: -1.51236404E+001 -1.08807624E+001 -4.24287800E+000 -+rism_apolGF: 2.13394589E+001 3.80936961E+001 -1.67542372E+001 - - 3D-RISM processing complete. - - |Timing summary: --| Initialize 0.043 -+| Initialize 0.047 - | Molec. Dyn. 0.000 - | Normal Mode 0.000 - | Conj. Grad. 0.000 - | Newton 0.000 - |------------------------- --| Total 0.043 -+| Total 0.047 - - |1st derivative timing summary: - | constraints 0.000 -@@ -106,7 +107,7 @@ - | nonbond 0.000 - | gen. Born 0.000 - | Poisson Boltzmann 0.000 --| 3D-RISM 32.639 -+| 3D-RISM 30.135 - | Other 0.000 - |------------------------- --| Total 32.639 -+| Total 30.135 -diff -urN amber11.orig/AmberTools/test/nab/Run.prm amber11/AmberTools/test/nab/Run.prm ---- amber11.orig/AmberTools/test/nab/Run.prm 2011-04-14 15:30:23.000000000 +0300 -+++ amber11/AmberTools/test/nab/Run.prm 2011-10-25 15:01:28.133288619 +0300 -@@ -17,7 +17,7 @@ - - echo "checking the prmtop file:" - echo "" --tail -3209 tprmtop > tprmtop1 -+tail -3228 tprmtop > tprmtop1 - ../dacdif tprmtop.check tprmtop1 - - rm -f prm prm.c tleap.out leap.log tprmcrd prm.out1 tprmtop -diff -urN amber11.orig/AmberTools/test/nab/tprmtop.check amber11/AmberTools/test/nab/tprmtop.check ---- amber11.orig/AmberTools/test/nab/tprmtop.check 2011-03-10 20:12:18.000000000 +0200 -+++ amber11/AmberTools/test/nab/tprmtop.check 2011-10-25 15:01:28.135288617 +0300 -@@ -1,3 +1,4 @@ -+%VERSION VERSION_STAMP = V0001.000 DATE = 05/09/11 12:59:19 - %FLAG TITLE - %FORMAT(20a4) - -@@ -541,6 +542,24 @@ - 3.14159400E+00 3.14159400E+00 3.14159400E+00 3.14159400E+00 3.14159400E+00 - 3.14159400E+00 3.14159400E+00 3.14159400E+00 3.14159400E+00 3.14159400E+00 - 3.14159400E+00 3.14159400E+00 3.14159400E+00 -+%FLAG SCEE_SCALE_FACTOR -+%FORMAT(5E16.8) -+ 1.20000000E+00 1.20000000E+00 1.20000000E+00 1.20000000E+00 1.20000000E+00 -+ 1.20000000E+00 1.20000000E+00 1.20000000E+00 1.20000000E+00 1.20000000E+00 -+ 1.20000000E+00 1.20000000E+00 1.20000000E+00 1.20000000E+00 1.20000000E+00 -+ 1.20000000E+00 1.20000000E+00 1.20000000E+00 1.20000000E+00 1.20000000E+00 -+ 1.20000000E+00 1.20000000E+00 1.20000000E+00 1.20000000E+00 1.20000000E+00 -+ 1.20000000E+00 1.20000000E+00 1.20000000E+00 1.20000000E+00 1.20000000E+00 -+ 0.00000000E+00 0.00000000E+00 0.00000000E+00 -+%FLAG SCNB_SCALE_FACTOR -+%FORMAT(5E16.8) -+ 2.00000000E+00 2.00000000E+00 2.00000000E+00 2.00000000E+00 2.00000000E+00 -+ 2.00000000E+00 2.00000000E+00 2.00000000E+00 2.00000000E+00 2.00000000E+00 -+ 2.00000000E+00 2.00000000E+00 2.00000000E+00 2.00000000E+00 2.00000000E+00 -+ 2.00000000E+00 2.00000000E+00 2.00000000E+00 2.00000000E+00 2.00000000E+00 -+ 2.00000000E+00 2.00000000E+00 2.00000000E+00 2.00000000E+00 2.00000000E+00 -+ 2.00000000E+00 2.00000000E+00 2.00000000E+00 2.00000000E+00 2.00000000E+00 -+ 0.00000000E+00 0.00000000E+00 0.00000000E+00 - %FLAG SOLTY - %FORMAT(5E16.8) - 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 -diff -urN amber11.orig/AmberTools/test/rism1d/check1d amber11/AmberTools/test/rism1d/check1d ---- amber11.orig/AmberTools/test/rism1d/check1d 2011-04-14 15:30:29.000000000 +0300 -+++ amber11/AmberTools/test/rism1d/check1d 2011-10-25 15:01:28.249288513 +0300 -@@ -85,7 +85,7 @@ - #It is unrealistic to achieve low relative error for these very small number so we only - #use the abolute error - if [ -s $1.bvv.save ]; then -- $AMBERHOME/AmberTools/test/dacdif -a 1.e-7 $1.bvv.save $1.bvv -+ $AMBERHOME/AmberTools/test/dacdif -a 2.e-7 $1.bvv.save $1.bvv - fi - - /bin/rm -f $1.xvv.delhv0 $1.xvv.delhv0.save $1.xvv.xvv $1.xvv.xvv.save\ -diff -urN amber11.orig/AT15_Amber11.py amber11/AT15_Amber11.py ---- amber11.orig/AT15_Amber11.py 2011-04-14 15:30:11.000000000 +0300 -+++ amber11/AT15_Amber11.py 2011-10-25 15:01:28.221288538 +0300 -@@ -145,4 +145,29 @@ - makefile.close() - - # Now we are done --print "\nAmber 11 patched for AmberTools 1.5. Run\nmake %s\nto build amber11\n" % buildtype -+print "\nAmber 11 patched for AmberTools 1.5. Run\ncd src; make %s\nto build amber11\n" % buildtype -+ -+# Now print out details about expected test FAILUREs and -+# errors: -+ -+warning = """NOTE: Because PBSA has changed since Amber 11 was released, some -+tests are known to fail and others are known to quit in error. These -+can be safely ignored. -+ -+Tests that error: Tests in $AMBERHOME/test/sander_pbsa_frc -+ Run.argasp.min Run.dadt.min Run.dgdc.min -+ Run.lysasp.min Run.polyALA.min Run.polyAT.min -+ Run.argasp.min Run.dadt.min Run.dgdc.min -+ Run.lysasp.min Run.polyALA.min Run.polyAT.min -+ Run.argasp.min Run.dadt.min Run.dgdc.min -+ Run.lysasp.min Run.polyALA.min Run.polyAT.min -+ -+Tests that produce possible FAILUREs: -+ cd sander_pbsa_ipb2 && ./Run.110D.min -+ cd sander_pbsa_lpb && ./Run.lsolver.min (only some of them fail here) -+ cd sander_pbsa_tsr && ./Run.tsrb.min -+ cd sander_pbsa_decres && ./Run.pbsa_decres -+ mm_pbsa.pl tests 02, 03, and 05 -+""" -+ -+print warning -diff -urN amber11.orig/dat/antechamber/ATOMTYPE_AMBER.DEF amber11/dat/antechamber/ATOMTYPE_AMBER.DEF ---- amber11.orig/dat/antechamber/ATOMTYPE_AMBER.DEF 2011-04-14 15:30:40.000000000 +0300 -+++ amber11/dat/antechamber/ATOMTYPE_AMBER.DEF 2011-10-25 15:01:28.198288560 +0300 -@@ -49,7 +49,7 @@ - ATD F * 9 1 & - ATD Cl * 17 1 & - ATD Br * 35 1 & --ATD F * 53 1 & -+ATD I * 53 1 & - ATD P * 15 & - ATD N1 * 7 1 & - ATD NB * 7 2 * * [RG5,AR1.AR2.AR3] & -diff -urN amber11.orig/dat/leap/cmd/leaprc.ff99SBnmr amber11/dat/leap/cmd/leaprc.ff99SBnmr ---- amber11.orig/dat/leap/cmd/leaprc.ff99SBnmr 2011-04-14 15:30:40.000000000 +0300 -+++ amber11/dat/leap/cmd/leaprc.ff99SBnmr 2011-10-25 15:01:28.239288522 +0300 -@@ -74,13 +74,6 @@ - { "OL" "O" "sp3" } - { "AC" "C" "sp3" } - { "EC" "C" "sp3" } --#ildn -- { "C3" "C" "sp3" } -- { "C4" "C" "sp3" } -- { "C5" "C" "sp2" } -- { "C6" "C" "sp2" } -- { "NP" "N" "sp2" } -- { "OM" "O" "sp2" } # guess!!! - } - # - # Load the main parameter set. -@@ -95,9 +88,9 @@ - # Load main chain and terminating - # amino acid libraries (i.e. ff94 libs) - # --loadOff all_amino94ildn.lib --loadOff all_aminoct94ildn.lib --loadOff all_aminont94ildn.lib -+loadOff all_amino94.lib -+loadOff all_aminoct94.lib -+loadOff all_aminont94.lib - # - # Load water and ions - # -diff -urN amber11.orig/dat/leap/parm/parm10.dat amber11/dat/leap/parm/parm10.dat ---- amber11.orig/dat/leap/parm/parm10.dat 2011-04-14 15:30:40.000000000 +0300 -+++ amber11/dat/leap/parm/parm10.dat 2011-10-25 15:01:28.218288541 +0300 -@@ -783,8 +783,10 @@ - OS-P -OS-CT 1 0.25 0.0 -3. JCC,7,(1986),230 - OS-P -OS-CT 1 1.20 0.0 2. gg> ene.631g*/mp2 - H1-CT-C -O 1 0.80 0.0 -1. Junmei et al, 1999 -+H1-CT-C -O 1 0.00 0.0 -2. Explicit of wild card X-C-CT-X - H1-CT-C -O 1 0.08 180.0 3. Junmei et al, 1999 - H1-CX-C -O 1 0.80 0.0 -1. Junmei et al, 1999 (was H1-CT-C -O ) -+H1-CX-C -O 1 0.00 0.0 -2. Explicit of wild card X-C-CT-X - H1-CX-C -O 1 0.08 180.0 3. Junmei et al, 1999 (was H1-CT-C -O ) - HC-CT-C -O 1 0.80 0.0 -1. Junmei et al, 1999 - HC-CT-C -O 1 0.00 0.0 -2. Explicit of wild card X-C-CT-X -diff -urN amber11.orig/dat/leap/parm/parm99.dat amber11/dat/leap/parm/parm99.dat ---- amber11.orig/dat/leap/parm/parm99.dat 2011-04-14 15:30:40.000000000 +0300 -+++ amber11/dat/leap/parm/parm99.dat 2011-10-25 15:01:28.221288538 +0300 -@@ -546,7 +546,7 @@ - OS-P -OS-CT 1 0.25 0.0 -3. JCC,7,(1986),230 - OS-P -OS-CT 1 1.20 0.0 2. gg> ene.631g*/mp2 - H1-CT-C -O 1 0.80 0.0 -1. Junmei et al, 1999 --HC-CT-C -O 1 0.00 0.0 -2. Explicit of wild card X-C-CT-X -+H1-CT-C -O 1 0.00 0.0 -2. Explicit of wild card X-C-CT-X - H1-CT-C -O 1 0.08 180.0 3. Junmei et al, 1999 - HC-CT-C -O 1 0.80 0.0 -1. Junmei et al, 1999 - HC-CT-C -O 1 0.00 0.0 -2. Explicit of wild card X-C-CT-X diff --git a/sci-chemistry/ambertools/files/ambertools-1.5-bugfix_22-27.patch b/sci-chemistry/ambertools/files/ambertools-1.5-bugfix_22-27.patch deleted file mode 100644 index 6df705cff..000000000 --- a/sci-chemistry/ambertools/files/ambertools-1.5-bugfix_22-27.patch +++ /dev/null @@ -1,3343 +0,0 @@ -diff -urN amber11.orig/AmberTools/examples/mtkpp/MCPB/run.MCPB.csh amber11/AmberTools/examples/mtkpp/MCPB/run.MCPB.csh ---- amber11.orig/AmberTools/examples/mtkpp/MCPB/run.MCPB.csh 2011-04-14 15:30:12.000000000 +0300 -+++ amber11/AmberTools/examples/mtkpp/MCPB/run.MCPB.csh 2012-03-03 20:03:01.387032575 +0200 -@@ -2,111 +2,10 @@ - echo " " - echo " MTK++ MCPB example " - echo " " -- --# Clean up --rm -rf 1AMP_OH.README --rm -rf *.bcl --rm -rf createLibraries.sh createRespAdditions.sh getCharges.sh --rm -rf *.pdb --rm -rf *.log -- --cp data/*.pdb . --cp data/*.bcl . --cp data/*.log . --cp data/*.fchk . -- --echo "Generating scripts " --sh genMetalFF.sh -n 1AMP_OH -- --cp data/1AMP.pdb . --cp data/1AMP_OH_fixed.pdb . --cp data/1AMP_OH_sidechain.bcl . --cp data/1AMP_OH_addStdMol.bcl . --cp data/1AMP_OH_large.bcl . --cp data/1AMP_OH_large_mk.log . -- --cp data/1AMP_OH_sidechain_fc_md.log . --cp data/1AMP_OH_sidechain_opt_md.fchk . --cp data/1AMP_OH_sidechain_opt_md.log . -- --echo "Adding Hydrogens to pdb file " --$AMBERHOME/bin/MCPB -i 1AMP_OH_addHs.bcl \ -- -l 1AMP_OH_addHs.bcl.log || goto error -- --echo "Creating Model 1" --$AMBERHOME/bin/MCPB -i 1AMP_OH_sidechain.bcl \ -- -l 1AMP_OH_sidechain.bcl.log || goto error -- --echo "Adding standard molecule to library " --$AMBERHOME/bin/MCPB -i 1AMP_OH_addStdMol.bcl \ -- -l 1AMP_OH_addStdMol.bcl.log || goto error -- --echo "Creating Model 2 " --$AMBERHOME/bin/MCPB -i 1AMP_OH_large.bcl \ -- -l 1AMP_OH_large.bcl.log || goto error -- --echo "Creating RESP files 0 " --$AMBERHOME/bin/MCPB -i 1AMP_OH_large_mk0.bcl \ -- -l 1AMP_OH_large_mk0.bcl.log || goto error --mv 1AMP_OH_large_respAdds 1AMP_OH_large_respAdds0 || goto error -- --echo "Creating RESP files 1 " --$AMBERHOME/bin/MCPB -i 1AMP_OH_large_mk1.bcl \ -- -l 1AMP_OH_large_mk1.bcl.log || goto error --mv 1AMP_OH_large_respAdds 1AMP_OH_large_respAdds1 || goto error -- --echo "Creating RESP files 2 " --$AMBERHOME/bin/MCPB -i 1AMP_OH_large_mk2.bcl \ -- -l 1AMP_OH_large_mk2.bcl.log || goto error --mv 1AMP_OH_large_respAdds 1AMP_OH_large_respAdds2 || goto error -- --echo "Creating RESP files 3 " --$AMBERHOME/bin/MCPB -i 1AMP_OH_large_mk3.bcl \ -- -l 1AMP_OH_large_mk3.bcl.log || goto error --mv 1AMP_OH_large_respAdds 1AMP_OH_large_respAdds3 || goto error -- --echo "Determining charges " --sh ./getCharges.sh 0 || goto error --sh ./getCharges.sh 1 || goto error --sh ./getCharges.sh 2 || goto error --sh ./getCharges.sh 3 || goto error -- --echo "Creating library files " --$AMBERHOME/bin/MCPB -i 1AMP_OH_large_chg0.bcl \ -- -l 1AMP_OH_large_chg0.bcl.log || goto error -- --$AMBERHOME/bin/MCPB -i 1AMP_OH_large_chg1.bcl \ -- -l 1AMP_OH_large_chg1.bcl.log || goto error -- --$AMBERHOME/bin/MCPB -i 1AMP_OH_large_chg2.bcl \ -- -l 1AMP_OH_large_chg2.bcl.log || goto error -- --$AMBERHOME/bin/MCPB -i 1AMP_OH_large_chg3.bcl \ -- -l 1AMP_OH_large_chg3.bcl.log || goto error -- --echo "Determining Seminario force constants " --$AMBERHOME/bin/MCPB -i 1AMP_OH_sidechain_fc_sem.bcl \ -- -l 1AMP_OH_sidechain_fc_sem.bcl.log || goto error -- --echo "Determining Traditional force constants " --$AMBERHOME/bin/MCPB -i 1AMP_OH_sidechain_fc_md.bcl \ -- -l 1AMP_OH_sidechain_fc_md.bcl.log || goto error -- --echo "Exporting Seminario library to AMBER format " --$AMBERHOME/bin/MCPB -i 1AMP_OH_toAmberFormats_sem.bcl \ -- -l 1AMP_OH_toAmberFormats_sem.bcl.log || goto error -- --echo "Exporting Traditional library to AMBER format " --$AMBERHOME/bin/MCPB -i 1AMP_OH_toAmberFormats_md.bcl \ -- -l 1AMP_OH_toAmberFormats_md.bcl.log || goto error -- --echo "Reading protonated file and updating residue names " --$AMBERHOME/bin/MCPB -i 1AMP_OH_resNames.bcl \ -- -l 1AMP_OH_resNames.bcl.log || goto error -- --echo No errors detected -+echo " " -+echo " This example has been removed due to incompatibility with" -+echo " the current minor revision of MTK++. An updated MCPB example" -+echo " is planned for a future release." -+echo " " - exit(0) - --error: --echo Problem: check log files and try again --exit(1) -diff -urN amber11.orig/AmberTools/examples/mtkpp/stats/pca1/run.stats.csh amber11/AmberTools/examples/mtkpp/stats/pca1/run.stats.csh ---- amber11.orig/AmberTools/examples/mtkpp/stats/pca1/run.stats.csh 2011-04-14 15:30:12.000000000 +0300 -+++ amber11/AmberTools/examples/mtkpp/stats/pca1/run.stats.csh 2012-03-03 20:03:01.387032575 +0200 -@@ -3,12 +3,12 @@ - echo " MTK++ stats example" - echo " " - --../$AMBERHOME/bin/stats -i pca.stats \ -- -l pca.stats.log || goto error -+$AMBERHOME/bin/stats -i pca.stats \ -+ -l pca.stats.log || goto error - - echo No errors detected - exit(0) - - error: - echo Problem: check .out and try again --exit(1) -\ Nav jaunu rindu faila beigās -+exit(1) -diff -urN amber11.orig/AmberTools/src/configure amber11/AmberTools/src/configure ---- amber11.orig/AmberTools/src/configure 2012-03-03 22:42:38.558776473 +0200 -+++ amber11/AmberTools/src/configure 2012-03-03 20:02:57.727033628 +0200 -@@ -61,6 +61,9 @@ - -debug Compile with debug symbols - -noopt Disable all compiler optimisations (sometimes needed if - debug symbols are requested) -+ -nopatch Do NOT run \$AMBERHOME/AT15_Amber11.py after configure writes -+ the config.h file, even if Amber11 is found in the directory. -+ This flag has no effect if Amber11 is not present. - - Rarely used/tested NAB options: - -scalapack Use ScaLAPACK for linear algebra. Do not use in -@@ -165,6 +168,7 @@ - debug='no' - optimise='yes' - is_mac='no' -+nopatch='no' - - #------------------------------------------------------------------------------ - # Architecture specific: -@@ -216,6 +220,7 @@ - -nomtkpp) mtkpp='';; - -debug) debug='yes';; - -noopt) optimise='no';; -+ -nopatch) nopatch='yes';; - -help) usage;; - --help) usage;; - -h) usage;; -@@ -2144,7 +2149,7 @@ - fi - - # For AmberTools 1.5 + Amber 11, print a message about running AT15_Amber11.py --if [ -d ../../src/sander ]; then -+if [ -d ../../src/sander -a "$nopatch" = 'yes' ]; then - echo "" - echo " NOTE: after installing AmberTools, if you want to compile" - echo " Amber11 using AmberTools 1.5, you must run the " -@@ -2155,5 +2160,14 @@ - echo " script will modify your Amber11 files.)" - fi - -+if [ -d ../../src/sander -a "$nopatch" = 'no' ]; then -+ echo "" -+ echo " Running \$AMBERHOME/AT15_Amber11.py to patch config.h for building Amber 11." -+ echo " Check Amber11_Conversion.log for details of what was done. Running this script" -+ echo " a second time has no effect (positive or negative)" -+ echo "" -+ ../../AT15_Amber11.py > Amber11_Conversion.log 2>&1 -+fi -+ - exit - -diff -urN amber11.orig/AmberTools/src/cpptraj/src/AmberRestart.cpp amber11/AmberTools/src/cpptraj/src/AmberRestart.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/AmberRestart.cpp 2012-03-03 22:42:00.557775196 +0200 -+++ amber11/AmberTools/src/cpptraj/src/AmberRestart.cpp 2012-03-03 20:03:06.928030979 +0200 -@@ -53,7 +53,7 @@ - mprintf("Error: AmberRestart::open(): Reading restart atoms/time.\n"); - return 1; - } -- nread=sscanf(buffer,"%5i%15lE%15lE",&restartAtoms,&restartTime,&restartTemp); -+ nread=sscanf(buffer,"%i %lE %lE",&restartAtoms,&restartTime,&restartTemp); - if (nread<1) { - mprintf("Error: AmberRestart::open(): Getting restart atoms/time.\n"); - return 1; -diff -urN amber11.orig/AmberTools/src/cpptraj/src/main.cpp amber11/AmberTools/src/cpptraj/src/main.cpp ---- amber11.orig/AmberTools/src/cpptraj/src/main.cpp 2012-03-03 22:42:47.132776753 +0200 -+++ amber11/AmberTools/src/cpptraj/src/main.cpp 2012-03-03 20:03:06.928030979 +0200 -@@ -6,7 +6,7 @@ - #include "PtrajMpi.h" - #include "CpptrajStdio.h" - #ifndef CPPTRAJ_VERSION_STRING --#define CPPTRAJ_VERSION_STRING "V1.1.1" -+#define CPPTRAJ_VERSION_STRING "V1.1.2" - #endif - - void Usage(char *programName) { -diff -urN amber11.orig/AmberTools/src/mmpbsa_py/MMPBSA_mods/amberoutputs.py amber11/AmberTools/src/mmpbsa_py/MMPBSA_mods/amberoutputs.py ---- amber11.orig/AmberTools/src/mmpbsa_py/MMPBSA_mods/amberoutputs.py 2011-04-14 15:30:17.000000000 +0300 -+++ amber11/AmberTools/src/mmpbsa_py/MMPBSA_mods/amberoutputs.py 2012-03-03 20:03:11.481029669 +0200 -@@ -2315,7 +2315,7 @@ - return math.sqrt(abs(_stdev(self.com_data[0]) ** 2 + _stdev(self.rec_data[0]) ** 2 + _stdev(self.lig_data[0]) ** 2)) - - sum = sum2 = 0 -- for i in range(len(self.com_data)): -+ for i in range(len(self.com_data[0])): - sum += self.com_data[0][i] - self.rec_data[0][i] - self.lig_data[0][i] - sum2 += (self.com_data[0][i] - self.rec_data[0][i] - self.lig_data[0][i]) ** 2 - -diff -urN amber11.orig/AmberTools/src/mtkpp/configure amber11/AmberTools/src/mtkpp/configure ---- amber11.orig/AmberTools/src/mtkpp/configure 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/configure 2012-03-03 20:03:01.397032571 +0200 -@@ -788,7 +788,6 @@ - with_gnu_ld - with_sysroot - enable_libtool_lock --with_gnu_ld - with_mkl_dir - with_mkl_libs - with_boost -@@ -811,22 +810,9 @@ - CCC - CC - CFLAGS --LDFLAGS --LIBS --CPPFLAGS - CPP --CPPFLAGS - CXXCPP --CPPFLAGS --XMKMF --CXX --LDFLAGS --LIBS --CPPFLAGS --CCC --CC --LDFLAGS --LIBS' -+XMKMF' - - - # Initialize some variables set by options. -@@ -16665,7 +16651,7 @@ - *) platform=UNKNOWN - is_unknown=yes - echo 'ERROR: this platform is not supported at this time!' -- exit 1 ;; -+ exit ;; - esac - if test "$is_darwin" = "yes"; then - IS_DARWIN_TRUE= -@@ -17838,8 +17824,8 @@ - $as_echo "#define HAVE_ZLIB 1" >>confdefs.h - - CFLAGS=$CFLAGS" -DHAVE_ZLIB" -- CXXFLAGS=$CXXFLAGS" -DHAVE_ZLIB -DHAVE_ZLIB" -- defines_string=$defines_string" -DHAVE_ZLIB -DHAVE_ZLIB" -+ CXXFLAGS=$CXXFLAGS" -DHAVE_ZLIB" -+ defines_string=$defines_string" -DHAVE_ZLIB" - FLIBS=$FLIBS" -lz" - else - -diff -urN amber11.orig/AmberTools/src/mtkpp/configure.in amber11/AmberTools/src/mtkpp/configure.in ---- amber11.orig/AmberTools/src/mtkpp/configure.in 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/configure.in 2012-03-03 20:03:01.400032571 +0200 -@@ -383,7 +383,7 @@ - *) platform=UNKNOWN - is_unknown=yes - echo 'ERROR: this platform is not supported at this time!' -- exit 1 ;; -+ exit ;; - esac - AM_CONDITIONAL(IS_DARWIN, test "$is_darwin" = "yes") - AM_CONDITIONAL(IS_LINUX, test "$is_linux" = "yes") -@@ -457,8 +457,8 @@ - if test $ac_have_zlibh = yes; then - AC_DEFINE(HAVE_ZLIB, 1, [Define to 1 if ZLIB is available.]) - CFLAGS=$CFLAGS" -DHAVE_ZLIB" -- CXXFLAGS=$CXXFLAGS" -DHAVE_ZLIB -DHAVE_ZLIB" -- defines_string=$defines_string" -DHAVE_ZLIB -DHAVE_ZLIB" -+ CXXFLAGS=$CXXFLAGS" -DHAVE_ZLIB" -+ defines_string=$defines_string" -DHAVE_ZLIB" - FLIBS=$FLIBS" -lz" - else - AC_DEFINE(HAVE_ZLIB, 0, [Define to 0 if ZLIB is unavailable.]) -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Minimizers/Makefile.am amber11/AmberTools/src/mtkpp/src/Minimizers/Makefile.am ---- amber11.orig/AmberTools/src/mtkpp/src/Minimizers/Makefile.am 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Minimizers/Makefile.am 2012-03-03 20:03:01.400032571 +0200 -@@ -1,4 +1,4 @@ --DIAGNOSTICS_LD=-L$(top_builddir)/src/Diagnostics/$(SRCDIR) -+DIAGNOSTICS_LD=-L$(abs_top_builddir)/src/Diagnostics/$(SRCDIR) - DIAGNOSTICS_LIB=-lDiagnostics - INCLUDES = -I$(srcdir)/.. - -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Minimizers/Makefile.in amber11/AmberTools/src/mtkpp/src/Minimizers/Makefile.in ---- amber11.orig/AmberTools/src/mtkpp/src/Minimizers/Makefile.in 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Minimizers/Makefile.in 2012-03-03 20:03:01.401032571 +0200 -@@ -239,7 +239,7 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xerces_path = @xerces_path@ --DIAGNOSTICS_LD = -L$(top_builddir)/src/Diagnostics/$(SRCDIR) -+DIAGNOSTICS_LD = -L$(abs_top_builddir)/src/Diagnostics/$(SRCDIR) - DIAGNOSTICS_LIB = -lDiagnostics - INCLUDES = -I$(srcdir)/.. - lib_LTLIBRARIES = libMinimizers.la -diff -urN amber11.orig/AmberTools/src/mtkpp/src/MM/Makefile.am amber11/AmberTools/src/mtkpp/src/MM/Makefile.am ---- amber11.orig/AmberTools/src/mtkpp/src/MM/Makefile.am 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/MM/Makefile.am 2012-03-03 20:03:01.400032571 +0200 -@@ -1,6 +1,6 @@ --DIAGNOSTICS_LD=-L$(top_builddir)/src/Diagnostics/$(SRCDIR) -+DIAGNOSTICS_LD=-L$(abs_top_builddir)/src/Diagnostics/$(SRCDIR) - DIAGNOSTICS_LIB=-lDiagnostics --LOG_LD=-L$(top_builddir)/src/Log/$(SRCDIR) -+LOG_LD=-L$(abs_top_builddir)/src/Log/$(SRCDIR) - LOG_LIB=-lLog - - INCLUDES = -I@boost_inc@ -I$(srcdir)/.. -diff -urN amber11.orig/AmberTools/src/mtkpp/src/MM/Makefile.in amber11/AmberTools/src/mtkpp/src/MM/Makefile.in ---- amber11.orig/AmberTools/src/mtkpp/src/MM/Makefile.in 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/MM/Makefile.in 2012-03-03 20:03:01.400032571 +0200 -@@ -241,9 +241,9 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xerces_path = @xerces_path@ --DIAGNOSTICS_LD = -L$(top_builddir)/src/Diagnostics/$(SRCDIR) -+DIAGNOSTICS_LD = -L$(abs_top_builddir)/src/Diagnostics/$(SRCDIR) - DIAGNOSTICS_LIB = -lDiagnostics --LOG_LD = -L$(top_builddir)/src/Log/$(SRCDIR) -+LOG_LD = -L$(abs_top_builddir)/src/Log/$(SRCDIR) - LOG_LIB = -lLog - INCLUDES = -I@boost_inc@ -I$(srcdir)/.. - lib_LTLIBRARIES = libMM.la -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Molecule/atomType.h amber11/AmberTools/src/mtkpp/src/Molecule/atomType.h ---- amber11.orig/AmberTools/src/mtkpp/src/Molecule/atomType.h 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Molecule/atomType.h 2012-03-03 20:03:01.402032570 +0200 -@@ -74,6 +74,9 @@ - - //! - double evalue; -+ -+ //! Atomic polarizability in A**3 -+ double atomPolarizability; - }; - - // ============================================================ -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Molecule/collection.cpp amber11/AmberTools/src/mtkpp/src/Molecule/collection.cpp ---- amber11.orig/AmberTools/src/mtkpp/src/Molecule/collection.cpp 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Molecule/collection.cpp 2012-03-03 20:03:01.403032569 +0200 -@@ -484,6 +484,11 @@ - for (moleculeIterator m = this->itsMoleculeList.begin(); - m != this->itsMoleculeList.end(); m++) { - pMolecule = *m; -+ -+ if (pMolecule->getName() == "Reference") { -+ continue; -+ } -+ - std::vector<submolecule*> subMolList = pMolecule->getSubMoleculeList(); - for (sMolIterator c = subMolList.begin(); c != subMolList.end(); c++) { - pSubMolecule = *c; -@@ -3408,7 +3413,10 @@ - } - errMessage += metalAtom->getParent()->getName() + "@|" - + metalAtom->getName() + "|-" -- + primShellAtoms[e]->getParent()->getName() + "@|" -+ + primShellAtoms[e]->getParent()->getName() -+ + i2s(primShellAtoms[e]->getParent()->getSubMolId()) -+ + primShellAtoms[e]->getParent()->getiCode() -+ + "@|" - + primShellAtoms[e]->getName() + "| dist = " + d2s(localBond->size) +"\n"; - - // Angles -@@ -3488,7 +3496,8 @@ - std::vector<stdGroup*> stdGrpList = this->pStdLibrary->getStdGroupList(); - - for (unsigned int i = 0; i < stdGrpList.size(); i++) { --//std::cout << i << " " << stdGrpList.size() << " " << stdGrpList[i]->getName() << " " << stdGrpList[i]->hasStdMolecule() << std::endl; -+//std::cout << "\n\ncollection::assignMetalParameters " << i << " " << stdGrpList.size() << " " << stdGrpList[i]->getName() << " " -+// << stdGrpList[i]->hasStdMolecule() << std::endl; - if (stdGrpList[i]->hasStdMolecule()) { - //std::cout << "stdgroup name: " << stdGrpList[i]->getName() << std::endl; - //stdGroup* pStdGroup = stdGrpList[i]; -@@ -3515,6 +3524,7 @@ - - // create new molecule - molecule* pNewMolecule = this->addMolecule(); -+ std::vector<atom*> atomList; - - // copy residues - std::vector<metalCenter*> metCens = itsMetalGroups[j]->getMetalCenters(); -@@ -3536,6 +3546,10 @@ - addedResidues.push_back(primShellAtoms[l]->getParent()); - submolecule* pNewSubmolecule = pNewMolecule->addSubMolecule(); - pNewSubmolecule->copy(primShellAtoms[l]->getParent()); -+ std::vector<atom*> atomListTmp = primShellAtoms[l]->getParent()->getAtomList(); -+ for (unsigned int i = 0 ; i < atomListTmp.size(); i++) { -+ atomList.push_back(atomListTmp[i]); -+ } - /* - std::cout << "Primary Shell " << primShellAtoms[l]->getParent()->getName() << " " - << primShellAtoms[l]->getParent()->getSubMolId() << " " -@@ -3556,6 +3570,11 @@ - addedResidues.push_back(secShellAtoms[l]->getParent()); - submolecule* pNewSubmolecule = pNewMolecule->addSubMolecule(); - pNewSubmolecule->copy(secShellAtoms[l]->getParent()); -+ -+ std::vector<atom*> atomListTmp = secShellAtoms[l]->getParent()->getAtomList(); -+ for (unsigned int i = 0 ; i < atomListTmp.size(); i++) { -+ atomList.push_back(atomListTmp[i]); -+ } - /* - std::cout << "Secondary Shell " << secShellAtoms[l]->getParent()->getName() << " " - << secShellAtoms[l]->getParent()->getSubMolId() -@@ -3573,6 +3592,12 @@ - addedResidues.push_back(metalAtom->getParent()); - submolecule* pNewSubmolecule = pNewMolecule->addSubMolecule(); - pNewSubmolecule->copy(metalAtom->getParent()); -+ -+ std::vector<atom*> atomListTmp = metalAtom->getParent()->getAtomList(); -+ for (unsigned int i = 0 ; i < atomListTmp.size(); i++) { -+ atomList.push_back(atomListTmp[i]); -+ } -+ - /* - std::cout << "Metal Atom " << metalAtom->getParent()->getName() << " " - << metalAtom->getParent()->getSubMolId() -@@ -3582,7 +3607,7 @@ - } - } - --//std::cout << " \n\n NEW MOLECULE \n"; -+//std::cout << "NEW MOLECULE \n"; - - // Copy bonds - if (pNewMolecule) { -@@ -3646,16 +3671,26 @@ - } - } - } -+ -+//std::cout << " After copy " << std::endl; -+ - int nAtomsA = pStdMolecule->getNumAtoms(); - int nAtomsB = pNewMolecule->getNumAtoms(); -+ -+ int nBondsA = pStdMolecule->getNumBonds(); -+ int nBondsB = pNewMolecule->getNumBonds(); -+ - int nHeavyAtomsA = pStdMolecule->getNumHeavyAtoms(); - int nHeavyAtomsB = pNewMolecule->getNumHeavyAtoms(); - -+//std::cout << "CHECK " << nAtomsA << " " << nAtomsB << " " << nBondsA << " " << nBondsB << "\n"; - int w = 0; - if (nAtomsA != nAtomsB) w++; - int h = 0; - if (nHeavyAtomsA != nHeavyAtomsB) h++; - -+//std::cout << " w = " << w << " h = " << h << std::endl; -+ - if (w or h) { - std::string eMes = " " + stdGrpList[i]->getName() + " is not a match \n"; - eMes += " std mol nAtoms: " + i2s(nAtomsA) + -@@ -3671,8 +3706,17 @@ - // Determine corresponences between two molecules - std::vector<std::vector<int> > correspondenceMatrices; - //int cor = 0; -+//std::cout << " superimpose " << std::endl; - superimpose* pSuperImpose = new superimpose(); -- int f = pSuperImpose->initializeCorrespondences(pStdMolecule, pNewMolecule, 3, correspondenceMatrices); -+ int f = 0; -+ try { -+ f = pSuperImpose->initializeCorrespondences(pStdMolecule, pNewMolecule, 3, correspondenceMatrices); -+ } -+ catch (...) { -+ f = 1; -+ } -+ -+//std::cout << " after superimpose " << std::endl; - - if (f != 0) { - std::string eMes = " Error initializing correspondences\n " + stdGrpList[i]->getName() + " is not a match \n"; -@@ -3689,6 +3733,8 @@ - pNewMolecule->getCoordinates(CoordsB); - int cor = 0; - -+//std::cout << " f = 0 " << std::endl; -+ - double dRMSD = pSuperImpose->rmsd(pStdMolecule, CoordsB, correspondenceMatrices, cor); - std::string eMes = " " + stdGrpList[i]->getName() + " is a match with rmsd of " + d2s(dRMSD) + "\n"; - MTKpp::errorLogger.throwError("collection::assignMetalParameters", eMes, INFO); -@@ -3703,38 +3749,52 @@ - for (int t = 0; t < nHeavyAtoms; t++) { - for (int t2 = 0; t2 < nHeavyAtoms; t2++) { - if (correspondenceMatrices[cor][t*nHeavyAtoms+t2]) { --//std::cout << t+1 << ":" << t2+1 << "; |"; -- - atom* pA1 = molHeavyAtoms1[t]; - atom* pA2 = molHeavyAtoms2[t2]; - - if (pA1 and pA2) { --//atom* collection::getAtom(int number, bool atomIndex, bool fileId, bool atomColIndex) -- -+ // getAtom(int number, bool atomIndex, bool fileId, bool atomColIndex) - atom* pOrgAtom = this->getAtom(pA2->getFileID(), 0, 1, 0); --/* --std::cout << pA1->getName() << "|" << pA2->getName() << "|" << pOrgAtom->getName() << " " -- << pA1->getParent()->getName() << "|" << pA2->getParent()->getName() << "|" << pOrgAtom->getParent()->getName() << " |" -- << pA1->getFileID() << "|" << pA2->getFileID() << "|" << pOrgAtom->getFileID() << "|" -- << pA1->getColIndex() << "|" << pA2->getColIndex() << "|" << pOrgAtom->getColIndex() -- << " |\n"; --*/ -- pOrgAtom->getParent()->setName(pA1->getParent()->getName()); -+ // atom* pOrgAtom = this->getAtom(pA2->getColIndex(), 0, 0, 1); -+ -+ -+//std::cout << pA1->getName() << "|" << pA2->getName() << "|" << pOrgAtom->getName() << " " -+// << pA1->getParent()->getName() << "|" << pA2->getParent()->getName() << "|" << pOrgAtom->getParent()->getName() << " |" -+// << pA1->getFileID() << "|" << pA2->getFileID() << "|" << pOrgAtom->getFileID() << "|" -+// << pA1->getColIndex() << "|" << pA2->getColIndex() << "|" << pOrgAtom->getColIndex() -+// << " |\n"; -+ -+ //pOrgAtom->getParent()->setName(pA1->getParent()->getName()); -+ -+ for (unsigned int i = 0 ; i < atomList.size(); i++) { -+ if (atomList[i]->getFileID() == pA2->getFileID()) { -+ //std::cout << "setting " << atomList[i]->getParent()->getName() << " to " -+ // << pA1->getParent()->getName() << "\n"; -+ atomList[i]->getParent()->setName(pA1->getParent()->getName()); -+ } - } -+//std::cout << pOrgAtom->getParent() << " " << pOrgAtom->getParent()->getName() << " " -+//<< pA2->getFileID() -+// << " " << pOrgAtom->getParent()->getColIndex() << "\n"; - } - } - } - } -+ -+ } - } - } - } -+ - // delete new molecule -+ if (pNewMolecule) { - this->delMolecule(pNewMolecule); - } - } - } - } - } -+ } - - /////////////////////////////////////////////////////////////////////////////// - /////////////////////////////////////////////////////////////////////////////// -@@ -4377,6 +4437,7 @@ - } - std::cout << " TOTAL CHARGE = " << localTotalCharge << std::endl; - */ -+ - } - - // ============================================================ -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Molecule/hydrophobize.cpp amber11/AmberTools/src/mtkpp/src/Molecule/hydrophobize.cpp ---- amber11.orig/AmberTools/src/mtkpp/src/Molecule/hydrophobize.cpp 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Molecule/hydrophobize.cpp 2012-03-03 20:03:01.404032569 +0200 -@@ -315,7 +315,7 @@ - if (!vertices[i]->isVisited()) { - graph* subGraph = new graph(); - -- std::cout << "\n " << vertices[i]->getIndex() << " "; -+// std::cout << "\n " << vertices[i]->getIndex() << " "; - molGraph->dfs(vertices[i]); - - for (unsigned int j = 0; j < vertices.size(); j++) { -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Molecule/Makefile.am amber11/AmberTools/src/mtkpp/src/Molecule/Makefile.am ---- amber11.orig/AmberTools/src/mtkpp/src/Molecule/Makefile.am 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Molecule/Makefile.am 2012-03-03 20:03:01.401032571 +0200 -@@ -1,8 +1,8 @@ --DIAGNOSTICS_LD=-L$(top_builddir)/src/Diagnostics/$(SRCDIR) -+DIAGNOSTICS_LD=-L$(abs_top_builddir)/src/Diagnostics/$(SRCDIR) - DIAGNOSTICS_LIB=-lDiagnostics --GRAPH_LD=-L$(top_builddir)/src/Graph/$(SRCDIR) -+GRAPH_LD=-L$(abs_top_builddir)/src/Graph/$(SRCDIR) - GRAPH_LIB=-lGraph --LOG_LD=-L$(top_builddir)/src/Log/$(SRCDIR) -+LOG_LD=-L$(abs_top_builddir)/src/Log/$(SRCDIR) - LOG_LIB=-lLog - - INCLUDES = -I@boost_inc@ -I$(srcdir)/.. -I$(top_srcdir)/src/eigen3b2 -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Molecule/Makefile.in amber11/AmberTools/src/mtkpp/src/Molecule/Makefile.in ---- amber11.orig/AmberTools/src/mtkpp/src/Molecule/Makefile.in 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Molecule/Makefile.in 2012-03-03 20:03:01.401032571 +0200 -@@ -248,11 +248,11 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xerces_path = @xerces_path@ --DIAGNOSTICS_LD = -L$(top_builddir)/src/Diagnostics/$(SRCDIR) -+DIAGNOSTICS_LD = -L$(abs_top_builddir)/src/Diagnostics/$(SRCDIR) - DIAGNOSTICS_LIB = -lDiagnostics --GRAPH_LD = -L$(top_builddir)/src/Graph/$(SRCDIR) -+GRAPH_LD = -L$(abs_top_builddir)/src/Graph/$(SRCDIR) - GRAPH_LIB = -lGraph --LOG_LD = -L$(top_builddir)/src/Log/$(SRCDIR) -+LOG_LD = -L$(abs_top_builddir)/src/Log/$(SRCDIR) - LOG_LIB = -lLog - INCLUDES = -I@boost_inc@ -I$(srcdir)/.. -I$(top_srcdir)/src/eigen3b2 - lib_LTLIBRARIES = libMolecule.la -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Molecule/parameters.cpp amber11/AmberTools/src/mtkpp/src/Molecule/parameters.cpp ---- amber11.orig/AmberTools/src/mtkpp/src/Molecule/parameters.cpp 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Molecule/parameters.cpp 2012-03-03 20:03:01.404032569 +0200 -@@ -145,6 +145,7 @@ - pAtomType->description = ""; - pAtomType->rvalue = 0.0; - pAtomType->evalue = 0.0; -+ pAtomType->atomPolarizability = 0.0; - pAtomType->groupName = ""; - pAtomType->optimize = false; - this->itsTypeList.push_back(pAtomType); -@@ -184,6 +185,7 @@ - pAtomType->description = a->description; - pAtomType->rvalue = a->rvalue; - pAtomType->evalue = a->evalue; -+ pAtomType->atomPolarizability = a->atomPolarizability; - pAtomType->groupName = g; - pAtomType->optimize = a->optimize; - -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Molecule/parameters.h amber11/AmberTools/src/mtkpp/src/Molecule/parameters.h ---- amber11.orig/AmberTools/src/mtkpp/src/Molecule/parameters.h 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Molecule/parameters.h 2012-03-03 20:03:01.405032569 +0200 -@@ -76,6 +76,9 @@ - //! Well Depth - double evalue; - -+ //! Atomic polarizability in A**3 -+ double atomPolarizability; -+ - //! group name - std::string groupName; - -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Molecule/stdFrag.cpp amber11/AmberTools/src/mtkpp/src/Molecule/stdFrag.cpp ---- amber11.orig/AmberTools/src/mtkpp/src/Molecule/stdFrag.cpp 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Molecule/stdFrag.cpp 2012-03-03 20:03:01.405032569 +0200 -@@ -305,7 +305,8 @@ - this->itsSymbol = symbol; - } - else { -- std::cout << " Length of Fragment Symbol = " << symbol.size() -+ std::cout << " Length of Fragment Symbol (" << symbol -+ << ") = " << symbol.size() - << " --> Must be 3." << std::endl; - } - } -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Molecule/stdGroup.cpp amber11/AmberTools/src/mtkpp/src/Molecule/stdGroup.cpp ---- amber11.orig/AmberTools/src/mtkpp/src/Molecule/stdGroup.cpp 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Molecule/stdGroup.cpp 2012-03-03 20:03:01.406032569 +0200 -@@ -35,6 +35,7 @@ - #include "stdLibrary.h" - - #include "molecule.h" -+#include "submolecule.h" - - namespace MTKpp - { -@@ -258,5 +259,24 @@ - } - } - -+// ============================================================ -+// Function : getCharge() -+// ------------------------------------------------------------ -+// -+// ============================================================ -+double stdGroup::getCharge() -+{ -+ double d = 0.0; -+ if (pMolecule) { -+ std::vector<submolecule*> sList = this->pMolecule->getSubMoleculeList(); -+ for (unsigned int p = 0; p < sList.size(); p++) { -+ this->pStdFrag = this->getStdFrag(sList[p]->getName()); -+ d += this->pStdFrag->getCharge(); -+ //std::cout << this->pStdFrag->getSymbol() << " " << this->pStdFrag->getCharge() << std::endl; -+ } -+ } -+ return d; -+} -+ - } // MTKpp namespace - -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Molecule/stdGroup.h amber11/AmberTools/src/mtkpp/src/Molecule/stdGroup.h ---- amber11.orig/AmberTools/src/mtkpp/src/Molecule/stdGroup.h 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Molecule/stdGroup.h 2012-03-03 20:03:01.406032569 +0200 -@@ -160,6 +160,12 @@ - */ - molecule* getStdMolecule(); - -+ /*! -+ \brief Get getCharge -+ \return molecule charge -+ */ -+ double getCharge(); -+ - protected: - //! stdLibrary pointer - stdLibrary* pParent; -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Parsers/frcmodParser.cpp amber11/AmberTools/src/mtkpp/src/Parsers/frcmodParser.cpp ---- amber11.orig/AmberTools/src/mtkpp/src/Parsers/frcmodParser.cpp 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Parsers/frcmodParser.cpp 2012-03-03 20:03:01.407032569 +0200 -@@ -98,6 +98,7 @@ - while (ifrcmod) { - std::string buffer(80,'*'); - getline(ifrcmod,fileline); -+//std::cout << "|" << fileline << "|" << std::endl; - bMASS = false; - bBOND = false; - bANGLE = false; -@@ -105,118 +106,311 @@ - bIMPROPER = false; - bNONBON = false; - -+ if ( (fileline.size() > 0) and (stripString(fileline, " ") != "") ) { -+ std::vector<std::string> splitstring; -+ splitString(fileline, " ", splitstring, 0); -+ -+ if (splitstring[0] == "MASS") bMASS = true; -+ if (splitstring[0] == "BOND") bBOND = true; -+ if (splitstring[0] == "ANGL" or splitstring[0] == "ANGLE") bANGLE = true; -+ if (splitstring[0] == "DIHE" or splitstring[0] == "DIHEDRAL") bDIHE = true; -+ if (splitstring[0] == "IMPROP" or splitstring[0] == "IMPROPER") bIMPROPER = true; -+ if (splitstring[0] == "NONB" or splitstring[0] == "NONBON") bNONBON = true; -+ } -+/* -+ try { - if (fileline.substr(0,4) == "MASS") bMASS = true; -+ } -+ catch (std::out_of_range) { -+ std::cout << " out_of_range MAS " << std::endl; -+ } -+ -+ try { - if (fileline.substr(0,4) == "BOND") bBOND = true; -+ } -+ catch (std::out_of_range) { -+ std::cout << " out_of_range BOND " << std::endl; -+ } -+ -+ try { - if (fileline.substr(0,5) == "ANGLE") bANGLE = true; -+ } -+ catch (std::out_of_range) { -+ std::cout << " out_of_range ANG" << std::endl; -+ } -+ -+ try { - if (fileline.substr(0,4) == "DIHE") bDIHE = true; -+ } -+ catch (std::out_of_range) { -+ std::cout << " out_of_range DIHE " << std::endl; -+ } -+ -+ try { - if (fileline.substr(0,8) == "IMPROPER") bIMPROPER = true; -+ } -+ catch (std::out_of_range) { -+ std::cout << " out_of_range IMP " << std::endl; -+ } -+ -+ try { - if (fileline.substr(0,6) == "NONBON") bNONBON = true; -+ } -+ catch (std::out_of_range) { -+ std::cout << " out_of_range NONB" << std::endl; -+ } -+*/ - - if (bMASS) { - getline(ifrcmod,fileline); -- while (fileline != "") { -+ while (stripString(fileline, " ") != "") { -+ //while (GetAlphaChar(fileline, 0) != "0") { -+ std::vector<std::string> splitLine; -+ splitString(fileline, " ", splitLine, 0); -+ if (splitLine.size() >= 2) { -+ for (unsigned int i = 0; i < 2; i++) { -+ splitLine[i] = stripString(splitLine[i], " "); -+ } - pAtomType = pParameters->addAtomType(); -+ pAtomType->name = splitLine[0]; - pAtomType->groupName = this->groupName; -- pAtomType->mass = strtod(fileline.substr(3,5).c_str(), 0); -+ pAtomType->mass = string2Double(splitLine[1]); //strtod(fileline.substr(3,5).c_str(), 0); -+ -+ if (splitLine.size() > 2) { -+ char *end; -+ double ret_double = strtod(splitLine[2].c_str(), &end); -+ if (!*end) { -+ pAtomType->atomPolarizability = ret_double; -+ } -+//std::cout << splitLine[2] << " " << ret_double << std::endl; -+ } -+ - getline(ifrcmod,fileline); - } - } -+ } - - if (bBOND) { - getline(ifrcmod,fileline); -- while (fileline != "") { -- std::string atomNames = fileline.substr(0,5); -+ //while (fileline != "") { -+ while (stripString(fileline, " ") != "") { -+ //std::string atomNames = fileline.substr(0,5); - std::vector<std::string> splitLine; -- splitString(atomNames, "-", splitLine, 0); -- if (splitLine.size() == 2) { -- for (unsigned int i = 0; i < 2; i++) { -- splitLine[i] = stripString(splitLine[i]," "); -- } -+ splitString(fileline, "-", splitLine, 0); -+ -+ std::vector<std::string> splitLine2; -+ splitString(splitLine[1], " ", splitLine2, 0); -+ -+ //if (splitLine.size() == 2) { -+ //for (unsigned int i = 0; i < 2; i++) { -+ // splitLine[i] = stripString(splitLine[i]," "); -+ //} - pBondParam = pParameters->addBondParam(); - pBondParam->groupName = this->groupName; -- pBondParam->atomType1 = std::string(splitLine[0]); -- pBondParam->atomType2 = std::string(splitLine[1]); -- pBondParam->keq = strtod(fileline.substr(7,5).c_str(), 0); -- pBondParam->req = strtod(fileline.substr(16,5).c_str(), 0); -+ pBondParam->atomType1 = stripString(splitLine[0], " "); -+ pBondParam->atomType2 = stripString(splitLine2[0], " "); -+//std::cout << "|" << pBondParam->atomType1 << "|" << pBondParam->atomType2 << "|" << std::endl; -+ pBondParam->keq = string2Double(splitLine2[1]); -+ pBondParam->req = string2Double(splitLine2[2]); -+ -+// pBondParam->keq = strtod(fileline.substr(7,5).c_str(), 0); -+// pBondParam->req = strtod(fileline.substr(16,5).c_str(), 0); -+ -+//std::cout << "\n " << fileline << std::endl; -+//std::cout << " BOND " << pBondParam->atomType1 << " " << pBondParam->atomType2 << " " << pBondParam->keq << " " << pBondParam->req << std::endl; -+//std::cout << " BOND " << fileline.substr(7,5) << " " << fileline.substr(16,5) <<std::endl; -+ - getline(ifrcmod,fileline); -- } -+ //} - } - } - - if (bANGLE) { - getline(ifrcmod,fileline); -- while (fileline != "") { -- std::string atomNames = fileline.substr(0,8); -+ //while (fileline != "") { -+ while (stripString(fileline, " ") != "") { -+// std::string atomNames = fileline.substr(0,8); -+ - std::vector<std::string> splitLine; -- splitString(atomNames, "-", splitLine, 0); -- if (splitLine.size() == 3) { -- for (unsigned int i = 0; i < 3; i++) { -- splitLine[i] = stripString(splitLine[i]," "); -- } -+ splitString(fileline, "-", splitLine, 0); -+ -+ std::vector<std::string> splitLine2; -+ splitString(splitLine[2], " ", splitLine2, 0); -+ -+ //std::vector<std::string> splitLine; -+ //splitString(atomNames, "-", splitLine, 0); -+ -+ //std::vector<std::string> splitLine2; -+ //splitString(fileline, " ", splitLine2, 0); -+ -+ //if (splitLine.size() == 3) { -+ //for (unsigned int i = 0; i < 3; i++) { -+ // splitLine[i] = stripString(splitLine[i]," "); -+ //} - pAngleParam = pParameters->addAngleParam(); - pAngleParam->groupName = this->groupName; -- pAngleParam->atomType1 = std::string(splitLine[0]); -- pAngleParam->atomType2 = std::string(splitLine[1]); -- pAngleParam->atomType3 = std::string(splitLine[2]); -- pAngleParam->keq = strtod(fileline.substr(11,7).c_str(), 0); -- pAngleParam->req = strtod(fileline.substr(20,8).c_str(), 0) * DEG2RAD; -+ pAngleParam->atomType1 = stripString(splitLine[0], " "); -+ pAngleParam->atomType2 = stripString(splitLine[1], " "); -+ pAngleParam->atomType3 = stripString(splitLine2[0], " "); -+//std::cout << "|" << pAngleParam->atomType1 << "|" << pAngleParam->atomType2 << "|" << pAngleParam->atomType3 << "|" << std::endl; -+ -+ pAngleParam->keq = string2Double(splitLine2[1]); -+ pAngleParam->req = string2Double(splitLine2[2]) * DEG2RAD; -+ -+ //pAngleParam->keq = strtod(fileline.substr(11,7).c_str(), 0); -+ //pAngleParam->req = strtod(fileline.substr(20,8).c_str(), 0) * DEG2RAD; -+ -+//std::cout << "\n " << fileline << std::endl; -+//std::cout << " ANGLE " << pAngleParam->atomType1 << " " << pAngleParam->atomType2 << " " << pAngleParam->atomType3 << " " << pAngleParam->keq << " " << string2Double(splitLine2[2]) << std::endl; -+ - getline(ifrcmod,fileline); -- } -+ //} - } - } - - if (bDIHE) { - getline(ifrcmod,fileline); -- while (fileline != "") { -- std::string atomNames = fileline.substr(0,11); -+ //while (fileline != "") { -+ while (stripString(fileline, " ") != "") { -+ -+//std::cout << "\n " << fileline << std::endl; -+ -+//std::cout << fileline.substr(0,12) << std::endl; -+ -+// snip = str.substr(0,12); -+//(3) erase the substring of 0..where str.erase(0,where); -+ -+ std::string atTypes = fileline.substr(0,12); - std::vector<std::string> splitLine; -- splitString(atomNames, "-", splitLine, 0); -- if (splitLine.size() == 4) { -- for (unsigned int i = 0; i < 4; i++) { -- splitLine[i] = stripString(splitLine[i]," "); -- } -+ splitString(atTypes, "-", splitLine, 0); -+ -+/*for (unsigned int i = 0; i < splitLine.size(); i++) { -+ std::cout << splitLine[i] << std::endl; -+}*/ -+ -+ fileline.erase(0,12); -+ -+ std::vector<std::string> splitLine2; -+ splitString(fileline, " ", splitLine2, 0); -+/* -+for (unsigned int i = 0; i < splitLine2.size(); i++) { -+ std::cout << splitLine2[i] << std::endl; -+}*/ -+ -+ //std::string atomNames = fileline.substr(0,11); -+ //std::vector<std::string> splitLine; -+ //splitString(atomNames, "-", splitLine, 0); -+ -+ //if (splitLine.size() == 4) { -+ //for (unsigned int i = 0; i < 4; i++) { -+ //splitLine[i] = stripString(splitLine[i], " "); -+ //} - pTorsionParam = pParameters->addTorsionParam(); - pTorsionParam->groupName = this->groupName; -- pTorsionParam->atomType1 = std::string(splitLine[0]); -- pTorsionParam->atomType2 = std::string(splitLine[1]); -- pTorsionParam->atomType3 = std::string(splitLine[2]); -- pTorsionParam->atomType4 = std::string(splitLine[3]); -- pTorsionParam->npth = atoi(fileline.substr(11,4).c_str()); -- pTorsionParam->Vn = strtod(fileline.substr(18,8).c_str(), 0); -- pTorsionParam->gamma = strtod(fileline.substr(31,8).c_str(), 0) * DEG2RAD; -- pTorsionParam->Nt = strtod(fileline.substr(42,12).c_str(), 0); -+ pTorsionParam->atomType1 = stripString(splitLine[0], " "); -+ pTorsionParam->atomType2 = stripString(splitLine[1], " "); -+ pTorsionParam->atomType3 = stripString(splitLine[2], " "); -+ pTorsionParam->atomType4 = stripString(splitLine[3], " "); -+ -+ pTorsionParam->npth = string2Int(splitLine2[0]); -+ pTorsionParam->Vn = string2Double(splitLine2[1]); -+ pTorsionParam->gamma = string2Double(splitLine2[2]) * DEG2RAD; -+ pTorsionParam->Nt = string2Double(splitLine2[3]); -+ -+ //pTorsionParam->npth = atoi(fileline.substr(11,4).c_str()); -+ //pTorsionParam->Vn = strtod(fileline.substr(18,8).c_str(), 0); -+ //pTorsionParam->gamma = strtod(fileline.substr(31,8).c_str(), 0) * DEG2RAD; -+ //pTorsionParam->Nt = strtod(fileline.substr(42,12).c_str(), 0); -+ -+//std::cout << " DIHE " << pTorsionParam->atomType1 << " " << pTorsionParam->atomType2 << " " << pTorsionParam->atomType3 << " " << pTorsionParam->atomType4 << " " << pTorsionParam->npth << " " << pTorsionParam->Vn << " " << string2Double(splitLine2[2]) << " " << pTorsionParam->Nt << std::endl; -+ - getline(ifrcmod,fileline); -- } -+//std::cout << " DIHE LINE: " << fileline << std::endl; -+ //} - } - } - - if (bIMPROPER) { - getline(ifrcmod,fileline); -- while (fileline != "") { -- std::string atomNames = fileline.substr(0,11); -+ //while (fileline != "") { -+ while (stripString(fileline, " ") != "") { -+ -+ std::string atTypes = fileline.substr(0,12); - std::vector<std::string> splitLine; -- splitString(atomNames, "-", splitLine, 0); -- if (splitLine.size() == 4) { -- for (unsigned int i = 0; i < 4; i++) { -- splitLine[i] = stripString(splitLine[i]," "); -- } -+ splitString(atTypes, "-", splitLine, 0); -+ -+ fileline.erase(0,12); -+ -+ std::vector<std::string> splitLine2; -+ splitString(fileline, " ", splitLine2, 0); -+ -+// std::vector<std::string> splitLine; -+// splitString(fileline, "-", splitLine, 0); -+ -+// std::vector<std::string> splitLine2; -+// splitString(splitLine[3], " ", splitLine2, 0); -+ -+ //std::string atomNames = fileline.substr(0,11); -+ //std::vector<std::string> splitLine; -+ //splitString(atomNames, "-", splitLine, 0); -+ //if (splitLine.size() == 4) { -+ //for (unsigned int i = 0; i < 4; i++) { -+ //splitLine[i] = stripString(splitLine[i]," "); -+ //} - pImproperParam = pParameters->addImproperParam(); - pImproperParam->groupName = this->groupName; -- pImproperParam->atomType1 = std::string(splitLine[0]); -- pImproperParam->atomType2 = std::string(splitLine[1]); -- pImproperParam->atomType3 = std::string(splitLine[2]); -- pImproperParam->atomType4 = std::string(splitLine[3]); -- pImproperParam->Vn = strtod(fileline.substr(18,8).c_str(), 0); -- pImproperParam->gamma = strtod(fileline.substr(31,8).c_str(), 0) * DEG2RAD; -- pImproperParam->Nt = strtod(fileline.substr(42,12).c_str(), 0); -+ pImproperParam->atomType1 = stripString(splitLine[0], " "); -+ pImproperParam->atomType2 = stripString(splitLine[1], " "); -+ pImproperParam->atomType3 = stripString(splitLine[2], " "); -+ pImproperParam->atomType4 = stripString(splitLine[3], " "); -+ -+ pImproperParam->Vn = string2Double(splitLine2[0]); -+ pImproperParam->gamma = string2Double(splitLine2[1]) * DEG2RAD; -+ pImproperParam->Nt = string2Double(splitLine2[2]); -+ -+ //pImproperParam->Vn = strtod(fileline.substr(18,8).c_str(), 0); -+ //pImproperParam->gamma = strtod(fileline.substr(31,8).c_str(), 0) * DEG2RAD; -+ //pImproperParam->Nt = strtod(fileline.substr(42,12).c_str(), 0); -+ -+//std::cout << "\n " << fileline << std::endl; -+//std::cout << " IMPR " << pImproperParam->atomType1 << " " << pImproperParam->atomType2 << " " << pImproperParam->atomType3 << " " << pImproperParam->atomType4 << " " << pImproperParam->Vn << " " << string2Double(splitLine2[1]) << " " << pImproperParam->Nt << std::endl; -+ - getline(ifrcmod,fileline); -- } -+ //} - } - } - if (bNONBON) { -+ getline(ifrcmod,fileline); -+//std::cout << fileline << std::endl; -+ //while (fileline != "") { -+ while (stripString(fileline, " ") != "") { -+ std::vector<std::string> splitLine; -+ splitString(fileline, " ", splitLine, 0); -+ if (splitLine.size() >= 3) { -+ for (unsigned int i = 0; i < 3; i++) { -+ splitLine[i] = stripString(splitLine[i], " "); -+ } -+//std::cout << " |" << splitLine[0] << "|" << std::endl; -+ -+//std::cout << "\n " << fileline << std::endl; -+ -+ pAtomType = pParameters->getAtomType(stripString(splitLine[0], " ")); -+ if (pAtomType) { -+ pAtomType->rvalue = string2Double(splitLine[1]); -+ pAtomType->evalue = string2Double(splitLine[2]); - -+//std::cout << pAtomType->name << " " << pAtomType->rvalue << " " << pAtomType->evalue << std::endl; -+ -+ } -+ else { -+ std::cout << " Can't find atom type " << std::endl; -+ } -+ getline(ifrcmod,fileline); -+ } -+ } - } - } -+ - ifrcmod.close(); - } - -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Parsers/gaussianParser.cpp amber11/AmberTools/src/mtkpp/src/Parsers/gaussianParser.cpp ---- amber11.orig/AmberTools/src/mtkpp/src/Parsers/gaussianParser.cpp 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Parsers/gaussianParser.cpp 2012-03-03 20:03:01.408032569 +0200 -@@ -84,7 +84,7 @@ - - this->bMem = 0; - -- this->bnProc = 0; -+ this->bNProc = 0; - - this->bWriteInternalCoords = true; - this->bWriteCartCoords = false; -@@ -168,7 +168,7 @@ - while (igau) { - getline(igau,fileline); - -- if (containsSubStr(fileline, "modredundant")) { -+ if (containsSubStr(fileline, "ModRedundant")) { - bModRedundant = true; - } - if (fileline.substr(0,59) == " Redundant internal coordinates taken from checkpoint file:") { -@@ -626,6 +626,7 @@ - void gaussianParser::Write(const std::string &gaussfile, molecule* pMolecule, - std::vector< vector3d > &coordinates) - { -+ std::string routecard; - std::ofstream ogauss; - ogauss.open(gaussfile.c_str()); - -@@ -643,52 +644,64 @@ - return; - } - -- ogauss << "$rungauss" << std::endl; -+ ogauss << "$RunGauss" << std::endl; - - if (bChkPt) { -- ogauss << "%chk=" << this->itsChkPtFile << std::endl; -+ ogauss << "%Chk=" << this->itsChkPtFile << std::endl; - } - if (bMem) { -- ogauss << "%mem=" << this->itsMem << std::endl; -+ ogauss << "%Mem=" << this->itsMem << std::endl; - } -- if (bnProc) { -- ogauss << "%nproc=" << this->itsnProc << std::endl; -+ if (bNProc) { -+ ogauss << "%NProcShared=" << this->itsNProc << std::endl; - } - -- ogauss << "#" << this->itsVerbosity << " " << this->itsTheory << "/" << this->itsBasisSet << " "; -+ routecard = "#" + this->itsVerbosity + " " + this->itsTheory + "/" + this->itsBasisSet; - - if (!itsCommandOptions.empty()) { - for (mapIterator p = itsCommandOptions.begin(); p != itsCommandOptions.end(); p++) { - std::string c = p->first; - std::vector<std::string> o = p->second; -+ std::string opts = ""; - if (o.size() == 1) { -- if ( p->second[0] == "NONE") { -- ogauss << p->first << " "; -- } -- else { -- ogauss << p->first << "=" << p->second[0] << " "; -+ if ( p->second[0] != "NONE") { -+ opts = "=" + p->second[0]; - } - } - else { -- ogauss << p->first << "("; -+ opts = "("; - for (unsigned int i = 0; i < o.size(); i++) { -- if (i == o.size()-1) { -- ogauss << o[i]; -+ opts = opts + o[i]; -+ if (i != o.size()-1) { -+ opts = opts + ","; - } -- else { -- ogauss << o[i] << ","; - } -+ opts = opts + ")"; - } -- ogauss << ")" << " "; -+ -+ if (routecard.length() + c.length() + opts.length() < 72) { -+ routecard = routecard + " " + c + opts; -+ } else { -+ if (routecard.length() != 0) { -+ ogauss << routecard << std::endl; -+ } -+ routecard = c + opts; - } - } - } - for (unsigned int i = 0; i < this->iops.size(); i++) { -- ogauss << this->iops[i] << " "; -+ if (routecard.length() + this->iops[i].length() < 72) { -+ routecard = routecard + " " + this->iops[i]; -+ } else { -+ if (routecard.length() != 0) { -+ ogauss << routecard << std::endl; -+ } -+ routecard = this->iops[i]; -+ } - } - - // Flush command block and follow with a blank line -- ogauss << "\n" << std::endl; -+ ogauss << routecard << "\n" << std::endl; - - // Write name (if required) and follow with a blank line - if (bWriteMoleculeName) { -@@ -740,11 +753,11 @@ - ogauss << std::endl; - } - -- std::vector<std::string> optOptions = this->getCommandOption("opt"); -+ std::vector<std::string> optOptions = this->getCommandOption("Opt"); - if (optOptions.size() > 0) { - bool bMD = 0; - for (unsigned int x = 0; x < optOptions.size(); x++) { -- if (optOptions[x] == "modredundant") { -+ if (optOptions[x] == "ModRedundant") { - bMD = 1; - } - } -@@ -766,13 +779,13 @@ - } - } - -- if (this->itsBasisSet.substr(0,3) == "GEN") { -+ if (this->itsBasisSet.substr(0,3) == "Gen") { - std::ifstream iBSFile; - iBSFile.open(this->itsBasisSetFile.c_str()); - - if (!iBSFile) { - std::cout << "\nERROR!" -- << "\nBasis set \"GEN\" requires a custom file." -+ << "\nBasis set \"Gen\" requires a custom file." - << "\nFile \"" << this->itsBasisSetFile << "\" is missing or unreadable." - << "\nPlease choose another file. For instructions, consult your program's" - << "\ndocumentation." -@@ -789,13 +802,13 @@ - } - - // +BPR -- if (this->getCommandOption("pseudo").size() > 0) { -+ if (this->getCommandOption("Pseudo").size() > 0) { - std::ifstream iPseudoFile; - iPseudoFile.open(this->itsPseudoPotentialFile.c_str()); - - if (!iPseudoFile) { - std::cout << "\nERROR!" -- << "\npseudo=read or pseudo=cards requires a custom file." -+ << "\nPseudo=Read or Pseudo=Cards requires a custom file." - << "\nFile \"" << this->itsPseudoPotentialFile << "\" is missing or unreadable." - << "\nPlease choose another file. For instructions, consult your program's" - << "\ndocumentation." -@@ -812,7 +825,7 @@ - } - // -BPR - -- if (this->getCommandOption("pop").size() > 0) { -+ if (this->getCommandOption("Pop").size() > 0) { - if (!itsMKRadii.empty()) { - for (dMapIterator p = itsMKRadii.begin(); p != itsMKRadii.end(); p++) { - ogauss << p->first << "=" << p->second << "\n"; -@@ -1037,14 +1050,14 @@ - } - - // ============================================================ --// Function : setnProc -+ // Function : setNProc - // ------------------------------------------------------------ - // - // ============================================================ --void gaussianParser::setnProc(const std::string &n) -+ void gaussianParser::setNProc(const std::string &n) - { -- this->bnProc = 1; -- this->itsnProc = n; -+ this->bNProc = 1; -+ this->itsNProc = n; - } - - // ============================================================ -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Parsers/gaussianParser.h amber11/AmberTools/src/mtkpp/src/Parsers/gaussianParser.h ---- amber11.orig/AmberTools/src/mtkpp/src/Parsers/gaussianParser.h 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Parsers/gaussianParser.h 2012-03-03 20:03:01.408032569 +0200 -@@ -196,9 +196,9 @@ - - /*! - \brief Set number of processors to use -- \param n nprocs -+ \param n number of processors - */ -- void setnProc(const std::string &n); -+ void setNProc(const std::string &n); - - /*! - \brief Set level of theory -@@ -354,10 +354,10 @@ - bool bMem; - - //! number of processors -- std::string itsnProc; -+ std::string itsNProc; - -- //! Turn on mem -- bool bnProc; -+ //! Turn on number of processors -+ bool bNProc; - - //! Use internal or cartesian coordinates - bool bWriteInternalCoords; -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Parsers/Makefile.am amber11/AmberTools/src/mtkpp/src/Parsers/Makefile.am ---- amber11.orig/AmberTools/src/mtkpp/src/Parsers/Makefile.am 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Parsers/Makefile.am 2012-03-03 20:03:01.406032569 +0200 -@@ -1,15 +1,15 @@ --DIAGNOSTICS_LD=-L$(top_builddir)/src/Diagnostics/$(SRCDIR) -+DIAGNOSTICS_LD=-L$(abs_top_builddir)/src/Diagnostics/$(SRCDIR) - DIAGNOSTICS_LIB=-lDiagnostics --MOLECULE_LD=-L$(top_builddir)/src/Molecule/$(SRCDIR) -+MOLECULE_LD=-L$(abs_top_builddir)/src/Molecule/$(SRCDIR) - MOLECULE_LIB=-lMolecule --GA_LD=-L$(top_builddir)/src/GA/$(SRCDIR) -+GA_LD=-L$(abs_top_builddir)/src/GA/$(SRCDIR) - GA_LIB=-lGA --LOG_LD=-L$(top_builddir)/src/Log/$(SRCDIR) -+LOG_LD=-L$(abs_top_builddir)/src/Log/$(SRCDIR) - LOG_LIB=-lLog --STATS_LD=-L$(top_builddir)/src/Statistics/$(SRCDIR) -+STATS_LD=-L$(abs_top_builddir)/src/Statistics/$(SRCDIR) - STATS_LIB=-lStatistics - --TINYXML_LD=-L$(top_builddir)/src/tinyxml/$(SRCDIR) -+TINYXML_LD=-L$(abs_top_builddir)/src/tinyxml/$(SRCDIR) - TINYXML_LIB=-ltinyxml - - if USE_XERCES -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Parsers/Makefile.in amber11/AmberTools/src/mtkpp/src/Parsers/Makefile.in ---- amber11.orig/AmberTools/src/mtkpp/src/Parsers/Makefile.in 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Parsers/Makefile.in 2012-03-03 20:03:01.407032569 +0200 -@@ -267,17 +267,17 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xerces_path = @xerces_path@ --DIAGNOSTICS_LD = -L$(top_builddir)/src/Diagnostics/$(SRCDIR) -+DIAGNOSTICS_LD = -L$(abs_top_builddir)/src/Diagnostics/$(SRCDIR) - DIAGNOSTICS_LIB = -lDiagnostics --MOLECULE_LD = -L$(top_builddir)/src/Molecule/$(SRCDIR) -+MOLECULE_LD = -L$(abs_top_builddir)/src/Molecule/$(SRCDIR) - MOLECULE_LIB = -lMolecule --GA_LD = -L$(top_builddir)/src/GA/$(SRCDIR) -+GA_LD = -L$(abs_top_builddir)/src/GA/$(SRCDIR) - GA_LIB = -lGA --LOG_LD = -L$(top_builddir)/src/Log/$(SRCDIR) -+LOG_LD = -L$(abs_top_builddir)/src/Log/$(SRCDIR) - LOG_LIB = -lLog --STATS_LD = -L$(top_builddir)/src/Statistics/$(SRCDIR) -+STATS_LD = -L$(abs_top_builddir)/src/Statistics/$(SRCDIR) - STATS_LIB = -lStatistics --TINYXML_LD = -L$(top_builddir)/src/tinyxml/$(SRCDIR) -+TINYXML_LD = -L$(abs_top_builddir)/src/tinyxml/$(SRCDIR) - TINYXML_LIB = -ltinyxml - @USE_XERCES_TRUE@XERCES_LD = -L@xerces_path@/lib/ - @USE_XERCES_TRUE@XERCES_LIB = -lxerces-c -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Parsers/mtkppParser.cpp amber11/AmberTools/src/mtkpp/src/Parsers/mtkppParser.cpp ---- amber11.orig/AmberTools/src/mtkpp/src/Parsers/mtkppParser.cpp 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Parsers/mtkppParser.cpp 2012-03-03 20:03:01.409032568 +0200 -@@ -1769,6 +1769,15 @@ - atomElem->SetAttribute("type", int2String(pAtom->getType())); - atomElem->SetAttribute("formalCharge", int2String(pAtom->getFormalCharge())); - -+ // Coordinates -+ TiXmlElement* coordElem = new TiXmlElement("coord"); -+ atomElem->LinkEndChild(coordElem); -+ -+ coordElem->SetAttribute("x", double2String(pAtom->getX())); -+ coordElem->SetAttribute("y", double2String(pAtom->getY())); -+ coordElem->SetAttribute("z", double2String(pAtom->getZ())); -+ -+ // Properties - std::map<std::string, double> atomDMap = pAtom->getPropertyMap(); - std::map<std::string, int> atomIMap = pAtom->getIntPropertyMap(); - -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Parsers/paramParser.cpp amber11/AmberTools/src/mtkpp/src/Parsers/paramParser.cpp ---- amber11.orig/AmberTools/src/mtkpp/src/Parsers/paramParser.cpp 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Parsers/paramParser.cpp 2012-03-03 20:03:01.410032567 +0200 -@@ -144,6 +144,10 @@ - pAtomType->evalue = string2Double(element->Attribute("potentialWellDepth")); - } - -+ if (element->Attribute("atomPolarizability")) { -+ pAtomType->atomPolarizability = string2Double(element->Attribute("atomPolarizability")); -+ } -+ - if (element->Attribute("element")) { - pAtomType->element = element->Attribute("element"); - } -@@ -1808,6 +1812,7 @@ - entry->SetAttribute("mass" , double2String(pAtomType->mass).c_str()); - entry->SetAttribute("vdwRadius" , double2String(pAtomType->rvalue).c_str()); - entry->SetAttribute("potentialWellDepth" , double2String(pAtomType->evalue).c_str()); -+ entry->SetAttribute("atomPolarizability" , double2String(pAtomType->atomPolarizability).c_str()); - entry->SetAttribute("element" , pAtomType->element); - entry->SetAttribute("hybridization" , pAtomType->hybridization); - entry->SetAttribute("groupName" , pAtomType->groupName); -@@ -2035,6 +2040,7 @@ - typeElem->setAttribute(X("mass"), X(double2String(pAtomType->mass).c_str())); - typeElem->setAttribute(X("vdwRadius"), X(double2String(pAtomType->rvalue).c_str())); - typeElem->setAttribute(X("potentialWellDepth"), X(double2String(pAtomType->evalue).c_str())); -+ typeElem->setAttribute(X("atomPolarizability"), X(double2String(pAtomType->atomPolarizability).c_str())); - typeElem->setAttribute(X("element"), X(pAtomType->element.c_str())); - typeElem->setAttribute(X("hybridization"), X(pAtomType->hybridization.c_str())); - typeElem->setAttribute(X("groupName"), X(pAtomType->groupName.c_str())); -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Parsers/pdbParser.cpp amber11/AmberTools/src/mtkpp/src/Parsers/pdbParser.cpp ---- amber11.orig/AmberTools/src/mtkpp/src/Parsers/pdbParser.cpp 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Parsers/pdbParser.cpp 2012-03-03 20:03:01.410032567 +0200 -@@ -840,6 +840,7 @@ - for (atomIterator a = atomList.begin(); a != atomList.end(); a++) { - pAtom = *a; - pSubMolecule = pAtom->getParent(); -+ //std::cout << pSubMolecule->getColIndex() << std::endl; - char temp[100]; - - char tmp_element[3]; -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Parsers/prepParser.cpp amber11/AmberTools/src/mtkpp/src/Parsers/prepParser.cpp ---- amber11.orig/AmberTools/src/mtkpp/src/Parsers/prepParser.cpp 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Parsers/prepParser.cpp 2012-03-03 20:03:01.411032567 +0200 -@@ -66,71 +66,106 @@ - prepParser::~prepParser() {} - - // ========================================================= --// Function : Read --// --------------------------------------------------------- --// parsers a prep file --// --------------------------------------------------------- --// Format : --// ========================================================= --void prepParser::Read(const std::string &prepfile, stdGroup* pStdGroup) --{ -- std::string errorMessage = " Reading " + prepfile + " " + -- pStdGroup->getName() + " ... implement "; -- errorLogger.throwError("prepParser", errorMessage, 1); --} -- --// ========================================================= --// Function : Read -+// Function : openFile - // --------------------------------------------------------- --// parsers a prep file -+// open a prep file - // --------------------------------------------------------- - // Format : - // ========================================================= --void prepParser::Read(const std::string &prepfile, stdFrag* pStdFrag) -+int prepParser::openFile(const std::string &prepfile) - { -- errorLogger.throwError("prepParser", "Read", INFO); -- -- std::ifstream iprep; - iprep.open(prepfile.c_str()); - -+ //std::cout << "\n\n prepParser::openFile " << prepfile << std::endl; - if (!iprep) { - setError(1); - std::string errorMessage = " Error, Can't Find " + prepfile; - setErrorMessage(errorMessage); - errorLogger.throwError("prepParser::Read", errorMessage, 1); -- return; -+ return 1; - } - - std::string fileline; -- std::string title; -- std::string atom; -- std::string buffer(80,'*'); - - // SKIP FIRST TWO LINES - getline(iprep,fileline); - getline(iprep,fileline); -+ -+ return 0; -+} -+ -+// ========================================================= -+// Function : read fragment header section -+// --------------------------------------------------------- -+// -+// --------------------------------------------------------- -+// Format : -+// ========================================================= -+int prepParser::readHeader(std::string &name, std::string &symbol, double &charge) -+{ -+ std::string fileline; -+ - getline(iprep,fileline); -- //std::string name = stripString(fileline," "); -- //pStdFrag->setName(fileline); -+ if (stripString(fileline, " ") == "STOP") return 1; -+ -+ name = stripString(fileline," "); -+ -+ // blank line - getline(iprep,fileline); -+ -+ // symbol - getline(iprep,fileline); - std::vector<std::string> splitLine; - splitString(fileline, " ", splitLine, 0); -- pStdFrag->setSymbol(splitLine[0]); -+ symbol = splitLine[0]; -+ -+ // - getline(iprep,fileline); -+ -+ // charge - getline(iprep,fileline); -- //pStdFrag->setCharge(splitLine[0]); -+ charge = string2Double(stripString(fileline, " ")); -+ -+ return 0; -+} -+ -+// ========================================================= -+// Function : read fragment main section -+// --------------------------------------------------------- -+// -+// --------------------------------------------------------- -+// Format : -+// ========================================================= -+void prepParser::readFragment(stdFrag* pStdFrag) -+{ -+ std::string fileline; -+ -+ std::vector<stdBond*> todos; - - while (iprep) { - getline(iprep,fileline); -- if (fileline == "") break; -+ -+ std::string filelineTest = stripString(fileline, " "); -+ if (filelineTest == "") break; -+ -+//std::cout << "|" << fileline << "|" << std::endl; - - std::vector<std::string> splitstring; - splitString(fileline, " ", splitstring, 0); - if (atoi(splitstring[0].c_str()) > 3) { - stdAtom* pStdAtom = pStdFrag->addStdAtom(); - int atIndex = atoi(splitstring[0].c_str()) - 3; -- std::string atomName = fileline.substr(6,4); -+ -+//////// -+ //std::string atomName = fileline.substr(6,4); -+ std::string atomName = splitstring[1]; -+ if (atomName.size() == 1) atomName = " " + atomName + " "; -+ else if (atomName.size() == 2) atomName = " " + atomName + " "; -+ else if (atomName.size() == 3) atomName = " " + atomName; -+ -+//std::cout << "|" << atomName << "|" << std::endl; -+///////// -+ - std::string atomType = splitstring[2]; - std::string atomChain = splitstring[3]; - -@@ -170,32 +205,54 @@ - pStdBond->atom1 = pStdAtom->index; - pStdBond->atom2 = pStdAtom->bond12; - pStdBond->type = 1; -+ - if (pStdAtom->atSymbol == "H") { - if (pStdAtom->bond12 > 0) { - stdAtom* pStdBondedAtom = pStdFrag->getStdAtom(pStdAtom->bond12); -+ -+ if (pStdBondedAtom) { - std::string bondedAtomSymbol = pStdBondedAtom->atSymbol; - if (bondedAtomSymbol == "N" or bondedAtomSymbol == "O" or bondedAtomSymbol == "S") { - pStdBond->kind = 1; - } - } -+ else { -+ todos.push_back(pStdBond); -+ } -+ } - } - else { - pStdBond->kind = 0; - } -+ - pStdBond->topology = 2; - pStdBond->stereo = 0; - pStdBond->length = pStdAtom->bondLength; - } - } - -+ for (unsigned int x = 0; x < todos.size(); x++) { -+ stdAtom* pStdBondedAtom1 = pStdFrag->getStdAtom(todos[x]->atom1); -+ stdAtom* pStdBondedAtom2 = pStdFrag->getStdAtom(todos[x]->atom2); -+ if (pStdBondedAtom1 and pStdBondedAtom2) { -+ std::string bondedAtomSymbol = pStdBondedAtom2->atSymbol; -+ if (bondedAtomSymbol == "N" or bondedAtomSymbol == "O" or bondedAtomSymbol == "S") { -+ todos[x]->kind = 1; -+ } -+ } -+ } -+ - // Read charge, alias, loop, and improper data - while (iprep) { - getline(iprep,fileline); -+//std::cout << "!" << fileline << "!" << std::endl; - if (fileline != "") { - if (fileline.substr(0,6) == "CHARGE") { - while (iprep) { - getline(iprep,fileline); -- if (fileline == "") break; -+ -+ std::string filelineTest = stripString(fileline, " "); -+ if (filelineTest == "") break; - } - } - else if (fileline.substr(0,5) == "ALIAS") { -@@ -252,7 +309,7 @@ - else { - std::string errorMessage = " ALIAS Tag Error ... exiting "; - errorLogger.throwError("prepParser::Read", errorMessage, 1); -- //exit(0); -+ - std::stringstream ss; - ss << "prepParser::Read"<< errorMessage; - throw MTKException(ss.str()); -@@ -263,11 +320,20 @@ - else if (fileline.substr(0,4) == "LOOP") { - while (iprep) { - getline(iprep,fileline); -- if (fileline == "") break; -+ -+ std::string filelineTest = stripString(fileline, " "); -+ if (filelineTest == "") break; -+ -+ //if (fileline == "") break; - - std::vector<std::string> atomNames; - splitString(fileline, " ", atomNames, 0); -- -+/* -+for (unsigned int x = 0; x <atomNames.size();x++){ -+ std::cout << atomNames[x] <<std::endl; -+} -+pStdFrag->print(); -+*/ - std::vector< std::vector<std::string> > possibleNames; - for (int d = 0; d < 2; d++) { - int atNameSize = atomNames[d].size(); -@@ -315,17 +381,22 @@ - else { - std::string errorMessage = " LOOP Tag Error ... exiting "; - errorLogger.throwError("prepParser::Read", errorMessage, 1); -- //exit(0); -- - std::stringstream ss; - ss << "prepParser::Read"<< errorMessage; - throw MTKException(ss.str()); - } - } - } -+ else if (fileline.substr(0,4) == "DONE") { -+ break; -+ } - else if (fileline.substr(0,8) == "IMPROPER") { - while (iprep) { - getline(iprep,fileline); -+ -+ std::string filelineTest = stripString(fileline, " "); -+ if (filelineTest == "") break; -+ - if (fileline == "") break; - - std::vector<std::string> atomNames; -@@ -424,7 +495,6 @@ - else { - std::string errorMessage = " IMPROPER Tag Error ... exiting "; - errorLogger.throwError("prepParser::Read", errorMessage, 1); -- //exit(0); - - std::stringstream ss; - ss << "prepParser::Read" << errorMessage; -@@ -642,8 +712,112 @@ - } - // QBio end - } -- - errorLogger.throwError("prepParser::Read", eMessage, INFO); -+} -+ -+// ========================================================= -+// Function : Read -+// --------------------------------------------------------- -+// parsers a prep file -+// --------------------------------------------------------- -+// Format : -+// ========================================================= -+void prepParser::Read(const std::string &prepfile, stdGroup* pStdGroup) -+{ -+ int r = openFile(prepfile); -+ if (r == 1) return; -+ -+ while(iprep) { -+ std::string name = ""; -+ std::string symbol = ""; -+ double charge = 0.0; -+ int h = readHeader(name, symbol, charge); -+ if (h == 1) break; -+ -+ stdFrag* pStdFrag = pStdGroup->addStdFrag(); -+ if (!pStdFrag) { -+ setError(1); -+ std::string errorMessage = " Error creating fragment "; -+ setErrorMessage(errorMessage); -+ errorLogger.throwError("prepParser::Read", errorMessage, 1); -+ return; -+ } -+ -+ if (symbol.size() == 1) symbol = symbol + " "; -+ if (symbol.size() == 2) symbol = symbol + " "; -+ if (symbol.size() > 3) symbol = symbol.substr(1,3); -+ -+ pStdFrag->setSymbol(symbol); // 3L code -+ //pStdFrag->setCode("P2XML"+name); // 8L code -+ pStdFrag->setName(name); // long name -+ pStdFrag->setType("m"); // fragment type -+ -+ //std::cout << " prepParser::Read " << name << " charge " << charge << " symbol " << symbol << std::endl; -+ readFragment(pStdFrag); -+ } -+ -+ iprep.close(); -+ -+ return; -+} -+ -+// ========================================================= -+// Function : Read -+// --------------------------------------------------------- -+// parsers a prep file -+// --------------------------------------------------------- -+// Format : -+// ========================================================= -+void prepParser::Read(const std::string &prepfile, stdFrag* pStdFrag) -+{ -+ errorLogger.throwError("prepParser", "Read", INFO); -+/* -+ std::ifstream iprep; -+ iprep.open(prepfile.c_str()); -+ -+ if (!iprep) { -+ setError(1); -+ std::string errorMessage = " Error, Can't Find " + prepfile; -+ setErrorMessage(errorMessage); -+ errorLogger.throwError("prepParser::Read", errorMessage, 1); -+ return; -+ } -+*/ -+ -+ int r = openFile(prepfile); -+ if (r == 1) return; -+ -+ std::string fileline; -+ std::string title; -+ std::string atom; -+ //std::string buffer(80,'*'); -+ -+ // SKIP FIRST TWO LINES -+ //getline(iprep,fileline); -+ //getline(iprep,fileline); -+ -+/* -+ getline(iprep,fileline); -+ //std::string name = stripString(fileline," "); -+ //pStdFrag->setName(fileline); -+ getline(iprep,fileline); -+ getline(iprep,fileline); -+ std::vector<std::string> splitLine; -+ splitString(fileline, " ", splitLine, 0); -+ pStdFrag->setSymbol(splitLine[0]); -+ getline(iprep,fileline); -+ getline(iprep,fileline); -+ //pStdFrag->setCharge(splitLine[0]); -+*/ -+ -+ std::string name = ""; -+ std::string symbol = ""; -+ double charge = 0.0; -+ readHeader(name, symbol, charge); -+ -+ pStdFrag->setSymbol(symbol); -+ -+ readFragment(pStdFrag); - - iprep.close(); - } -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Parsers/prepParser.h amber11/AmberTools/src/mtkpp/src/Parsers/prepParser.h ---- amber11.orig/AmberTools/src/mtkpp/src/Parsers/prepParser.h 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Parsers/prepParser.h 2012-03-03 20:03:01.411032567 +0200 -@@ -89,6 +89,25 @@ - ~prepParser(); - - /*! -+ \brief open prep file -+ \param i input file -+ */ -+ int openFile(const std::string &i); -+ -+ /*! -+ \brief read fragment header section -+ \param name fragment name -+ \param symbol fragment symbol -+ \param charge fragment charge -+ */ -+ int readHeader(std::string &name, std::string &symbol, double &charge); -+ -+ /*! -+ \brief read fragment main section -+ */ -+ void readFragment(stdFrag* pStdFrag); -+ -+ /*! - \brief Read prep file - \param i input file - \param g stdGroup pointer -@@ -127,6 +146,9 @@ - - //! atom pointer - atom* pAtom; -+ -+ //! file handler -+ std::ifstream iprep; - }; - - } // MTKpp namespace -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Parsers/stdLibParser.cpp amber11/AmberTools/src/mtkpp/src/Parsers/stdLibParser.cpp ---- amber11.orig/AmberTools/src/mtkpp/src/Parsers/stdLibParser.cpp 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Parsers/stdLibParser.cpp 2012-03-03 20:03:01.412032567 +0200 -@@ -3280,7 +3280,7 @@ - // ------------------------------------------------------------ - // Write xml files using tinyxml - // ------------------------------------------------------------ --void stdLibParser::Write(std::string fileName) -+void stdLibParser::Write(std::string fileName) // TinyXML - { - std::string errMessage = " Writing " + fileName; - errorLogger.throwError("stdLibParser", errMessage, INFO); -@@ -3512,6 +3512,7 @@ - TiXmlElement* impElem = new TiXmlElement("improper"); - frag->LinkEndChild(impElem); - -+ /* - if (improperList[k]->atom1 == -1) { - impElem->SetAttribute("Atom1", "p1"); - } -@@ -3520,7 +3521,8 @@ - } - else { - impElem->SetAttribute("Atom1", int2String(improperList[k]->atom1)); -- } -+ }*/ -+ impElem->SetAttribute("Atom1", int2String(improperList[k]->atom1)); - impElem->SetAttribute("Atom2", int2String(improperList[k]->atom2)); - impElem->SetAttribute("Atom3", int2String(improperList[k]->atom3)); - impElem->SetAttribute("Atom4", int2String(improperList[k]->atom4)); -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Statistics/Makefile.am amber11/AmberTools/src/mtkpp/src/Statistics/Makefile.am ---- amber11.orig/AmberTools/src/mtkpp/src/Statistics/Makefile.am 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Statistics/Makefile.am 2012-03-03 20:03:01.413032567 +0200 -@@ -1,4 +1,4 @@ --DIAGNOSTICS_LD=-L$(top_builddir)/src/Diagnostics/$(SRCDIR) -+DIAGNOSTICS_LD=-L$(abs_top_builddir)/src/Diagnostics/$(SRCDIR) - DIAGNOSTICS_LIB=-lDiagnostics - - INCLUDES = -I@boost_inc@ -I$(srcdir)/.. -I$(top_srcdir)/src/eigen3b2 -diff -urN amber11.orig/AmberTools/src/mtkpp/src/Statistics/Makefile.in amber11/AmberTools/src/mtkpp/src/Statistics/Makefile.in ---- amber11.orig/AmberTools/src/mtkpp/src/Statistics/Makefile.in 2011-04-14 15:30:18.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/src/Statistics/Makefile.in 2012-03-03 20:03:01.413032567 +0200 -@@ -241,7 +241,7 @@ - top_builddir = @top_builddir@ - top_srcdir = @top_srcdir@ - xerces_path = @xerces_path@ --DIAGNOSTICS_LD = -L$(top_builddir)/src/Diagnostics/$(SRCDIR) -+DIAGNOSTICS_LD = -L$(abs_top_builddir)/src/Diagnostics/$(SRCDIR) - DIAGNOSTICS_LIB = -lDiagnostics - INCLUDES = -I@boost_inc@ -I$(srcdir)/.. -I$(top_srcdir)/src/eigen3b2 - lib_LTLIBRARIES = libStatistics.la -diff -urN amber11.orig/AmberTools/src/mtkpp/tests/Makefile.am amber11/AmberTools/src/mtkpp/tests/Makefile.am ---- amber11.orig/AmberTools/src/mtkpp/tests/Makefile.am 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/tests/Makefile.am 2012-03-03 20:03:01.414032567 +0200 -@@ -42,25 +42,25 @@ - LAPACK_LIB=-llapack -lblas -lg2c - endif - --MOLECULE_LD=-L$(top_builddir)/src/Molecule -+MOLECULE_LD=-L$(abs_top_builddir)/src/Molecule - MOLECULE_LIB=-lMolecule --DIAGNOSTICS_LD=-L$(top_builddir)/src/Diagnostics -+DIAGNOSTICS_LD=-L$(abs_top_builddir)/src/Diagnostics - DIAGNOSTICS_LIB=-lDiagnostics --LOG_LD=-L$(top_builddir)/src/Log -+LOG_LD=-L$(abs_top_builddir)/src/Log - LOG_LIB=-lLog --GRAPH_LD=-L$(top_builddir)/src/Graph -+GRAPH_LD=-L$(abs_top_builddir)/src/Graph - GRAPH_LIB=-lGraph --GA_LD=-L$(top_builddir)/src/GA -+GA_LD=-L$(abs_top_builddir)/src/GA - GA_LIB=-lGA --MM_LD=-L$(top_builddir)/src/MM -+MM_LD=-L$(abs_top_builddir)/src/MM - MM_LIB=-lMM --MINIMIZERS_LD=-L$(top_builddir)/src/Minimizers -+MINIMIZERS_LD=-L$(abs_top_builddir)/src/Minimizers - MINIMIZERS_LIB=-lMinimizers --PARSERS_LD=-L$(top_builddir)/src/Parsers -+PARSERS_LD=-L$(abs_top_builddir)/src/Parsers - PARSERS_LIB=-lParsers --STATS_LD=-L$(top_builddir)/src/Statistics -+STATS_LD=-L$(abs_top_builddir)/src/Statistics - STATS_LIB=-lStatistics --TINYXML_LD=-L$(top_builddir)/src/tinyxml -+TINYXML_LD=-L$(abs_top_builddir)/src/tinyxml - TINYXML_LIB=-ltinyxml - - # INCLUDES = -I@boost_inc@ -I@xerces_path@/include -I$(top_srcdir)/src -I$(top_srcdir)/include -I$(top_srcdir)/src/tinyxml -I$(top_srcdir)/src/Parsers -I$(top_srcdir)/src/Molecule -I$(top_srcdir)/src/Statistics -I$(top_srcdir)/src/Utils $(tmpQT_INCPATH) -diff -urN amber11.orig/AmberTools/src/mtkpp/tests/Makefile.in amber11/AmberTools/src/mtkpp/tests/Makefile.in ---- amber11.orig/AmberTools/src/mtkpp/tests/Makefile.in 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/tests/Makefile.in 2012-03-03 20:03:01.414032567 +0200 -@@ -303,25 +303,25 @@ - @USE_QT_TRUE@tmpQT_LIBS = $(QT_LIBS) - @IS_LINUX_TRUE@LAPACK_LD = -L/usr/lib64 - @IS_LINUX_TRUE@LAPACK_LIB = -llapack -lblas -lg2c --MOLECULE_LD = -L$(top_builddir)/src/Molecule -+MOLECULE_LD = -L$(abs_top_builddir)/src/Molecule - MOLECULE_LIB = -lMolecule --DIAGNOSTICS_LD = -L$(top_builddir)/src/Diagnostics -+DIAGNOSTICS_LD = -L$(abs_top_builddir)/src/Diagnostics - DIAGNOSTICS_LIB = -lDiagnostics --LOG_LD = -L$(top_builddir)/src/Log -+LOG_LD = -L$(abs_top_builddir)/src/Log - LOG_LIB = -lLog --GRAPH_LD = -L$(top_builddir)/src/Graph -+GRAPH_LD = -L$(abs_top_builddir)/src/Graph - GRAPH_LIB = -lGraph --GA_LD = -L$(top_builddir)/src/GA -+GA_LD = -L$(abs_top_builddir)/src/GA - GA_LIB = -lGA --MM_LD = -L$(top_builddir)/src/MM -+MM_LD = -L$(abs_top_builddir)/src/MM - MM_LIB = -lMM --MINIMIZERS_LD = -L$(top_builddir)/src/Minimizers -+MINIMIZERS_LD = -L$(abs_top_builddir)/src/Minimizers - MINIMIZERS_LIB = -lMinimizers --PARSERS_LD = -L$(top_builddir)/src/Parsers -+PARSERS_LD = -L$(abs_top_builddir)/src/Parsers - PARSERS_LIB = -lParsers --STATS_LD = -L$(top_builddir)/src/Statistics -+STATS_LD = -L$(abs_top_builddir)/src/Statistics - STATS_LIB = -lStatistics --TINYXML_LD = -L$(top_builddir)/src/tinyxml -+TINYXML_LD = -L$(abs_top_builddir)/src/tinyxml - TINYXML_LIB = -ltinyxml - - # INCLUDES = -I@boost_inc@ -I@xerces_path@/include -I$(top_srcdir)/src -I$(top_srcdir)/include -I$(top_srcdir)/src/tinyxml -I$(top_srcdir)/src/Parsers -I$(top_srcdir)/src/Molecule -I$(top_srcdir)/src/Statistics -I$(top_srcdir)/src/Utils $(tmpQT_INCPATH) -diff -urN amber11.orig/AmberTools/src/mtkpp/tools/Makefile.am amber11/AmberTools/src/mtkpp/tools/Makefile.am ---- amber11.orig/AmberTools/src/mtkpp/tools/Makefile.am 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/tools/Makefile.am 2012-03-03 20:03:01.417032565 +0200 -@@ -25,7 +25,7 @@ - tmpQT_LIBS = $(QT_LIBS) - endif - --DIAGNOSTICS_LD = -L$(top_builddir)/src/Diagnostics -+DIAGNOSTICS_LD = -L$(abs_top_builddir)/src/Diagnostics - DIAGNOSTICS_LIB = -lDiagnostics - MOLECULE_LD = -L$(top_builddir)/src/Molecule - MOLECULE_LIB = -lMolecule -diff -urN amber11.orig/AmberTools/src/mtkpp/tools/Makefile.in amber11/AmberTools/src/mtkpp/tools/Makefile.in ---- amber11.orig/AmberTools/src/mtkpp/tools/Makefile.in 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/tools/Makefile.in 2012-03-03 20:03:01.417032565 +0200 -@@ -392,7 +392,7 @@ - @USE_XERCES_TRUE@XERCES_LIB = -lxerces-c - @USE_QT_TRUE@tmpQT_INCPATH = $(QT_INCPATH) - @USE_QT_TRUE@tmpQT_LIBS = $(QT_LIBS) --DIAGNOSTICS_LD = -L$(top_builddir)/src/Diagnostics -+DIAGNOSTICS_LD = -L$(abs_top_builddir)/src/Diagnostics - DIAGNOSTICS_LIB = -lDiagnostics - MOLECULE_LD = -L$(top_builddir)/src/Molecule - MOLECULE_LIB = -lMolecule -diff -urN amber11.orig/AmberTools/src/mtkpp/tools/MCPB.cpp amber11/AmberTools/src/mtkpp/tools/MCPB.cpp ---- amber11.orig/AmberTools/src/mtkpp/tools/MCPB.cpp 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/tools/MCPB.cpp 2012-03-03 20:03:01.416032566 +0200 -@@ -67,6 +67,7 @@ - #include "Parsers/mtkppParser.h" - #include "Parsers/dMParser.h" - #include "Parsers/commLineOptions.h" -+#include "Parsers/StringManip.h" - - // - Log - #include "Log/errorHandler.h" -@@ -84,6 +85,12 @@ - - using namespace MTKpp; - -+std::string getEnvVar(std::string const& key) -+{ -+ char const* val = getenv(key.c_str()); -+ return val == NULL ? std::string() : std::string(val); -+} -+ - void printFunctionList() - { - std::string functionList = "\n MCPB Functions:\n"; -@@ -181,32 +188,32 @@ - functionList += " Find all metal centers in the collection\n"; - functionList += " syntax: findMetalCenters\n"; - functionList += "\n"; -- functionList += " g03Charges\n"; -+ functionList += " gaussianCharges\n"; - functionList += " Generate a Gaussian input file for partial-charge computation\n"; - functionList += " Optional: set the Gaussian job file name\n"; -- functionList += " syntax: g03Charges //cuCYM4 cuCYM4.com\n"; -+ functionList += " syntax: gaussianCharges //cuCYM4 cuCYM4.com\n"; - functionList += "\n"; -- functionList += " g03Mem\n"; -- functionList += " Set amount of memory requested for g03\n"; -- functionList += " syntax: g03Mem 3600MB\n"; -+ functionList += " gaussianMem\n"; -+ functionList += " Set amount of memory requested for Gaussian\n"; -+ functionList += " syntax: gaussianMem 3600MB\n"; - functionList += "\n"; -- functionList += " g03MoldenFormat\n"; -+ functionList += " gaussianMoldenFormat\n"; - functionList += " Request Gaussian log files formatted for viewing in Molden\n"; -- functionList += " (adds the GFINPUT and IOP(6/7=3) keywords)\n"; -- functionList += " syntax: g03MoldenFormat\n"; -+ functionList += " (adds the GFInput and IOp(6/7=3) keywords)\n"; -+ functionList += " syntax: gaussianMoldenFormat\n"; - functionList += "\n"; -- functionList += " g03nProc\n"; -- functionList += " Set number of processors requested for g03\n"; -- functionList += " syntax: g03nProc 2\n"; -+ functionList += " gaussianNProc\n"; -+ functionList += " Set number of processors requested for Gaussian\n"; -+ functionList += " syntax: gaussianNProc 2\n"; - functionList += "\n"; -- functionList += " g03OptAndFC\n"; -+ functionList += " gaussianOptAndFC\n"; - functionList += " Generate Gaussian input files for optimisation and force constants\n"; - functionList += " Optional: set the Gaussian job file name\n"; -- functionList += " syntax: g03OptAndFC //cuCYM4 cuCYM4.com\n"; -+ functionList += " syntax: gaussianOptAndFC //cuCYM4 cuCYM4.com\n"; - functionList += "\n"; -- functionList += " g03Verbosity\n"; -+ functionList += " gaussianVerbosity\n"; - functionList += " Set the verbosity of Gaussian output ([T]erse, [N]ormal, [P]rolix)\n"; -- functionList += " syntax: g03Verbosity [T|N|P]\n"; -+ functionList += " syntax: gaussianVerbosity [T|N|P]\n"; - functionList += "\n"; - functionList += " levelOfTheory\n"; - functionList += " Set Gaussian Theory Level\n"; -@@ -256,9 +263,9 @@ - functionList += " Read Formatted Checkpoint file\n"; - functionList += " syntax: readFormattedChkPtFile file.fchk\n"; - functionList += "\n"; -- functionList += " readG03Output\n"; -- functionList += " Read G03 Output\n"; -- functionList += " syntax: readG03Output cuCYM4.log\n"; -+ functionList += " readGaussianOutput\n"; -+ functionList += " Read Gaussian Output\n"; -+ functionList += " syntax: readGaussianOutput cuCYM4.log\n"; - functionList += "\n"; - functionList += " readMolZmatMapping\n"; - functionList += " Read Molecule <--> Z-Matrix mapping file\n"; -@@ -470,7 +477,7 @@ - else { - printHeader(std::cout, prog_name, authors); - clo->printUsage(); -- std::cout << " Please provide a MCPB file " << std::endl; -+ std::cout << " Please provide an MCPB file " << std::endl; - return 0; - } - -@@ -515,7 +522,9 @@ - std::string errorMessage = ""; - - std::vector<std::vector<std::string> > inputFileContents; -+ - int failure = readInputFile(inputFile, inputFileContents); -+ - if (failure) { - printHeader(std::cout, prog_name, authors); - clo->printUsage(); -@@ -660,7 +669,7 @@ - std::vector<std::vector<std::string> > sourceInputFileContents; - failure = readInputFile(cur[1], sourceInputFileContents); - if (failure) { -- errorMessage = " Error Reading File " + cur[1]; -+ errorMessage = " Error reading file " + cur[1]; - MTKpp::errorLogger.throwError("MCPB::source", errorMessage, 1); - exit(1); - } -@@ -668,7 +677,7 @@ - sourceInputFileContents.end()); - } - else { -- errorMessage = " Error Reading File " + cur[1]; -+ errorMessage = " Error reading file " + cur[1]; - MTKpp::errorLogger.throwError("MCPB::source", errorMessage, 1); - exit(1); - } -@@ -742,6 +751,20 @@ - \endcode - */ - if ((inputFileContents[i].size() == 3)) { -+ //std::cout << "SET COMMAND " << inputFileContents[i][2] << std::endl; -+ if (inputFileContents[i][2].compare(0,1,"$") == 0) { -+ std::string envVariable = ""; -+ std::string tVar = inputFileContents[i][2]; -+ envVariable = getEnvVar(tVar.substr(1,tVar.size()-1)); -+ if (envVariable == "") { -+ std::cout << " Environment variable " << tVar.substr(1,tVar.size()-1) -+ << " is unset " << std::endl; -+ exit(1); -+ } -+ //std::cout << "Environment variable = " << envVariable << std::endl; -+ inputFileContents[i][2] = envVariable; -+ } -+ - variableMap[inputFileContents[i][1]] = inputFileContents[i][2]; - for (unsigned int j = i+1; j < inputFileContents.size(); j++) { - bool bReplaced = false; -@@ -813,6 +836,115 @@ - } - } - -+ else if (inputFileContents[i][0] == "printGroupCharge") { -+ /*! -+ @ingroup MCPB_commands -+ \code -+ Function: printFrag -+ -+ Description: Print fragment details -+ -+ syntax: printGroupCharge Zn-CCCC -+ -+ \endcode -+ */ -+ if ((inputFileContents[i].size() != 2) or (!pCollection)) { -+ MTKpp::errorLogger.throwError("MCPB::printGroupCharge", " Incorrect use of printGroupCharge ... exiting", MTK_ERROR); -+ exit(1); -+ } -+ else { -+ stdLibrary* pStdLibrary = pCollection->getStdLibrary(); -+ if (pStdLibrary) { -+ stdGroup* pStdGroup = pStdLibrary->getStdGroup(inputFileContents[i][1]); -+ std::cout << " Group " << pStdGroup->getName() << "\n"; -+ if (pStdGroup) { -+ molecule* pM = pStdGroup->getStdMolecule(); -+ if (pM) { -+ double groupCharge = 0.0; -+ std::vector<submolecule*> pSM = pM->getSubMoleculeList(); -+ //std::cout << " Number of submolecules = " << pSM.size() << "\n"; -+ for (unsigned int x = 0; x < pSM.size(); x++) { -+ stdFrag* pSF = pStdGroup->getStdFrag(pSM[x]->getName()); -+ if (pSF) { -+ std::cout << " " << pSF->getSymbol() << "\n"; -+ double fCharge = 0.0; -+ std::vector<atom*> pA = pSM[x]->getAtomList(); -+ for (unsigned int y = 0; y < pA.size(); y++) { -+ stdAtom* pSA = pA[y]->getStdAtom(); -+ if (pSA) { -+ fCharge += pSA->atmCharge; -+ std::cout << " |" << pSA->identity << "| " << pSA->atmCharge << "\n"; -+ } -+ else { -+ std::cout << " Error find std atom " << std::endl; -+ exit(1); -+ } -+ } -+ groupCharge += fCharge; -+ std::cout << " Total Fragment Charge " << pSF->getCharge() << "\n"; -+ } -+ } -+ /*std::vector<stdFrag*> pL = pStdGroup->getStdFragList(); -+ for (unsigned int x = 0; x < pL.size(); x++) { -+ std::cout << " Fragment " << pL[x]->getSymbol() << "\n"; -+ std::vector<stdAtom*> pL2 = pL[x]->getStdAtomList(); -+ double fCharge = 0.0; -+ for (unsigned int y = 0; y < pL2.size(); y++) { -+ fCharge += pL2[y]->atmCharge; -+ std::cout << " Atom " << pL2[y]->identity << " " << pL2[y]->atmCharge << "\n"; -+ } -+ groupCharge += fCharge; -+ //groupCharge += pL[x]->getCharge(); -+ std::cout << " Fragment Charge " << pL[x]->getCharge() << "\n"; -+ } -+ */ -+ -+ std::cout << " Total Charge = " << groupCharge << "\n" << std::endl; -+ } -+ } -+ } -+ } -+ } -+ -+ else if (inputFileContents[i][0] == "printFrag") { -+ /*! -+ @ingroup MCPB_commands -+ \code -+ Function: printFrag -+ -+ Description: Print fragment details -+ -+ syntax: printFrag Zn-CCCC CY1 -+ -+ \endcode -+ */ -+ if ((inputFileContents[i].size() != 3) or (!pCollection)) { -+ MTKpp::errorLogger.throwError("MCPB::printFrag", " Incorrect use of printFrag ... exiting", MTK_ERROR); -+ exit(1); -+ } -+ else { -+ stdLibrary* pStdLibrary = pCollection->getStdLibrary(); -+ if (pStdLibrary) { -+ stdGroup* pStdGroup = pStdLibrary->getStdGroup(inputFileContents[i][1]); -+ -+ double groupCharge = 0.0; -+ std::vector<stdFrag*> pL = pStdGroup->getStdFragList(); -+ for (unsigned int x = 0; x < pL.size(); x++) { -+ groupCharge += pL[x]->getCharge(); -+ -+ } -+ std::cout << " Group " << inputFileContents[i][1] << " charge = " -+ << groupCharge << std::endl; -+ -+ stdFrag* pStdFrag = pStdGroup->getStdFrag(inputFileContents[i][2]); -+ if (pStdFrag) { -+ std::cout << " Fragment " << inputFileContents[i][2] << " charge = " -+ << pStdFrag->getCharge() << std::endl; -+ } -+ } -+ } -+ } -+ - else if (inputFileContents[i][0] == "readPdb") { - /*! - @ingroup MCPB_commands -@@ -2227,7 +2359,8 @@ - double resCharge = 0.0; - for (unsigned int y = 0; y < residueAtoms.size(); y++) { - stdAtom* pLStdAtom = residueAtoms[y]->getStdAtom(); -- std::cout << " " << residueAtoms[y]->getName() << " " << residueAtoms[y]->getFileID() -+ std::cout << " " -+ << residueAtoms[y]->getName() << " " << residueAtoms[y]->getFileID() - << " " << residueAtoms[y]->getType() << " " << residueAtoms[y]->getValence() - << " " << residueAtoms[y]->getHybridization() << " "; - if (pLStdAtom) { -@@ -2437,6 +2570,11 @@ - molecule* selMol = pSel->getMol(); - pPdbParser->Write(inputFileContents[i][2], selMol); - } -+ else { -+ MTKpp::errorLogger.throwError("MCPB::writePdb", -+ " Error molecule was not selected ... exiting ", MTK_ERROR); -+ exit(1); -+ } - } - } - -@@ -2674,7 +2812,6 @@ - - syntax: basisSet GEN bs.txt - syntax: basisSet GEN.6D.7F bs.txt -- syntax: basisSet GENECP bs.txt pseudo.txt - \endcode - */ - if (inputFileContents[i].size() == 2) { -@@ -2685,6 +2822,11 @@ - pGParser->setBasisSet(inputFileContents[i][1]); - pGParser->setBasisSetFile(inputFileContents[i][2]); - } -+ else { -+ MTKpp::errorLogger.throwError("MCPB::basisSet", -+ " Incorrect use ... exiting ", MTK_ERROR); -+ exit(1); -+ } - } - - else if (inputFileContents[i][0] == "pseudoPotentials") { -@@ -2698,8 +2840,15 @@ - syntax: pseudoPotential pseudo.txt - \endcode - */ -- pGParser->addCommandOption("pseudo","read"); -+ if (inputFileContents[i].size() == 2) { -+ pGParser->addCommandOption("Pseudo","Read"); - pGParser->setPseudoPotentialFile(inputFileContents[i][1]); -+ } else { -+ MTKpp::errorLogger.throwError("MCPB::pseudoPotentials", -+ " Incorrect use ... exiting ", MTK_ERROR); -+ exit(1); -+ } -+ - } - - else if (inputFileContents[i][0] == "modRedundant") { -@@ -2713,8 +2862,14 @@ - syntax: modRedundant modred.txt - \endcode - */ -- pGParser->addCommandOption("opt","modredundant"); -+ if (inputFileContents[i].size() == 2) { -+ pGParser->addCommandOption("Opt","ModRedundant"); - pGParser->setModRedundantFile(inputFileContents[i][1]); -+ } else { -+ MTKpp::errorLogger.throwError("MCPB::modRedundant", -+ " Incorrect use ... exiting ", MTK_ERROR); -+ exit(1); -+ } - } - - else if (inputFileContents[i][0] == "clusterCharge") { -@@ -2728,7 +2883,13 @@ - syntax: clusterCharge cuCYM4 -3 - \endcode - */ -+ if (inputFileContents[i].size() == 3) { - pGParser->setCharge(atoi(inputFileContents[i][2].c_str())); -+ } else { -+ MTKpp::errorLogger.throwError("MCPB::clusterCharge", -+ " Incorrect use ... exiting ", MTK_ERROR); -+ exit(1); -+ } - } - - else if (inputFileContents[i][0] == "clusterSpin") { -@@ -2742,76 +2903,94 @@ - syntax: clusterSpin 0 - \endcode - */ -+ if (inputFileContents[i].size() == 2) { - pGParser->setMultiplicity(atoi(inputFileContents[i][1].c_str())); -+ } else { -+ MTKpp::errorLogger.throwError("MCPB::clusterSpin", -+ " Incorrect use ... exiting ", MTK_ERROR); -+ exit(1); -+ } - } - -- else if (inputFileContents[i][0] == "g03MoldenFormat") { -+ else if (inputFileContents[i][0] == "gaussianMoldenFormat") { - /*! - @ingroup MCPB_commands - \code -- Function: g03MoldenFormat -+ Function: gaussianMoldenFormat - - Description: Use Molden formatted output in log file. Print out - details of the basis set and the molecular orbitals. - -- syntax: g03MoldenFormat (bare word) -+ syntax: gaussianMoldenFormat (bare word) - \endcode - */ -- pGParser->addCommandOption("gfinput"); -- pGParser->addIop("iop(6/7=3)"); -+ pGParser->addCommandOption("GFInput"); -+ pGParser->addIop("IOp(6/7=3)"); - } - -- else if (inputFileContents[i][0] == "g03Verbosity") { -+ else if (inputFileContents[i][0] == "gaussianVerbosity") { - if (inputFileContents[i].size() == 2) { - pGParser->setVerbosity(inputFileContents[i][1]); -+ } else { -+ MTKpp::errorLogger.throwError("MCPB::gaussianVerbosity", -+ " Incorrect use ... exiting ", MTK_ERROR); -+ exit(1); - } - } - -- else if (inputFileContents[i][0] == "g03Mem") { -+ else if (inputFileContents[i][0] == "gaussianMem") { - /*! - @ingroup MCPB_commands - \code -- Function: g03Mem -+ Function: gaussianMem - -- Description: Set amount of memory requested for g03 -+ Description: Set amount of memory requested for Gaussian - -- syntax: g03Mem 3600MB -+ syntax: gaussianMem 3600MB - \endcode - */ - if (inputFileContents[i].size() == 2) { - pGParser->setMem(inputFileContents[i][1]); -+ } else { -+ MTKpp::errorLogger.throwError("MCPB::gaussianMem", -+ " Incorrect use ... exiting ", MTK_ERROR); -+ exit(1); - } - } - -- else if (inputFileContents[i][0] == "g03nProc") { -+ else if (inputFileContents[i][0] == "gaussianNProc") { - /*! - @ingroup MCPB_commands - \code -- Function: g03nProc -+ Function: gaussianNProc - -- Description: Set number of processors requested for g03 -+ Description: Set number of processors requested for Gaussian - -- syntax: g03nProc 2 -+ syntax: gaussianNProc 2 - \endcode - */ - if (inputFileContents[i].size() == 2) { -- pGParser->setnProc(inputFileContents[i][1]); -+ pGParser->setNProc(inputFileContents[i][1]); -+ } else { -+ MTKpp::errorLogger.throwError("MCPB::gaussianNProc", -+ " Incorrect use ... exiting ", MTK_ERROR); -+ exit(1); - } - } - -- else if (inputFileContents[i][0] == "g03OptAndFC") { -+ else if (inputFileContents[i][0] == "gaussianOptAndFC") { - /*! - @ingroup MCPB_commands - \code -- Function: g03OptAndFC -+ Function: gaussianOptAndFC - - Description: Set Gaussian input name - -- syntax: g03OptAndFC //cuCYM4 cuCYM4.com -+ syntax: gaussianOptAndFC //cuCYM4 cuCYM4.com - \endcode - */ - if ((inputFileContents[i].size() != 3) or (!pCollection)) { -- MTKpp::errorLogger.throwError("MCPB::g03OptAndFC", -+ MTKpp::errorLogger.throwError("MCPB::gaussianOptAndFC", - " Incorrect use ... exiting ", MTK_ERROR); - exit(1); - } -@@ -2819,7 +2998,7 @@ - selection* pSel = new selection(pCollection); - failure = pSel->parse(inputFileContents[i][1]); - if (failure) { -- MTKpp::errorLogger.throwError("MCPB::g03OptAndFC", -+ MTKpp::errorLogger.throwError("MCPB::gaussianOptAndFC", - " Error in selection parsing ... exiting ", MTK_ERROR); - exit(1); - } -@@ -2833,17 +3012,17 @@ - pGParser->setCartesian(1); - pGParser->setWriteMoleculeName(1); - pGParser->setWriteChargeAndMult(1); -- pGParser->addCommandOption("integral(Grid=UltraFine)"); -+ pGParser->addCommandOption("Integral", "(Grid=UltraFine)"); - -- std::vector<std::string> optOptions = pGParser->getCommandOption("opt"); -+ std::vector<std::string> optOptions = pGParser->getCommandOption("Opt"); - if (optOptions.size() == 0) { -- pGParser->addCommandOption("opt"); -+ pGParser->addCommandOption("Opt"); - } - -- pGParser->addCommandOption("scf", "xqc"); -- pGParser->addCommandOption("geom", "PrintInputOrient"); -+ pGParser->addCommandOption("SCF", "XQC"); -+ pGParser->addCommandOption("Geom", "PrintInputOrient"); - pGParser->Write(fileNameBase+"_opt.com", pSelMol); -- pGParser->removeCommandOption("opt"); -+ pGParser->removeCommandOption("Opt"); - - // k's - // Do not write coordinates, name, charge or multiplicity, -@@ -2851,40 +3030,40 @@ - pGParser->setNoCoords(); - pGParser->setWriteMoleculeName(0); - pGParser->setWriteChargeAndMult(0); -- pGParser->addCommandOption("freq", "noraman"); -- pGParser->addCommandOption("geom", "allcheckpoint"); -- pGParser->addCommandOption("guess", "read"); -- pGParser->addIop("iop(7/33=1)"); -+ pGParser->addCommandOption("Freq", "NoRaman"); -+ pGParser->addCommandOption("Geom", "AllCheckpoint"); -+ pGParser->addCommandOption("Guess", "Read"); -+ pGParser->addIop("IOp(7/33=1)"); - pGParser->Write(fileNameBase+"_fc.com", pSelMol); - pGParser->clearIop(); - - /* - // optimization -- pGParser->addCommandOption("opt", "z-matrix"); -+ pGParser->addCommandOption("Opt", "Z-Matrix"); - pGParser->generateZMatrix(pSelMol); - // [molecule index] = zmatrix index; - pGParser->writeMappingFile(fileNameBase+"_zmat.map"); -- pGParser->addCommandOption("geom", "PrintInputOrient"); -+ pGParser->addCommandOption("Geom", "PrintInputOrient"); - pGParser->Write(fileNameBase+"_opt.com", pSelMol); -- pGParser->removeCommandOption("opt"); -+ pGParser->removeCommandOption("Opt"); - */ - } - } - } - -- else if (inputFileContents[i][0] == "g03Charges") { -+ else if (inputFileContents[i][0] == "gaussianCharges") { - /*! - @ingroup MCPB_commands - \code -- Function: g03Charges -+ Function: gaussianCharges - - Description: Set Gaussian input name - -- syntax: g03Charges //cuCYM4 cuCYM4.com -+ syntax: gaussianCharges //cuCYM4 cuCYM4.com - \endcode - */ - if ((inputFileContents[i].size() != 3) or (!pCollection)) { -- MTKpp::errorLogger.throwError("MCPB::g03Charges", -+ MTKpp::errorLogger.throwError("MCPB::gaussianCharges", - " Incorrect use ... exiting ", MTK_ERROR); - exit(1); - } -@@ -2892,7 +3071,7 @@ - selection* pSel = new selection(pCollection); - failure = pSel->parse(inputFileContents[i][1]); - if (failure) { -- MTKpp::errorLogger.throwError("MCPB::g03Charges", -+ MTKpp::errorLogger.throwError("MCPB::gaussianCharges", - " Error in selection parsing ... exiting ", MTK_ERROR); - exit(1); - } -@@ -2907,14 +3086,14 @@ - - // q's - std::vector<std::string> popOptions; -- popOptions.push_back("mk"); -- popOptions.push_back("readradii"); -- pGParser->addCommandOption("pop", popOptions); -- pGParser->removeCommandOption("freq"); -- pGParser->addIop("iop(6/33=2)"); -+ popOptions.push_back("MK"); -+ popOptions.push_back("ReadRadii"); -+ pGParser->addCommandOption("Pop", popOptions); -+ pGParser->removeCommandOption("Freq"); -+ pGParser->addIop("IOp(6/33=2)"); - -- pGParser->addCommandOption("integral(Grid=UltraFine)"); -- pGParser->addCommandOption("scf", "xqc"); -+ pGParser->addCommandOption("Integral", "(Grid=UltraFine)"); -+ pGParser->addCommandOption("SCF", "XQC"); - - pGParser->Write(fileNameBase+"_mk.com", pSelMol); - -@@ -3053,7 +3232,8 @@ - result = find(bbb.begin(), bbb.end(), dd); - - if (result != bbb.end()) { -- freezingAtoms += "\n BBB " + submols[s]->getName() + " " + int2String(submols[s]->getSubMolId()) + " " + dd; -+ freezingAtoms += "\n BBB " + submols[s]->getName() + " " -+ + int2String(submols[s]->getSubMolId()) + " " + dd; - sprintf(temp,"%5d%10.5f", 1, pStdAtom_a->atmCharge); - orespAdd << temp << std::endl; - sprintf(temp,"%5d%5d", 1, subAtoms[a]->getIndex()); -@@ -3071,7 +3251,6 @@ - MTKpp::errorLogger.throwError("MCPB::respgenAdditions", - freezingAtoms, INFO); - } -- - orespAdd << "\n" << std::endl; - orespAdd.close(); - } -@@ -3099,22 +3278,22 @@ - } - } - -- else if (inputFileContents[i][0] == "readG03Output") { -+ else if (inputFileContents[i][0] == "readGaussianOutput") { - /*! - @ingroup MCPB_commands - \code -- Function: readG03Output -+ Function: readGaussianOutput - -- Description: Read G03 Output -+ Description: Read Gaussian Output - -- syntax: readG03Output cuCYM4.log -+ syntax: readGaussianOutput cuCYM4.log - \endcode - */ - if ((inputFileContents[i].size() == 2) or (pGParser)) { - pGParser->Read(inputFileContents[i][1], pSheet); - } - else { -- MTKpp::errorLogger.throwError("MCPB::readG03Output", -+ MTKpp::errorLogger.throwError("MCPB::readGaussianOutput", - " Incorrect use ... exiting ", MTK_ERROR); - exit(1); - } -@@ -3481,8 +3660,8 @@ - pGParser->setCartesian(0); - pGParser->setWriteMoleculeName(1); - pGParser->setWriteChargeAndMult(1); -- pGParser->addCommandOption("freq", "noraman"); -- pGParser->addIop("iop(7/33=1)"); -+ pGParser->addCommandOption("Freq", "NoRaman"); -+ pGParser->addIop("IOp(7/33=1)"); - pGParser->Write(inputFileContents[i][2], pSelMol); - pGParser->writeMappingFile(inputFileContents[i][2]+".map"); - } -@@ -3826,6 +4005,7 @@ - if (pStdFrag) { - bool doIt = pStdGroup->hasStdFrag(pStdFrag->getSymbol()); - if (doIt) { -+ //std::cout << " " << pStdFrag->getSymbol() << "\n"; - //submolecule* pStdSubmol = pStdMolecule->addSubMolecule(); - //pStdSubmol->copy(submolList[t]); - std::vector<atom*> lAtomList = submolList[t]->getAtomList(); -@@ -3834,7 +4014,8 @@ - if (pStdAtom) { - //std::cout << " |" << lAtomList[r]->getName() << "| " << lAtomList[r]->getZcharge() << "\n"; - pStdAtom->atmCharge = lAtomList[r]->getZcharge(); -- groupCharge += lAtomList[r]->getZcharge(); -+ //groupCharge += lAtomList[r]->getZcharge(); -+ groupCharge += pStdAtom->atmCharge; - } - } - } -@@ -3861,11 +4042,398 @@ - */ - } - updateRespChargesMessage += " Charge: " + double2String(groupCharge, 2); -+ //std::cout << " Group charge = " << double2String(groupCharge, 2) << "\n"; - MTKpp::errorLogger.throwError("MCPB::updateRespCharges", - updateRespChargesMessage, INFO); - } - } - -+ else if (inputFileContents[i][0] == "respgen") { -+ /*! -+ @ingroup MCPB_commands -+ \code -+ Function: respgen -+ -+ Description: Create resp1 and resp2 files (recreates functionality of respgen) -+ -+ syntax: respgen /COL/MOL Group fileName -+ \endcode -+ */ -+ -+ if ((inputFileContents[i].size() != 4) or (!pCollection)) { -+ MTKpp::errorLogger.throwError("MCPB::respgen", -+ " Incorrect use ... exiting ", MTK_ERROR); -+ exit(1); -+ } -+ else { -+ selection* pSel = new selection(pCollection); -+ failure = pSel->parse(inputFileContents[i][1]); -+ if (failure) { -+ MTKpp::errorLogger.throwError("MCPB::respgen", -+ " Error in selection parsing ... exiting ", MTK_ERROR); -+ exit(1); -+ } -+ -+ stdLibrary* pStdLibrary = pCollection->getStdLibrary(); -+ stdGroup* pStdGroup = 0; -+ if (pStdLibrary) { -+ pStdGroup = pStdLibrary->getStdGroup(inputFileContents[i][2]); -+ if (!pStdGroup) { -+ MTKpp::errorLogger.throwError("MCPB::respgen", -+ " Can't find stdGroup ... exiting ", MTK_ERROR); -+ exit(1); -+ } -+ } -+ else { -+ MTKpp::errorLogger.throwError("MCPB::respgen", -+ " Error in selection parsing ... exiting ", MTK_ERROR); -+ } -+ -+ if (pSel->getSelectionType() == 1) { -+ molecule* pSelMol = pSel->getMol(); -+ if (!pSelMol) { -+ std::cout << " Error in respgen selection \n"; -+ exit(1); -+ } -+ -+ std::vector<std::string>::iterator result; -+ -+ acParser* pAcParser = new acParser(); -+ pAcParser->Write(inputFileContents[i][3]+".ac", pCollection); -+ delete pAcParser; -+ -+ std::string bb0FileResp1 = inputFileContents[i][3] + "_bb0.resp1"; -+ std::string bb0FileResp2 = inputFileContents[i][3] + "_bb0.resp2"; -+ std::ofstream obb0FileResp1; -+ std::ofstream obb0FileResp2; -+ obb0FileResp1.open(bb0FileResp1.c_str()); -+ obb0FileResp2.open(bb0FileResp2.c_str()); -+ -+ std::string bb1FileResp1 = inputFileContents[i][3] + "_bb1.resp1"; -+ std::string bb1FileResp2 = inputFileContents[i][3] + "_bb1.resp2"; -+ std::ofstream obb1FileResp1; -+ std::ofstream obb1FileResp2; -+ obb1FileResp1.open(bb1FileResp1.c_str()); -+ obb1FileResp2.open(bb1FileResp2.c_str()); -+ -+ std::string bb2FileResp1 = inputFileContents[i][3] + "_bb2.resp1"; -+ std::string bb2FileResp2 = inputFileContents[i][3] + "_bb2.resp2"; -+ std::ofstream obb2FileResp1; -+ std::ofstream obb2FileResp2; -+ obb2FileResp1.open(bb2FileResp1.c_str()); -+ obb2FileResp2.open(bb2FileResp2.c_str()); -+ -+ std::string bb3FileResp1 = inputFileContents[i][3] + "_bb3.resp1"; -+ std::string bb3FileResp2 = inputFileContents[i][3] + "_bb3.resp2"; -+ std::ofstream obb3FileResp1; -+ std::ofstream obb3FileResp2; -+ obb3FileResp1.open(bb3FileResp1.c_str()); -+ obb3FileResp2.open(bb3FileResp2.c_str()); -+ -+ if (!obb0FileResp1 or !obb0FileResp2 or !obb1FileResp1 or !obb1FileResp2 or -+ !obb2FileResp1 or !obb2FileResp2 or !obb3FileResp1 or !obb3FileResp2) { -+ MTKpp::errorLogger.throwError("MCPB::respgen", -+ " Unable to open RESP files ... exiting ", MTK_ERROR); -+ exit(1); -+ } -+ -+ std::vector<molecule*> molList = pCollection->getMoleculeList(); -+ -+ std::string terminalFrags = ""; -+ char temp[100]; -+ bool bFirst = true; -+ for (unsigned int m = 0; m < molList.size(); m++) { -+ molecule* pMol = molList[m]; -+ std::vector<submolecule*> submols = pMol->getSubMoleculeList(); -+ for (unsigned int s = 0; s < submols.size(); s++) { -+ if (submols[s]->hasStdFrag()) { -+ stdFrag* pStdFrag = submols[s]->getStdFrag(); -+ if (pStdFrag->getParent()->getName() != inputFileContents[i][2]) { -+ if (bFirst) { -+ sprintf(temp,"%5d%10.5f\n", pStdFrag->numStdAtoms(), 0.0); -+ bFirst = false; -+ } -+ else { -+ sprintf(temp,"\n%5d%10.5f\n", pStdFrag->numStdAtoms(), 0.0); -+ } -+ -+ terminalFrags += std::string(temp); -+ std::vector<atom*> atomList = submols[s]->getAtomList(); -+ char temp2[80]; -+ int counter = 0; -+ for (unsigned int a = 0; a < atomList.size(); a++) { -+ if (counter > 7) { // was 6 -+ terminalFrags += "\n"; -+ counter = 0; -+ } -+ sprintf(temp2,"%5d%5d", 1, atomList[a]->getIndex()); -+ terminalFrags += std::string(temp2); -+ counter++; -+ } -+ //terminalFrags += "\n"; -+ } -+ } -+ } -+ } -+ //std::cout << terminalFrags << std::endl; -+ -+ std::string bb0 = terminalFrags + "\n"; -+ std::string bb1 = terminalFrags + "\n"; -+ std::string bb2 = terminalFrags + "\n"; -+ std::string bb3 = terminalFrags + "\n"; -+ -+ int lInd = 0; -+ for (unsigned int m = 0; m < molList.size(); m++) { -+ molecule* pMol = molList[m]; -+ -+ if (pMol->getName() == "Reference") continue; -+ -+ std::vector<submolecule*> submols = pMol->getSubMoleculeList(); -+ for (unsigned int s = 0; s < submols.size(); s++) { -+ if (submols[s]->hasStdFrag()) { -+ stdFrag* pStdFrag = submols[s]->getStdFrag(); -+ //std::cout << " respgen " << pStdFrag->getParent()->getName() << " " << inputFileContents[i][2] << " \n "; -+ if (pStdFrag->getParent()->getName() != inputFileContents[i][2]) continue; -+ std::vector<atom*> subAtoms = submols[s]->getAtomList(); -+ for (unsigned int a = 0; a < subAtoms.size(); a++) { -+ stdAtom* pStdAtom_a = subAtoms[a]->getStdAtom(); -+ lInd++; -+ // iBB == 1 -+ if (pStdAtom_a) { -+ std::string dd = pStdAtom_a->identity + ":" + pStdAtom_a->type; -+ -+ //result = find(bb_heavy.begin(), bb_heavy.end(), subAtoms[a]->getName()); -+ //result = find(bb_heavy.begin(), bb_heavy.end(), pStdAtom_a->identity); -+ result = find(bb_heavy.begin(), bb_heavy.end(), dd); -+ -+ if (result != bb_heavy.end()) { -+ sprintf(temp,"%5d%10.5f\n", 1, pStdAtom_a->atmCharge); -+ //freezingAtoms += "\n BB Heavy " + submols[s]->getName() + " " + int2String(submols[s]->getSubMolId()) + " " + dd; -+ //std::cout << "\n BB Heavy " + submols[s]->getName() + " " + int2String(submols[s]->getSubMolId()) + " " + dd; -+ //std::cout << dd << " " << subAtoms[a]->getName() << " ---> " << subAtoms[a]->getStdAtom()->type << std::endl; -+ //orespAdd << temp << std::endl; -+ bb1 += std::string(temp); -+ sprintf(temp,"%5d%5d\n", 1, subAtoms[a]->getIndex()); -+ //orespAdd << temp << std::endl; -+ bb1 += std::string(temp); -+ } -+ -+ // iBB == 2 -+ dd = pStdAtom_a->identity + ":" + pStdAtom_a->type; -+ -+ //result = find(bb.begin(), bb.end(), subAtoms[a]->getName()); -+ result = find(bb.begin(), bb.end(), dd); -+ -+ if (result != bb.end()) { -+ //freezingAtoms += "\n BB " + submols[s]->getName() + " " + int2String(submols[s]->getSubMolId()) + " " + dd; -+ sprintf(temp,"%5d%10.5f\n", 1, pStdAtom_a->atmCharge); -+ //orespAdd << temp << std::endl; -+ bb2 += std::string(temp); -+ sprintf(temp,"%5d%5d\n", 1, subAtoms[a]->getIndex()); -+ //orespAdd << temp << std::endl; -+ bb2 += std::string(temp); -+ } -+ // iBB == 3 -+ dd = pStdAtom_a->identity + ":" + pStdAtom_a->type; -+ -+ //result = find(bbb.begin(), bbb.end(), subAtoms[a]->getName()); -+ result = find(bbb.begin(), bbb.end(), dd); -+ -+ if (result != bbb.end()) { -+ //freezingAtoms += "\n BBB " + submols[s]->getName() + " " -+ // + int2String(submols[s]->getSubMolId()) + " " + dd; -+ sprintf(temp,"%5d%10.5f\n", 1, pStdAtom_a->atmCharge); -+ bb3 += std::string(temp); -+ //orespAdd << temp << std::endl; -+ sprintf(temp,"%5d%5d\n", 1, subAtoms[a]->getIndex()); -+ bb3 += std::string(temp); -+ //orespAdd << temp << std::endl; -+ } -+ } -+ else { -+ MTKpp::errorLogger.throwError("MCPB::respgen", -+ " Unknown option ... exiting ", MTK_ERROR); -+ } -+ } -+ } -+ } -+ } -+ -+ std::string resp1 = ""; -+ resp1 += "Resp charges for organic molecule\n"; -+ resp1 += "\n"; -+ resp1 += " &cntrl\n"; -+ resp1 += "\n"; -+ resp1 += " nmol = 1,\n"; -+ resp1 += " ihfree = 1,\n"; -+ resp1 += " ioutopt = 1,\n"; -+ resp1 += "\n"; -+ resp1 += " &end\n"; -+ resp1 += " 1.0\n"; -+ resp1 += "Resp charges for organic molecule\n"; -+ -+ //std::cout << pStdGroup->getCharge() << " " << pSelMol->getNumAtoms() << std::endl; -+ sprintf(temp,"%5d%5d\n", int(pStdGroup->getCharge()), pSelMol->getNumAtoms()); -+ resp1 += std::string(temp); -+ -+ std::vector<submolecule*> sList = pSelMol->getSubMoleculeList(); -+ typedef std::map<std::string, int>::iterator mapIterator; -+ -+ std::map<std::string, int> lMap; -+ int ind = 0; -+ for (unsigned int p = 0; p < sList.size(); p++) { -+ std::vector<atom*> aList = sList[p]->getAtomList(); -+ for (unsigned int a = 0; a < aList.size(); a++) { -+ if (!aList[a]->getStdAtom()) { -+ std::cout << " Error ... exiting()\n"; -+ exit(1); -+ } -+ int elNum = aList[a]->getAtomicNum(); -+ std::string key = ""; -+ if (elNum == 1) { -+ std::vector<atom*> hBondedAtoms = aList[a]->getBondedAtoms(); -+ if (hBondedAtoms.size() == 1) { -+ key = aList[a]->getParent()->getName() + ":" + hBondedAtoms[0]->getName() + ":" + aList[a]->getStdAtom()->type; -+ } -+ else { -+ key = aList[a]->getParent()->getName() + ":" + aList[a]->getStdAtom()->type; -+ } -+ } -+ else { -+ key = aList[a]->getParent()->getName() + ":" + aList[a]->getName(); -+ } -+ -+ mapIterator mi = lMap.find(key); -+ -+ int fg = 0; -+ if (mi != lMap.end()){ -+ fg = lMap[key]+1; -+ } -+ else { -+ lMap[key] = ind; -+ } -+ //sprintf(temp,"%4d %-11s%5d%5d\n", ind+1, key.c_str(), aList[a]->getAtomicNum(), fg); -+ sprintf(temp,"%5d%5d\n", aList[a]->getAtomicNum(), fg); -+ resp1 += std::string(temp); -+ ind++; -+ } -+ } -+ -+ std::string resp2 = ""; -+ -+ resp2 += "Resp charges for organic molecule\n"; -+ resp2 += "\n"; -+ resp2 += " &cntrl\n"; -+ resp2 += "\n"; -+ resp2 += " nmol = 1,\n"; -+ resp2 += " ihfree = 1,\n"; -+ resp2 += " ioutopt = 1,\n"; -+ resp2 += " iqopt = 2,\n"; -+ resp2 += " qwt = 0.001,\n"; -+ resp2 += "\n"; -+ resp2 += " &end\n"; -+ resp2 += " 1.0\n"; -+ resp2 += "Resp charges for organic molecule\n"; -+ -+ sprintf(temp,"%5d%5d\n", int(pStdGroup->getCharge()), pSelMol->getNumAtoms()); -+ resp2 += std::string(temp); -+ -+ ind = 0; -+ std::map<std::string, int> lMap2; -+ -+ for (unsigned int p = 0; p < sList.size(); p++) { -+ std::vector<atom*> aList = sList[p]->getAtomList(); -+ for (unsigned int a = 0; a < aList.size(); a++) { -+ -+ if (!aList[a]->getStdAtom()) { -+ std::cout << " Error ... exiting()\n"; -+ exit(1); -+ } -+ int elNum = aList[a]->getAtomicNum(); -+ std::string key = ""; -+ if (elNum == 1) { -+ std::vector<atom*> hBondedAtoms = aList[a]->getBondedAtoms(); -+ if (hBondedAtoms.size() == 1) { -+ key = aList[a]->getParent()->getName() + ":" + hBondedAtoms[0]->getName() + ":" + -+ aList[a]->getStdAtom()->type; -+ } -+ else { -+ key = aList[a]->getParent()->getName() + ":" + aList[a]->getStdAtom()->type; -+ } -+ } -+ else { -+ key = aList[a]->getParent()->getName() + ":" + aList[a]->getName(); -+ } -+ -+ mapIterator mi = lMap2.find(key); -+ -+ int fg = 0; -+ if (mi != lMap2.end()){ -+ fg = lMap2[key]+1; -+ } -+ else { -+ lMap2[key] = ind; -+ } -+ std::string atName = aList[a]->getName(); -+ std::string atType = aList[a]->getStdAtom()->type; -+ int atNum = aList[a]->getAtomicNum(); -+ -+ if (atName == " CH3" or atName == " CB " or containsSubStr(key, " CB :H1") or -+ containsSubStr(key, " CB :HC") or -+ containsSubStr(key, " CH3:HC") or containsSubStr(key, " CH3:H1") or -+ containsSubStr(key, "GLY: CA ")) {// or (atNum > 16)) { -+ //if (atName == " CH3" or atName == " CB " or atType == "H1" or atType == "HC") { -+ //sprintf(temp,"%4d %-11s%5d%5d\n", ind+1, key.c_str(), aList[a]->getAtomicNum(), fg); -+ sprintf(temp,"%5d%5d\n", aList[a]->getAtomicNum(), fg); -+ } -+ else { -+ //sprintf(temp,"%4d %-11s%5d%5d\n", ind+1, key.c_str(), aList[a]->getAtomicNum(), -99); -+ sprintf(temp,"%5d%5d\n", aList[a]->getAtomicNum(), -99); -+ } -+ resp2 += std::string(temp); -+ -+ ind++; -+ } -+ } -+ -+ std::string twoBlankLine = "\n\n"; -+ bb0 += twoBlankLine; -+ bb1 += twoBlankLine; -+ bb2 += twoBlankLine; -+ bb3 += twoBlankLine; -+ -+ obb0FileResp1 << resp1; -+ obb0FileResp1 << bb0; -+ obb0FileResp2 << resp2; -+ obb0FileResp2 << bb0; -+ -+ obb1FileResp1 << resp1; -+ obb1FileResp1 << bb1; -+ obb1FileResp2 << resp2; -+ obb1FileResp2 << bb1; -+ -+ obb2FileResp1 << resp1; -+ obb2FileResp1 << bb2; -+ obb2FileResp2 << resp2; -+ obb2FileResp2 << bb2; -+ -+ obb3FileResp1 << resp1; -+ obb3FileResp1 << bb3; -+ obb3FileResp2 << resp2; -+ obb3FileResp2 << bb3; -+ -+ obb0FileResp1.close(); -+ obb0FileResp2.close(); -+ obb1FileResp1.close(); -+ obb1FileResp2.close(); -+ obb2FileResp1.close(); -+ obb2FileResp2.close(); -+ obb3FileResp1.close(); -+ obb3FileResp2.close(); -+ } -+ } -+ } -+ - else if (inputFileContents[i][0] == "addStdMol") { - /*! - @ingroup MCPB_commands -@@ -4496,63 +5064,63 @@ - table<double>* nmodeEVectors = pSheet->getTable("NMode EigenVectors"); - ublas::matrix<double> &nmodeEVectorsMatrixT = nmodeEVectors->getMatrix(); - -- table<double>* g03EValues = pSheet->getTable("Gaussian EigenValues"); -- ublas::matrix<double> &g03EValuesMatrix = g03EValues->getMatrix(); -+ table<double>* gaussianEValues = pSheet->getTable("Gaussian EigenValues"); -+ ublas::matrix<double> &gaussianEValuesMatrix = gaussianEValues->getMatrix(); - -- table<double>* g03EVectors = pSheet->getTable("Gaussian EigenVectors"); -- ublas::matrix<double> &g03EVectorsMatrixT = g03EVectors->getMatrix(); -+ table<double>* gaussianEVectors = pSheet->getTable("Gaussian EigenVectors"); -+ ublas::matrix<double> &gaussianEVectorsMatrixT = gaussianEVectors->getMatrix(); - - int nRowsNMode = nmodeEValues->getNumRows(); -- int nRowsG03 = g03EValues->getNumRows(); -+ int nRowsGaussian = gaussianEValues->getNumRows(); - - int nColsNMode = nmodeEVectors->getNumColumns(); -- int nColsG03 = g03EVectors->getNumColumns(); -+ int nColsGaussian = gaussianEVectors->getNumColumns(); - -- if (nRowsNMode != nRowsG03 and nColsNMode != nColsG03) { -+ if (nRowsNMode != nRowsGaussian and nColsNMode != nColsGaussian) { - std::cout << " PROBLEM " << std::endl; - } - else { - std::cout << " EIGENVALUES " << std::endl; - for (int z = 0; z < nRowsNMode; z++) { -- std::cout << nmodeEValuesMatrix(z, 0) << " " << g03EValuesMatrix(z, 0) << std::endl; -+ std::cout << nmodeEValuesMatrix(z, 0) << " " << gaussianEValuesMatrix(z, 0) << std::endl; - } - - //std::cout << " NMODE " << std::endl; - //nmodeEVectors->printMatrix(); - -- //std::cout << " G03 " << std::endl; -- //g03EVectors->printMatrix(); -+ //std::cout << " Gaussian " << std::endl; -+ //gaussianEVectors->printMatrix(); - //std::cout << " \n\n " << std::endl; - - // Normalize Eigenvector matrices - for (int zi = 0; zi < nRowsNMode; zi++) { - double normNMode = 0.0; -- double normG03 = 0.0; -+ double normGaussian = 0.0; - for (int zk = 0; zk < nColsNMode; zk++) { - normNMode += (nmodeEVectorsMatrixT(zi, zk) * nmodeEVectorsMatrixT(zi, zk)); -- normG03 += (g03EVectorsMatrixT(zi, zk) * g03EVectorsMatrixT(zi, zk)); -+ normGaussian += (gaussianEVectorsMatrixT(zi, zk) * gaussianEVectorsMatrixT(zi, zk)); - } - normNMode = sqrt(normNMode); -- normG03 = sqrt(normG03); -+ normGaussian = sqrt(normGaussian); - for (int zk = 0; zk < nColsNMode; zk++) { -- //std::cout << g03EVectorsMatrixT(zi, zk) << " " << normG03 << " " -- // << g03EVectorsMatrixT(zi, zk) / normG03 << " "; -+ //std::cout << gaussianEVectorsMatrixT(zi, zk) << " " << normGaussian << " " -+ // << gaussianEVectorsMatrixT(zi, zk) / normGaussian << " "; - double newValue1 = nmodeEVectorsMatrixT(zi, zk) / normNMode; -- double newValue2 = g03EVectorsMatrixT(zi, zk) / normG03; -+ double newValue2 = gaussianEVectorsMatrixT(zi, zk) / normGaussian; - nmodeEVectors->setCellValue(zi, zk, newValue1); -- g03EVectors->setCellValue(zi, zk, newValue2); -- //std::cout << g03EVectors->getCellValue(zi, zk) << std::endl; -+ gaussianEVectors->setCellValue(zi, zk, newValue2); -+ //std::cout << gaussianEVectors->getCellValue(zi, zk) << std::endl; - } - } - - ublas::matrix<double> &nmodeEVectorsMatrix = nmodeEVectors->getMatrix(); -- ublas::matrix<double> &g03EVectorsMatrix = g03EVectors->getMatrix(); -+ ublas::matrix<double> &gaussianEVectorsMatrix = gaussianEVectors->getMatrix(); - - //std::cout << " NMODE " << std::endl; - //nmodeEVectors->printMatrix(); - -- //std::cout << " G03 " << std::endl; -- //g03EVectors->printMatrix(); -+ //std::cout << " Gaussian " << std::endl; -+ //gaussianEVectors->printMatrix(); - //std::cout << " \n\n " << std::endl; - - // dot product -@@ -4563,12 +5131,12 @@ - double eN2 = 0.0; - double dff = 0.0; - for (int zi = 0; zi < nRowsNMode; zi++) { // NMode -- for (int zj = 0; zj < nRowsNMode; zj++) { // G03 -+ for (int zj = 0; zj < nRowsNMode; zj++) { // Gaussian - for (int zk = 0; zk < nColsNMode; zk++) { // Loop over coordinates in Eigenvector -- //std::cout << nmodeEVectorsMatrix(zi, zk) << " " << g03EVectorsMatrix(zj, zk) << " "; -+ //std::cout << nmodeEVectorsMatrix(zi, zk) << " " << gaussianEVectorsMatrix(zj, zk) << " "; - eN += (nmodeEVectorsMatrix(zi, zk) * nmodeEVectorsMatrix(zi, zk)); -- eN2 += (g03EVectorsMatrix(zj, zk) * g03EVectorsMatrix(zj, zk)); -- dotProduct += (nmodeEVectorsMatrix(zi, zk) * g03EVectorsMatrix(zj, zk)); -+ eN2 += (gaussianEVectorsMatrix(zj, zk) * gaussianEVectorsMatrix(zj, zk)); -+ dotProduct += (nmodeEVectorsMatrix(zi, zk) * gaussianEVectorsMatrix(zj, zk)); - } - //std::cout << " eN = " << sqrt(eN) << " eN2 = " << sqrt(eN2) << " "; - std::cout << zi << " - " << zj << " " << dotProduct << " " << dotProductMax << std::endl; -@@ -4582,11 +5150,11 @@ - } - dotProduct = 0.0; - } -- double dffL = nmodeEValuesMatrix(zi, 0) - g03EValuesMatrix(dotProductMaxIndex, 0); -+ double dffL = nmodeEValuesMatrix(zi, 0) - gaussianEValuesMatrix(dotProductMaxIndex, 0); - dffL *= dffL; - std::cout << " nmode index = " << zi << " BestMatch = " << dotProductMaxIndex - << " => dotProduct =" << dotProductMax << " EVALUES: " -- << " " << nmodeEValuesMatrix(zi, 0) << " " << g03EValuesMatrix(dotProductMaxIndex, 0) << " " -+ << " " << nmodeEValuesMatrix(zi, 0) << " " << gaussianEValuesMatrix(dotProductMaxIndex, 0) << " " - << dffL - << std::endl; - -@@ -4617,7 +5185,7 @@ - } - - else { -- std::string unknownCommand = " Unknown command " + inputFileContents[i][0]; -+ std::string unknownCommand = " Unknown command: \"" + inputFileContents[i][0] + "\""; - MTKpp::errorLogger.throwError("MCPB", unknownCommand, MTK_ERROR); - } - } -@@ -4628,4 +5196,3 @@ - delete pSheet; - return 0; - } -- -diff -urN amber11.orig/AmberTools/src/mtkpp/tools/prep2xml.cpp amber11/AmberTools/src/mtkpp/tools/prep2xml.cpp ---- amber11.orig/AmberTools/src/mtkpp/tools/prep2xml.cpp 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/tools/prep2xml.cpp 2012-03-03 20:03:01.418032565 +0200 -@@ -86,6 +86,7 @@ - clo->addUsage( " -a log file " ); - clo->addUsage( " -l hybridize name \n" ); - clo->addUsage( " flags: " ); -+ clo->addUsage( " -c convert only " ); - clo->addUsage( " -h help \n" ); - - // 4. SET THE OPTION STRINGS/CHARACTERS -@@ -97,6 +98,7 @@ - clo->setOption( "hyb", 'l' ); - clo->setOption( "log", 'a' ); - -+ clo->setFlag ( "convert", 'c' ); - clo->setFlag ( "help", 'h' ); - - // 5. PROVIDE THE COMMANDLINE -@@ -117,6 +119,11 @@ - std::string fragName = ""; - std::string molName = ""; - std::string logFile = ""; -+ bool bConvertOnly = 0; -+ -+ if ( clo->getFlag( "convert" ) || clo->getFlag( 'c' ) ) { -+ bConvertOnly = 1; -+ } - - std::string AMBERHOME = getenv("AMBERHOME"); - std::string parametersFile = AMBERHOME + "/dat/mtkpp/hybridize/labute.txt"; -@@ -166,13 +173,13 @@ - else if ( clo->getValue( "frag" ) != 0 ) { - fragName = clo->getValue( "frag" ); - } -- else { -+/* else { - printHeader(std::cout, prog_name, authors); - clo->printUsage(); - std::cout << " Please provide a fragment name " << std::endl; - return 0; - } -- -+*/ - if ( clo->getValue( "l" ) != 0 ) { - parametersFile = clo->getValue( "l" ); - } -@@ -186,13 +193,14 @@ - else if ( clo->getValue( "mol" ) != 0 ) { - molName = clo->getValue( "mol" ); - } -+/* - else { - printHeader(std::cout, prog_name, authors); - clo->printUsage(); - std::cout << " Please provide a molecule name " << std::endl; - return 0; - } -- -+*/ - if ( clo->getValue( "a" ) != 0 ) { - logFile = clo->getValue( "a" ); - } -@@ -307,6 +315,22 @@ - std::cout << " Incorrect use of prep2xml " << std::endl; - exit(1); - } -+ -+ ///////// -+ if (fragName == "") { -+ prepParser* pPrepParser = new prepParser(); -+ pPrepParser->Read(prepFile, pStdGroup); -+ delete pPrepParser; -+ -+ pStdLibParser->Write(libXmlFile, groupName); -+ delete pStdLibParser; -+ -+ // - Clean up - // -+ delete pCollection; -+ return 0; -+ } -+ /////////// -+ - stdFrag* pStdFrag = pStdGroup->addStdFrag(); - if (!pStdFrag) { - std::cout << " Incorrect use of prep2xml " << std::endl; -@@ -322,6 +346,15 @@ - pPrepParser->Read(prepFile, pStdFrag); - delete pPrepParser; - -+ if (bConvertOnly) { -+ pStdLibParser->Write(libXmlFile, groupName); -+ delete pStdLibParser; -+ -+ // - Clean up - // -+ delete pCollection; -+ return 0; -+ } -+ - int f = pStdFrag->generateCoordinates(); - if (f) { - std::cout << " Incorrect use of prep2xml " << std::endl; -@@ -443,7 +476,7 @@ - // atoms - for (unsigned int i = 0; i < atomList.size(); i++) { - stdAtoms[i]->kind = atomList[i]->getType(); -- std::cout << atomList[i]->getIndex() << " " << atomList[i]->getName() << " " << atomList[i]->getType() << std::endl; -+ //std::cout << atomList[i]->getIndex() << " " << atomList[i]->getName() << " " << atomList[i]->getType() << std::endl; - } - - // bonds -diff -urN amber11.orig/AmberTools/src/mtkpp/tools/stdLib2Sdf.cpp amber11/AmberTools/src/mtkpp/tools/stdLib2Sdf.cpp ---- amber11.orig/AmberTools/src/mtkpp/tools/stdLib2Sdf.cpp 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/mtkpp/tools/stdLib2Sdf.cpp 2012-03-03 20:03:01.418032565 +0200 -@@ -42,6 +42,9 @@ - // - COMMAND LINE OPTIONS - #include "Parsers/commLineOptions.h" - -+// - Log -+#include "Log/errorHandler.h" -+ - // temp - #include "time.h" - -@@ -174,7 +177,7 @@ - } - - // Set errorLog stream to the log file -- //MTKpp::errorLogger.setStream(&oLog); -+ MTKpp::errorLogger.setStream(&oLog); - - // Print MTK++ copyright message - printHeader(oLog, prog_name, authors); -diff -urN amber11.orig/AmberTools/src/pbsa/pb_list.f amber11/AmberTools/src/pbsa/pb_list.f ---- amber11.orig/AmberTools/src/pbsa/pb_list.f 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/pbsa/pb_list.f 2012-03-03 20:02:55.131034376 +0200 -@@ -949,7 +949,7 @@ - ymin == ZERO .and. ymax == ZERO .and. & - zmin == ZERO .and. zmax == ZERO ) newbox = .true. - -- if ( newbox ) then -+ if ( .not. ligand ) then - if ( ifcap == 0 .or. ifcap == 5 ) then - xmin = 9999.0; ymin = 9999.0; zmin = 9999.0 - xmax = -9999.0; ymax = -9999.0; zmax = -9999.0 -diff -urN amber11.orig/AmberTools/src/rism/safemem.f amber11/AmberTools/src/rism/safemem.f ---- amber11.orig/AmberTools/src/rism/safemem.f 2012-03-03 22:43:02.986777264 +0200 -+++ amber11/AmberTools/src/rism/safemem.f 2012-03-03 20:02:52.131035237 +0200 -@@ -62,7 +62,7 @@ - !BYTES_PER_KILOBYTES :: used to convert between bytes and KB - integer*8,parameter :: BYTES_PER_KB = 1024**1 - -- type(memTracker),private :: totalMem -+ type(memTracker),save,private :: totalMem - - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! diff --git a/sci-chemistry/ambertools/files/ambertools-1.5-bugfix_28.patch b/sci-chemistry/ambertools/files/ambertools-1.5-bugfix_28.patch deleted file mode 100644 index f186f3387..000000000 --- a/sci-chemistry/ambertools/files/ambertools-1.5-bugfix_28.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -urN amber11.orig/AmberTools/src/mmpbsa_py/MMPBSA_mods/amberoutputs.py amber11/AmberTools/src/mmpbsa_py/MMPBSA_mods/amberoutputs.py ---- amber11.orig/AmberTools/src/mmpbsa_py/MMPBSA_mods/amberoutputs.py 2012-08-28 13:38:00.864249769 +0300 -+++ amber11/AmberTools/src/mmpbsa_py/MMPBSA_mods/amberoutputs.py 2012-08-28 13:39:15.141238742 +0300 -@@ -2311,7 +2311,7 @@ - def _tot_stdevs(self): - """ Returns the standard deviations of the total based on whether or not we were able to - calculate all frames or not. Use a sample stdev if we were, sum-of-squares if we weren't """ -- if len(self.com_data) != len(self.rec_data) or len(self.com_data) != len(self.lig_data): -+ if len(self.com_data[0]) != len(self.rec_data[0]) or len(self.com_data[0]) != len(self.lig_data[0]): - return math.sqrt(abs(_stdev(self.com_data[0]) ** 2 + _stdev(self.rec_data[0]) ** 2 + _stdev(self.lig_data[0]) ** 2)) - - sum = sum2 = 0 -@@ -2319,8 +2319,8 @@ - sum += self.com_data[0][i] - self.rec_data[0][i] - self.lig_data[0][i] - sum2 += (self.com_data[0][i] - self.rec_data[0][i] - self.lig_data[0][i]) ** 2 - -- avg = sum / len(self.com_data) -- return math.sqrt(abs(sum2 / len(self.com_data) - avg * avg)) -+ avg = sum / len(self.com_data[0]) -+ return math.sqrt(abs(sum2 / len(self.com_data[0]) - avg * avg)) - - #============================== - diff --git a/sci-chemistry/ambertools/files/ambertools-1.5-gentoo2.patch b/sci-chemistry/ambertools/files/ambertools-1.5-gentoo2.patch deleted file mode 100644 index 1023b50db..000000000 --- a/sci-chemistry/ambertools/files/ambertools-1.5-gentoo2.patch +++ /dev/null @@ -1,1068 +0,0 @@ -diff -urN amber11.orig/AmberTools/src/configure amber11/AmberTools/src/configure ---- amber11.orig/AmberTools/src/configure 2011-10-25 15:01:28.222288537 +0300 -+++ amber11/AmberTools/src/configure 2011-10-25 23:57:37.732371794 +0300 -@@ -293,7 +293,7 @@ - echo "Your AMBERHOME environment variable is not set! It should be set to" - echo "$ambhome NOT doing so may cause errors when you compile. Continue" - echo "anyway? (yes or no)" -- read answer -+ answer='yes' - if [ "$answer" = 'yes' -o "$answer" = 'Yes' -o "$answer" = 'YES' -o "$answer" = 'y' -o "$answer" = 'Y' ]; then - echo "" - echo "Continuing anyway... Setting AMBERHOME to $ambhome temporarily" -@@ -356,11 +356,11 @@ - mpi_flag= - lex=flex - flibs_mkl= --lapack=install --blas=install -+lapack=skip -+blas=skip - f2c=skip --ucpp=install --cpp="\$(BINDIR)/ucpp -l" -+ucpp=skip -+cpp="\$(EPREFIX)/usr/bin/ucpp -l" - - #----------------------------------- - # skip building of sleap? -@@ -548,13 +548,14 @@ - flibs_arch=-lgfortran - flibsf_arch= - cc=gcc -- cflags= -+ cflags="GENTOO_CFLAGS" - # ambercflags="-Wall" - cplusplus=g++ -- cxxflags= -+ cxxflags="GENTOO_CXXFLAGS" - # ambercxxflags="-Wall" - fc=gfortran -- fflags= -+ fflags="GENTOO_FFLAGS" -+ ldflags="GENTOO_LDFLAGS" - staticflag='-static' - - # If -noopt has been requested, force lack of optimisation; -@@ -575,11 +576,11 @@ - foptflags="" - else - cnooptflags= -- coptflags="-O3" -+ coptflags="GENTOO_CFLAGS" - cxxnooptflags= -- cxxoptflags="-O3" -+ cxxoptflags="GENTOO_CXXFLAGS" - fnooptflags="-O0" -- foptflags="-O3" -+ foptflags="GENTOO_FFLAGS" - fi - - # Debugging options -@@ -1653,28 +1654,6 @@ - /bin/rm -f testp.c testp$objsuffix testp$suffix - - #-------------------------------------------------------------------------- -- # Configure fftw-3.2.2: -- #-------------------------------------------------------------------------- -- if [ "$mdgx" = 'yes' ]; then -- mdgxflag="--prefix=$AMBERHOME --disable-fortran" -- echo -- echo "Configuring fftw-3.2.2 (may be time-consuming)..." -- echo -- cd fftw-3.2.2 && \ -- env CC="$cc" CFLAGS="$cflags $cnooptflags" \ -- ./configure $mdgxflag > ../fftw3_config.log 2>&1 -- ncerror=$? -- if [ $ncerror -gt 0 ]; then -- echo " Error: FFTW configure returned $ncerror" -- echo " FFTW configure failed! Check the fftw3_config.log file." -- exit 1 -- else -- echo " fftw-3.2.2 configure succeeded." -- fi -- cd .. -- fi -- -- #-------------------------------------------------------------------------- - # Configure python - #-------------------------------------------------------------------------- - if [ "$pyinstall" = 'python' ]; then -@@ -1792,27 +1771,6 @@ - echo - echo "Configuring fftw-2.1.5 (may be time-consuming)..." - echo -- cd fftw-2.1.5 -- if [ "$mpi" = 'yes' ]; then -- ./configure $rismflag --enable-mpi \ -- CC="$cc" CFLAGS="$cflags $coptflags" \ -- F77="$fc" FFLAGS="$fflags $foptflags" \ -- FLIBS="$flibs_arch" > ../fftw2_config.log 2>&1 -- else -- ./configure $rismflag \ -- CC="$cc" CFLAGS="$cflags $coptflags" \ -- F77="$fc" FFLAGS="$fflags $foptflags" \ -- FLIBS="$flibs_arch" > ../fftw2_config.log 2>&1 -- fi -- ncerror=$? -- if [ $ncerror -gt 0 ]; then -- echo " Error: fftw configure returned $ncerror" -- echo " fftw configure failed! Check the fftw2_config.log file." -- exit 1 -- else -- echo " fftw-2.1.5 configure succeeded." -- fi -- cd .. - flibs_fftw2="-ldrfftw -ldfftw" - if [ "$mpi" = 'yes' ]; then - flibs_fftw2="-ldrfftw_mpi -ldfftw_mpi $flibs_fftw2" -@@ -2004,7 +1962,7 @@ - AMBERLDFLAGS=\$(AMBERBUILDFLAGS) - - LEX= $lex --YACC= \$(BINDIR)/yacc -+YACC= byacc - AR= ar rv - M4= $m4 - RANLIB=$ranlib -diff -urN amber11.orig/AmberTools/src/cpptraj/src/Makefile_at amber11/AmberTools/src/cpptraj/src/Makefile_at ---- amber11.orig/AmberTools/src/cpptraj/src/Makefile_at 2011-10-25 15:01:28.076288672 +0300 -+++ amber11/AmberTools/src/cpptraj/src/Makefile_at 2011-10-25 17:57:48.553749686 +0300 -@@ -68,11 +68,8 @@ - -/bin/rm FindDepend.o - -/bin/rm findDepend - --cpptraj$(SFX): $(NETCDFLIB) $(OBJECTS) -- $(CXX) $(LDFLAGS) -o cpptraj$(SFX) $(OBJECTS) $(NETCDFLIB) $(ZLIB) $(BZLIB) -- --$(NETCDFLIB): ../../netcdf_config.log -- cd ../../netcdf/src && $(MAKE) install -+cpptraj$(SFX): $(OBJECTS) -+ $(CXX) $(LDFLAGS) -o cpptraj$(SFX) $(OBJECTS) $(NETCDFLIB) $(ZLIB) $(BZLIB) -lgomp - - .c.o: - $(CC) -c $(CPPTRAJ_FLAGS) -o $@ $< -diff -urN amber11.orig/AmberTools/src/Makefile amber11/AmberTools/src/Makefile ---- amber11.orig/AmberTools/src/Makefile 2011-04-14 15:30:12.000000000 +0300 -+++ amber11/AmberTools/src/Makefile 2011-10-26 00:07:12.902565336 +0300 -@@ -8,15 +8,9 @@ - - install: $(INSTALLTYPE) - --serial: configured_serial $(NETCDFLIB) $(PYINSTALL) $(MTKPP) -+serial: configured_serial - @echo "Starting installation of ${AMBERTOOLS} serial at `date`". - # utility routines and libraries: -- (cd ucpp-1.3 && $(MAKE) $(UCPP) ) -- (cd byacc && $(MAKE) install ) -- (cd arpack && $(MAKE) install ); -- (cd lapack && $(MAKE) $(LAPACK) ) -- (cd blas && $(MAKE) $(BLAS) ) -- (cd c9x-complex && $(MAKE) $(C9XCOMPLEX) ) - (cd etc && $(MAKE) install ) - (cd chamber && $(MAKE) install ) - (cd pbsa && $(MAKE) install ) -@@ -32,7 +26,6 @@ - (cd cpptraj && $(MAKE) $(CPPTRAJ)) - - # miscellaneous: -- (cd reduce && $(MAKE) install ) - - # leap and gleap: - (cd leap && $(MAKE) install ) -@@ -42,7 +35,6 @@ - (cd rism && $(MAKE) install ) - - # nab: -- (cd cifparse && $(MAKE) install ) - (cd sff && $(MAKE) install ) - (cd pbsa && $(MAKE) libinstall ) - (cd nab && $(MAKE) install ) -@@ -63,19 +55,12 @@ - @echo "Installation of ${AMBERTOOLS} serial is complete at `date`." - @echo "" - --nabonly: $(NETCDFLIB) -+nabonly: - # utility routines and libraries: -- (cd ucpp-1.3 && $(MAKE) $(UCPP) ) -- (cd byacc && $(MAKE) install ) -- (cd arpack && $(MAKE) install ); -- (cd lapack && $(MAKE) $(LAPACK) ) -- (cd blas && $(MAKE) $(BLAS) ) -- (cd c9x-complex && $(MAKE) $(C9XCOMPLEX) ) - (cd pbsa && $(MAKE) libinstall ) - (cd rism && $(MAKE) install ) - - # nab: -- (cd cifparse && $(MAKE) install ) - (cd sff && $(MAKE) install ) - (cd nab && $(MAKE) install ) - (cd nss && $(MAKE) install ) -diff -urN amber11.orig/AmberTools/src/mdgx/Makefile amber11/AmberTools/src/mdgx/Makefile ---- amber11.orig/AmberTools/src/mdgx/Makefile 2011-04-14 15:30:17.000000000 +0300 -+++ amber11/AmberTools/src/mdgx/Makefile 2011-10-25 15:32:04.007129323 +0300 -@@ -109,7 +109,7 @@ - - FFTW_LIBS = $(LIBDIR)/libfftw3.a - --mdgx$(SFX) : $(MDGX_OBJS) $(FFTW_LIBS) $(NETCDFLIB) -+mdgx$(SFX) : $(MDGX_OBJS) - $(CC) $(COPTFLAGS) $(CFLAGS) $(AMBERCFLAGS) \ - -o $@ $(MDGX_OBJS) $(FFTW_LIBS) $(NETCDFLIB) $(LM) - -diff -urN amber11.orig/AmberTools/src/pbsa/Makefile amber11/AmberTools/src/pbsa/Makefile ---- amber11.orig/AmberTools/src/pbsa/Makefile 2011-10-25 15:01:28.228288532 +0300 -+++ amber11/AmberTools/src/pbsa/Makefile 2011-10-25 22:15:38.721245308 +0300 -@@ -148,7 +148,7 @@ - ) - - #--------------------------------------------------------------------------- --pbsa$(SFX): $(OBJ) syslib netlib c9x-complex configured_serial -+pbsa$(SFX): $(OBJ) syslib configured_serial - $(FC) $(FFLAGS) $(AMBERFFLAGS) -o pbsa$(SFX) $(OBJ) \ - ../lib/nxtsec.o ../lib/random.o \ - $(FLIBSF) $(LDFLAGS) $(AMBERLDFLAGS) -@@ -158,7 +158,7 @@ - ../lib/nxtsec.o ../lib/random.o \ - $(FLIBSF) $(LDFLAGS) $(AMBERLDFLAGS) - --simplepbsa$(SFX): simplepbsa.o gopt.o libpbsa.a sfflib syslib netlib c9x-complex -+simplepbsa$(SFX): simplepbsa.o gopt.o libpbsa.a sfflib syslib - $(FC) $(FFLAGS) $(AMBERFFLAGS) -o simplepbsa$(SFX) simplepbsa.o gopt.o \ - libpbsa.a $(LIBDIR)/libsff.a ../lib/nxtsec.o $(FLIBSF) \ - $(LDFLAGS) $(AMBERLDFLAGS) -@@ -194,16 +194,6 @@ - sfflib: - cd ../sff && $(MAKE) install - --netlib: -- cd ../lapack && $(MAKE) $(LAPACK) -- cd ../blas && $(MAKE) $(BLAS) -- cd ../arpack && $(MAKE) install -- --c9x-complex: -- @if test $(C9XCOMPLEX) != "skip"; then \ -- cd ../c9x-complex && $(MAKE) libmc.a; \ -- fi -- - pb_init.o: pb_init.f - $(FPP) $(FPPFLAGS) $(AMBERFPPFLAGS) $< > _$< - $(FC) -c -O0 $(FFLAGS) $(AMBERFFLAGS) -o $@ _$< -diff -urN amber11.orig/AmberTools/src/ptraj/Makefile amber11/AmberTools/src/ptraj/Makefile ---- amber11.orig/AmberTools/src/ptraj/Makefile 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/ptraj/Makefile 2011-10-25 22:16:34.407661018 +0300 -@@ -57,25 +57,20 @@ - pubfft.o: pubfft.f - $(FC) -c $(FREEFORMAT_FLAG) $(FOPTFLAGS) $(FFLAGS) $(AMBERFFLAGS) -o $@ $< - --rdparm$(SFX): libs $(NETCDFLIB) $(OBJECTS) -+rdparm$(SFX): libs $(OBJECTS) - $(CC) $(CFLAGS) $(AMBERCFLAGS) $(LDFLAGS) $(AMBERLDFLAGS) \ - -o rdparm$(SFX) $(OBJECTS) $(LIBS) $(NETCDFLIB) $(LM) - --ptraj$(SFX): libs netlib $(NETCDFLIB) $(OBJECTS) -+ptraj$(SFX): libs $(OBJECTS) - $(CC) $(CFLAGS) $(AMBERCFLAGS) $(LDFLAGS) $(AMBERLDFLAGS) \ - -o ptraj$(SFX) $(OBJECTS) $(LIBS) $(NETCDFLIB) $(LM) - --ptraj.MPI$(SFX): libs netlib $(PNETCDFLIB) $(OBJECTS) -+ptraj.MPI$(SFX): libs $(PNETCDFLIB) $(OBJECTS) - $(CC) $(CFLAGS) $(AMBERCFLAGS) $(LDFLAGS) $(AMBERLDFLAGS) \ - -o ptraj.MPI$(SFX) $(OBJECTS) $(LIBS) $(PNETCDFLIB) $(LM) - - libs: - cd pdb && $(MAKE) -- cd ../arpack && $(MAKE) -- --netlib: -- cd ../lapack && $(MAKE) $(LAPACK) -- cd ../blas && $(MAKE) $(BLAS) - - clean: - cd pdb && $(MAKE) clean -diff -urN amber11.orig/AmberTools/src/ptraj/netcdf_ptraj.h amber11/AmberTools/src/ptraj/netcdf_ptraj.h ---- amber11.orig/AmberTools/src/ptraj/netcdf_ptraj.h 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/ptraj/netcdf_ptraj.h 2011-10-25 15:32:04.009129320 +0300 -@@ -4,7 +4,7 @@ - # include "../../include/pnetcdf.h" - # define nc_strerror ncmpi_strerror - # else --# include "../../include/netcdf.h" -+# include <netcdf.h> - # endif - #endif - -diff -urN amber11.orig/AmberTools/src/ptraj/ptraj.h amber11/AmberTools/src/ptraj/ptraj.h ---- amber11.orig/AmberTools/src/ptraj/ptraj.h 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/ptraj/ptraj.h 2011-10-25 15:32:04.009129320 +0300 -@@ -94,7 +94,7 @@ - #define nc_strerror ncmpi_strerror - #include "../../include/pnetcdf.h" - #else --#include "../../include/netcdf.h" -+#include <netcdf.h> - #endif - #endif - -diff -urN amber11.orig/AmberTools/src/ptraj/trajectory.c amber11/AmberTools/src/ptraj/trajectory.c ---- amber11.orig/AmberTools/src/ptraj/trajectory.c 2011-03-10 20:12:15.000000000 +0200 -+++ amber11/AmberTools/src/ptraj/trajectory.c 2011-10-26 22:25:04.192375511 +0300 -@@ -1314,7 +1314,7 @@ - { - fpos_t fileMarker; /* marker for current file postition */ - char *junk; -- char buffer[120]; -+ char buffer[BUFFER_SIZE]; - char coords[26]; /* room for 24 characters (3f8.3) + \n + (char) 0 */ - char c; - int j,ret; -diff -urN amber11.orig/AmberTools/src/rism/Makefile amber11/AmberTools/src/rism/Makefile ---- amber11.orig/AmberTools/src/rism/Makefile 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/rism/Makefile 2011-10-25 15:32:04.010129318 +0300 -@@ -49,7 +49,7 @@ - mdiis_orig_c.o mdiis_blas_c.o mdiis_blas2_c.o mdiis_c.o \ - fce_c.o erfcfun.o safemem.o blend.o timer_c.o - --librism: $(LIBOBJ) $(FLIBS_FFTW2) -+librism: $(LIBOBJ) - $(AR) $(LIBDIR)/$@.a $(LIBOBJ) - $(RANLIB) $(LIBDIR)/$@.a - -diff -urN amber11.orig/AmberTools/src/sff/AmberNetcdf.c amber11/AmberTools/src/sff/AmberNetcdf.c ---- amber11.orig/AmberTools/src/sff/AmberNetcdf.c 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/sff/AmberNetcdf.c 2011-10-25 15:32:04.010129318 +0300 -@@ -27,7 +27,7 @@ - #endif - - #ifdef BINTRAJ --#include "../../include/netcdf.h" -+#include <netcdf.h> - - #define NCFRAME "frame" - #define NCSPATIAL "spatial" -diff -urN amber11.orig/AmberTools/src/sff/dsarpack.f amber11/AmberTools/src/sff/dsarpack.f ---- amber11.orig/AmberTools/src/sff/dsarpack.f 1970-01-01 03:00:00.000000000 +0300 -+++ amber11/AmberTools/src/sff/dsarpack.f 2011-10-25 19:52:58.579517634 +0300 -@@ -0,0 +1,654 @@ -+ subroutine dsarpack(n_dim,n_eig_in,n_eig_out,ncv_in,itr_in, -+ & eigval_tol,eigvals,eigvecs,spectrum, -+ & need_eigvecs,ierr,debug_arpack, -+ & v,workl,workd,d,resid,ax,select, -+ & xyz,grad,return_flag,label) -+c -+ implicit none -+c -+c %-----------------% -+c | Dummy Arguments | -+c %-----------------% -+c -+ integer n_dim,n_eig_in,n_eig_out,ncv_in,itr_in,spectrum, -+ & need_eigvecs,ierr,debug_arpack,return_flag,label -+ Double precision eigval_tol -+ Double precision eigvals(n_eig_in),eigvecs(n_dim * n_eig_in) -+ Double precision v(n_dim,ncv_in), -+ & workl(ncv_in*(ncv_in+8)),workd(3*n_dim), -+ & d(ncv_in,2),resid(n_dim),ax(n_dim), -+ & xyz(n_dim),grad(n_dim) -+ logical select(ncv_in) -+c -+ save -+c -+c %---------------% -+c | Include Files | -+c %---------------% -+c -+c include 'debug.h' -+c -+c\SCCS Information: @(#) -+c FILE: debug.h SID: 2.3 DATE OF SID: 11/16/95 RELEASE: 2 -+c -+c %---------------------------------% -+c | See debug.doc for documentation | -+c %---------------------------------% -+ integer logfil, ndigit, mgetv0, -+ & msaupd, msaup2, msaitr, mseigt, msapps, msgets, mseupd, -+ & mnaupd, mnaup2, mnaitr, mneigh, mnapps, mngets, mneupd, -+ & mcaupd, mcaup2, mcaitr, mceigh, mcapps, mcgets, mceupd -+ common /debug/ -+ & logfil, ndigit, mgetv0, -+ & msaupd, msaup2, msaitr, mseigt, msapps, msgets, mseupd, -+ & mnaupd, mnaup2, mnaitr, mneigh, mnapps, mngets, mneupd, -+ & mcaupd, mcaup2, mcaitr, mceigh, mcapps, mcgets, mceupd -+c -+c This code shows how to use ARPACK to find a few eigenvalues -+c (lambda) and corresponding eigenvectors (x) for the standard -+c eigenvalue problem: -+c -+c A*x = lambda*x -+c -+c where A is an n by n real symmetric matrix. -+c -+c The main points illustrated here are -+c -+c 1) How to declare sufficient memory to find NEV -+c eigenvalues of largest magnitude. Other options -+c are available. -+c -+c 2) Illustration of the reverse communication interface -+c needed to utilize the top level ARPACK routine DSAUPD -+c that computes the quantities needed to construct -+c the desired eigenvalues and eigenvectors(if requested). -+c -+c 3) How to extract the desired eigenvalues and eigenvectors -+c using the ARPACK routine DSEUPD. -+c -+c The only thing that must be supplied in order to use this -+c routine on your problem is to change the array dimensions -+c appropriately, to specify WHICH eigenvalues you want to compute -+c and to supply a matrix-vector product -+c -+c w <- Av -+c -+c in place of the call to AV( ) below. -+c -+c Once usage of this routine is understood, you may wish to explore -+c the other available options to improve convergence, to solve generalized -+c problems, etc. Look at the file ex-sym.doc in DOCUMENTS directory. -+c This codes implements -+c -+c\Example-1 -+c ... Suppose we want to solve A*x = lambda*x in regular mode, -+c where A is derived from the central difference discretization -+c of the 2-dimensional Laplacian on the unit square with -+c zero Dirichlet boundary condition. -+c ... OP = A and B = I. -+c ... Assume "call av (n,x,y)" computes y = A*x -+c ... Use mode 1 of DSAUPD. -+c -+c\BeginLib -+c -+c\Routines called: -+c dsaupd ARPACK reverse communication interface routine. -+c dseupd ARPACK routine that returns Ritz values and (optionally) -+c Ritz vectors. -+c dnrm2 Level 1 BLAS that computes the norm of a vector. -+c daxpy Level 1 BLAS that computes y <- alpha*x+y. -+c -+c\Author -+c Richard Lehoucq -+c Danny Sorensen -+c Chao Yang -+c Dept. of Computational & -+c Applied Mathematics -+c Rice University -+c Houston, Texas -+c -+c\SCCS Information: %Z% -+c FILE: %M% SID: %I% DATE OF SID: %G% RELEASE: %R% -+c -+c\Remarks -+c 1. None -+c -+c\EndLib -+c -+c----------------------------------------------------------------------- -+c -+c %-------------------------------------------------------% -+c | Storage Declarations: | -+c | | -+c | The maximum dimensions for all arrays are | -+c | set here to accommodate a problem size of | -+c | N .le. MAXN | -+c | | -+c | NEV is the number of eigenvalues requested. | -+c | See specifications for ARPACK usage below. | -+c | | -+c | NCV is the largest number of basis vectors that will | -+c | be used in the Implicitly Restarted Arnoldi | -+c | Process. Work per major iteration is | -+c | proportional to N*NCV*NCV. | -+c | | -+c | You must set: | -+c | | -+c | MAXN: Maximum dimension of the A allowed. (dynamic) | -+c | MAXNEV: Maximum NEV allowed. (dynamic) | -+c | MAXNCV: Maximum NCV allowed. (dynamic) | -+c %-------------------------------------------------------% -+c -+C %--------------------------------------% -+C | F90 Allocatable Arrays (on the heap) | -+C %--------------------------------------% -+c -+C Double precision,allocatable,save :: v(:,:) -+C integer,save :: v_row_allocated = 0, v_col_allocated = 0 -+c -+c %----------------------------------------------% -+c | Originally, as F77 parameters, the following | -+c | integers were used to dimension work arrays. | -+c | They are replaced by dummy arguments used to | -+c | dimension the work arrays as F90 automatic | -+c | arrays, but the integers are still used for | -+c | passing the dimensions to lower level ARPACK | -+c | routines dsaupd, dseupd and dmout. | -+c %----------------------------------------------% -+c -+ integer maxn, maxnev, maxncv, ldv -+c -+c %-------------------------------------------% -+c | Local F90 Automatic Arrays (on the stack) | -+c %-------------------------------------------% -+c -+ Double precision -+C & workl(ncv_in*(ncv_in+8)), -+C & workd(3*n_dim), d(ncv_in,2), resid(n_dim), -+C & ax(n_dim), -+ & cg_dstat(4) -+C logical select(ncv_in) -+ integer iparam(11), ipntr(11), -+ & cg_istat(4) -+c -+c %---------------% -+c | Local Scalars | -+c %---------------% -+c -+ character bmat*1, which*2 -+ integer ido, n, nev, ncv, lworkl, info, -+ & i, j, nx, ishfts, maxitr, mode1, nconv -+ integer L12, L18, ARPACK_ERROR, status_flag -+ data L12, L18, ARPACK_ERROR /1, 2, -2/ -+C integer v_row_needed, v_col_needed -+ logical rvec -+ Double precision -+ & tol, sigma -+c -+c %------------% -+c | Parameters | -+c %------------% -+c -+ Double precision -+ & zero -+ parameter (zero = 0.0D+0) -+c -+c %-----------------------------% -+c | BLAS & LAPACK routines used | -+c %-----------------------------% -+c -+ Double precision -+ & dnrm2 -+ external dnrm2, daxpy, hessvec -+c -+c %--------------------% -+c | Intrinsic function | -+c %--------------------% -+c -+ intrinsic abs -+c -+c %-----------------------% -+c | Executable Statements | -+c %-----------------------% -+c -+ if ( label.eq.0 ) go to 1 -+ go to (12,18) label -+ 1 continue -+c -+c %------------------------------------------------% -+c | Values used to calculate work array dimensions | -+c %------------------------------------------------% -+c -+ maxn = n_dim -+ maxnev = n_eig_in -+ maxncv = ncv_in -+ ldv = maxn -+c -+c %---------------------------------------------------% -+c | The include debug.h statement above and | -+c | assignments here initiate trace output from the | -+c | internal actions of ARPACK. See debug.doc in the | -+c | DOCUMENTS directory for usage. Initially, the | -+c | most useful information will be a breakdown of | -+c | time spent in the various stages of computation | -+c | given by setting msaupd = 1. | -+c %---------------------------------------------------% -+c -+ ndigit = -5 -+ logfil = 6 -+ msgets = 0 -+ msaitr = 0 -+ msapps = 0 -+ if ( debug_arpack.eq.1 ) then -+ msaupd = 1 -+ else -+ msaupd = 0 -+ endif -+ msaup2 = 0 -+ mseigt = 0 -+ mseupd = 0 -+c -+c *** Allocatable array v will be allowed to grow to its largest size; -+c *** it is never deallocated: -+C v_row_needed = n_dim !!! ldv -+C v_col_needed = ncv_in !!! maxncv -+C if( allocated(v) )then -+C if( (v_row_needed .gt. v_row_allocated) -+C & .or. (v_col_needed .gt. v_col_allocated) )then -+C deallocate(v,stat=ierr) -+C if( ierr .ne. 0 )then -+C write( logfil, '(a,i16,1x,i8)' ) -+C & 'ARPACK: could not deallocate v' -+C go to 9000 -+C endif -+C endif -+C endif -+C if( .not. allocated(v) )then -+C allocate( v(v_row_needed,v_col_needed), stat=ierr ) -+C if( ierr .ne. 0 )then -+C write( logfil, '(a,2i10)' ) -+C & 'ARPACK: could not allocate v' -+C go to 9000 -+C endif -+C v_row_allocated = v_row_needed -+C v_col_allocated = v_col_needed -+C endif -+C v = zero !!! zero out entire v array -+c -+c %-------------------------------------------------% -+c | The following sets dimensions for this problem. | -+c %-------------------------------------------------% -+c -+ n = n_dim -+c -+c %----------------------------------------------% -+c | | -+c | Specifications for ARPACK usage are set | -+c | below: | -+c | | -+c | 1) NEV = N_EIG_IN asks for N_EIG_IN | -+c | eigenvalues to be computed. | -+c | | -+c | 2) NCV = NCV_IN sets the length of the | -+c | Arnoldi factorization | -+c | | -+c | 3) This is a standard problem | -+c | (indicated by bmat = 'I') | -+c | | -+c | 4) Ask for the NEV eigenvalues of | -+c | smallest magnitude | -+c | (indicated by which = 'SM') | -+c | See documentation in SSAUPD for the | -+c | other options SA, LA, LM, BE. | -+c | | -+c | Note: NEV and NCV must satisfy the following | -+c | conditions: | -+c | NEV <= MAXNEV | -+c | NEV + 1 <= NCV <= MAXNCV | -+c %----------------------------------------------% -+c -+ nev = n_eig_in -+ ncv = ncv_in -+ bmat = 'I' -+ if ( spectrum .eq. 1 ) then -+ which = 'SM' -+ else if ( spectrum .eq. 2 ) then -+ which = 'SA' -+ else if ( spectrum .eq. 3 ) then -+ which = 'LM' -+ else if ( spectrum .eq. 4 ) then -+ which = 'LA' -+ else if ( spectrum .eq. 5 ) then -+ which = 'BE' -+ else -+ print *, ' ERROR with _SSIMP: Spectrum .NE. (SM|SA|LA|LM|BE)' -+ go to 9000 -+ end if -+c -+ if ( n .gt. maxn ) then -+ print *, ' ERROR with _SSIMP: N is greater than MAXN ' -+ go to 9000 -+ else if ( nev .gt. maxnev ) then -+ print *, ' ERROR with _SSIMP: NEV is greater than MAXNEV ' -+ go to 9000 -+ else if ( ncv .gt. maxncv ) then -+ print *, ' ERROR with _SSIMP: NCV is greater than MAXNCV ' -+ go to 9000 -+ end if -+c -+c %-----------------------------------------------------% -+c | | -+c | Specification of stopping rules and initial | -+c | conditions before calling DSAUPD | -+c | | -+c | TOL determines the stopping criterion. | -+c | | -+c | Expect | -+c | abs(lambdaC - lambdaT) < TOL*abs(lambdaC) | -+c | computed true | -+c | | -+c | If TOL .le. 0, then TOL <- macheps | -+c | (machine precision) is used. | -+c | | -+c | IDO is the REVERSE COMMUNICATION parameter | -+c | used to specify actions to be taken on return | -+c | from DSAUPD. (See usage below.) | -+c | | -+c | It MUST initially be set to 0 before the first | -+c | call to DSAUPD. | -+c | | -+c | INFO on entry specifies starting vector information | -+c | and on return indicates error codes | -+c | | -+c | Initially, setting INFO=0 indicates that a | -+c | random starting vector is requested to | -+c | start the ARNOLDI iteration. Setting INFO to | -+c | a nonzero value on the initial call is used | -+c | if you want to specify your own starting | -+c | vector (This vector must be placed in RESID.) | -+c | | -+c | The work array WORKL is used in DSAUPD as | -+c | workspace. Its dimension LWORKL is set as | -+c | illustrated below. | -+c | | -+c %-----------------------------------------------------% -+c -+ lworkl = ncv*(ncv+8) -+ tol = eigval_tol -+ info = 0 -+ ido = 0 -+c -+c %---------------------------------------------------% -+c | Specification of Algorithm Mode: | -+c | | -+c | This program uses the exact shift strategy | -+c | (indicated by setting PARAM(1) = 1). | -+c | IPARAM(3) specifies the maximum number of Arnoldi | -+c | iterations allowed. Mode 1 of DSAUPD is used | -+c | (IPARAM(7) = 1). All these options can be changed | -+c | by the user. For details see the documentation in | -+c | DSAUPD. | -+c %---------------------------------------------------% -+c -+ ishfts = 1 -+ maxitr = itr_in -+ mode1 = 1 -+c -+ iparam(1) = ishfts -+c -+ iparam(3) = maxitr -+c -+ iparam(7) = mode1 -+c -+c %------------------------------------------------% -+c | M A I N L O O P (Reverse communication loop) | -+c %------------------------------------------------% -+c -+ 10 continue -+c -+c %---------------------------------------------% -+c | Repeatedly call the routine DSAUPD and take | -+c | actions indicated by parameter IDO until | -+c | either convergence is indicated or maxitr | -+c | has been exceeded. | -+c %---------------------------------------------% -+c -+ call dsaupd ( ido, bmat, n, which, nev, tol, resid, -+ & ncv, v, ldv, iparam, ipntr, workd, workl, -+ & lworkl, info ) -+c -+ if (ido .eq. -1 .or. ido .eq. 1) then -+c -+c %--------------------------------------% -+c | Perform matrix vector multiplication | -+c | y <--- OP*x | -+c | The user should supply his/her own | -+c | matrix vector multiplication routine | -+c | here that takes workd(ipntr(1)) as | -+c | the input, and return the result to | -+c | workd(ipntr(2)). | -+c %--------------------------------------% -+c -+ status_flag = 0 -+ 11 continue -+ call hessvec ( n, workd(ipntr(1)), workd(ipntr(2)), -+ & xyz, grad, return_flag, status_flag ) -+ if ( status_flag.eq.0 ) go to 13 -+ if ( status_flag.lt.0 ) go to 9000 -+ label = L12 -+ return -+ 12 go to 11 -+ 13 continue -+c -+c %-----------------------------------------% -+c | L O O P B A C K to call DSAUPD again. | -+c %-----------------------------------------% -+c -+ go to 10 -+c -+ end if -+c -+c %----------------------------------------% -+c | Either we have convergence or there is | -+c | an error. | -+c %----------------------------------------% -+c -+ if ( info .lt. 0 ) then -+c -+c %--------------------------% -+c | Error message. Check the | -+c | documentation in DSAUPD. | -+c %--------------------------% -+c -+ print *, ' ' -+ print *, ' Error with _saupd, info = ', info -+ print *, ' Check documentation in _saupd ' -+ print *, ' ' -+ go to 9000 -+c -+ else -+c -+c %-------------------------------------------% -+c | No fatal errors occurred. | -+c | Post-Process using DSEUPD. | -+c | | -+c | Computed eigenvalues may be extracted. | -+c | | -+c | Eigenvectors may be also computed now if | -+c | desired. (indicated by rvec = .true.) | -+c | | -+c | The routine DSEUPD now called to do this | -+c | post processing (Other modes may require | -+c | more complicated post processing than | -+c | mode1.) | -+c | | -+c %-------------------------------------------% -+c -+ if ( need_eigvecs .eq. 1 ) then -+ rvec = .true. -+ else -+ rvec = .false. -+ end if -+c -+ call dseupd ( rvec, 'All', select, d, v, ldv, sigma, -+ & bmat, n, which, nev, tol, resid, ncv, v, ldv, -+ & iparam, ipntr, workd, workl, lworkl, ierr ) -+c -+c %----------------------------------------------% -+c | Eigenvalues are returned in the first column | -+c | of the two dimensional array D and the | -+c | corresponding eigenvectors are returned in | -+c | the first NCONV (=IPARAM(5)) columns of the | -+c | two dimensional array V if requested. | -+c | Otherwise, an orthogonal basis for the | -+c | invariant subspace corresponding to the | -+c | eigenvalues in D is returned in V. | -+c %----------------------------------------------% -+c -+ if ( ierr .ne. 0) then -+c -+c %------------------------------------% -+c | Error condition: | -+c | Check the documentation of DSEUPD. | -+c %------------------------------------% -+c -+ print *, ' ' -+ print *, ' Error with _seupd, info = ', ierr -+ print *, ' Check the documentation of _seupd. ' -+ print *, ' ' -+ go to 9000 -+c -+ else if ( debug_arpack.eq.1 ) then -+c -+ nconv = iparam(5) -+ n_eig_out = nconv -+ if ( nconv .le. 0 ) then -+ print *, ' ' -+ print *, ' ARPACK: Not a single mode converged.' -+ print *, ' ' -+ go to 9000 -+ endif -+c -+C %--------------------------------------------% -+C | "UnDO" DO 20 j=1,nconv loop, because it is | -+C | illegal to jump in and out from a DO loop. | -+C %--------------------------------------------% -+c -+ j = 1 -+ 16 continue -+c -+c %---------------------------% -+c | Compute the residual norm | -+c | | -+c | || A*x - lambda*x || | -+c | | -+c | for the NCONV accurately | -+c | computed eigenvalues and | -+c | eigenvectors. (iparam(5) | -+c | indicates how many are | -+c | accurate to the requested | -+c | tolerance) | -+c %---------------------------% -+c -+ status_flag = 0 -+ 17 continue -+ call hessvec ( n, v(1,j), ax, xyz, grad, -+ & return_flag, status_flag ) -+ if ( status_flag.eq.0 ) go to 19 -+ if ( status_flag.lt.0 ) go to 9000 -+ label = L18 -+ return -+ 18 go to 17 -+ 19 continue -+c -+ call daxpy(n, -d(j,1), v(1,j), 1, ax, 1) -+ d(j,2) = dnrm2(n, ax, 1) -+ d(j,2) = d(j,2) / abs(d(j,1)) -+c -+ j = j + 1 -+ if ( j .gt. nconv ) go to 20 -+c -+ go to 16 -+c -+ 20 continue -+c -+c %-----------------------------% -+c | Display computed residuals. | -+c %-----------------------------% -+c -+ call dmout(6, nconv, 2, d, maxncv, -6, -+ & 'Ritz values and relative residuals') -+c -+c %-------------------------------------------% -+c | Print additional convergence information. | -+c %-------------------------------------------% -+c -+ if ( info .eq. 1) then -+ print *, ' ' -+ print *, ' Maximum number of iterations reached.' -+ print *, ' ' -+ else if ( info .eq. 3) then -+ print *, ' ' -+ print *, ' No shifts could be applied during implicit', -+ & ' Arnoldi update, try increasing NCV.' -+ print *, ' ' -+ end if -+c -+ print *, ' ' -+ print *, ' _SSIMP ' -+ print *, ' ====== ' -+ print *, ' ' -+ print *, ' Size of the matrix is ', n -+ print *, ' The number of Ritz values requested is ', nev -+ print *, ' The number of Arnoldi vectors generated', -+ & ' (NCV) is ', ncv -+ print *, ' What portion of the spectrum: ', which -+ print *, ' The number of converged Ritz values is ', -+ & nconv -+ print *, ' The number of Implicit Arnoldi update', -+ & ' iterations taken is ', iparam(3) -+ print *, ' The number of OP*x is ', iparam(9) -+ print *, ' The convergence criterion is ', tol -+ print *, ' ' -+ end if -+c -+c %----------------------------% -+c | Return eigvals and eigvecs | -+c %----------------------------% -+c -+ nconv = iparam(5) -+ n_eig_out = nconv -+ if ( nconv .le. 0 ) then -+ print *, ' ' -+ print *, ' ARPACK: Not a single mode converged.' -+ print *, ' ' -+ go to 9000 -+ endif -+c -+ do 40 j=1, nconv -+ eigvals(j) = d(j,1) -+c -+ do 30 i=1, n -+ eigvecs((j-1)*n+i) = v(i,j) -+ 30 continue -+ 40 continue -+c -+ end if -+c -+c %--------------------------------% -+c | Done with subroutine dsarpack. | -+c %--------------------------------% -+c -+ label = 0 -+ return -+c -+ 9000 continue !!! Error -+c -+ if( status_flag.eq.0 ) status_flag = ARPACK_ERROR -+c -+ label = status_flag -+ return -+c -+ end -+c -+c ------------------------------------------------------------------ -diff -urN amber11.orig/AmberTools/src/sff/Makefile amber11/AmberTools/src/sff/Makefile ---- amber11.orig/AmberTools/src/sff/Makefile 2011-04-14 15:30:19.000000000 +0300 -+++ amber11/AmberTools/src/sff/Makefile 2011-10-25 22:11:23.964319736 +0300 -@@ -1,11 +1,12 @@ - include ../config.h - - .c.o: -- $(CC) -c -Dflex $(COPTFLAGS) $(CFLAGS) $(AMBERCFLAGS) $(RISMSFF) -o $@ $< -+ $(CC) -c -Dflex $(COPTFLAGS) $(CFLAGS) $(AMBERCFLAGS) $(RISMSFF) $(NETCDFLIB) -o $@ $< - - OBJS = binpos.o conjgrad.o lmodC.o memutil.o nblist.o newton.o nmode.o \ - prm.o rand2.o sasad.o sff.o time.o xminC.o AmberNetcdf.o \ -- amber_rism_interface.o -+ amber_rism_interface.o \ -+ dsarpack.o \ - - install: libsff hcp_getpdb - -diff -urN amber11.orig/AmberTools/src/sqm/Makefile amber11/AmberTools/src/sqm/Makefile ---- amber11.orig/AmberTools/src/sqm/Makefile 2011-04-14 15:30:20.000000000 +0300 -+++ amber11/AmberTools/src/sqm/Makefile 2011-10-25 22:17:29.627071134 +0300 -@@ -77,7 +77,7 @@ - install: sqm$(SFX) - mv sqm$(SFX) $(BINDIR) - --sqm$(SFX): $(SQMOBJ) $(QMOBJ) netlib sys -+sqm$(SFX): $(SQMOBJ) $(QMOBJ) sys - $(FC) $(FFLAGS) $(AMBERFFLAGS) -o sqm$(SFX) $(SQMOBJ) $(QMOBJ) \ - $(FLIBSF) ../lib/sys.a $(LDFLAGS) $(AMBERLDFLAGS) - -@@ -94,11 +94,6 @@ - sys: - cd ../lib; $(MAKE) sys.a - --netlib: -- cd ../lapack; $(MAKE) $(LAPACK) -- cd ../blas; $(MAKE) $(BLAS) -- cd ../arpack && $(MAKE) install -- - clean: - /bin/rm -f *.o _*.f *.mod *.d sqm$(SFX) - -diff -urN amber11.orig/AmberTools/test/Makefile amber11/AmberTools/test/Makefile ---- amber11.orig/AmberTools/test/Makefile 2011-04-14 15:30:55.000000000 +0300 -+++ amber11/AmberTools/test/Makefile 2011-10-25 22:36:59.285906153 +0300 -@@ -12,7 +12,7 @@ - - test.serial: clean is_amberhome_defined \ - test.nab test.ptraj test.cpptraj test.antechamber \ -- test.leap test.sleap test.resp test.pbsa test.mmpbsa \ -+ test.leap test.resp test.pbsa test.mmpbsa \ - test.ambpdb test.elsize test.chamber test.sqm test.rism1d \ - finished - -diff -urN amber11.orig/AmberTools/test/test_at_serial.sh amber11/AmberTools/test/test_at_serial.sh ---- amber11.orig/AmberTools/test/test_at_serial.sh 2011-03-10 20:12:24.000000000 +0200 -+++ amber11/AmberTools/test/test_at_serial.sh 2011-10-25 21:52:52.178189963 +0300 -@@ -50,3 +50,9 @@ - else - echo "No test diffs to save!" - fi -+ -+if [ "${questionable_count}" -ne 0 -o "${error_count}" -ne 0 ] -+then -+ # Tests failed -+ exit 1 -+fi diff --git a/sci-chemistry/ambertools/files/ambertools-1.5-overflow.patch b/sci-chemistry/ambertools/files/ambertools-1.5-overflow.patch deleted file mode 100644 index 14455f1ba..000000000 --- a/sci-chemistry/ambertools/files/ambertools-1.5-overflow.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -urN amber11.orig/AmberTools/src/nab/database.c amber11/AmberTools/src/nab/database.c ---- amber11.orig/AmberTools/src/nab/database.c 2011-03-10 20:12:15.000000000 +0200 -+++ amber11/AmberTools/src/nab/database.c 2012-03-03 23:59:25.225368331 +0200 -@@ -671,7 +671,7 @@ - - static Bool zbDBReadLine( db, sLine ) - DATABASE db; --char* sLine; -+char sLine[MAXDATALINELEN]; - { - - -@@ -706,7 +706,7 @@ - - static Bool zbDBReadDataLine( db, sLine ) - DATABASE db; --char* sLine; -+char sLine[MAXDATALINELEN]; - { - - -@@ -1135,7 +1135,7 @@ - char* PBuffer; - int iBufferInc; - { --String sLine; -+String sLine[MAXDATALINELEN]; - - - diff --git a/sci-chemistry/ambertools/files/ambertools-12-bugfix_14-26.patch b/sci-chemistry/ambertools/files/ambertools-12-bugfix_14-26.patch deleted file mode 100644 index da9712cbb..000000000 --- a/sci-chemistry/ambertools/files/ambertools-12-bugfix_14-26.patch +++ /dev/null @@ -1,14856 +0,0 @@ -diff --git a/AmberTools/src/configure2 b/AmberTools/src/configure2 -index 25d3f0a..9ce5ef0 100755 ---- a/AmberTools/src/configure2 -+++ b/AmberTools/src/configure2 -@@ -24,17 +24,19 @@ Usage: ./configure [flags] compiler - in your PATH; Note: you must first configure and build - a serial AmberTools. - -cuda Builds the NVIDIA GPU version of pmemd (pmemd.cuda and -- pmemd.cuda.MPI) with default SPDP hybrid precision. -+ pmemd.cuda.MPI) with default SPFP mixed single/double/ -+ fixed-point precision. - (Note: Set CUDA_HOME to your cuda build tools installation - path.) -- -cuda_SPDP Currently just an alias to CUDA -- -cuda_DPDP Builds the NVIDIA GPU version of pmemd (pmemd.cuda and -- pmemd.cuda.MPI) with full double precision. (Considerably -- slower than SPDP for many cards without a meaningful gain -- in accuracy) -- -cuda_SPSP Builds the NVIDIA GPU version of pmemd (pmemd.cuda and -- pmemd.cuda.MPI) with full single precision. (Not a good -- choice for production runs!) -+ -cuda_SPDP Builds the NVIDIA GPU version of pmemd (pmemd_SPDP.cuda and -+ pmemd.cuda_SPDP.MPI) with SPDP hybrid precision. (This was -+ the default for previous versions of AMBER but has now been -+ superseded by the SPFP mixed precision model). -+ -cuda_DPDP Builds the NVIDIA GPU version of pmemd (pmemd.cuda_DPDP and -+ pmemd.cuda_DPDP.MPI) with full double precision. (Considerably -+ slower than SPDP and SPFP for many cards without a meaningful -+ gain in accuracy) -+ -cuda_SPFP Currently an alias to -cuda. - -openmp Use OpenMP pragmas to parallelize NAB and paramfit - (not available for pgi). - Do not use -openmp and -mpi at the same time. Type "make -@@ -149,8 +151,8 @@ fi - #------------------------------------------------------------------------------ - mpi='no' - mpinab='' --cuda='no' --cuda_SPSP='no' -+cuda_SPFP='no' -+cuda_SPDP='no' - cuda_DPDP='no' - scali='no' - scalapack='no' -@@ -222,9 +224,9 @@ if [ $# -lt 1 ]; then usage; fi - while [ $# -gt 0 ]; do - case "$1" in - -mpi) mpi='yes'; mpinab='mpi'; mdgx='no';mtkpp='' ;; -- -cuda) cuda='yes';rism='no';pbsaflag='';mdgx='no';mtkpp='' ;; -- -cuda_SPDP) cuda='yes';rism='no';pbsaflag='';mdgx='no';mtkpp='' ;; -- -cuda_SPSP) cuda_SPSP='yes';rism='no';pbsaflag='';mdgx='no';mtkpp='' ;; -+ -cuda) cuda_SPFP='yes';rism='no';pbsaflag='';mdgx='no';mtkpp='' ;; -+ -cuda_SPFP) cuda_SPFP='yes';rism='no';pbsaflag='';mdgx='no';mtkpp='' ;; -+ -cuda_SPDP) cuda_SPDP='yes';rism='no';pbsaflag='';mdgx='no';mtkpp='' ;; - -cuda_DPDP) cuda_DPDP='yes';rism='no';pbsaflag='';mdgx='no';mtkpp='' ;; - -scali) scali='yes' ;; - -scalapack) scalapack='yes' ;; -@@ -443,22 +445,22 @@ if [ "$noX11" = "false" ]; then - echo " On old Fedora OS's install the xorg-x11-devel package." - echo " On RedHat OS's install the XFree86-devel package." - echo " On Ubuntu OS's install the xorg-dev package." -- echo " To build Amber without XLEaP, re-run configure with '-no-X11:" -- echo " `mod_command_args '' '-no-X11'`" -- exit 1 -+ echo " To build Amber without XLEaP, re-run configure with '-noX11:" -+ echo " `mod_command_args '' '-noX11'`" -+ exit 1 - fi - - if [ -d /usr/include/X11/extensions ] - then - empty_statement= -- else -+ elif [ "$is_mac" = "no" ]; then - echo "ERROR: the X11 extensions headers are not in the usual location!" - echo " To search for them try the command: locate X11/extensions" - echo " On new Fedora OSes install libXext-devel" - echo " On RedHat OSes install libXext-devel" -- echo " To build Amber without XLEaP, re-run configure with '-no-X11:" -- echo " `mod_command_args '' '-no-X11'`" -- exit 1 -+ echo " To build Amber without XLEaP, re-run configure with '-noX11:" -+ echo " `mod_command_args '' '-noX11'`" -+ exit 1 - fi - fi - -@@ -544,7 +546,7 @@ fi - #------------------------------------------------------------------------------ - # Determine which type of installation we're doing - #------------------------------------------------------------------------------ --if [ "$cuda" = 'yes' -o "$cuda_SPSP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then -+if [ "$cuda_SPFP" = 'yes' -o "$cuda_SPDP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then - if [ "$mpi" = 'yes' ]; then - installtype='cuda_parallel' - else -@@ -559,7 +561,7 @@ fi - #------------------------------------------------------------------------------ - # Check for cuda incompatibilities or missing files: - #------------------------------------------------------------------------------ --if [ "$cuda" = 'yes' -o "$cuda_SPSP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then -+if [ "$cuda_SPFP" = 'yes' -o "$cuda_SPDP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then - if [ -z "$CUDA_HOME" ]; then - echo "Error: CUDA_HOME is not set. This must point to your NVIDIA tools installation" - exit 1 -@@ -572,25 +574,26 @@ if [ "$cuda" = 'yes' -o "$cuda_SPSP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then - echo "Error: nvcc cuda compiler not found in $CUDA_HOME/bin/" - exit 1 - fi -- #Check for mixing of cuda with cuda_SPSP or cuda_DPDP debugging options. -- #cuda = SPDP mixed precision (default) -- #cuda_SPSP = SPSP single precision only - except shake (debug option!) -+ #Check for mixing of cuda with cuda_SPDP or cuda_DPDP debugging options. -+ #cuda = SPFP mixed single/double/fixed-point precision (default) -+ #cuda_SPFP = SPFP mixed single/double/fixed-point precision (default) -+ #cuda_SPDP = SPDP hybrid single/double precision (debug option!) - #cuda_DPDP = DPDP double precision only (debug option!) -- if [ "$cuda" = 'yes' ]; then -- if [ "$cuda_SPSP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then -- echo "Error: specification of -cuda, -cuda_SPSP and -cuda_DPDP are mutually exclusive" -+ if [ "$cuda_SPFP" = 'yes' ]; then -+ if [ "$cuda_SPDP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then -+ echo "Error: specification of -cuda, -cuda_SPDP and -cuda_DPDP are mutually exclusive" - exit 1 - fi - fi -- if [ "$cuda_SPSP" = 'yes' ]; then -- if [ "$cuda" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then -- echo "Error: specification of -cuda, -cuda_SPSP and -cuda_DPDP are mutually exclusive" -+ if [ "$cuda_SPDP" = 'yes' ]; then -+ if [ "$cuda_SPFP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then -+ echo "Error: specification of -cuda, -cuda_SPDP and -cuda_DPDP are mutually exclusive" - exit 1 - fi - fi - if [ "$cuda_DPDP" = 'yes' ]; then -- if [ "$cuda" = 'yes' -o "$cuda_SPSP" = 'yes' ]; then -- echo "Error: specification of -cuda, -cuda_SPSP and -cuda_DPDP are mutually exclusive" -+ if [ "$cuda_SPFP" = 'yes' -o "$cuda_SPDP" = 'yes' ]; then -+ echo "Error: specification of -cuda, -cuda_SPDP and -cuda_DPDP are mutually exclusive" - exit 1 - fi - fi -@@ -736,14 +739,15 @@ gnu) - pmemd_coptflags="$coptflags" - - #CUDA Specifics -- if [ "$cuda" = 'yes' -o "$cuda_SPSP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then -+ if [ "$cuda_SPFP" = 'yes' -o "$cuda_SPDP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then - pmemd_cu_includes='-I$(CUDA_HOME)/include -IB40C -IB40C/KernelCommon' - pmemd_cu_defines='-DCUDA' - pmemd_cu_libs='./cuda/cuda.a -L$(CUDA_HOME)/lib64 -L$(CUDA_HOME)/lib -lcurand -lcufft -lcudart' - if [ "$optimise" = 'no' ]; then -- nvcc='$(CUDA_HOME)/bin/nvcc -use_fast_math -O0 -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20' -+ nvcc='$(CUDA_HOME)/bin/nvcc -use_fast_math -O0 -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20 -gencode arch=compute_30,code=sm_30' - else -- nvcc='$(CUDA_HOME)/bin/nvcc -use_fast_math -O3 -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20' -+ #2012/05/30 - Removed -O3 here because of 'possible' performance regression. - Scott sees this. Ross can't reproduce it. -+ nvcc='$(CUDA_HOME)/bin/nvcc -use_fast_math -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20 -gencode arch=compute_30,code=sm_30' - fi - if [ "$mpi" = 'yes' ]; then - mpi_inc=`(mpicc -show 2>&1) | awk 'BEGIN{i=0} {while (i < NF) {if ( substr($i, 1, 2) == "-I" ) {printf("%s ", $i);}; i++;}}'` -@@ -752,8 +756,11 @@ gnu) - pmemd_coptflags="$coptflags -DMPICH_IGNORE_CXX_SEEK" - fi - fi -- if [ "$cuda_SPSP" = 'yes' ]; then -- pmemd_cu_defines="$pmemd_cu_defines -Duse_SPSP" -+ if [ "$cuda_SPFP" = 'yes' ]; then -+ pmemd_cu_defines="$pmemd_cu_defines -Duse_SPFP" -+ fi -+ if [ "$cuda_SPDP" = 'yes' ]; then -+ pmemd_cu_defines="$pmemd_cu_defines -Duse_SPDP" - fi - if [ "$cuda_DPDP" = 'yes' ]; then - pmemd_cu_defines="$pmemd_cu_defines -Duse_DPDP" -@@ -1001,7 +1008,7 @@ intel) - fi - - #CUDA Specifics -- if [ "$cuda" = 'yes' -o "$cuda_SPSP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then -+ if [ "$cuda_SPFP" = 'yes' -o "$cuda_SPDP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then - - # -ipo (multi-file Interprocedural Optimizations optimizations) causes issues with - # CUDA c code linking. Leave at a single-file IPO for the moment MJW -@@ -1012,9 +1019,10 @@ intel) - pmemd_cu_defines='-DCUDA' - pmemd_cu_libs='./cuda/cuda.a -L$(CUDA_HOME)/lib64 -L$(CUDA_HOME)/lib -lcurand -lcufft -lcudart' - if [ "$optimise" = 'yes' ]; then -- nvcc='$(CUDA_HOME)/bin/nvcc -use_fast_math -O3 -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20' -+ #2012/05/30 - Removed -O3 here because of 'possible' performance regression. - Scott sees this. Ross can't reproduce it. -+ nvcc='$(CUDA_HOME)/bin/nvcc -use_fast_math -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20 -gencode arch=compute_30,code=sm_30' - else -- nvcc='$(CUDA_HOME)/bin/nvcc -use_fast_math -O0 -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20' -+ nvcc='$(CUDA_HOME)/bin/nvcc -use_fast_math -O0 -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20 -gencode arch=compute_30,code=sm_30' - fi - - if [ "$mpi" = 'yes' ]; then -@@ -1024,8 +1032,11 @@ intel) - pmemd_coptflags="$pmemd_coptflags -DMPICH_IGNORE_CXX_SEEK" - fi - fi -- if [ "$cuda_SPSP" = 'yes' ]; then -- pmemd_cu_defines="$pmemd_cu_defines -Duse_SPSP" -+ if [ "$cuda_SPFP" = 'yes' ]; then -+ pmemd_cu_defines="$pmemd_cu_defines -Duse_SPFP" -+ fi -+ if [ "$cuda_SPDP" = 'yes' ]; then -+ pmemd_cu_defines="$pmemd_cu_defines -Duse_SPDP" - fi - if [ "$cuda_DPDP" = 'yes' ]; then - pmemd_cu_defines="$pmemd_cu_defines -Duse_DPDP" -@@ -1131,7 +1142,7 @@ pgi) - foptflags="$foptflags -fastsse" - fi - -- if [ "$cuda" = "yes" -o "$cuda_SPSP" = "yes" -o "$cuda_DPDP" = "yes" ]; then -+ if [ "$cuda_SPFP" = "yes" -o "$cuda_SPDP" = "yes" -o "$cuda_DPDP" = "yes" ]; then - echo "ERROR: cuda is not available for pgi." - echo " Please re-run configure without CUDA flags to use this compiler:" - echo " `mod_command_args '-cuda -cuda_SPDP -cuda_DPDP' ''`" -@@ -1258,7 +1269,7 @@ solaris) - flibs_arch="$flibs_arch $SCALAPACKHOME/scalapack_SUN64.a $BLACSHOME/blacsF77init_MPI-SUN64-0.a $BLACSHOME/blacs_MPI-SUN64-0.a $BLACSHOME/blacsCinit_MPI-SUN64-0.a -lmpi" - fi - -- if [ "$cuda" = 'yes' -o "$cuda_SPSP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then -+ if [ "$cuda_SPFP" = 'yes' -o "$cuda_SPDP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then - echo "ERROR: cuda is not available for solaris." - echo " Please re-run configure without CUDA flags to use this compiler:" - echo " `mod_command_args '-cuda -cuda_SPDP -cuda_DPDP' ''`" -@@ -1306,6 +1317,13 @@ open64) - echo "open64 setting is experimental." - fi - -+ if [ "$cuda_SPFP" = 'yes' -o "$cuda_SPDP" = 'yes' -o "$cuda_DPDP" = 'yes' ]; then -+ echo "ERROR: CUDA is not compatible with this compiler" -+ echo " Please re-run configure without CUDA flags to use this compiler:" -+ echo " `mod_command_args '-cuda -cuda_SPDP -cuda_DPDP' ''`" -+ exit 1 -+ fi -+ - if [ "$mpi" = 'yes' ]; then - ld=' mpif90 ' - else -diff --git a/AmberTools/src/cpptraj/src/ActionList.cpp b/AmberTools/src/cpptraj/src/ActionList.cpp -index db3a157..f999e7f 100644 ---- a/AmberTools/src/cpptraj/src/ActionList.cpp -+++ b/AmberTools/src/cpptraj/src/ActionList.cpp -@@ -33,6 +33,7 @@ - #include "Action_Rotdif.h" - #include "Action_RunningAvg.h" - #include "Action_RmsAvgCorr.h" -+#include "Action_AutoImage.h" - - // CONSTRUCTOR - ActionList::ActionList() { -@@ -77,7 +78,7 @@ int ActionList::AddAction(ArgList &argIn) { - else if (argIn.CommandIs("secstruct")) {Act=new DSSP; } - else if (argIn.CommandIs("center")) {Act=new Center; } - else if (argIn.CommandIs("hbond")) {Act=new Hbond; } -- else if (argIn.CommandIs("image")) {Act=new Image; } -+ else if (argIn.CommandIs("image")) {Act=new Action_Image; } - else if (argIn.CommandIs("surf")) {Act=new Surf; } - else if (argIn.CommandIs("radgyr")) {Act=new Radgyr; } - else if (argIn.CommandIs("mask")) {Act=new ActionMask;} -@@ -101,6 +102,7 @@ int ActionList::AddAction(ArgList &argIn) { - else if (argIn.CommandIs("runningaverage")) {Act=new RunningAvg;} - else if (argIn.CommandIs("runavg")) {Act=new RunningAvg;} - else if (argIn.CommandIs("rmsavgcorr")) {Act=new RmsAvgCorr;} -+ else if (argIn.CommandIs("autoimage")) {Act=new Action_AutoImage;} - // PTRAJ - else if (argIn.CommandIs("atomicfluct") || - argIn.CommandIs("atomicfluct3D") || -diff --git a/AmberTools/src/cpptraj/src/Action_AutoImage.cpp b/AmberTools/src/cpptraj/src/Action_AutoImage.cpp -index e69de29..ca61dc6 100644 ---- a/AmberTools/src/cpptraj/src/Action_AutoImage.cpp -+++ b/AmberTools/src/cpptraj/src/Action_AutoImage.cpp -@@ -0,0 +1,273 @@ -+#include "Action_AutoImage.h" -+#include "CpptrajStdio.h" -+#include "DistRoutines.h" -+ -+// CONSTRUCTOR -+Action_AutoImage::Action_AutoImage() : -+ origin_(false), -+ ortho_(false), -+ center_(false), -+ truncoct_(false), -+ triclinic_(OFF) -+{} -+ -+// Action_AutoImage::init() -+/** Usage: autoimage <mask> | anchor <mask> [fixed <fmask>] [mobile <mmask>] -+ * [origin] [familiar | triclinic] -+ */ -+int Action_AutoImage::init() { -+ // Get keywords -+ origin_ = actionArgs.hasKey("origin"); -+ center_ = actionArgs.hasKey("center"); -+ if (actionArgs.hasKey("familiar")) triclinic_ = FAMILIAR; -+ if (actionArgs.hasKey("triclinic")) triclinic_ = FORCE; -+ anchor_ = actionArgs.getKeyString("anchor",NULL); -+ fixed_ = actionArgs.getKeyString("fixed",NULL); -+ mobile_ = actionArgs.getKeyString("mobile",NULL); -+ // Get mask expression for anchor if none yet specified -+ if (anchor_==NULL) -+ anchor_ = actionArgs.getNextMask(); -+ -+ mprintf(" AUTOIMAGE: To"); -+ if (origin_) -+ mprintf(" origin"); -+ else -+ mprintf(" box center"); -+ mprintf(" based on"); -+ if (center_) -+ mprintf(" center of mass"); -+ else -+ mprintf(" first atom position"); -+ if (anchor_!=NULL) -+ mprintf(", anchor mask is [%s]\n", anchor_); -+ else -+ mprintf(", anchor is first molecule.\n"); -+ if (fixed_!=NULL) -+ mprintf("\tAtoms in mask [%s] will be fixed to anchor region.\n", fixed_); -+ if (mobile_!=NULL) -+ mprintf("\tAtoms in mask [%s] will be imaged independently of anchor region.\n", -+ mobile_); -+ -+ return 0; -+} -+ -+// Action_AutoImage::SetupAtomRanges() -+/** Based on the given atom mask expression determine what molecules are -+ * selected by the mask. -+ * \return A list of atom pairs that mark the beginning and end of each -+ * selected molecule. -+ */ -+Action_AutoImage::pairList Action_AutoImage::SetupAtomRanges( const char* maskexpr ) -+{ -+ pairList imageList; -+ AtomMask Mask1; -+ if (Mask1.SetMaskString( (char*)maskexpr )) return imageList; -+ -+ if (currentParm->SetupCharMask( Mask1, activeReference )) return imageList; -+ if (Mask1.None()) return imageList; -+ -+ int* AtomsPerMol = currentParm->AtomsPerMol_ptr(); -+ int firstAtom = 0; -+ int lastAtom = 0; -+ for (int molnum = 0; molnum < currentParm->Nmol(); ++molnum) -+ { -+ firstAtom = lastAtom; -+ lastAtom += AtomsPerMol[ molnum ]; -+ // Check that each atom in the range is in Mask1 -+ bool rangeIsValid = true; -+ for (int atom = firstAtom; atom < lastAtom; ++atom) { -+ if (!Mask1.AtomInCharMask(atom)) { -+ rangeIsValid = false; -+ break; -+ } -+ } -+ if (rangeIsValid) { -+ imageList.push_back( firstAtom ); -+ imageList.push_back( lastAtom ); -+ } -+ } -+ mprintf("\tMask [%s] corresponds to %zu molecules\n", Mask1.MaskString(), imageList.size()/2); -+ return imageList; -+} -+ -+// Action_AutoImage::setup() -+int Action_AutoImage::setup() { -+ bool fixedauto = false; -+ bool mobileauto = false; -+ -+ // Require molecule info -+ int* AtomsPerMol = currentParm->AtomsPerMol_ptr(); -+ if (AtomsPerMol == NULL) { -+ mprinterr("Error: AutoImage: No molecule information in %s\n", currentParm->parmName); -+ return 1; -+ } -+ // Determine Box info -+ if (currentParm->boxType==NOBOX) { -+ mprintf("Warning: Image::setup: Parm %s does not contain box information.\n", -+ currentParm->parmName); -+ return 1; -+ } -+ ortho_ = false; -+ if (currentParm->boxType==ORTHO && triclinic_==OFF) ortho_=true; -+ // If box is originally truncated oct and not forcing triclinic, -+ // turn familiar on. -+ if (AmberIfbox( currentParm->Box[4] )==2 && triclinic_!=FORCE && triclinic_!=FAMILIAR) { -+ mprintf("\tOriginal box is truncated octahedron, turning on 'familiar'.\n"); -+ triclinic_=FAMILIAR; -+ } -+ -+ // Set up anchor region -+ if (anchor_!=NULL) { -+ anchorList_ = SetupAtomRanges( anchor_ ); -+ } else { -+ anchorList_.clear(); -+ anchorList_.push_back( 0 ); -+ anchorList_.push_back( AtomsPerMol[0] ); -+ } -+ if (anchorList_.empty() || anchorList_.size() > 2) { -+ mprinterr("Error: Anchor mask [%s] corresponds to %zu mols, should only be 1.\n", -+ anchor_, anchorList_.size() / 2); -+ return 1; -+ } -+ // Set up mask for centering anchor -+ anchorMask_.AddAtomRange( anchorList_[0], anchorList_[1] ); -+ int anchormolnum = currentParm->atomToMolecule( anchorList_[0] ); -+ mprintf("\tAnchor molecule is %i\n", anchormolnum+1); -+ // Set up fixed region -+ if (fixed_!=NULL) -+ fixedList_ = SetupAtomRanges( fixed_ ); -+ else -+ fixedauto = true; -+ // Set up mobile region -+ if (mobile_!=NULL) -+ mobileList_ = SetupAtomRanges( mobile_ ); -+ else -+ mobileauto = true; -+ // Automatic search through molecules for fixed/mobile -+ if (fixedauto || mobileauto) { -+ int firstAtom = 0; -+ int lastAtom = 0; -+ for (int molnum = 0; molnum < currentParm->Nmol(); ++molnum) -+ { -+ firstAtom = lastAtom; -+ lastAtom += AtomsPerMol[ molnum ]; -+ // Skip the anchor molecule -+ if (molnum != anchormolnum) { -+ // Solvent and 1 atom molecules (prob. ions) go in mobile list, -+ // everything else into fixed list. -+ bool isSolventMol = false; -+ if ( currentParm->solventMask != NULL && currentParm->solventMask[firstAtom] == 'T' ) -+ isSolventMol = true; -+ if ( isSolventMol || (lastAtom - firstAtom) == 1 ) -+ { -+ if (mobileauto) { -+ mobileList_.push_back( firstAtom ); -+ mobileList_.push_back( lastAtom ); -+ } -+ } else { -+ if (fixedauto) { -+ fixedList_.push_back( firstAtom ); -+ fixedList_.push_back( lastAtom ); -+ } -+ } -+ } -+ } -+ } -+ // DEBUG: Print fixed and mobile lists -+ if (!fixedList_.empty()) { -+ mprintf("\tThe following molecules are fixed to anchor:"); -+ for (pairList::iterator atom = fixedList_.begin(); -+ atom != fixedList_.end(); atom += 2) -+ mprintf(" %i", currentParm->atomToMolecule( *atom ) + 1 ); -+ mprintf("\n"); -+ } -+ mprintf("\t%zu molecules are mobile.\n", mobileList_.size() / 2 ); -+ //mprintf("\tThe following molecules are mobile:\n"); -+ //for (pairList::iterator atom = mobileList_.begin(); -+ // atom != mobileList_.end(); atom += 2) -+ // mprintf("\t\t%i\n", (*currentParm)[ *atom ].Mol()+1 ); -+ -+ truncoct_ = (triclinic_==FAMILIAR); -+ -+ return 0; -+} -+ -+// Action_AutoImage::action() -+int Action_AutoImage::action() { -+ double center[3], ucell[9], recip[9], imagedcenter[3], framecenter[3]; -+ double fcom[3]; -+ double bp[3], bm[3]; -+ double Trans[3]; -+ -+ // Center w.r.t. anchor -+ currentFrame->Center( anchorMask_, origin_, useMass); -+ // Determine whether anchor center is at box center or coordinate origin -+ if (origin_) { -+ center[0] = 0; -+ center[1] = 0; -+ center[2] = 0; -+ } else { -+ center[0] = currentFrame->box[0] / 2; -+ center[1] = currentFrame->box[1] / 2; -+ center[2] = currentFrame->box[2] / 2; -+ } -+ -+ // Setup imaging, and image everything in currentFrame -+ // according to mobileList. -+ if (ortho_) { -+ currentFrame->SetupImageOrtho(bp, bm, origin_); -+ currentFrame->ImageOrtho(bp, bm, center_, useMass, mobileList_); -+ } else { -+ currentFrame->BoxToRecip(ucell, recip); -+ if (truncoct_) -+ currentFrame->SetupImageTruncoct( fcom, NULL, useMass, origin_ ); -+ currentFrame->ImageNonortho(origin_, fcom, ucell, recip, truncoct_, -+ center_, useMass, mobileList_); -+ } -+ -+ // For each molecule defined by atom pairs in fixedList, determine if the -+ // imaged position is closer to anchor center than the current position. -+ // Always use molecule center when imaging fixedList. -+ for (pairList::iterator atom1 = fixedList_.begin(); -+ atom1 != fixedList_.end(); ++atom1) -+ { -+ int firstAtom = *atom1; -+ ++atom1; -+ int lastAtom = *atom1; -+ Trans[0] = 0; -+ Trans[1] = 0; -+ Trans[2] = 0; -+ if (useMass) -+ currentFrame->CenterOfMass(framecenter, firstAtom, lastAtom); -+ else -+ currentFrame->GeometricCenter(framecenter, firstAtom, lastAtom); -+ // NOTE: imaging routines will modify input coords. -+ imagedcenter[0] = framecenter[0]; -+ imagedcenter[1] = framecenter[1]; -+ imagedcenter[2] = framecenter[2]; -+ if (ortho_) -+ currentFrame->ImageOrtho(Trans, imagedcenter, bp, bm); -+ else -+ currentFrame->ImageNonortho(Trans, imagedcenter, truncoct_, origin_, ucell, recip, fcom); -+ // If molecule was imaged, determine whether imaged position is closer to anchor. -+ if (Trans[0] != 0 || Trans[1] != 0 || Trans[2] != 0) { -+ imagedcenter[0] = framecenter[0] + Trans[0]; -+ imagedcenter[1] = framecenter[1] + Trans[1]; -+ imagedcenter[2] = framecenter[2] + Trans[2]; -+ double framedist2 = DIST2_NoImage( center, framecenter ); -+ double imageddist2 = DIST2_NoImage( center, imagedcenter ); -+ //mprintf("DBG: [%5i] Fixed @%i-%i frame dist2=%lf, imaged dist2=%lf\n", frameNum, -+ // firstAtom+1, lastAtom+1, -+ // framedist2, imageddist2); -+ if (imageddist2 < framedist2) { -+ // Imaging these atoms moved them closer to anchor. Update coords in currentFrame. -+ currentFrame->Translate(Trans, firstAtom, lastAtom); -+ //for (int idx = firstAtom*3; idx < lastAtom*3; ++idx) -+ // (*currentFrame)[idx] = fixedFrame[idx]; -+ } -+ } -+ } -+ -+ return 0; -+} -+ -diff --git a/AmberTools/src/cpptraj/src/Action_AutoImage.h b/AmberTools/src/cpptraj/src/Action_AutoImage.h -index e69de29..5ee24d6 100644 ---- a/AmberTools/src/cpptraj/src/Action_AutoImage.h -+++ b/AmberTools/src/cpptraj/src/Action_AutoImage.h -@@ -0,0 +1,32 @@ -+#ifndef INC_ACTION_AUTOIMAGE_H -+#define INC_ACTION_AUTOIMAGE_H -+#include "Action.h" -+class Action_AutoImage : public Action { -+ public: -+ Action_AutoImage(); -+ -+ private: -+ int init(); -+ int setup(); -+ int action(); -+ -+ AtomMask anchorMask_; ///< Used to center anchor region. -+ char* anchor_; ///< Mask expression for anchor region. -+ char* fixed_; ///< Mask expression for fixed region. -+ char* mobile_; ///< Mask expression for mobile region. -+ -+ bool origin_; ///< If true imaging occurs w.r.t. coordinate origin. -+ bool ortho_; ///< If true imaging is orthogonal. -+ bool center_; ///< If true imaging of mobile region uses molecule center. -+ bool truncoct_; -+ enum TriclinicArg {OFF, FORCE, FAMILIAR}; -+ TriclinicArg triclinic_; ///< Determine whether triclinic code should be used. -+ -+ typedef std::vector<int> pairList; -+ pairList anchorList_; -+ pairList fixedList_; -+ pairList mobileList_; -+ -+ pairList SetupAtomRanges(const char*); -+}; -+#endif -diff --git a/AmberTools/src/cpptraj/src/Action_Center.cpp b/AmberTools/src/cpptraj/src/Action_Center.cpp -index a496a7f..cb841b8 100644 ---- a/AmberTools/src/cpptraj/src/Action_Center.cpp -+++ b/AmberTools/src/cpptraj/src/Action_Center.cpp -@@ -68,14 +68,7 @@ int Center::setup() { - */ - int Center::action() { - -- // Set up box -- if (!origin) { -- box[0] = currentFrame->box[0] / 2.0; -- box[1] = currentFrame->box[1] / 2.0; -- box[2] = currentFrame->box[2] / 2.0; -- } -- -- currentFrame->Center(&Mask1, box, useMass); -+ currentFrame->Center(Mask1, origin, useMass); - - return 0; - } -diff --git a/AmberTools/src/cpptraj/src/Action_Image.cpp b/AmberTools/src/cpptraj/src/Action_Image.cpp -index 023b26a..5e1dec8 100644 ---- a/AmberTools/src/cpptraj/src/Action_Image.cpp -+++ b/AmberTools/src/cpptraj/src/Action_Image.cpp -@@ -1,26 +1,26 @@ --// Image --#include <cmath> //for floor -+// Action_Image - #include "Action_Image.h" --#include "DistRoutines.h" - #include "CpptrajStdio.h" - - // CONSTRUCTOR --Image::Image() { -+Action_Image::Action_Image() : -+ ComMask_(NULL), -+ origin_(false), -+ center_(false), -+ ortho_(false), -+ truncoct_(false), -+ triclinic_(OFF) -+{ - //fprintf(stderr,"Image Con\n"); -- ComMask=NULL; -- origin = false; -- center = false; -- ortho = false; - useMass = true; -- triclinic = OFF; - } - - // DESTRUCTOR --Image::~Image() { -- if (ComMask!=NULL) delete ComMask; -+Action_Image::~Action_Image() { -+ if (ComMask_!=NULL) delete ComMask_; - } - --// Image::init() -+// Action_Image::init() - /** Expected call: image [origin] [center] [triclinic | familiar [com <mask>]] <mask> - * - origin: center at 0.0, 0.0, 0.0, otherwise center at box center. - * - center: Use center of mass for imaging, otherwise use first atom. -@@ -33,86 +33,86 @@ Image::~Image() { - // Check order is: - // 1) Keywords - // 2) Masks --int Image::init() { -+int Action_Image::init() { - char *mask1; - - // Get keywords -- origin = actionArgs.hasKey("origin"); -- center = actionArgs.hasKey("center"); -- if (actionArgs.hasKey("familiar")) triclinic = FAMILIAR; -- if (actionArgs.hasKey("triclinic")) triclinic = FORCE; -+ origin_ = actionArgs.hasKey("origin"); -+ center_ = actionArgs.hasKey("center"); -+ if (actionArgs.hasKey("familiar")) triclinic_ = FAMILIAR; -+ if (actionArgs.hasKey("triclinic")) triclinic_ = FORCE; - - // Get Masks -- if (triclinic == FAMILIAR) { -+ if (triclinic_ == FAMILIAR) { - mask1 = actionArgs.getKeyString("com",NULL); - if (mask1!=NULL) { -- ComMask = new AtomMask(); -- ComMask->SetMaskString(mask1); -+ ComMask_ = new AtomMask(); -+ ComMask_->SetMaskString(mask1); - } - } - mask1 = actionArgs.getNextMask(); -- Mask1.SetMaskString(mask1); -+ Mask1_.SetMaskString(mask1); - - mprintf(" IMAGE: To"); -- if (origin) -+ if (origin_) - mprintf(" origin"); - else - mprintf(" box center"); - mprintf(" based on"); -- if (center) -+ if (center_) - mprintf(" center of mass"); - else - mprintf(" first atom position"); -- mprintf(" using atoms in mask %s\n",Mask1.MaskString()); -- if (triclinic == FORCE) -+ mprintf(" using atoms in mask %s\n",Mask1_.MaskString()); -+ if (triclinic_ == FORCE) - mprintf( " Triclinic On.\n"); -- else if (triclinic == FAMILIAR) { -+ else if (triclinic_ == FAMILIAR) { - mprintf( " Triclinic On, familiar shape"); -- if (ComMask!=NULL) -- mprintf( " centering on atoms in mask %s", ComMask->MaskString()); -+ if (ComMask_!=NULL) -+ mprintf( " centering on atoms in mask %s", ComMask_->MaskString()); - mprintf(".\n"); - } - - return 0; - } - --// Image::setup() -+// Action_Image::setup() - /** Set Imaging up for this parmtop. Get masks etc. - * currentParm is set in Action::Setup - */ --int Image::setup() { -- atomPair apair; -+int Action_Image::setup() { -+ //atomPair apair; - -- if ( currentParm->SetupCharMask( Mask1, activeReference ) ) return 1; -- if (Mask1.None()) { -+ if ( currentParm->SetupCharMask( Mask1_, activeReference ) ) return 1; -+ if (Mask1_.None()) { - mprintf("Warning: Image::setup: Mask contains 0 atoms.\n"); - return 1; - } - -- if (currentParm->boxType==NOBOX) { -+ if (currentParm->boxType == NOBOX) { - mprintf("Warning: Image::setup: Parm %s does not contain box information.\n", - currentParm->parmName); - return 1; - } - -- ortho = false; -- if (currentParm->boxType==ORTHO && triclinic==OFF) ortho=true; -+ ortho_ = false; -+ if (currentParm->boxType == ORTHO && triclinic_==OFF) ortho_=true; - - // If box is originally truncated oct and not forcing triclinic, - // turn familiar on. -- if (AmberIfbox(currentParm->Box[5])==2 && triclinic!=FORCE && triclinic!=FAMILIAR) { -+ if ( AmberIfbox( currentParm->Box[4] ) == 2 && triclinic_!=FORCE && triclinic_!=FAMILIAR) { - mprintf("\tOriginal box is truncated octahedron, turning on 'familiar'.\n"); -- triclinic=FAMILIAR; -+ triclinic_=FAMILIAR; - } - -- if (triclinic == FAMILIAR) { -- if (ComMask!=NULL) { -- if ( currentParm->SetupIntegerMask( *ComMask, activeReference) ) return 1; -- if (ComMask->None()) { -+ if (triclinic_ == FAMILIAR) { -+ if (ComMask_!=NULL) { -+ if ( currentParm->SetupIntegerMask( *ComMask_, activeReference ) ) return 1; -+ if (ComMask_->None()) { - mprintf("Warning: Image::setup: Mask for 'familiar com' contains no atoms.\n"); - return 1; - } -- mprintf("\tcom: mask [%s] contains %i atoms.\n",ComMask->MaskString(),ComMask->Nselected); -+ mprintf("\tcom: mask [%s] contains %i atoms.\n",ComMask_->MaskString(),ComMask_->Nselected); - } - } - -@@ -120,178 +120,64 @@ int Image::setup() { - // Currently imaging by molecule only, so each pair will be the first and - // last atom of each molecule. Check that all atoms between first and last - // are actually in the mask. -- imageList.clear(); -- imageList.reserve( currentParm->Nmol() ); -- apair.firstAtom = 0; -- apair.lastAtom = 0; -- for (int mol = 0; mol < currentParm->Nmol(); mol++) { -- apair.firstAtom = apair.lastAtom; -- apair.lastAtom = apair.firstAtom + currentParm->AtomsPerMol(mol); -+ imageList_.clear(); -+ imageList_.reserve( currentParm->Nmol() ); -+ int* AtomsPerMol = currentParm->AtomsPerMol_ptr(); -+ if (AtomsPerMol == NULL) { -+ mprinterr("Error: Image: No molecule information in %s\n", currentParm->parmName); -+ return 1; -+ } -+ int firstAtom = 0; -+ int lastAtom = 0; -+ -+ for (int molnum = 0; molnum < currentParm->Nmol(); ++molnum) -+ { -+ firstAtom = lastAtom; -+ lastAtom += AtomsPerMol[ molnum ]; - // Check that each atom in the range is in Mask1 - bool rangeIsValid = true; -- for (int atom = apair.firstAtom; atom < apair.lastAtom; atom++) -- if (!Mask1.AtomInCharMask(atom)) {rangeIsValid = false; break;} -- if (rangeIsValid) imageList.push_back( apair ); -+ for (int atom = firstAtom; atom < lastAtom; atom++) { -+ if (!Mask1_.AtomInCharMask(atom)) { -+ rangeIsValid = false; -+ break; -+ } -+ } -+ if (rangeIsValid) { -+ imageList_.push_back( firstAtom ); -+ imageList_.push_back( lastAtom ); -+ } - } -- mprintf("\tNumber of molecules to be imaged is %u based on mask [%s]\n", imageList.size(), -- Mask1.MaskString()); -+ mprintf("\tNumber of molecules to be imaged is %u based on mask [%s]\n", imageList_.size()/2, -+ Mask1_.MaskString()); - // DEBUG: Print all pairs -- //for (std::vector<atomPair>::iterator ap = imageList.begin(); -- // ap != imageList.end(); -- // ap++) -- //{ -- // mprintf("\tPair: %i - %i\n",(*ap).firstAtom+1,(*ap).lastAtom); -- //} -+ if (debug>0) { -+ for (std::vector<int>::iterator ap = imageList_.begin(); -+ ap != imageList_.end(); ap+=2) -+ mprintf("\t\tMol First-Last atom#: %i - %i\n", (*ap)+1, *(ap+1) ); -+ } -+ -+ // Truncoct flag -+ truncoct_ = (triclinic_==FAMILIAR); - - return 0; - } - --// Image::action() --int Image::action() { -- // Orthorhombic -- double bp[3]; -- double bm[3]; -- // Non-orthorhombic -- double ucell[9]; -- double recip[9]; -- double fc[3], ffc[3]; -- // Familiar -- double fcom[3]; -- int ixyz[3]; -- // General -- double boxTrans[3]; -- double Coord[3]; -- -- // Set up information for orthorhombic cell -- if (ortho) { -- if ( origin ) { -- bp[0] = currentFrame->box[0] / 2.0; -- bp[1] = currentFrame->box[1] / 2.0; -- bp[2] = currentFrame->box[2] / 2.0; -- bm[0] = -bp[0]; -- bm[1] = -bp[1]; -- bm[2] = -bp[2]; -- } else { -- bp[0] = currentFrame->box[0]; -- bp[1] = currentFrame->box[1]; -- bp[2] = currentFrame->box[2]; -- bm[0] = 0.0; -- bm[1] = 0.0; -- bm[2] = 0.0; -- } -- -- // Set up information for non-orthorhombic cell -+// Action_Image::action() -+int Action_Image::action() { -+ // Ortho -+ double bp[3], bm[3]; -+ // Nonortho -+ double ucell[9], recip[9], fcom[3]; -+ -+ if (ortho_) { -+ currentFrame->SetupImageOrtho(bp, bm, origin_); -+ currentFrame->ImageOrtho(bp, bm, center_, useMass, imageList_); - } else { -- // NOTE: Does this need to be done every time? -- currentFrame->BoxToRecip(ucell, recip); -- // Set up centering if putting nonortho cell into familiar trunc. oct. shape -- if (triclinic == FAMILIAR) { -- // Use center of mask of atoms in mask -- if (ComMask!=NULL) { -- if (useMass) -- currentFrame->CenterOfMass(ComMask, fcom); -- else -- currentFrame->GeometricCenter(ComMask,fcom); -- // Use origin -- } else if (origin) { -- fcom[0]=0.0; -- fcom[1]=0.0; -- fcom[2]=0.0; -- // Use box center -- } else { -- fcom[0]=currentFrame->box[0] / 2.0; -- fcom[1]=currentFrame->box[1] / 2.0; -- fcom[2]=currentFrame->box[2] / 2.0; -- } -- //fprintf(stdout,"DEBUG: fcom = %lf %lf %lf\n",fcom[0],fcom[1],fcom[2]); -- } -+ currentFrame->BoxToRecip( ucell, recip ); -+ if (truncoct_) -+ currentFrame->SetupImageTruncoct( fcom, ComMask_, useMass, origin_ ); -+ currentFrame->ImageNonortho(origin_, fcom, ucell, recip, truncoct_, -+ center_, useMass, imageList_); - } -- -- // Loop over Atom pairs -- for (std::vector<atomPair>::iterator apair = imageList.begin(); -- apair != imageList.end(); -- apair++) -- { -- int firstAtom = (*apair).firstAtom; -- int lastAtom = (*apair).lastAtom; -- -- //if (debug>2) -- // mprintf( " IMAGE processing atoms %i to %i\n", firstAtom+1, lastAtom); -- -- // boxTrans will hold calculated translation needed to move atoms back into box -- boxTrans[0] = 0.0; -- boxTrans[1] = 0.0; -- boxTrans[2] = 0.0; -- -- // Set up position based on first atom or center of mass -- if (center) { -- if (useMass) -- currentFrame->CenterOfMass(Coord,firstAtom,lastAtom); -- else -- currentFrame->GeometricCenter(Coord,firstAtom,lastAtom); -- } else -- currentFrame->GetCoord(Coord,firstAtom); -- -- // ORTHORHOMBIC -- if (ortho) { -- // Determine how far coords are out of box -- for (int i=0; i<3; i++) { -- while (Coord[i] < bm[i]) { -- Coord[i] += currentFrame->box[i]; -- boxTrans[i] += currentFrame->box[i]; -- } -- while (Coord[i] > bp[i]) { -- Coord[i] -= currentFrame->box[i]; -- boxTrans[i] -= currentFrame->box[i]; -- } -- } -- -- // NON-ORTHORHOMBIC -- } else { -- fc[0]=(Coord[0]*recip[0]) + (Coord[1]*recip[1]) + (Coord[2]*recip[2]); -- fc[1]=(Coord[0]*recip[3]) + (Coord[1]*recip[4]) + (Coord[2]*recip[5]); -- fc[2]=(Coord[0]*recip[6]) + (Coord[1]*recip[7]) + (Coord[2]*recip[8]); -- -- if ( origin ) { -- fc[0] += 0.5; -- fc[1] += 0.5; -- fc[2] += 0.5; -- } -- -- ffc[0] = floor(fc[0]); -- ffc[1] = floor(fc[1]); -- ffc[2] = floor(fc[2]); -- -- boxTrans[0] -= (ffc[0]*ucell[0] + ffc[1]*ucell[3] + ffc[2]*ucell[6]); -- boxTrans[1] -= (ffc[0]*ucell[1] + ffc[1]*ucell[4] + ffc[2]*ucell[7]); -- boxTrans[2] -= (ffc[0]*ucell[2] + ffc[1]*ucell[5] + ffc[2]*ucell[8]); -- -- // Put into familiar trunc. oct. shape -- if (triclinic == FAMILIAR) { -- Coord[0] += boxTrans[0]; -- Coord[1] += boxTrans[1]; -- Coord[2] += boxTrans[2]; -- MinImageNonOrtho2(Coord, fcom, currentFrame->box, (int)origin, ixyz, ucell, recip); -- if (ixyz[0] != 0 || ixyz[1] != 0 || ixyz[2] != 0) { -- boxTrans[0] += (ixyz[0]*ucell[0] + ixyz[1]*ucell[3] + ixyz[2]*ucell[6]); -- boxTrans[1] += (ixyz[0]*ucell[1] + ixyz[1]*ucell[4] + ixyz[2]*ucell[7]); -- boxTrans[2] += (ixyz[0]*ucell[2] + ixyz[1]*ucell[5] + ixyz[2]*ucell[8]); -- -- //if (debug > 2) -- // mprintf( " IMAGING, FAMILIAR OFFSETS ARE %i %i %i\n", -- // ixyz[0], ixyz[1], ixyz[2]); -- } -- } -- } -- -- //fprintf(stdout,"DEBUG: BoxTrans: %lf %lf %lf\n",boxTrans[0],boxTrans[1],boxTrans[2]); -- -- // Translate atoms back into the box -- currentFrame->Translate(boxTrans,firstAtom,lastAtom); -- -- } // END loop over atom pairs -- - return 0; - } -- -- -diff --git a/AmberTools/src/cpptraj/src/Action_Image.h b/AmberTools/src/cpptraj/src/Action_Image.h -index ba233c1..139246e 100644 ---- a/AmberTools/src/cpptraj/src/Action_Image.h -+++ b/AmberTools/src/cpptraj/src/Action_Image.h -@@ -1,31 +1,28 @@ - #ifndef INC_ACTION_IMAGE_H - #define INC_ACTION_IMAGE_H --// Class: Image -+// Class: Action_Image - /// Action to wrap coordinates back into primary box - #include "Action.h" --class Image: public Action { -+class Action_Image: public Action { -+ public: -+ Action_Image(); -+ ~Action_Image(); -+ private: - /// Only atoms in Mask1 will be imaged -- AtomMask Mask1; -+ AtomMask Mask1_; - /// If defined, image w.r.t. the center of atoms in ComMask. -- AtomMask *ComMask; -+ AtomMask *ComMask_; - /// If true image w.r.t. coordinate origin, otherwise box center -- bool origin; -+ bool origin_; - /// If true molecules will be imaged w.r.t. their center, otherwise first atom will be used -- bool center; -+ bool center_; - /// True if orthorhombic cell, false otherwise. -- bool ortho; -+ bool ortho_; -+ bool truncoct_; - enum TriclinicArg {OFF, FORCE, FAMILIAR}; -- TriclinicArg triclinic; -- struct atomPair { -- int firstAtom; -- int lastAtom; -- }; -+ TriclinicArg triclinic_; - /// Vector containing atom ranges to be imaged (first to last) -- std::vector<atomPair> imageList; -- -- public: -- Image(); -- ~Image(); -+ std::vector<int> imageList_; - - int init(); - int setup(); -diff --git a/AmberTools/src/cpptraj/src/CpptrajState.cpp b/AmberTools/src/cpptraj/src/CpptrajState.cpp -index 7aa0e9e..4ce4228 100644 ---- a/AmberTools/src/cpptraj/src/CpptrajState.cpp -+++ b/AmberTools/src/cpptraj/src/CpptrajState.cpp -@@ -209,11 +209,16 @@ int CpptrajState::Run() { - } - // Set current parm from current traj. - CurrentParm = traj->TrajParm(); -+ // Check if parm has changed -+ bool parmHasChanged = (lastPindex != CurrentParm->pindex); - -- // If Parm has changed, reset Frame and actions for new topology. -- if (lastPindex != CurrentParm->pindex) { -- // Set up the incoming trajectory frame for this parm -+ // If Parm has changed or trajectory velocity status has changed, -+ // reset the frame. -+ if (parmHasChanged || ((TrajFrame.V != NULL) != traj->HasVelocity())) - TrajFrame.SetupFrameV(CurrentParm->natom, CurrentParm->mass, traj->HasVelocity()); -+ -+ // If Parm has changed, reset actions for new topology. -+ if (parmHasChanged) { - // Set up actions for this parm - if (actionList.Setup( &CurrentParm )) { - mprintf("WARNING: Could not set up actions for %s: skipping.\n", -diff --git a/AmberTools/src/cpptraj/src/Frame.cpp b/AmberTools/src/cpptraj/src/Frame.cpp -index 3a8add6..0adbe67 100644 ---- a/AmberTools/src/cpptraj/src/Frame.cpp -+++ b/AmberTools/src/cpptraj/src/Frame.cpp -@@ -462,20 +462,29 @@ void Frame::InverseRotate(double *T) { - * or box center. Use geometric center if mass is NULL, otherwise center - * of mass will be used. - */ --void Frame::Center(AtomMask *Mask, double *boxcoord, bool useMassIn) { -+void Frame::Center(AtomMask& Mask, bool origin, bool useMassIn) { - double center[3]; - - if (useMassIn) -- this->CenterOfMass(Mask, center); -+ this->CenterOfMass(&Mask, center); - else -- this->GeometricCenter(Mask, center); -+ this->GeometricCenter(&Mask, center); - //mprinterr(" FRAME CENTER: %lf %lf %lf\n",center[0],center[1],center[2]); //DEBUG - -- // Shift to whatever is in boxcoord (origin or center of box in Action_Center) -- center[0] = boxcoord[0] - center[0]; -- center[1] = boxcoord[1] - center[1]; -- center[2] = boxcoord[2] - center[2]; -+ if (origin) { -+ // Shift to coordinate origin (0,0,0) -+ center[0] = -center[0]; -+ center[1] = -center[1]; -+ center[2] = -center[2]; -+ } else { -+ // Shift to box center -+ center[0] = (box[0] / 2) - center[0]; -+ center[1] = (box[1] / 2) - center[1]; -+ center[2] = (box[2] / 2) - center[2]; -+ } -+ - this->Translate(center); -+ - } - - // Frame::CenterReference() -@@ -510,6 +519,202 @@ void Frame::ShiftToGeometricCenter( ) { - this->Translate(frameCOM); - } - -+void Frame::SetupImageTruncoct( double* fcom, AtomMask* ComMask, bool useMass, bool origin ) -+{ -+ // Set up centering if putting nonortho cell into familiar trunc. oct. shape -+ //if (truncoct) { -+ if (ComMask!=NULL) { -+ // Use center of atoms in mask -+ if (useMass) -+ CenterOfMass(ComMask, fcom); -+ else -+ GeometricCenter(ComMask, fcom); -+ } else if (origin) { -+ // Use origin -+ fcom[0] = 0; -+ fcom[1] = 0; -+ fcom[2] = 0; -+ } else { -+ // Use box center -+ fcom[0] = box[0] / 2; -+ fcom[1] = box[1] / 2; -+ fcom[2] = box[2] / 2; -+ } -+ //fprintf(stdout,"DEBUG: fcom = %lf %lf %lf\n",fcom[0],fcom[1],fcom[2]); -+ //} -+} -+ -+// Frame::ImageNonortho() -+void Frame::ImageNonortho(bool origin, double* fcom, double* ucell, double* recip, -+ bool truncoct, bool center, -+ bool useMass, std::vector<int> &AtomPairs) -+{ -+ //double ucell[9], recip[9], -+ double boxTrans[3], Coord[3]; -+ // fcom and ixyz only needed for truncoct -+ //double fcom[3]; -+ -+ //BoxToRecip(ucell, recip); -+ -+ // Loop over atom pairs -+ for (std::vector<int>::iterator atom = AtomPairs.begin(); -+ atom != AtomPairs.end(); -+ atom++) -+ { -+ int firstAtom = *atom; -+ ++atom; -+ int lastAtom = *atom; -+ //if (debug>2) -+ // mprintf( " IMAGE processing atoms %i to %i\n", firstAtom+1, lastAtom); -+ // boxTrans will hold calculated translation needed to move atoms back into box -+ boxTrans[0] = 0; -+ boxTrans[1] = 0; -+ boxTrans[2] = 0; -+ // Set up Coord with position to check for imaging based on first atom or -+ // center of mass of atoms first to last. -+ if (center) { -+ if (useMass) -+ CenterOfMass(Coord,firstAtom,lastAtom); -+ else -+ GeometricCenter(Coord,firstAtom,lastAtom); -+ } else { -+ int atomidx = firstAtom * 3; -+ Coord[0] = X[atomidx]; -+ ++atomidx; -+ Coord[1] = X[atomidx]; -+ ++atomidx; -+ Coord[2] = X[atomidx]; -+ } -+ -+ ImageNonortho(boxTrans, Coord, truncoct, origin, -+ ucell, recip, fcom); -+ -+ Translate(boxTrans, firstAtom, lastAtom); -+ -+ } // END loop over atom pairs -+} -+ -+// Frame::ImageNonortho() -+void Frame::ImageNonortho(double* boxTrans, double* Coord, -+ bool truncoct, bool origin, -+ double* ucell, double* recip, double* fcom) -+{ -+ double fc[3], ffc[3]; -+ int ixyz[3]; -+ -+ fc[0]=(Coord[0]*recip[0]) + (Coord[1]*recip[1]) + (Coord[2]*recip[2]); -+ fc[1]=(Coord[0]*recip[3]) + (Coord[1]*recip[4]) + (Coord[2]*recip[5]); -+ fc[2]=(Coord[0]*recip[6]) + (Coord[1]*recip[7]) + (Coord[2]*recip[8]); -+ -+ if ( origin ) { -+ fc[0] += 0.5; -+ fc[1] += 0.5; -+ fc[2] += 0.5; -+ } -+ -+ ffc[0] = floor(fc[0]); -+ ffc[1] = floor(fc[1]); -+ ffc[2] = floor(fc[2]); -+ -+ boxTrans[0] -= (ffc[0]*ucell[0] + ffc[1]*ucell[3] + ffc[2]*ucell[6]); -+ boxTrans[1] -= (ffc[0]*ucell[1] + ffc[1]*ucell[4] + ffc[2]*ucell[7]); -+ boxTrans[2] -= (ffc[0]*ucell[2] + ffc[1]*ucell[5] + ffc[2]*ucell[8]); -+ -+ // Put into familiar trunc. oct. shape -+ if (truncoct) { -+ Coord[0] += boxTrans[0]; -+ Coord[1] += boxTrans[1]; -+ Coord[2] += boxTrans[2]; -+ MinImageNonOrtho2(Coord, fcom, box, (int)origin, ixyz, ucell, recip); -+ if (ixyz[0] != 0 || ixyz[1] != 0 || ixyz[2] != 0) { -+ boxTrans[0] += (ixyz[0]*ucell[0] + ixyz[1]*ucell[3] + ixyz[2]*ucell[6]); -+ boxTrans[1] += (ixyz[0]*ucell[1] + ixyz[1]*ucell[4] + ixyz[2]*ucell[7]); -+ boxTrans[2] += (ixyz[0]*ucell[2] + ixyz[1]*ucell[5] + ixyz[2]*ucell[8]); -+ -+ //if (debug > 2) -+ // mprintf( " IMAGING, FAMILIAR OFFSETS ARE %i %i %i\n", -+ // ixyz[0], ixyz[1], ixyz[2]); -+ } -+ } -+} -+ -+void Frame::SetupImageOrtho(double* bp, double* bm, bool origin) { -+ // Set up boundary information for orthorhombic cell -+ if (origin) { -+ bp[0] = box[0] / 2; -+ bp[1] = box[1] / 2; -+ bp[2] = box[2] / 2; -+ bm[0] = -bp[0]; -+ bm[1] = -bp[1]; -+ bm[2] = -bp[2]; -+ } else { -+ bp[0] = box[0]; -+ bp[1] = box[1]; -+ bp[2] = box[2]; -+ bm[0] = 0; -+ bm[1] = 0; -+ bm[2] = 0; -+ } -+} -+ -+// Frame::ImageOrtho() -+void Frame::ImageOrtho(double* bp, double* bm, bool center, bool useMass, -+ std::vector<int> &AtomPairs) -+{ -+ double boxTrans[3], Coord[3]; -+ -+ // Loop over atom pairs -+ for (std::vector<int>::iterator atom = AtomPairs.begin(); -+ atom != AtomPairs.end(); -+ atom++) -+ { -+ int firstAtom = *atom; -+ ++atom; -+ int lastAtom = *atom; -+ //if (debug>2) -+ // mprintf( " IMAGE processing atoms %i to %i\n", firstAtom+1, lastAtom); -+ // boxTrans will hold calculated translation needed to move atoms back into box -+ boxTrans[0] = 0; -+ boxTrans[1] = 0; -+ boxTrans[2] = 0; -+ // Set up Coord with position to check for imaging based on first atom or -+ // center of mass of atoms first to last. -+ if (center) { -+ if (useMass) -+ CenterOfMass(Coord,firstAtom,lastAtom); -+ else -+ GeometricCenter(Coord,firstAtom,lastAtom); -+ } else { -+ int atomidx = firstAtom * 3; -+ Coord[0] = X[atomidx]; -+ ++atomidx; -+ Coord[1] = X[atomidx]; -+ ++atomidx; -+ Coord[2] = X[atomidx]; -+ } -+ ImageOrtho(boxTrans, Coord,bp,bm); -+ -+ // Translate atoms according to Coord -+ Translate(boxTrans,firstAtom,lastAtom); -+ } // END loop over atom pairs -+} -+ -+void Frame::ImageOrtho(double* boxTrans, double* Coord, double* bp, double* bm) -+{ -+ // Determine how far Coord is out of box -+ for (int i=0; i < 3; i++) { -+ while (Coord[i] < bm[i]) { -+ Coord[i] += box[i]; -+ boxTrans[i] += box[i]; -+ } -+ while (Coord[i] > bp[i]) { -+ Coord[i] -= box[i]; -+ boxTrans[i] -= box[i]; -+ } -+ } -+} -+ -+ - /* -------------- Coordinate Assignment/Extraction Routines ----------------- */ - // Frame::printAtomCoord() - /** Print XYZ coords of given atom */ -diff --git a/AmberTools/src/cpptraj/src/Frame.h b/AmberTools/src/cpptraj/src/Frame.h -index fb9be8b..b24f86c 100644 ---- a/AmberTools/src/cpptraj/src/Frame.h -+++ b/AmberTools/src/cpptraj/src/Frame.h -@@ -53,9 +53,15 @@ class Frame { - void Trans_Rot_Trans(double *, double *); - void Rotate(double *); - void InverseRotate(double *); -- void Center(AtomMask *, double *,bool); -+ void Center(AtomMask&, bool,bool); - void CenterReference(double *, bool); - void ShiftToGeometricCenter(); -+ void SetupImageTruncoct(double*, AtomMask*,bool,bool); -+ void ImageNonortho(bool, double*, double*, double*, bool, bool, bool, std::vector<int> &); -+ void ImageNonortho(double*, double*, bool, bool, double*, double*, double*); -+ void SetupImageOrtho(double*, double*, bool); -+ void ImageOrtho(double*,double*, bool, bool, std::vector<int> &); -+ void ImageOrtho(double*, double*, double*, double*); - // Coordinate assignment/extraction - void printAtomCoord(int); - void GetCoord(double *, int); -diff --git a/AmberTools/src/cpptraj/src/Parm_CharmmPsf.cpp b/AmberTools/src/cpptraj/src/Parm_CharmmPsf.cpp -index 98d1059..c11edc1 100644 ---- a/AmberTools/src/cpptraj/src/Parm_CharmmPsf.cpp -+++ b/AmberTools/src/cpptraj/src/Parm_CharmmPsf.cpp -@@ -14,7 +14,7 @@ int CharmmPsfParmFile::ReadParm(AmberParm &parmOut, CpptrajFile &parmfile) { - int bondatoms[8]; - int currResnum; - int psfresnum; -- int psfattype; -+ char psfattype[6]; - int nbond,nlines; - - mprintf(" Reading Charmm PSF file %s as topology file.\n",parmOut.parmName); -@@ -58,8 +58,8 @@ int CharmmPsfParmFile::ReadParm(AmberParm &parmOut, CpptrajFile &parmfile) { - //if (buffer[bufferLen-1] == '\n') buffer[bufferLen-1]='\0'; - // Read line - // ATOM# SEGID RES# RES ATNAME ATTYPE CHRG MASS (REST OF COLUMNS ARE LIKELY FOR CMAP AND CHEQ) -- sscanf(buffer,"%*i %*s %i %s %s %i %lf %lf",&psfresnum,psfresname,psfname, -- &psfattype,parmOut.charge+atom,parmOut.mass+atom); -+ sscanf(buffer,"%*i %*s %i %s %s %s %lf %lf",&psfresnum,psfresname,psfname, -+ psfattype,parmOut.charge+atom,parmOut.mass+atom); - // Ensure name has 4 chars - PadWithSpaces( psfname ); - strcpy(parmOut.names[atom],psfname); -diff --git a/AmberTools/src/cpptraj/src/Traj_AmberRestart.cpp b/AmberTools/src/cpptraj/src/Traj_AmberRestart.cpp -index d2a398a..6d060a6 100644 ---- a/AmberTools/src/cpptraj/src/Traj_AmberRestart.cpp -+++ b/AmberTools/src/cpptraj/src/Traj_AmberRestart.cpp -@@ -9,6 +9,7 @@ - // CONSTRUCTOR - AmberRestart::AmberRestart() { - restartAtoms=0; -+ coordSize_ = 0; - frameSize=0; - frameBuffer=NULL; - numBoxCoords=0; -@@ -218,6 +219,7 @@ int AmberRestart::setupRead(AmberParm *trajParm) { - // For DOS files CR present before newline - if (tfile->isDos) frame_lines*=2; - frameSize = ((natom3 * 12) + frame_lines); -+ coordSize_ = frameSize; - frameBuffer=(char*) malloc(frameSize*sizeof(char)); - //if (debug>0) mprintf(" Amber Restart frameSize= %i\n",frameSize); - -@@ -302,13 +304,16 @@ int AmberRestart::readFrame(int set,double *X,double *V,double *box, double *T) - return 1; - } - // Get velocity from buffer if present -- if (hasVelocity && V!=NULL) { -- if ( (bufferPosition = BufferToDouble(bufferPosition, V, natom3, 12))==NULL ) { -- mprinterr("Error: AmberRestart::getFrame: * detected in velocities of %s\n", -- tfile->filename); -- return 1; -+ if (hasVelocity) { -+ if (V != NULL) { -+ if ( (bufferPosition = BufferToDouble(bufferPosition, V, natom3, 12))==NULL ) { -+ mprinterr("Error: AmberRestart::getFrame: * detected in velocities of %s\n", -+ tfile->filename); -+ return 1; -+ } -+ } else { -+ bufferPosition += coordSize_; - } -- //F->V->printAtomCoord(0); - } - // Get box from buffer if present - if (hasBox) { -diff --git a/AmberTools/src/cpptraj/src/Traj_AmberRestart.h b/AmberTools/src/cpptraj/src/Traj_AmberRestart.h -index ba21b2a..b231874 100644 ---- a/AmberTools/src/cpptraj/src/Traj_AmberRestart.h -+++ b/AmberTools/src/cpptraj/src/Traj_AmberRestart.h -@@ -7,6 +7,7 @@ class AmberRestart : public TrajectoryIO { - int restartAtoms; ///< Number of atoms in restart file - int natom3; ///< Number of coords - int frameSize; ///< Size of 1 coord frame in bytes, inc box & velo if present -+ size_t coordSize_; ///< Size of 1 coord frame in bytes, used for blank reads. - char *frameBuffer; ///< Used to read in restart coord - int numBoxCoords; ///< Number of box coords (3 or 6) - double restartTime; ///< Time in restart file, read in -diff --git a/AmberTools/src/cpptraj/src/Traj_CharmmDcd.cpp b/AmberTools/src/cpptraj/src/Traj_CharmmDcd.cpp -index 8563938..6074b05 100644 ---- a/AmberTools/src/cpptraj/src/Traj_CharmmDcd.cpp -+++ b/AmberTools/src/cpptraj/src/Traj_CharmmDcd.cpp -@@ -203,7 +203,39 @@ int CharmmDcd::WriteBlock(int blocksize) { - /** Call openTraj, which reads the DCD header and all necessary info. - */ - int CharmmDcd::setupRead(AmberParm *trajParm) { -+ size_t boxBytes, dim; - if ( openTraj() ) return -1; -+ // DCD file may have less frames than is stored in the header. -+ // Check the file size against the reported number of frames. -+ if (hasBox) -+ boxBytes = 56; // 6(crds) * 8(double) + 4(hdr) + 4(end hdr) -+ else -+ boxBytes = 0; -+ if (dcd4D) -+ dim = 4; -+ else -+ dim = 3; -+ size_t dimBytes = dim * sizeof(float); -+ size_t frame1Bytes = (((size_t) dcdatom+2 ) * dimBytes) + boxBytes; -+ size_t frameNBytes = (((size_t)(dcdatom - namnf)+2) * dimBytes) + boxBytes; -+ // Header size should be current position after open, which automatically -+ // reads DCD header. -+ size_t headerBytes = (size_t)tfile->IO->Tell(); -+ size_t file_size = (size_t)tfile->file_size - headerBytes - frame1Bytes; -+ if ( (file_size % frameNBytes) != 0 ) { -+ mprintf("Warning: %s: Number of frames in DCD file could not be accurately determined.\n", -+ tfile->filename); -+ mprintf("Warning:\t\tFile may be corrupted.\n"); -+ } -+ int nframes = (int)(file_size / frameNBytes) + 1; // +1 for first frame -+ if (nframes != dcdframes) { -+ mprintf("Warning: %s: Reported number of frames in DCD file is %i,\n", -+ tfile->filename, dcdframes); -+ mprintf("Warning:\tactual number of frames is %i. Only reading %i frames.\n", -+ nframes, nframes); -+ dcdframes = nframes; -+ } -+ - closeTraj(); - return dcdframes; - } -diff --git a/AmberTools/src/cpptraj/src/TrajectoryFile.cpp b/AmberTools/src/cpptraj/src/TrajectoryFile.cpp -index e51b442..1fb8d14 100644 ---- a/AmberTools/src/cpptraj/src/TrajectoryFile.cpp -+++ b/AmberTools/src/cpptraj/src/TrajectoryFile.cpp -@@ -635,6 +635,7 @@ FileFormat TrajectoryFile::getFmtFromArg(ArgList *argIn, FileFormat def) { - else if ( argIn->hasKey("restartnc")) writeFormat=AMBERRESTARTNC; - else if ( argIn->hasKey("mol2") ) writeFormat=MOL2FILE; - else if ( argIn->hasKey("dcd") ) writeFormat=CHARMMDCD; -+ else if ( argIn->hasKey("charmm") ) writeFormat=CHARMMDCD; - return writeFormat; - } - -diff --git a/AmberTools/src/cpptraj/src/cpptrajdepend b/AmberTools/src/cpptraj/src/cpptrajdepend -index c8a9751..27016ab 100644 ---- a/AmberTools/src/cpptraj/src/cpptrajdepend -+++ b/AmberTools/src/cpptraj/src/cpptrajdepend -@@ -38,13 +38,14 @@ Action_Center.o : Action_Center.cpp Action.h Action_Center.h AmberParm.h ArgList - FileIO_Bzip2.o : FileIO_Bzip2.cpp CpptrajStdio.h FileIO.h FileIO_Bzip2.h - Action_Hbond.o : Action_Hbond.cpp Action.h Action_Hbond.h AmberParm.h ArgList.h AtomMask.h Bonds.h BoxType.h CharBuffer.h Constants.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h FileIO.h FileRoutines.h Frame.h FrameList.h Name.h ParmFileList.h - DataSet_integer.o : DataSet_integer.cpp CharBuffer.h CpptrajStdio.h DataSet.h DataSet_integer.h MpiRoutines.h --Action_Image.o : Action_Image.cpp Action.h Action_Image.h AmberParm.h ArgList.h AtomMask.h Bonds.h BoxType.h CharBuffer.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h DistRoutines.h FileIO.h FileRoutines.h Frame.h FrameList.h Name.h ParmFileList.h -+Action_Image.o : Action_Image.cpp Action.h Action_Image.h AmberParm.h ArgList.h AtomMask.h Bonds.h BoxType.h CharBuffer.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h FileIO.h FileRoutines.h Frame.h FrameList.h Name.h ParmFileList.h - Action_Surf.o : Action_Surf.cpp Action.h Action_Surf.h AmberParm.h ArgList.h AtomMask.h Bonds.h BoxType.h CharBuffer.h Constants.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h FileIO.h FileRoutines.h Frame.h FrameList.h Name.h ParmFileList.h - Action_Radgyr.o : Action_Radgyr.cpp Action.h Action_Radgyr.h AmberParm.h ArgList.h AtomMask.h Bonds.h BoxType.h CharBuffer.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h FileIO.h FileRoutines.h Frame.h FrameList.h Name.h ParmFileList.h - Action_Mask.o : Action_Mask.cpp Action.h Action_Mask.h AmberParm.h ArgList.h AtomMask.h Bonds.h BoxType.h CharBuffer.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h FileIO.h FileRoutines.h Frame.h FrameList.h Name.h ParmFileList.h ProgressBar.h Range.h TrajectoryFile.h TrajectoryIO.h - Action_Closest.o : Action_Closest.cpp Action.h Action_Closest.h AmberParm.h ArgList.h AtomMask.h Bonds.h BoxType.h CharBuffer.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h FileIO.h FileRoutines.h Frame.h FrameList.h Name.h ParmFile.h ParmFileList.h - NetcdfRoutines.o : NetcdfRoutines.cpp CpptrajStdio.h NetcdfRoutines.h - CpptrajStdio.o : CpptrajStdio.cpp MpiRoutines.h -+Action_AutoImage.o : Action_AutoImage.cpp Action.h Action_AutoImage.h AmberParm.h ArgList.h AtomMask.h Bonds.h BoxType.h CharBuffer.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h DistRoutines.h FileIO.h FileRoutines.h Frame.h FrameList.h Name.h ParmFileList.h - Mol2FileRoutines.o : Mol2FileRoutines.cpp CharBuffer.h CpptrajFile.h CpptrajStdio.h FileIO.h FileRoutines.h Mol2FileRoutines.h Name.h - Action_NAstruct.o : Action_NAstruct.cpp Action.h Action_NAstruct.h AmberParm.h ArgList.h AtomMask.h AxisType.h Bonds.h BoxType.h CharBuffer.h Constants.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h DistRoutines.h FileIO.h FileRoutines.h Frame.h FrameList.h Name.h ParmFileList.h Range.h vectormath.h - DistRoutines.o : DistRoutines.cpp Constants.h DistRoutines.h -@@ -80,7 +81,7 @@ Action_Jcoupling.o : Action_Jcoupling.cpp Action.h Action_Jcoupling.h AmberParm. - TriangleMatrix.o : TriangleMatrix.cpp CpptrajStdio.h TriangleMatrix.h - Action_Clustering.o : Action_Clustering.cpp Action.h Action_Clustering.h AmberParm.h ArgList.h AtomMask.h Bonds.h BoxType.h CharBuffer.h ClusterList.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h FileIO.h FileRoutines.h Frame.h FrameList.h Name.h ParmFileList.h ProgressBar.h Range.h TrajectoryFile.h TrajectoryIO.h TriangleMatrix.h - ClusterList.o : ClusterList.cpp CharBuffer.h ClusterList.h CpptrajFile.h CpptrajStdio.h FileIO.h FileRoutines.h TriangleMatrix.h --Traj_CharmmDcd.o : Traj_CharmmDcd.cpp AmberParm.h ArgList.h AtomMask.h Bonds.h BoxType.h CharBuffer.h CpptrajFile.h CpptrajStdio.h FileIO.h FileRoutines.h Name.h Traj_CharmmDcd.h TrajectoryIO.h -+Traj_CharmmDcd.o : Traj_CharmmDcd.cpp AmberParm.h ArgList.h AtomMask.h Bonds.h BoxType.h CharBuffer.h Constants.h CpptrajFile.h CpptrajStdio.h FileIO.h FileRoutines.h Name.h Traj_CharmmDcd.h TrajectoryIO.h - Bonds.o : Bonds.cpp Bonds.h CpptrajStdio.h Name.h - FileRoutines.o : FileRoutines.cpp FileRoutines.h - Action_Pairwise.o : Action_Pairwise.cpp Action.h Action_Pairwise.h AmberParm.h ArgList.h AtomMask.h Bonds.h BoxType.h CharBuffer.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h FileIO.h FileRoutines.h Frame.h FrameList.h Name.h ParmFileList.h ProgressBar.h Range.h TrajectoryFile.h TrajectoryIO.h vectormath.h -diff --git a/AmberTools/src/cpptraj/src/cpptrajfiles b/AmberTools/src/cpptraj/src/cpptrajfiles -index f7ecc50..9c05282 100644 ---- a/AmberTools/src/cpptraj/src/cpptrajfiles -+++ b/AmberTools/src/cpptraj/src/cpptrajfiles -@@ -10,7 +10,7 @@ SOURCE=main.cpp AmberParm.cpp \ - Action_DSSP.cpp DataSet_string.cpp Action_Center.cpp FileIO_Bzip2.cpp \ - Action_Hbond.cpp DataSet_integer.cpp Action_Image.cpp Action_Surf.cpp \ - Action_Radgyr.cpp Action_Mask.cpp Action_Closest.cpp \ -- NetcdfRoutines.cpp CpptrajStdio.cpp \ -+ NetcdfRoutines.cpp CpptrajStdio.cpp Action_AutoImage.cpp \ - Mol2FileRoutines.cpp Action_NAstruct.cpp DistRoutines.cpp AxisType.cpp \ - TorsionRoutines.cpp Action_Pucker.cpp Range.cpp Action_Outtraj.cpp \ - Action_Rms2d.cpp ProgressBar.cpp TrajectoryIO.cpp \ -@@ -42,7 +42,7 @@ OBJECTS=main.o AmberParm.o \ - Action_DSSP.o DataSet_string.o Action_Center.o FileIO_Bzip2.o \ - Action_Hbond.o DataSet_integer.o Action_Image.o Action_Surf.o \ - Action_Radgyr.o Action_Mask.o Action_Closest.o \ -- NetcdfRoutines.o CpptrajStdio.o \ -+ NetcdfRoutines.o CpptrajStdio.o Action_AutoImage.o \ - Mol2FileRoutines.o Action_NAstruct.o DistRoutines.o AxisType.o \ - TorsionRoutines.o Action_Pucker.o Range.o Action_Outtraj.o \ - Action_Rms2d.o ProgressBar.o TrajectoryIO.o \ -@@ -74,7 +74,7 @@ HEADERS=AmberParm.h \ - Action_DSSP.h DataSet_string.h Action_Center.h FileIO_Bzip2.h \ - Action_Hbond.h DataSet_integer.h Action_Image.h Action_Surf.h \ - Action_Radgyr.h Action_Mask.h Action_Closest.h \ -- NetcdfRoutines.h CpptrajStdio.h \ -+ NetcdfRoutines.h CpptrajStdio.h Action_AutoImage.h \ - Mol2FileRoutines.h Action_NAstruct.h DistRoutines.h AxisType.h \ - TorsionRoutines.h Action_Pucker.h Range.h Action_Outtraj.h \ - Action_Rms2d.h ProgressBar.h TrajectoryIO.h \ -diff --git a/AmberTools/src/cpptraj/src/main.cpp b/AmberTools/src/cpptraj/src/main.cpp -index 23f290e..4fc0434 100644 ---- a/AmberTools/src/cpptraj/src/main.cpp -+++ b/AmberTools/src/cpptraj/src/main.cpp -@@ -9,7 +9,7 @@ - #include <cstdio> - #include <cstdlib> // atoi - #ifndef CPPTRAJ_VERSION_STRING --#define CPPTRAJ_VERSION_STRING "V12.1" -+#define CPPTRAJ_VERSION_STRING "V12.4" - #define CPPTRAJ_INTERNAL_VERSION "V2.4.7b" - #endif - -diff --git a/AmberTools/src/mmpbsa_py/MMPBSA_mods/amber_outputs.py b/AmberTools/src/mmpbsa_py/MMPBSA_mods/amber_outputs.py -index b01b891..0349ba9 100644 ---- a/AmberTools/src/mmpbsa_py/MMPBSA_mods/amber_outputs.py -+++ b/AmberTools/src/mmpbsa_py/MMPBSA_mods/amber_outputs.py -@@ -1152,7 +1152,7 @@ class BindingStatistics(object): - classes and returns the average and standard deviation of that diff. - """ - if len(self.data[key1]) != len(other.data[key2]): -- return (self.data[key1].avg() - self.data[key2].avg(), -+ return (self.data[key1].avg() - other.data[key2].avg(), - sqrt(self.data[key1].stdev()**2 + other.data[key2].stdev()**2)) - - mydiff = self.data[key1] - other.data[key2] -diff --git a/AmberTools/src/mmpbsa_py/MMPBSA_mods/calculation.py b/AmberTools/src/mmpbsa_py/MMPBSA_mods/calculation.py -index dd010e7..6a2cd98 100644 ---- a/AmberTools/src/mmpbsa_py/MMPBSA_mods/calculation.py -+++ b/AmberTools/src/mmpbsa_py/MMPBSA_mods/calculation.py -@@ -104,7 +104,8 @@ def run_calculations(FILES, INPUT, rank, MMPBSA_Timer, extern_progs, prefix, - - if not stability: - # Don't re-run the receptor if we don't have to -- if mutant and FILES.receptor_prmtop == FILES.mutant_receptor_prmtop: -+ if mutant and FILES.receptor_prmtop == FILES.mutant_receptor_prmtop \ -+ and not INPUT['mutant_only']: - print ' no mutation found in receptor -- using unmutated files' - shutil.copy('%sreceptor_gb.mdout.%d' % ( - prefix[:prefix.index('mutant')], rank), -@@ -127,7 +128,8 @@ def run_calculations(FILES, INPUT, rank, MMPBSA_Timer, extern_progs, prefix, - calc.Setup() - calc.Run() - -- if mutant and FILES.ligand_prmtop == FILES.mutant_ligand_prmtop: -+ if mutant and FILES.ligand_prmtop == FILES.mutant_ligand_prmtop \ -+ and not INPUT['mutant_only']: - print ' no mutation found in ligand -- using unmutated files' - shutil.copy('%sligand_gb.mdout.%d' % ( - prefix[:prefix.index('mutant')], rank), -@@ -166,15 +168,16 @@ def run_calculations(FILES, INPUT, rank, MMPBSA_Timer, extern_progs, prefix, - - print ' calculating complex contribution...' - -- calc = EnergyCalculation(progs['pb'], parmsystem.complex_prmtop, -+ calc = PBEnergyCalculation(progs['pb'], parmsystem.complex_prmtop, - incrd, '%scomplex.%s.%d' % (prefix, trj_sfx, rank), mdin, - '%scomplex_pb.mdout.%d' % (prefix, rank), - '_MMPBSA_restrt.%d' % rank) - calc.Setup() -- calc.Run(stdout=os.devnull) -+ calc.Run() - - if not stability: -- if mutant and FILES.receptor_prmtop == FILES.mutant_receptor_prmtop: -+ if mutant and FILES.receptor_prmtop == FILES.mutant_receptor_prmtop \ -+ and not INPUT['mutant_only']: - print ' no mutation found in receptor -- using unmutated files' - shutil.copy('%sreceptor_pb.mdout.%d' % ( - prefix[:prefix.index('mutant')], rank), -@@ -188,14 +191,15 @@ def run_calculations(FILES, INPUT, rank, MMPBSA_Timer, extern_progs, prefix, - if 'mmpbsa_py_energy' in progs['pb']: incrd = '%sreceptor.pdb' % prefix - else: incrd = '%sdummyreceptor.inpcrd' % prefix - -- calc = EnergyCalculation(progs['pb'], parmsystem.receptor_prmtop, -+ calc = PBEnergyCalculation(progs['pb'], parmsystem.receptor_prmtop, - incrd, '%sreceptor.%s.%d' % (prefix, trj_sfx, rank), mdin, - '%sreceptor_pb.mdout.%d' % (prefix, rank), - '_MMPBSA_restrt.%d' % rank) - calc.Setup() -- calc.Run(stdout=os.devnull) -+ calc.Run() - -- if mutant and FILES.ligand_prmtop == FILES.mutant_ligand_prmtop: -+ if mutant and FILES.ligand_prmtop == FILES.mutant_ligand_prmtop \ -+ and not INPUT['mutant_only']: - print ' no mutation found in ligand -- using unmutated files' - shutil.copy('%sligand_pb.mdout.%d' % ( - prefix[:prefix.index('mutant')], rank), -@@ -207,12 +211,12 @@ def run_calculations(FILES, INPUT, rank, MMPBSA_Timer, extern_progs, prefix, - if 'mmpbsa_py_energy' in progs['pb']: incrd = '%sligand.pdb' % prefix - else: incrd = '%sdummyligand.inpcrd' % prefix - -- calc = EnergyCalculation(progs['pb'], parmsystem.ligand_prmtop, -+ calc = PBEnergyCalculation(progs['pb'], parmsystem.ligand_prmtop, - incrd, '%sligand.%s.%d' % (prefix, trj_sfx, rank), mdin, - '%sligand_pb.mdout.%d' % (prefix, rank), - '_MMPBSA_restrt.%d' % rank) - calc.Setup() -- calc.Run(stdout=os.devnull) -+ calc.Run() - - MMPBSA_Timer.StopTimer('pb') - -@@ -232,7 +236,8 @@ def run_calculations(FILES, INPUT, rank, MMPBSA_Timer, extern_progs, prefix, - calc.Run() - - if not stability: -- if mutant and FILES.receptor_prmtop == FILES.mutant_receptor_prmtop: -+ if mutant and FILES.receptor_prmtop == FILES.mutant_receptor_prmtop \ -+ and not INPUT['mutant_only']: - print ' no mutation found in receptor -- using unmutated files' - shutil.copy('%sreceptor_rism.mdout.%d' % ( - prefix[:prefix.index('mutant')], rank), -@@ -246,7 +251,8 @@ def run_calculations(FILES, INPUT, rank, MMPBSA_Timer, extern_progs, prefix, - calc.Setup() - calc.Run() - -- if mutant and FILES.ligand_prmtop == FILES.mutant_ligand_prmtop: -+ if mutant and FILES.ligand_prmtop == FILES.mutant_ligand_prmtop \ -+ and not INPUT['mutant_only']: - print ' no mutation found in ligand -- using unmutated files' - shutil.copy('%sligand_rism.mdout.%d' % ( - prefix[:prefix.index('mutant')], rank), -@@ -278,7 +284,8 @@ def run_calculations(FILES, INPUT, rank, MMPBSA_Timer, extern_progs, prefix, - calc.Run() - - if not stability: -- if mutant and FILES.receptor_prmtop == FILES.mutant_receptor_prmtop: -+ if mutant and FILES.receptor_prmtop == FILES.mutant_receptor_prmtop \ -+ and not INPUT['mutant_only']: - print ' no mutation found in receptor -- using unmutated files' - shutil.copy('%sreceptor_nm.out.%d' % ( - prefix[:prefix.index('mutant')], rank), -@@ -291,7 +298,8 @@ def run_calculations(FILES, INPUT, rank, MMPBSA_Timer, extern_progs, prefix, - calc.Setup() - calc.Run() - -- if mutant and FILES.ligand_prmtop == FILES.mutant_ligand_prmtop: -+ if mutant and FILES.ligand_prmtop == FILES.mutant_ligand_prmtop \ -+ and not INPUT['mutant_only']: - print ' no mutation found in ligand -- using unmutated files' - shutil.copy('%sligand_nm.out.%d' % ( - prefix[:prefix.index('mutant')], rank), -@@ -605,3 +613,55 @@ class QuasiHarmCalc(Calculation): - Calculation.Run(self, stdout=self.output) - - #+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ -+ -+class PBEnergyCalculation(EnergyCalculation): -+ """ -+ Specially handle the PB calculations to extract warnings and errors PBSA -+ prints to stdout and redirect them to the user -+ """ -+ def Run(self, stderr=sys.stderr): -+ """ Runs the program. All command-line arguments must be set before -+ calling this method. Command-line arguments should be set in Setup() -+ """ -+ import re -+ from subprocess import Popen, PIPE -+ -+ # If this has not been set up yet -+ # then raise a stink -+ if not self.calc_setup: -+ raise CalcError('Cannot run a calculation without calling its' + -+ ' its Setup() function!') -+ -+ errorre = re.compile('(pb (?:bomb)|(?:warning))', re.I) -+ # Here, make sure that we could pass a file *OR* a string as stderr. -+ if type(stderr).__name__ == 'str': -+ stderr_is_string = True -+ process_stderr = open(stderr, 'w', 0) -+ else: -+ stderr_is_string = False -+ process_stderr = stderr -+ -+ # The Setup() method sets the command-line arguments and makes sure that -+ # all of the CL arguments are set. Now all we have to do is start the -+ # process and monitor it for success. -+ -+ # Popen can only take strings as command-line arguments, so convert -+ # everything to a string here -+ for i in range(len(self.command_args)): -+ self.command_args[i] = str(self.command_args[i]) -+ -+ process = Popen(self.command_args, stdin=None, stdout=PIPE, -+ stderr=process_stderr) -+ -+ out, err = process.communicate('') -+ calc_failed = bool(process.wait()) -+ -+ if stderr_is_string: process_stderr.close() -+ -+ if calc_failed: -+ error_list = [s.strip() for s in out.split('\n') -+ if errorre.match(s.strip())] -+ raise CalcError('%s failed with prmtop %s!\n\t' % (self.program, -+ self.prmtop) + '\n\t'.join(error_list) + '\n') -+ -+#+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ -diff --git a/AmberTools/src/parmed/ParmedTools/ParmedActions.py b/AmberTools/src/parmed/ParmedTools/ParmedActions.py -index 4dd905f..4ea4a52 100644 ---- a/AmberTools/src/parmed/ParmedTools/ParmedActions.py -+++ b/AmberTools/src/parmed/ParmedTools/ParmedActions.py -@@ -604,16 +604,15 @@ class changeljsingletype(Action): - from math import sqrt - from ParmedTools.exceptions import LJ_TypeError - # If this is an empty mask do nothing -- if not self.orig_radius: return -+ if self.orig_radius is None: return - # Make sure we've only selected a single atom type with our mask - attype = None -- iter = 0 -- for sel in self.mask.Selection(): -+ for i, sel in enumerate(self.mask.Selection()): - if sel == 1: -- if not attype: -- attype = self.parm.parm_data['ATOM_TYPE_INDEX'][iter] -+ if attype is None: -+ attype = self.parm.parm_data['ATOM_TYPE_INDEX'][i] - else: -- if attype != self.parm.parm_data['ATOM_TYPE_INDEX'][iter]: -+ if attype != self.parm.parm_data['ATOM_TYPE_INDEX'][i]: - raise LJ_TypeError('changeLJSingleType: ' + - 'Selection mask has multiple atom types!') - # Fill the Lennard-Jones radius and depth arrays to make sure they're -@@ -631,10 +630,6 @@ class changeljsingletype(Action): - bcoef = 2 * wij * rij ** 6 - self.parm.parm_data['LENNARD_JONES_ACOEF'][lj_index] = acoef - self.parm.parm_data['LENNARD_JONES_BCOEF'][lj_index] = bcoef -- lj_index = self.parm.parm_data['NONBONDED_PARM_INDEX'][ -- self.parm.ptr('ntypes') * (attype-1) + i] - 1 -- self.parm.parm_data['LENNARD_JONES_ACOEF'][lj_index] = acoef -- self.parm.parm_data['LENNARD_JONES_BCOEF'][lj_index] = bcoef - - #+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ - -diff --git a/AmberTools/src/pbsa/gen_dx_file.F90 b/AmberTools/src/pbsa/gen_dx_file.F90 -index 475b6ef..d50e453 100644 ---- a/AmberTools/src/pbsa/gen_dx_file.F90 -+++ b/AmberTools/src/pbsa/gen_dx_file.F90 -@@ -37,6 +37,7 @@ subroutine gen_dx_file(xm,ym,zm,h,gox,goy,goz,voldata,filename,fn,dataname) - end if - end do - end do; end do -+ if (.not.(MOD(cnt,3).eq. 0) ) write(fn,*) '' - write(fn,*) 'attribute "dep" string "positions"' - write(fn,*) 'object "',dataname,'" class field' - write(fn,*) 'component "positions" value 1' -diff --git a/AmberTools/src/pbsa/pb_force.F90 b/AmberTools/src/pbsa/pb_force.F90 -index 37337bd..52f1edf 100644 ---- a/AmberTools/src/pbsa/pb_force.F90 -+++ b/AmberTools/src/pbsa/pb_force.F90 -@@ -1399,7 +1399,7 @@ subroutine pb_fdfrc( pbverbose,pbprint,pbgrid,ifcap,ipb,imin,natom,atmlast,npdec - close(64) - elseif ( phiform == 2 ) then - !write dx format phi -- call gen_dx_file(xm,ym,zm,h,gox,goy,goz,phi(1:xmymzm),& -+ call gen_dx_file(xm,ym,zm,h,gox,goy,goz,frcfac*phi(1:xmymzm),& - phifilename,phifilenum,phidataname) - ! write(6,*) 'writing potential map in dx format' - ! open(67,file='pbsa_phi.dx') -diff --git a/AmberTools/src/sqm/constants.F90 b/AmberTools/src/sqm/constants.F90 -index 590cc71..c19fd06 100644 ---- a/AmberTools/src/sqm/constants.F90 -+++ b/AmberTools/src/sqm/constants.F90 -@@ -84,18 +84,23 @@ module constants - !------------------------------------------------------------ - ! THE ARRAY FC(I) CONTAINS THE FACTORIALS OF (I-1). - -- _REAL_, parameter :: FC(1:17) =& -- (/ 1.0D0,1.0D0, 2.0D0, 6.0D0, 24.0D0, 120.0D0, 720.0D0, 5040.0D0, & -- 40320.0D0, 362880.0D0, 3628800.0D0, 39916800.0D0, & -- 4.790016D+08, 6.2270208D+09, 8.71782912D+10, & -- 1.307674368D+12, 2.092278989D+13 /) -+ _REAL_, parameter :: FC(1:25) =& -+ (/ 1.0D0,1.0D0, 2.0D0, 6.0D0, 24.0D0, & -+ 120.0D0, 720.0D0, 5040.0D0, 40320.0D0, 362880.0D0, & -+ 3628800.0D0, 39916800.0D0, 4.790016D+08, 6.2270208D+09, 8.71782912D+10, & -+ 1.307674368D+12, 2.092278989D+13, 3.55687428096D+14, 6.402373705728D+15, 1.21645100408832D+17, & -+ 2.43290200817664D+18, 5.109094217170944D+19, 1.12400072777760768D+21, 2.585201673888497664D+22, & -+ 6.2044840173323943936D+23 /) - -- _REAL_, parameter :: logFC(1:17) = (/ 0.0D0, 0.0D0, 0.6931471805599D0, & -+ _REAL_, parameter :: logFC(1:25) = (/ 0.0D0, 0.0D0, 0.6931471805599D0, & - & 1.7917594692281D0, 3.1780538303479D0, 4.7874917427820D0, & - & 6.5792512120101D0, 8.5251613610654D0, 10.6046029027453D0, & - & 12.8018274800815D0, 15.1044125730755D0, 17.5023078458739D0, & - & 19.9872144956619D0, 22.5521638531234D0, 25.1912211827387D0, & -- & 27.8992713838409D0, 30.6718601061763D0 /) -+ & 27.8992713838409D0, 30.6718601061763D0, 33.5050734501369D0, & -+ 36.3954452080331D0, 39.3398841871995D0, 42.3356164607535D0, & -+ 45.3801388984769D0, 48.4711813518352D0, 51.6066755677644D0, & -+ 54.7847293981123D0 /) - - ! DEFINE C COEFFICIENTS FOR ASSOCIATE LEGENDRE POLYNOMIALS. - _REAL_, parameter::CC(1:21,1:3) = reshape ( (/ & -diff --git a/AmberTools/src/sqm/depend b/AmberTools/src/sqm/depend -index 357ef59..0d3db38 100644 ---- a/AmberTools/src/sqm/depend -+++ b/AmberTools/src/sqm/depend -@@ -599,7 +599,8 @@ qm2_h1elec_d.o: \ - rotation.o\ - elementOrbitalIndex.o\ - slater_overlap.o\ -- qmmm_module.o -+ qmmm_module.o\ -+ utilitiesModule.o - - - qm2_h1elec_d.o: qm2_h1elec_d.F90 -@@ -668,7 +669,8 @@ qm2_parameters.o: \ - elementOrbitalIndex.o\ - qmmm_qmtheorymodule.o\ - parameterReader.o\ -- qmmm_module.o -+ qmmm_module.o\ -+ utilitiesModule.o - - - qm2_parameters.o: qm2_parameters.F90 -@@ -679,7 +681,8 @@ qm2_params_module.o: \ - ../include/assert.fh\ - ../include/dprec.fh\ - elementOrbitalIndex.o\ -- qmmm_qmtheorymodule.o -+ qmmm_qmtheorymodule.o\ -+ constants.o - - - qm2_params_module.o: qm2_params_module.F90 -diff --git a/AmberTools/src/sqm/qm2_parameters.F90 b/AmberTools/src/sqm/qm2_parameters.F90 -index 9985f1f..e762063 100644 ---- a/AmberTools/src/sqm/qm2_parameters.F90 -+++ b/AmberTools/src/sqm/qm2_parameters.F90 -@@ -263,6 +263,8 @@ if (currentTheory%MNDOD) then - core_chg( 15) = 5; natomic_orbs( 15) = 9; heat_of_form( 15) = 75.570D0 !P - core_chg( 16) = 6; natomic_orbs( 16) = 9; heat_of_form( 16) = 66.400D0 !S - core_chg( 17) = 7; natomic_orbs( 17) = 9; heat_of_form( 17) = 28.990D0 !Cl -+ core_chg( 35) = 7; natomic_orbs( 35) = 9; heat_of_form( 35) = 26.740D0 !Br -+ core_chg( 53) = 7; natomic_orbs( 53) = 9; heat_of_form( 53) = 25.517D0 !I - end if - - if (currentTheory%AM1D) then -diff --git a/AmberTools/test/mmpbsa_py/04_Per_Residue_Decomp/FINAL_RESULTS_MMPBSA.dat.save b/AmberTools/test/mmpbsa_py/04_Per_Residue_Decomp/FINAL_RESULTS_MMPBSA.dat.save -index 0390673..f9c1daf 100644 ---- a/AmberTools/test/mmpbsa_py/04_Per_Residue_Decomp/FINAL_RESULTS_MMPBSA.dat.save -+++ b/AmberTools/test/mmpbsa_py/04_Per_Residue_Decomp/FINAL_RESULTS_MMPBSA.dat.save -@@ -1,11 +1,11 @@ --| Run on Fri Oct 21 16:59:53 2011 -+| Run on Thu Aug 23 19:08:46 2012 - | - |Input file: - |-------------------------------------------------------------- - |MMPBSA input file for running per-residue decomp - |&general - | startframe=1, endframe=2, interval=1, --| keep_files=2, debug_printlevel=2 -+| keep_files=1, debug_printlevel=2 - |/ - |&gb - | igb=5, saltcon=0.1 -@@ -14,7 +14,7 @@ - | idecomp=1, print_res='1-10; 200-241', csv_format=0, - |/ - |-------------------------------------------------------------- --|MMPBSA.py Version=3.0 -+|MMPBSA.py Version=12.0 - |Solvated complex topology file: ../EstRAL_Files/sol.top - |Complex topology file: ../EstRAL_Files/com.top - |Receptor topology file: ../EstRAL_Files/rec.top -@@ -38,13 +38,13 @@ Energy Component Average Std. Dev. Std. Err. of Mean - ------------------------------------------------------------------------------- - VDWAALS -2027.4585 6.6828 4.7254 - EEL -17102.0128 39.7611 28.1154 --EGB -3036.0661 15.1517 10.7138 --ESURF 92.0643 0.2456 0.1737 -+EGB -3036.2753 15.1544 10.7158 -+ESURF 92.0404 0.2552 0.1805 - - G gas -19129.4713 46.4439 32.8408 --G solv -2944.0018 15.3973 10.8875 -+G solv -2944.2348 15.4096 10.8963 - --TOTAL -22073.4731 31.0467 21.9533 -+TOTAL -22073.7061 31.0343 21.9445 - - - Receptor: -@@ -52,13 +52,13 @@ Energy Component Average Std. Dev. Std. Err. of Mean - ------------------------------------------------------------------------------- - VDWAALS -1963.0469 6.3796 4.5110 - EEL -17062.3941 41.4017 29.2755 --EGB -3045.5263 17.9328 12.6804 --ESURF 94.5901 0.3006 0.2125 -+EGB -3045.7452 17.9344 12.6815 -+ESURF 94.5395 0.3071 0.2171 - - G gas -19025.4410 47.7813 33.7865 --G solv -2950.9362 18.2334 12.8929 -+G solv -2951.2056 18.2415 12.8987 - --TOTAL -21976.3773 29.5480 20.8936 -+TOTAL -21976.6467 29.5398 20.8878 - - - Ligand: -@@ -66,13 +66,13 @@ Energy Component Average Std. Dev. Std. Err. of Mean - ------------------------------------------------------------------------------- - VDWAALS -2.1842 0.9276 0.6559 - EEL -5.8905 0.2643 0.1869 --EGB -28.9823 0.3972 0.2809 --ESURF 5.5752 0.0080 0.0057 -+EGB -28.9847 0.3972 0.2809 -+ESURF 5.5941 0.0255 0.0181 - - G gas -8.0747 1.1919 0.8428 --G solv -23.4071 0.4052 0.2865 -+G solv -23.3905 0.4228 0.2989 - --TOTAL -31.4819 1.5971 1.1293 -+TOTAL -31.4653 1.6146 1.1417 - - - Differences (Complex - Receptor - Ligand): -@@ -80,13 +80,13 @@ Energy Component Average Std. Dev. Std. Err. of Mean - ------------------------------------------------------------------------------- - VDWAALS -62.2274 1.2308 0.8703 - EEL -33.7281 1.3763 0.9732 --EGB 38.4425 3.1784 2.2474 --ESURF -8.1010 0.0630 0.0445 -+EGB 38.4546 3.1772 2.2466 -+ESURF -8.0932 0.0774 0.0547 - - DELTA G gas -95.9555 0.1455 0.1029 --DELTA G solv 30.3415 3.2413 2.2919 -+DELTA G solv 30.3614 3.2545 2.3013 - --DELTA TOTAL -65.6140 3.0958 2.1890 -+DELTA TOTAL -65.5942 3.1090 2.1984 - - - ------------------------------------------------------------------------------- -diff --git a/AmberTools/test/mmpbsa_py/05_Pairwise_Decomp/FINAL_RESULTS_MMPBSA.dat.save b/AmberTools/test/mmpbsa_py/05_Pairwise_Decomp/FINAL_RESULTS_MMPBSA.dat.save -index f7cbe88..2135ffe 100644 ---- a/AmberTools/test/mmpbsa_py/05_Pairwise_Decomp/FINAL_RESULTS_MMPBSA.dat.save -+++ b/AmberTools/test/mmpbsa_py/05_Pairwise_Decomp/FINAL_RESULTS_MMPBSA.dat.save -@@ -1,11 +1,11 @@ --| Run on Fri Oct 21 17:35:19 2011 -+| Run on Thu Aug 23 19:09:35 2012 - | - |Input file: - |-------------------------------------------------------------- - |MMPBSA input file for running per-residue decomp - |&general - | startframe=1, endframe=2, interval=1, --| keep_files=2, debug_printlevel=2, -+| keep_files=0, debug_printlevel=2, - |/ - |&gb - | igb=5, saltcon=0.1 -@@ -15,7 +15,7 @@ - | csv_format=0, - |/ - |-------------------------------------------------------------- --|MMPBSA.py Version=3.0 -+|MMPBSA.py Version=12.0 - |Solvated complex topology file: ../EstRAL_Files/sol.top - |Complex topology file: ../EstRAL_Files/com.top - |Receptor topology file: ../EstRAL_Files/rec.top -@@ -39,13 +39,13 @@ Energy Component Average Std. Dev. Std. Err. of Mean - ------------------------------------------------------------------------------- - VDWAALS -2027.4585 6.6828 4.7254 - EEL -17102.0128 39.7611 28.1154 --EGB -3036.0661 15.1517 10.7138 --ESURF 92.0643 0.2456 0.1737 -+EGB -3036.2753 15.1544 10.7158 -+ESURF 92.0404 0.2552 0.1805 - - G gas -19129.4713 46.4439 32.8408 --G solv -2944.0018 15.3973 10.8875 -+G solv -2944.2348 15.4096 10.8963 - --TOTAL -22073.4731 31.0467 21.9533 -+TOTAL -22073.7061 31.0343 21.9445 - - - Receptor: -@@ -53,13 +53,13 @@ Energy Component Average Std. Dev. Std. Err. of Mean - ------------------------------------------------------------------------------- - VDWAALS -1963.0469 6.3796 4.5110 - EEL -17062.3941 41.4017 29.2755 --EGB -3045.5263 17.9328 12.6804 --ESURF 94.5901 0.3006 0.2125 -+EGB -3045.7452 17.9344 12.6815 -+ESURF 94.5395 0.3071 0.2171 - - G gas -19025.4410 47.7813 33.7865 --G solv -2950.9362 18.2334 12.8929 -+G solv -2951.2056 18.2415 12.8987 - --TOTAL -21976.3773 29.5480 20.8936 -+TOTAL -21976.6467 29.5398 20.8878 - - - Ligand: -@@ -67,13 +67,13 @@ Energy Component Average Std. Dev. Std. Err. of Mean - ------------------------------------------------------------------------------- - VDWAALS -2.1842 0.9276 0.6559 - EEL -5.8905 0.2643 0.1869 --EGB -28.9823 0.3972 0.2809 --ESURF 5.5752 0.0080 0.0057 -+EGB -28.9847 0.3972 0.2809 -+ESURF 5.5941 0.0255 0.0181 - - G gas -8.0747 1.1919 0.8428 --G solv -23.4071 0.4052 0.2865 -+G solv -23.3905 0.4228 0.2989 - --TOTAL -31.4819 1.5971 1.1293 -+TOTAL -31.4653 1.6146 1.1417 - - - Differences (Complex - Receptor - Ligand): -@@ -81,13 +81,13 @@ Energy Component Average Std. Dev. Std. Err. of Mean - ------------------------------------------------------------------------------- - VDWAALS -62.2274 1.2308 0.8703 - EEL -33.7281 1.3763 0.9732 --EGB 38.4425 3.1784 2.2474 --ESURF -8.1010 0.0630 0.0445 -+EGB 38.4546 3.1772 2.2466 -+ESURF -8.0932 0.0774 0.0547 - - DELTA G gas -95.9555 0.1455 0.1029 --DELTA G solv 30.3415 3.2413 2.2919 -+DELTA G solv 30.3614 3.2545 2.3013 - --DELTA TOTAL -65.6140 3.0958 2.1890 -+DELTA TOTAL -65.5942 3.1090 2.1984 - - - ------------------------------------------------------------------------------- -diff --git a/AmberTools/test/mmpbsa_py/10_QM_MMGBSA/FINAL_RESULTS_MMPBSA.dat.save b/AmberTools/test/mmpbsa_py/10_QM_MMGBSA/FINAL_RESULTS_MMPBSA.dat.save -index 1c6672d..4dc52b5 100644 ---- a/AmberTools/test/mmpbsa_py/10_QM_MMGBSA/FINAL_RESULTS_MMPBSA.dat.save -+++ b/AmberTools/test/mmpbsa_py/10_QM_MMGBSA/FINAL_RESULTS_MMPBSA.dat.save -@@ -1,4 +1,4 @@ --| Run on Sun Feb 19 11:48:15 2012 -+| Run on Thu Aug 23 19:12:17 2012 - | - |Input file: - |-------------------------------------------------------------- -@@ -13,7 +13,7 @@ - | qm_theory='PM3', - |/ - |-------------------------------------------------------------- --|MMPBSA.py Version=3.1 -+|MMPBSA.py Version=12.0 - |Solvated complex topology file: ../EstRAL_Files/sol.top - |Complex topology file: ../EstRAL_Files/com.top - |Receptor topology file: ../EstRAL_Files/rec.top -@@ -38,14 +38,14 @@ Energy Component Average Std. Dev. Std. Err. of Mean - ------------------------------------------------------------------------------- - VDWAALS -2025.2744 7.6103 5.3813 - EEL -17062.4395 41.4020 29.2756 --EGB -3038.1307 14.7141 10.4045 -+EGB -3038.3396 14.7163 10.4060 - ESURF 96.5366 0.2385 0.1686 --ESCF -21.6928 3.7699 2.6658 -+ESCF -21.6939 3.7699 2.6657 - - G gas -19087.7139 49.0123 34.6570 --G solv -2941.5940 14.4757 10.2358 -+G solv -2941.8030 14.4778 10.2374 - --TOTAL -22051.0007 30.7667 21.7554 -+TOTAL -22051.2107 30.7647 21.7539 - - - Receptor: -@@ -53,26 +53,26 @@ Energy Component Average Std. Dev. Std. Err. of Mean - ------------------------------------------------------------------------------- - VDWAALS -1963.0469 6.3796 4.5110 - EEL -17062.3941 41.4017 29.2755 --EGB -3045.5263 17.9328 12.6804 -+EGB -3045.7452 17.9344 12.6815 - ESURF 100.5546 0.3074 0.2173 - - G gas -19025.4410 47.7813 33.7865 --G solv -2944.9718 17.6255 12.4631 -+G solv -2945.1907 17.6270 12.4642 - --TOTAL -21970.4127 30.1558 21.3234 -+TOTAL -21970.6316 30.1543 21.3223 - - - Ligand: - Energy Component Average Std. Dev. Std. Err. of Mean - ------------------------------------------------------------------------------- --EGB -24.0340 0.8659 0.6123 -+EGB -24.0371 0.8661 0.6124 - ESURF 4.4275 0.0229 0.0162 --ESCF 6.8997 1.2609 0.8916 -+ESCF 6.9011 1.2609 0.8916 - - G gas 0.0000 0.0000 0.0000 --G solv -19.6065 0.8889 0.6285 -+G solv -19.6096 0.8891 0.6287 - --TOTAL -12.7069 2.1498 1.5201 -+TOTAL -12.7085 2.1499 1.5202 - - - Differences (Complex - Receptor - Ligand): -@@ -80,14 +80,14 @@ Energy Component Average Std. Dev. Std. Err. of Mean - ------------------------------------------------------------------------------- - VDWAALS -62.2274 1.2308 0.8703 - EEL -0.0454 0.0003 0.0002 --EGB 31.4297 4.0846 2.8882 -+EGB 31.4427 4.0842 2.8880 - ESURF -8.4454 0.0459 0.0325 --ESCF -28.5925 2.5090 1.7741 -+ESCF -28.5950 2.5090 1.7741 - - DELTA G gas -62.2728 1.2310 0.8705 --DELTA G solv 22.9843 4.0386 2.8558 -+DELTA G solv 22.9973 4.0383 2.8555 - --DELTA TOTAL -67.8811 2.7607 1.9521 -+DELTA TOTAL -67.8705 2.7603 1.9519 - - - ------------------------------------------------------------------------------- -diff --git a/AmberTools/test/parmed/normal_prmtop/final.prmtop.save b/AmberTools/test/parmed/normal_prmtop/final.prmtop.save -index a7e4428..3ce70b7 100644 ---- a/AmberTools/test/parmed/normal_prmtop/final.prmtop.save -+++ b/AmberTools/test/parmed/normal_prmtop/final.prmtop.save -@@ -1,4 +1,4 @@ --%VERSION VERSION_STAMP = V0001.000 DATE = 02/28/12 13:10:17 -+%VERSION VERSION_STAMP = V0001.000 DATE = 07/08/12 15:11:06 - %FLAG TITLE - %FORMAT(20a4) - -@@ -1245,63 +1245,63 @@ GLU PHE LEU ASP ALA ASN LEU ALA - 0.00000000E+00 0.00000000E+00 - %FLAG LENNARD_JONES_ACOEF - %FORMAT(5E16.8) -- 9.44293233E+05 2.12601181E+03 1.39982777E-01 9.95480466E+05 2.56678134E+03 -- 1.04308023E+06 2.01791425E+04 9.14716912E+00 2.27401052E+04 2.01823541E+02 -- 6.20665997E+04 5.94667300E+01 6.78771368E+04 8.79040886E+02 3.25969625E+03 -- 7.44975864E+05 1.40467023E+03 7.91544157E+05 1.45985502E+04 4.66922514E+04 -+ 9.44293233E+05 2.12601181E+03 1.39982777E-01 9.96389997E+05 2.56912650E+03 -+ 1.04498714E+06 2.01791425E+04 9.14716912E+00 2.27608820E+04 2.01823541E+02 -+ 6.20665997E+04 5.94667300E+01 6.79391534E+04 8.79040886E+02 3.25969625E+03 -+ 7.44975864E+05 1.40467023E+03 7.92267358E+05 1.45985502E+04 4.66922514E+04 - 5.81803229E+05 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 - 0.00000000E+00 0.00000000E+00 0.00000000E+00 8.82619071E+05 2.27577561E+03 -- 9.24822270E+05 2.01619733E+04 6.01816484E+04 7.01803794E+05 0.00000000E+00 -- 8.19971662E+05 6.06829342E+05 1.02595236E+03 6.47841731E+05 1.12780457E+04 -+ 9.25667242E+05 2.01619733E+04 6.01816484E+04 7.01803794E+05 0.00000000E+00 -+ 8.19971662E+05 6.06829342E+05 1.02595236E+03 6.48433639E+05 1.12780457E+04 - 3.69471530E+04 4.71003287E+05 0.00000000E+00 5.74393458E+05 3.79876399E+05 -- 8.96776989E+04 1.07193646E+02 9.71708117E+04 1.41077189E+03 4.98586848E+03 -+ 8.96776989E+04 1.07193646E+02 9.72595927E+04 1.41077189E+03 4.98586848E+03 - 6.82786631E+04 0.00000000E+00 8.61541883E+04 5.44261042E+04 7.51607703E+03 -- 5.46147253E+04 4.90239937E+01 5.98885646E+04 7.50063100E+02 2.82099197E+03 -+ 5.46147253E+04 4.90239937E+01 5.99432824E+04 7.50063100E+02 2.82099197E+03 - 4.09427581E+04 0.00000000E+00 5.30987710E+04 3.23283631E+04 4.33325458E+03 -- 2.43828624E+03 6.58473870E+04 6.63368273E+01 7.18621074E+04 9.55000044E+02 -+ 2.43828624E+03 6.58473870E+04 6.63368273E+01 7.19277648E+04 9.55000044E+02 - 3.50301067E+03 4.96707306E+04 0.00000000E+00 6.37148278E+04 3.93690817E+04 - 5.34045360E+03 3.03448006E+03 3.76169105E+03 7.91627154E+04 8.90987508E+01 -- 8.59947003E+04 1.21014911E+03 4.33325458E+03 6.00750218E+04 0.00000000E+00 -+ 8.60732702E+04 1.21014911E+03 4.33325458E+03 6.00750218E+04 0.00000000E+00 - 7.62451550E+04 4.77908183E+04 6.55825601E+03 3.76169105E+03 4.64559155E+03 -- 5.71629601E+03 2.01562190E+06 5.97860700E+03 2.09861767E+06 4.93469320E+04 -+ 5.71629601E+03 2.01562190E+06 5.97860700E+03 2.10053510E+06 4.93469320E+04 - 1.42791446E+05 1.61587928E+06 0.00000000E+00 1.86068943E+06 1.32911052E+06 - 2.02461849E+05 1.26338489E+05 1.50848032E+05 1.79647996E+05 4.19430400E+06 -- 9.96389997E+05 2.56912650E+03 1.04403325E+06 2.27608820E+04 6.79391534E+04 -- 7.92267358E+05 0.00000000E+00 9.25667242E+05 6.48433639E+05 9.72595927E+04 -- 5.99432824E+04 7.19277648E+04 8.60732702E+04 2.10053510E+06 1.04498714E+06 -- 8.82619071E+05 2.27577560E+03 9.24822269E+05 2.01619733E+04 6.01816484E+04 -+ 9.44293233E+05 2.12601181E+03 9.96389997E+05 2.01791425E+04 6.20665998E+04 -+ 7.44975864E+05 0.00000000E+00 8.82619071E+05 6.06829343E+05 8.96776989E+04 -+ 5.46147253E+04 6.58473870E+04 7.91627155E+04 2.01562190E+06 9.44293233E+05 -+ 8.82619071E+05 2.27577560E+03 9.25667242E+05 2.01619733E+04 6.01816484E+04 - 7.01803794E+05 0.00000000E+00 8.19971662E+05 5.74393458E+05 8.61541883E+04 -- 5.30987710E+04 6.37148277E+04 7.62451551E+04 1.86068943E+06 9.25667242E+05 -+ 5.30987710E+04 6.37148277E+04 7.62451551E+04 1.86068943E+06 2.00000000E+00 - 8.19971662E+05 - %FLAG LENNARD_JONES_BCOEF - %FORMAT(5E16.8) -- 8.01323529E+02 2.09604198E+01 9.37598976E-02 7.36907417E+02 2.06278363E+01 -- 6.75612247E+02 6.45756063E+01 7.57919667E-01 6.13981767E+01 3.56012899E+00 -- 1.13252061E+02 1.93248820E+00 1.06076943E+02 7.42992380E+00 1.43076527E+01 -- 7.50714425E+02 1.79702257E+01 6.93079947E+02 5.79323581E+01 1.03606917E+02 -+ 8.01323529E+02 2.09604198E+01 9.37598976E-02 7.37580700E+02 2.06466831E+01 -+ 6.76847370E+02 6.45756063E+01 7.57919667E-01 6.14542738E+01 3.56012899E+00 -+ 1.13252061E+02 1.93248820E+00 1.06173862E+02 7.42992380E+00 1.43076527E+01 -+ 7.50714425E+02 1.79702257E+01 6.93713186E+02 5.79323581E+01 1.03606917E+02 - 6.99746810E+02 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 - 0.00000000E+00 0.00000000E+00 0.00000000E+00 6.53361429E+02 1.82891803E+01 -- 5.99015525E+02 5.44372326E+01 9.40505980E+01 6.14502845E+02 0.00000000E+00 -- 5.31102864E+02 6.77220874E+02 1.53505284E+01 6.26720080E+02 5.08951803E+01 -+ 5.99562822E+02 5.44372326E+01 9.40505980E+01 6.14502845E+02 0.00000000E+00 -+ 5.31102864E+02 6.77220874E+02 1.53505284E+01 6.27292689E+02 5.08951803E+01 - 9.21192136E+01 6.29300710E+02 0.00000000E+00 5.55666448E+02 5.64885984E+02 -- 1.36131731E+02 2.59456373E+00 1.26919150E+02 9.41257003E+00 1.76949863E+01 -+ 1.36131731E+02 2.59456373E+00 1.27035111E+02 9.41257003E+00 1.76949863E+01 - 1.25287818E+02 0.00000000E+00 1.12529845E+02 1.11805549E+02 2.17257828E+01 -- 1.05031585E+02 1.73473071E+00 9.85097219E+01 6.78541827E+00 1.31591746E+01 -+ 1.05031585E+02 1.73473071E+00 9.85997263E+01 6.78541827E+00 1.31591746E+01 - 9.59185913E+01 0.00000000E+00 8.73413012E+01 8.51921330E+01 1.63092814E+01 -- 1.20953369E+01 1.15327881E+02 2.01792524E+00 1.07908863E+02 7.65648470E+00 -+ 1.20953369E+01 1.15327881E+02 2.01792524E+00 1.08007455E+02 7.65648470E+00 - 1.46638650E+01 1.05648788E+02 0.00000000E+00 9.56748258E+01 9.40124296E+01 - 1.81057616E+01 1.34932874E+01 1.50233639E+01 1.26451907E+02 2.33864085E+00 -- 1.18043746E+02 8.61880722E+00 1.63092814E+01 1.16187983E+02 0.00000000E+00 -+ 1.18151598E+02 8.61880722E+00 1.63092814E+01 1.16187983E+02 0.00000000E+00 - 1.04660679E+02 1.03580945E+02 2.00642027E+01 1.50233639E+01 1.66953734E+01 -- 1.85196588E+01 1.28923404E+03 3.87070358E+01 1.17824605E+03 1.11203892E+02 -+ 1.85196588E+01 1.28923404E+03 3.87070358E+01 1.17932256E+03 1.11203892E+02 - 1.89165096E+02 1.21753341E+03 0.00000000E+00 1.04466382E+03 1.10369829E+03 - 2.25248294E+02 1.75916126E+02 1.92224012E+02 2.09772716E+02 2.04800000E+03 -- 7.37580700E+02 2.06466831E+01 6.76229527E+02 6.14542738E+01 1.06173862E+02 -- 6.93713186E+02 0.00000000E+00 5.99562822E+02 6.27292689E+02 1.27035111E+02 -- 9.85997263E+01 1.08007455E+02 1.18151598E+02 1.17932256E+03 6.76847370E+02 -- 6.53361429E+02 1.82891803E+01 5.99015525E+02 5.44372327E+01 9.40505981E+01 -+ 8.01323529E+02 2.09604198E+01 7.37580700E+02 6.45756063E+01 1.13252062E+02 -+ 7.50714426E+02 0.00000000E+00 6.53361429E+02 6.77220874E+02 1.36131731E+02 -+ 1.05031585E+02 1.15327881E+02 1.26451907E+02 1.28923404E+03 8.01323529E+02 -+ 6.53361429E+02 1.82891803E+01 5.99562822E+02 5.44372327E+01 9.40505981E+01 - 6.14502846E+02 0.00000000E+00 5.31102864E+02 5.55666449E+02 1.12529845E+02 -- 8.73413013E+01 9.56748257E+01 1.04660679E+02 1.04466382E+03 5.99562822E+02 -+ 8.73413013E+01 9.56748257E+01 1.04660679E+02 1.04466382E+03 4.00000000E+00 - 5.31102864E+02 - %FLAG BONDS_INC_HYDROGEN - %FORMAT(10I8) -diff --git a/AmberTools/test/parmed/normal_prmtop/prmtop.add_AtNum.save b/AmberTools/test/parmed/normal_prmtop/prmtop.add_AtNum.save -index a7e4428..3ce70b7 100644 ---- a/AmberTools/test/parmed/normal_prmtop/prmtop.add_AtNum.save -+++ b/AmberTools/test/parmed/normal_prmtop/prmtop.add_AtNum.save -@@ -1,4 +1,4 @@ --%VERSION VERSION_STAMP = V0001.000 DATE = 02/28/12 13:10:17 -+%VERSION VERSION_STAMP = V0001.000 DATE = 07/08/12 15:11:06 - %FLAG TITLE - %FORMAT(20a4) - -@@ -1245,63 +1245,63 @@ GLU PHE LEU ASP ALA ASN LEU ALA - 0.00000000E+00 0.00000000E+00 - %FLAG LENNARD_JONES_ACOEF - %FORMAT(5E16.8) -- 9.44293233E+05 2.12601181E+03 1.39982777E-01 9.95480466E+05 2.56678134E+03 -- 1.04308023E+06 2.01791425E+04 9.14716912E+00 2.27401052E+04 2.01823541E+02 -- 6.20665997E+04 5.94667300E+01 6.78771368E+04 8.79040886E+02 3.25969625E+03 -- 7.44975864E+05 1.40467023E+03 7.91544157E+05 1.45985502E+04 4.66922514E+04 -+ 9.44293233E+05 2.12601181E+03 1.39982777E-01 9.96389997E+05 2.56912650E+03 -+ 1.04498714E+06 2.01791425E+04 9.14716912E+00 2.27608820E+04 2.01823541E+02 -+ 6.20665997E+04 5.94667300E+01 6.79391534E+04 8.79040886E+02 3.25969625E+03 -+ 7.44975864E+05 1.40467023E+03 7.92267358E+05 1.45985502E+04 4.66922514E+04 - 5.81803229E+05 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 - 0.00000000E+00 0.00000000E+00 0.00000000E+00 8.82619071E+05 2.27577561E+03 -- 9.24822270E+05 2.01619733E+04 6.01816484E+04 7.01803794E+05 0.00000000E+00 -- 8.19971662E+05 6.06829342E+05 1.02595236E+03 6.47841731E+05 1.12780457E+04 -+ 9.25667242E+05 2.01619733E+04 6.01816484E+04 7.01803794E+05 0.00000000E+00 -+ 8.19971662E+05 6.06829342E+05 1.02595236E+03 6.48433639E+05 1.12780457E+04 - 3.69471530E+04 4.71003287E+05 0.00000000E+00 5.74393458E+05 3.79876399E+05 -- 8.96776989E+04 1.07193646E+02 9.71708117E+04 1.41077189E+03 4.98586848E+03 -+ 8.96776989E+04 1.07193646E+02 9.72595927E+04 1.41077189E+03 4.98586848E+03 - 6.82786631E+04 0.00000000E+00 8.61541883E+04 5.44261042E+04 7.51607703E+03 -- 5.46147253E+04 4.90239937E+01 5.98885646E+04 7.50063100E+02 2.82099197E+03 -+ 5.46147253E+04 4.90239937E+01 5.99432824E+04 7.50063100E+02 2.82099197E+03 - 4.09427581E+04 0.00000000E+00 5.30987710E+04 3.23283631E+04 4.33325458E+03 -- 2.43828624E+03 6.58473870E+04 6.63368273E+01 7.18621074E+04 9.55000044E+02 -+ 2.43828624E+03 6.58473870E+04 6.63368273E+01 7.19277648E+04 9.55000044E+02 - 3.50301067E+03 4.96707306E+04 0.00000000E+00 6.37148278E+04 3.93690817E+04 - 5.34045360E+03 3.03448006E+03 3.76169105E+03 7.91627154E+04 8.90987508E+01 -- 8.59947003E+04 1.21014911E+03 4.33325458E+03 6.00750218E+04 0.00000000E+00 -+ 8.60732702E+04 1.21014911E+03 4.33325458E+03 6.00750218E+04 0.00000000E+00 - 7.62451550E+04 4.77908183E+04 6.55825601E+03 3.76169105E+03 4.64559155E+03 -- 5.71629601E+03 2.01562190E+06 5.97860700E+03 2.09861767E+06 4.93469320E+04 -+ 5.71629601E+03 2.01562190E+06 5.97860700E+03 2.10053510E+06 4.93469320E+04 - 1.42791446E+05 1.61587928E+06 0.00000000E+00 1.86068943E+06 1.32911052E+06 - 2.02461849E+05 1.26338489E+05 1.50848032E+05 1.79647996E+05 4.19430400E+06 -- 9.96389997E+05 2.56912650E+03 1.04403325E+06 2.27608820E+04 6.79391534E+04 -- 7.92267358E+05 0.00000000E+00 9.25667242E+05 6.48433639E+05 9.72595927E+04 -- 5.99432824E+04 7.19277648E+04 8.60732702E+04 2.10053510E+06 1.04498714E+06 -- 8.82619071E+05 2.27577560E+03 9.24822269E+05 2.01619733E+04 6.01816484E+04 -+ 9.44293233E+05 2.12601181E+03 9.96389997E+05 2.01791425E+04 6.20665998E+04 -+ 7.44975864E+05 0.00000000E+00 8.82619071E+05 6.06829343E+05 8.96776989E+04 -+ 5.46147253E+04 6.58473870E+04 7.91627155E+04 2.01562190E+06 9.44293233E+05 -+ 8.82619071E+05 2.27577560E+03 9.25667242E+05 2.01619733E+04 6.01816484E+04 - 7.01803794E+05 0.00000000E+00 8.19971662E+05 5.74393458E+05 8.61541883E+04 -- 5.30987710E+04 6.37148277E+04 7.62451551E+04 1.86068943E+06 9.25667242E+05 -+ 5.30987710E+04 6.37148277E+04 7.62451551E+04 1.86068943E+06 2.00000000E+00 - 8.19971662E+05 - %FLAG LENNARD_JONES_BCOEF - %FORMAT(5E16.8) -- 8.01323529E+02 2.09604198E+01 9.37598976E-02 7.36907417E+02 2.06278363E+01 -- 6.75612247E+02 6.45756063E+01 7.57919667E-01 6.13981767E+01 3.56012899E+00 -- 1.13252061E+02 1.93248820E+00 1.06076943E+02 7.42992380E+00 1.43076527E+01 -- 7.50714425E+02 1.79702257E+01 6.93079947E+02 5.79323581E+01 1.03606917E+02 -+ 8.01323529E+02 2.09604198E+01 9.37598976E-02 7.37580700E+02 2.06466831E+01 -+ 6.76847370E+02 6.45756063E+01 7.57919667E-01 6.14542738E+01 3.56012899E+00 -+ 1.13252061E+02 1.93248820E+00 1.06173862E+02 7.42992380E+00 1.43076527E+01 -+ 7.50714425E+02 1.79702257E+01 6.93713186E+02 5.79323581E+01 1.03606917E+02 - 6.99746810E+02 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 - 0.00000000E+00 0.00000000E+00 0.00000000E+00 6.53361429E+02 1.82891803E+01 -- 5.99015525E+02 5.44372326E+01 9.40505980E+01 6.14502845E+02 0.00000000E+00 -- 5.31102864E+02 6.77220874E+02 1.53505284E+01 6.26720080E+02 5.08951803E+01 -+ 5.99562822E+02 5.44372326E+01 9.40505980E+01 6.14502845E+02 0.00000000E+00 -+ 5.31102864E+02 6.77220874E+02 1.53505284E+01 6.27292689E+02 5.08951803E+01 - 9.21192136E+01 6.29300710E+02 0.00000000E+00 5.55666448E+02 5.64885984E+02 -- 1.36131731E+02 2.59456373E+00 1.26919150E+02 9.41257003E+00 1.76949863E+01 -+ 1.36131731E+02 2.59456373E+00 1.27035111E+02 9.41257003E+00 1.76949863E+01 - 1.25287818E+02 0.00000000E+00 1.12529845E+02 1.11805549E+02 2.17257828E+01 -- 1.05031585E+02 1.73473071E+00 9.85097219E+01 6.78541827E+00 1.31591746E+01 -+ 1.05031585E+02 1.73473071E+00 9.85997263E+01 6.78541827E+00 1.31591746E+01 - 9.59185913E+01 0.00000000E+00 8.73413012E+01 8.51921330E+01 1.63092814E+01 -- 1.20953369E+01 1.15327881E+02 2.01792524E+00 1.07908863E+02 7.65648470E+00 -+ 1.20953369E+01 1.15327881E+02 2.01792524E+00 1.08007455E+02 7.65648470E+00 - 1.46638650E+01 1.05648788E+02 0.00000000E+00 9.56748258E+01 9.40124296E+01 - 1.81057616E+01 1.34932874E+01 1.50233639E+01 1.26451907E+02 2.33864085E+00 -- 1.18043746E+02 8.61880722E+00 1.63092814E+01 1.16187983E+02 0.00000000E+00 -+ 1.18151598E+02 8.61880722E+00 1.63092814E+01 1.16187983E+02 0.00000000E+00 - 1.04660679E+02 1.03580945E+02 2.00642027E+01 1.50233639E+01 1.66953734E+01 -- 1.85196588E+01 1.28923404E+03 3.87070358E+01 1.17824605E+03 1.11203892E+02 -+ 1.85196588E+01 1.28923404E+03 3.87070358E+01 1.17932256E+03 1.11203892E+02 - 1.89165096E+02 1.21753341E+03 0.00000000E+00 1.04466382E+03 1.10369829E+03 - 2.25248294E+02 1.75916126E+02 1.92224012E+02 2.09772716E+02 2.04800000E+03 -- 7.37580700E+02 2.06466831E+01 6.76229527E+02 6.14542738E+01 1.06173862E+02 -- 6.93713186E+02 0.00000000E+00 5.99562822E+02 6.27292689E+02 1.27035111E+02 -- 9.85997263E+01 1.08007455E+02 1.18151598E+02 1.17932256E+03 6.76847370E+02 -- 6.53361429E+02 1.82891803E+01 5.99015525E+02 5.44372327E+01 9.40505981E+01 -+ 8.01323529E+02 2.09604198E+01 7.37580700E+02 6.45756063E+01 1.13252062E+02 -+ 7.50714426E+02 0.00000000E+00 6.53361429E+02 6.77220874E+02 1.36131731E+02 -+ 1.05031585E+02 1.15327881E+02 1.26451907E+02 1.28923404E+03 8.01323529E+02 -+ 6.53361429E+02 1.82891803E+01 5.99562822E+02 5.44372327E+01 9.40505981E+01 - 6.14502846E+02 0.00000000E+00 5.31102864E+02 5.55666449E+02 1.12529845E+02 -- 8.73413013E+01 9.56748257E+01 1.04660679E+02 1.04466382E+03 5.99562822E+02 -+ 8.73413013E+01 9.56748257E+01 1.04660679E+02 1.04466382E+03 4.00000000E+00 - 5.31102864E+02 - %FLAG BONDS_INC_HYDROGEN - %FORMAT(10I8) -diff --git a/AmberTools/test/parmed/normal_prmtop/prmtop.new_lj.save b/AmberTools/test/parmed/normal_prmtop/prmtop.new_lj.save -index 0a2a704..d984445 100644 ---- a/AmberTools/test/parmed/normal_prmtop/prmtop.new_lj.save -+++ b/AmberTools/test/parmed/normal_prmtop/prmtop.new_lj.save -@@ -1,4 +1,4 @@ --%VERSION VERSION_STAMP = V0001.000 DATE = 02/21/12 17:31:04 -+%VERSION VERSION_STAMP = V0001.000 DATE = 07/08/12 15:11:06 - %FLAG TITLE - %FORMAT(20a4) - -@@ -1245,63 +1245,63 @@ GLU PHE LEU ASP ALA ASN LEU ALA - 0.00000000E+00 0.00000000E+00 - %FLAG LENNARD_JONES_ACOEF - %FORMAT(5E16.8) -- 9.44293233E+05 2.12601181E+03 1.39982777E-01 9.95480466E+05 2.56678134E+03 -- 1.04308023E+06 2.01791425E+04 9.14716912E+00 2.27401052E+04 2.01823541E+02 -- 6.20665997E+04 5.94667300E+01 6.78771368E+04 8.79040886E+02 3.25969625E+03 -- 7.44975864E+05 1.40467023E+03 7.91544157E+05 1.45985502E+04 4.66922514E+04 -+ 9.44293233E+05 2.12601181E+03 1.39982777E-01 9.96389997E+05 2.56912650E+03 -+ 1.04498714E+06 2.01791425E+04 9.14716912E+00 2.27608820E+04 2.01823541E+02 -+ 6.20665997E+04 5.94667300E+01 6.79391534E+04 8.79040886E+02 3.25969625E+03 -+ 7.44975864E+05 1.40467023E+03 7.92267358E+05 1.45985502E+04 4.66922514E+04 - 5.81803229E+05 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 - 0.00000000E+00 0.00000000E+00 0.00000000E+00 8.82619071E+05 2.27577561E+03 -- 9.24822270E+05 2.01619733E+04 6.01816484E+04 7.01803794E+05 0.00000000E+00 -- 8.19971662E+05 6.06829342E+05 1.02595236E+03 6.47841731E+05 1.12780457E+04 -+ 9.25667242E+05 2.01619733E+04 6.01816484E+04 7.01803794E+05 0.00000000E+00 -+ 8.19971662E+05 6.06829342E+05 1.02595236E+03 6.48433639E+05 1.12780457E+04 - 3.69471530E+04 4.71003287E+05 0.00000000E+00 5.74393458E+05 3.79876399E+05 -- 8.96776989E+04 1.07193646E+02 9.71708117E+04 1.41077189E+03 4.98586848E+03 -+ 8.96776989E+04 1.07193646E+02 9.72595927E+04 1.41077189E+03 4.98586848E+03 - 6.82786631E+04 0.00000000E+00 8.61541883E+04 5.44261042E+04 7.51607703E+03 -- 5.46147253E+04 4.90239937E+01 5.98885646E+04 7.50063100E+02 2.82099197E+03 -+ 5.46147253E+04 4.90239937E+01 5.99432824E+04 7.50063100E+02 2.82099197E+03 - 4.09427581E+04 0.00000000E+00 5.30987710E+04 3.23283631E+04 4.33325458E+03 -- 2.43828624E+03 6.58473870E+04 6.63368273E+01 7.18621074E+04 9.55000044E+02 -+ 2.43828624E+03 6.58473870E+04 6.63368273E+01 7.19277648E+04 9.55000044E+02 - 3.50301067E+03 4.96707306E+04 0.00000000E+00 6.37148278E+04 3.93690817E+04 - 5.34045360E+03 3.03448006E+03 3.76169105E+03 7.91627154E+04 8.90987508E+01 -- 8.59947003E+04 1.21014911E+03 4.33325458E+03 6.00750218E+04 0.00000000E+00 -+ 8.60732702E+04 1.21014911E+03 4.33325458E+03 6.00750218E+04 0.00000000E+00 - 7.62451550E+04 4.77908183E+04 6.55825601E+03 3.76169105E+03 4.64559155E+03 -- 5.71629601E+03 2.01562190E+06 5.97860700E+03 2.09861767E+06 4.93469320E+04 -+ 5.71629601E+03 2.01562190E+06 5.97860700E+03 2.10053510E+06 4.93469320E+04 - 1.42791446E+05 1.61587928E+06 0.00000000E+00 1.86068943E+06 1.32911052E+06 - 2.02461849E+05 1.26338489E+05 1.50848032E+05 1.79647996E+05 4.19430400E+06 -- 9.96389997E+05 2.56912650E+03 1.04403325E+06 2.27608820E+04 6.79391534E+04 -- 7.92267358E+05 0.00000000E+00 9.25667242E+05 6.48433639E+05 9.72595927E+04 -- 5.99432824E+04 7.19277648E+04 8.60732702E+04 2.10053510E+06 1.04498714E+06 -- 8.82619071E+05 2.27577560E+03 9.24822269E+05 2.01619733E+04 6.01816484E+04 -+ 9.44293233E+05 2.12601181E+03 9.96389997E+05 2.01791425E+04 6.20665998E+04 -+ 7.44975864E+05 0.00000000E+00 8.82619071E+05 6.06829343E+05 8.96776989E+04 -+ 5.46147253E+04 6.58473870E+04 7.91627155E+04 2.01562190E+06 9.44293233E+05 -+ 8.82619071E+05 2.27577560E+03 9.25667242E+05 2.01619733E+04 6.01816484E+04 - 7.01803794E+05 0.00000000E+00 8.19971662E+05 5.74393458E+05 8.61541883E+04 -- 5.30987710E+04 6.37148277E+04 7.62451551E+04 1.86068943E+06 9.25667242E+05 -+ 5.30987710E+04 6.37148277E+04 7.62451551E+04 1.86068943E+06 2.00000000E+00 - 8.19971662E+05 - %FLAG LENNARD_JONES_BCOEF - %FORMAT(5E16.8) -- 8.01323529E+02 2.09604198E+01 9.37598976E-02 7.36907417E+02 2.06278363E+01 -- 6.75612247E+02 6.45756063E+01 7.57919667E-01 6.13981767E+01 3.56012899E+00 -- 1.13252061E+02 1.93248820E+00 1.06076943E+02 7.42992380E+00 1.43076527E+01 -- 7.50714425E+02 1.79702257E+01 6.93079947E+02 5.79323581E+01 1.03606917E+02 -+ 8.01323529E+02 2.09604198E+01 9.37598976E-02 7.37580700E+02 2.06466831E+01 -+ 6.76847370E+02 6.45756063E+01 7.57919667E-01 6.14542738E+01 3.56012899E+00 -+ 1.13252061E+02 1.93248820E+00 1.06173862E+02 7.42992380E+00 1.43076527E+01 -+ 7.50714425E+02 1.79702257E+01 6.93713186E+02 5.79323581E+01 1.03606917E+02 - 6.99746810E+02 0.00000000E+00 0.00000000E+00 0.00000000E+00 0.00000000E+00 - 0.00000000E+00 0.00000000E+00 0.00000000E+00 6.53361429E+02 1.82891803E+01 -- 5.99015525E+02 5.44372326E+01 9.40505980E+01 6.14502845E+02 0.00000000E+00 -- 5.31102864E+02 6.77220874E+02 1.53505284E+01 6.26720080E+02 5.08951803E+01 -+ 5.99562822E+02 5.44372326E+01 9.40505980E+01 6.14502845E+02 0.00000000E+00 -+ 5.31102864E+02 6.77220874E+02 1.53505284E+01 6.27292689E+02 5.08951803E+01 - 9.21192136E+01 6.29300710E+02 0.00000000E+00 5.55666448E+02 5.64885984E+02 -- 1.36131731E+02 2.59456373E+00 1.26919150E+02 9.41257003E+00 1.76949863E+01 -+ 1.36131731E+02 2.59456373E+00 1.27035111E+02 9.41257003E+00 1.76949863E+01 - 1.25287818E+02 0.00000000E+00 1.12529845E+02 1.11805549E+02 2.17257828E+01 -- 1.05031585E+02 1.73473071E+00 9.85097219E+01 6.78541827E+00 1.31591746E+01 -+ 1.05031585E+02 1.73473071E+00 9.85997263E+01 6.78541827E+00 1.31591746E+01 - 9.59185913E+01 0.00000000E+00 8.73413012E+01 8.51921330E+01 1.63092814E+01 -- 1.20953369E+01 1.15327881E+02 2.01792524E+00 1.07908863E+02 7.65648470E+00 -+ 1.20953369E+01 1.15327881E+02 2.01792524E+00 1.08007455E+02 7.65648470E+00 - 1.46638650E+01 1.05648788E+02 0.00000000E+00 9.56748258E+01 9.40124296E+01 - 1.81057616E+01 1.34932874E+01 1.50233639E+01 1.26451907E+02 2.33864085E+00 -- 1.18043746E+02 8.61880722E+00 1.63092814E+01 1.16187983E+02 0.00000000E+00 -+ 1.18151598E+02 8.61880722E+00 1.63092814E+01 1.16187983E+02 0.00000000E+00 - 1.04660679E+02 1.03580945E+02 2.00642027E+01 1.50233639E+01 1.66953734E+01 -- 1.85196588E+01 1.28923404E+03 3.87070358E+01 1.17824605E+03 1.11203892E+02 -+ 1.85196588E+01 1.28923404E+03 3.87070358E+01 1.17932256E+03 1.11203892E+02 - 1.89165096E+02 1.21753341E+03 0.00000000E+00 1.04466382E+03 1.10369829E+03 - 2.25248294E+02 1.75916126E+02 1.92224012E+02 2.09772716E+02 2.04800000E+03 -- 7.37580700E+02 2.06466831E+01 6.76229527E+02 6.14542738E+01 1.06173862E+02 -- 6.93713186E+02 0.00000000E+00 5.99562822E+02 6.27292689E+02 1.27035111E+02 -- 9.85997263E+01 1.08007455E+02 1.18151598E+02 1.17932256E+03 6.76847370E+02 -- 6.53361429E+02 1.82891803E+01 5.99015525E+02 5.44372327E+01 9.40505981E+01 -+ 8.01323529E+02 2.09604198E+01 7.37580700E+02 6.45756063E+01 1.13252062E+02 -+ 7.50714426E+02 0.00000000E+00 6.53361429E+02 6.77220874E+02 1.36131731E+02 -+ 1.05031585E+02 1.15327881E+02 1.26451907E+02 1.28923404E+03 8.01323529E+02 -+ 6.53361429E+02 1.82891803E+01 5.99562822E+02 5.44372327E+01 9.40505981E+01 - 6.14502846E+02 0.00000000E+00 5.31102864E+02 5.55666449E+02 1.12529845E+02 -- 8.73413013E+01 9.56748257E+01 1.04660679E+02 1.04466382E+03 5.99562822E+02 -+ 8.73413013E+01 9.56748257E+01 1.04660679E+02 1.04466382E+03 4.00000000E+00 - 5.31102864E+02 - %FLAG BONDS_INC_HYDROGEN - %FORMAT(10I8) -diff --git a/dat/leap/cmd/leaprc.pol12 b/dat/leap/cmd/leaprc.pol12 -deleted file mode 100644 -index 2bb10c7..0000000 ---- a/dat/leap/cmd/leaprc.pol12 -+++ /dev/null -@@ -1,182 +0,0 @@ --logFile leap.log --# --# ----- leaprc for loading pol12, the 2012 pol. force field, no lone pairs --# --# --addAtomTypes { -- { "H" "H" "sp3" } -- { "HO" "H" "sp3" } -- { "HS" "H" "sp3" } -- { "H1" "H" "sp3" } -- { "H2" "H" "sp3" } -- { "H3" "H" "sp3" } -- { "H4" "H" "sp3" } -- { "H5" "H" "sp3" } -- { "HW" "H" "sp3" } -- { "HC" "H" "sp3" } -- { "HA" "H" "sp3" } -- { "HP" "H" "sp3" } -- { "OH" "O" "sp3" } -- { "OS" "O" "sp3" } -- { "O" "O" "sp2" } -- { "O2" "O" "sp2" } -- { "OW" "O" "sp3" } -- { "CT" "C" "sp3" } -- { "CH" "C" "sp3" } -- { "C2" "C" "sp3" } -- { "C3" "C" "sp3" } -- { "C" "C" "sp2" } -- { "C*" "C" "sp2" } -- { "CA" "C" "sp2" } -- { "CB" "C" "sp2" } -- { "CC" "C" "sp2" } -- { "CN" "C" "sp2" } -- { "CM" "C" "sp2" } -- { "CK" "C" "sp2" } -- { "CQ" "C" "sp2" } -- { "CD" "C" "sp2" } -- { "CE" "C" "sp2" } -- { "CF" "C" "sp2" } -- { "CP" "C" "sp2" } -- { "CI" "C" "sp2" } -- { "CJ" "C" "sp2" } -- { "CW" "C" "sp2" } -- { "CV" "C" "sp2" } -- { "CR" "C" "sp2" } -- { "CA" "C" "sp2" } -- { "CY" "C" "sp2" } -- { "C0" "Ca" "sp3" } -- { "MG" "Mg" "sp3" } -- { "N" "N" "sp2" } -- { "NA" "N" "sp2" } -- { "N2" "N" "sp2" } -- { "N*" "N" "sp2" } -- { "NP" "N" "sp2" } -- { "NQ" "N" "sp2" } -- { "NB" "N" "sp2" } -- { "NC" "N" "sp2" } -- { "NT" "N" "sp3" } -- { "N3" "N" "sp3" } -- { "S" "S" "sp3" } -- { "SH" "S" "sp3" } -- { "P" "P" "sp3" } -- { "EP" "" "sp3" } -- { "F" "F" "sp3" } -- { "CL" "Cl" "sp3" } -- { "BR" "Br" "sp3" } -- { "I" "I" "sp3" } -- { "FE" "Fe" "sp3" } --# things should be there -- { "IM" "Cl" "sp3" } -- { "IP" "Na" "sp3" } -- { "Li" "Li" "sp3" } -- { "K" "K" "sp3" } -- { "Rb" "Rb" "sp3" } -- { "Cs" "Cs" "sp3" } -- { "Zn" "Zn" "sp3" } -- { "IB" "Na" "sp3" } --# "new" types -- { "H0" "H" "sp3" } -- --} --# --# Load the main parameter set. --# --set default DIPOLE_DAMP_FACTOR 2.5873 --set default sceescalefactor 1.0 --set default scnbscalefactor 2.0 --set default CMAP on -- --parm11 = loadamberparams parmpol12.dat --parmpol= loadamberparams frcmod.pol12 --# --# Load main chain and terminating --# amino acid libraries. --# --loadOff aminoctpol12.lib --loadOff aminontpol12.lib --loadOff aminopol12.lib -- --loadOff ions94.lib --loadOff solvents.lib --#HOH = TP3 --#WAT = TP3 --HOH = PL3 --WAT = PL3 -- --# --# Define the PDB name map for the amino acids and DNA. --# --addPdbResMap { -- { 0 "ALA" "NALA" } { 1 "ALA" "CALA" } -- { 0 "ARG" "NARG" } { 1 "ARG" "CARG" } -- { 0 "ASN" "NASN" } { 1 "ASN" "CASN" } -- { 0 "ASP" "NASP" } { 1 "ASP" "CASP" } -- { 0 "CYS" "NCYS" } { 1 "CYS" "CCYS" } -- { 0 "CYX" "NCYX" } { 1 "CYX" "CCYX" } -- { 0 "GLN" "NGLN" } { 1 "GLN" "CGLN" } -- { 0 "GLU" "NGLU" } { 1 "GLU" "CGLU" } -- { 0 "GLY" "NGLY" } { 1 "GLY" "CGLY" } -- { 0 "HID" "NHID" } { 1 "HID" "CHID" } -- { 0 "HIE" "NHIE" } { 1 "HIE" "CHIE" } -- { 0 "HIP" "NHIP" } { 1 "HIP" "CHIP" } -- { 0 "ILE" "NILE" } { 1 "ILE" "CILE" } -- { 0 "LEU" "NLEU" } { 1 "LEU" "CLEU" } -- { 0 "LYS" "NLYS" } { 1 "LYS" "CLYS" } -- { 0 "MET" "NMET" } { 1 "MET" "CMET" } -- { 0 "PHE" "NPHE" } { 1 "PHE" "CPHE" } -- { 0 "PRO" "NPRO" } { 1 "PRO" "CPRO" } -- { 0 "SER" "NSER" } { 1 "SER" "CSER" } -- { 0 "THR" "NTHR" } { 1 "THR" "CTHR" } -- { 0 "TRP" "NTRP" } { 1 "TRP" "CTRP" } -- { 0 "TYR" "NTYR" } { 1 "TYR" "CTYR" } -- { 0 "VAL" "NVAL" } { 1 "VAL" "CVAL" } -- { 0 "HIS" "NHIS" } { 1 "HIS" "CHIS" } -- { 0 "GUA" "DG5" } { 1 "GUA" "DG3" } { "GUA" "DG" } -- { 0 "ADE" "DA5" } { 1 "ADE" "DA3" } { "ADE" "DA" } -- { 0 "CYT" "DC5" } { 1 "CYT" "DC3" } { "CYT" "DC" } -- { 0 "THY" "DT5" } { 1 "THY" "DT3" } { "THY" "DT" } -- { 0 "G" "DG5" } { 1 "G" "DG3" } { "G" "DG" } { "GN" "DGN" } -- { 0 "A" "DA5" } { 1 "A" "DA3" } { "A" "DA" } { "AN" "DAN" } -- { 0 "C" "DC5" } { 1 "C" "DC3" } { "C" "DC" } { "CN" "DCN" } -- { 0 "T" "DT5" } { 1 "T" "DT3" } { "T" "DT" } { "TN" "DTN" } -- { 0 "C5" "DC5" } -- { 0 "G5" "DG5" } -- { 0 "A5" "DA5" } -- { 0 "T5" "DT5" } -- { 1 "C3" "DC3" } -- { 1 "G3" "DG3" } -- { 1 "A3" "DA3" } -- { 1 "T3" "DT3" } -- --} -- --addPdbAtomMap { -- { "O5*" "O5'" } -- { "C5*" "C5'" } -- { "C4*" "C4'" } -- { "O4*" "O4'" } -- { "C3*" "C3'" } -- { "O3*" "O3'" } -- { "C2*" "C2'" } -- { "C1*" "C1'" } -- { "C5M" "C7" } -- { "H1*" "H1'" } -- { "H2*1" "H2'1" } -- { "H2*2" "H2'2" } -- { "H3*" "H3'" } -- { "H4*" "H4'" } -- { "H5*1" "H5'1" } -- { "H5*2" "H5'2" } --# old ff atom names -> new -- { "O1'" "O4'" } -- { "OA" "O1P" } -- { "OB" "O2P" } --} -- --# --# assumed that most often proteins use HIE --# --NHIS = NHIE --HIS = HIE --CHIS = CHIE -diff --git a/dat/leap/lib/aminoctpol12.lib b/dat/leap/lib/aminoctpol12.lib -deleted file mode 100644 -index fa60138..0000000 ---- a/dat/leap/lib/aminoctpol12.lib -+++ /dev/null -@@ -1,3677 +0,0 @@ --!!index array str -- "CALA" -- "CARG" -- "CASH" -- "CASN" -- "CASP" -- "CCYM" -- "CCYS" -- "CCYX" -- "CGLH" -- "CGLN" -- "CGLU" -- "CGLY" -- "CHID" -- "CHIE" -- "CHIP" -- "CILE" -- "CLEU" -- "CLYN" -- "CLYS" -- "CMET" -- "CPHE" -- "CPRO" -- "CSER" -- "CTHR" -- "CTRP" -- "CTYR" -- "CVAL" -- "NME" --!entry.CALA.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.139420 -- "HA" "H1" 0 1 131072 4 1 0.100300 -- "CB" "CT" 0 1 131072 5 6 -0.168880 -- "HB1" "HC" 0 1 131072 6 1 0.087020 -- "HB2" "HC" 0 1 131072 7 1 0.087020 -- "HB3" "HC" 0 1 131072 8 1 0.087020 -- "C" "C" 0 1 131072 9 6 0.705530 -- "O" "O2" 0 1 131072 10 8 -0.822990 -- "OXT" "O2" 0 1 131072 11 8 -0.822990 --!entry.CALA.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB1" "HC" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CALA.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CALA.unit.childsequence single int -- 2 --!entry.CALA.unit.connect array int -- 1 -- 0 --!entry.CALA.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 9 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 9 10 1 -- 9 11 1 --!entry.CALA.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 --!entry.CALA.unit.name single str -- "CALA" --!entry.CALA.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 3.877484 3.115795 2.131197 -- 4.075059 4.623017 1.205786 -- 2.496995 3.801075 1.241379 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CALA.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CALA.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CALA" 1 12 1 "p" 0 --!entry.CALA.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CALA.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CALA.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CARG.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.246160 -- "HA" "H1" 0 1 131072 4 1 0.166180 -- "CB" "CT" 0 1 131072 5 6 0.246480 -- "HB2" "HC" 0 1 131072 6 1 -0.008560 -- "HB3" "HC" 0 1 131072 7 1 -0.008560 -- "CG" "CT" 0 1 131072 8 6 -0.353440 -- "HG2" "HC" 0 1 131072 9 1 0.103290 -- "HG3" "HC" 0 1 131072 10 1 0.103290 -- "CD" "CT" 0 1 131072 11 6 0.608250 -- "HD2" "H1" 0 1 131072 12 1 -0.078660 -- "HD3" "H1" 0 1 131072 13 1 -0.078660 -- "NE" "N2" 0 1 131072 14 7 -0.792460 -- "HE" "H" 0 1 131072 15 1 0.406710 -- "CZ" "CA" 0 1 131072 16 6 1.125120 -- "NH1" "N2" 0 1 131072 17 7 -0.963900 -- "HH11" "H" 0 1 131072 18 1 0.447010 -- "HH12" "H" 0 1 131072 19 1 0.447010 -- "NH2" "N2" 0 1 131072 20 7 -0.963900 -- "HH21" "H" 0 1 131072 21 1 0.447010 -- "HH22" "H" 0 1 131072 22 1 0.447010 -- "C" "C" 0 1 131072 23 6 0.705530 -- "O" "O2" 0 1 131072 24 8 -0.822990 -- "OXT" "O2" 0 1 131072 25 8 -0.822990 --!entry.CARG.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "CT" 0 -1 0.0 -- "HD2" "H1" 0 -1 0.0 -- "HD3" "H1" 0 -1 0.0 -- "NE" "N2" 0 -1 0.0 -- "HE" "H" 0 -1 0.0 -- "CZ" "CA" 0 -1 0.0 -- "NH1" "N2" 0 -1 0.0 -- "HH11" "H" 0 -1 0.0 -- "HH12" "H" 0 -1 0.0 -- "NH2" "N2" 0 -1 0.0 -- "HH21" "H" 0 -1 0.0 -- "HH22" "H" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CARG.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CARG.unit.childsequence single int -- 2 --!entry.CARG.unit.connect array int -- 1 -- 0 --!entry.CARG.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 23 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 11 13 1 -- 11 14 1 -- 14 15 1 -- 14 16 1 -- 16 17 1 -- 16 20 1 -- 17 18 1 -- 17 19 1 -- 20 21 1 -- 20 22 1 -- 23 24 1 -- 23 25 1 --!entry.CARG.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 -- "R" 1 "A" 22 -- "R" 1 "A" 23 -- "R" 1 "A" 24 -- "R" 1 "A" 25 --!entry.CARG.unit.name single str -- "CARG" --!entry.CARG.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.973781 5.548460 0.295972 -- 3.881105 5.817645 2.426721 -- 2.801135 5.964881 2.435959 -- 4.181626 5.279602 3.325774 -- 4.540320 7.142723 2.424483 -- 5.151805 7.375492 1.655065 -- 4.364284 8.040989 3.389382 -- 3.575026 7.807606 4.434133 -- 3.088949 6.925423 4.508848 -- 3.465367 8.513631 5.147998 -- 5.006254 9.201287 3.286991 -- 5.604855 9.375325 2.492329 -- 4.892216 9.903045 4.004368 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CARG.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CARG.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CARG" 1 26 1 "p" 0 --!entry.CARG.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CARG.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CARG.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CASH.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 0.020630 -- "HA" "H1" 0 1 131072 4 1 0.028510 -- "CB" "CT" 0 1 131072 5 6 -0.181320 -- "HB2" "HC" 0 1 131072 6 1 0.139090 -- "HB3" "HC" 0 1 131072 7 1 0.139090 -- "CG" "C" 0 1 131072 8 6 0.590540 -- "OD1" "O" 0 1 131072 9 8 -0.551750 -- "OD2" "OH" 0 1 131072 10 8 -0.583910 -- "HD2" "HO" 0 1 131072 11 1 0.452180 -- "C" "C" 0 1 131072 12 6 0.705530 -- "O" "O2" 0 1 131072 13 8 -0.822990 -- "OXT" "O2" 0 1 131072 14 8 -0.822990 --!entry.CASH.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "C" 0 -1 0.0 -- "OD1" "O" 0 -1 0.0 -- "OD2" "OH" 0 -1 0.0 -- "HD2" "HO" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CASH.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CASH.unit.childsequence single int -- 2 --!entry.CASH.unit.connect array int -- 1 -- 0 --!entry.CASH.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 12 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 10 11 1 -- 12 13 1 -- 12 14 1 --!entry.CASH.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 --!entry.CASH.unit.name single str -- "CASH" --!entry.CASH.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.275101 5.011380 1.194527 -- 3.669108 5.954940 0.620011 -- 5.407731 5.091879 1.740667 -- 5.742902 5.987179 1.652920 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CASH.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CASH.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CASH" 1 15 1 "p" 0 --!entry.CASH.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CASH.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CASH.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CASN.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.052240 -- "HA" "H1" 0 1 131072 4 1 0.042740 -- "CB" "CT" 0 1 131072 5 6 -0.207320 -- "HB2" "HC" 0 1 131072 6 1 0.119980 -- "HB3" "HC" 0 1 131072 7 1 0.119980 -- "CG" "C" 0 1 131072 8 6 0.659810 -- "OD1" "O" 0 1 131072 9 8 -0.563050 -- "ND2" "N" 0 1 131072 10 7 -0.856360 -- "HD21" "H" 0 1 131072 11 1 0.394760 -- "HD22" "H" 0 1 131072 12 1 0.394760 -- "C" "C" 0 1 131072 13 6 0.705530 -- "O" "O2" 0 1 131072 14 8 -0.822990 -- "OXT" "O2" 0 1 131072 15 8 -0.822990 --!entry.CASN.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "C" 0 -1 0.0 -- "OD1" "O" 0 -1 0.0 -- "ND2" "N" 0 -1 0.0 -- "HD21" "H" 0 -1 0.0 -- "HD22" "H" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CASN.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CASN.unit.childsequence single int -- 2 --!entry.CASN.unit.connect array int -- 1 -- 0 --!entry.CASN.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 13 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 10 11 1 -- 10 12 1 -- 13 14 1 -- 13 15 1 --!entry.CASN.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 --!entry.CASN.unit.name single str -- "CASN" --!entry.CASN.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.253700 5.017112 1.232144 -- 5.005299 5.340406 0.315072 -- 3.984885 5.817909 2.265917 -- 4.408015 6.733702 2.314743 -- 3.359611 5.504297 2.994464 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CASN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CASN.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CASN" 1 16 1 "p" 0 --!entry.CASN.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CASN.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CASN.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CASP.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.132120 -- "HA" "H1" 0 1 131072 4 1 0.050730 -- "CB" "CT" 0 1 131072 5 6 -0.282900 -- "HB2" "HC" 0 1 131072 6 1 0.084070 -- "HB3" "HC" 0 1 131072 7 1 0.084070 -- "CG" "C" 0 1 131072 8 6 0.894610 -- "OD1" "O2" 0 1 131072 9 8 -0.822700 -- "OD2" "O2" 0 1 131072 10 8 -0.822700 -- "C" "C" 0 1 131072 11 6 0.705530 -- "O" "O2" 0 1 131072 12 8 -0.822990 -- "OXT" "O2" 0 1 131072 13 8 -0.822990 --!entry.CASP.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "C" 0 -1 0.0 -- "OD1" "O2" 0 -1 0.0 -- "OD2" "O2" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CASP.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CASP.unit.childsequence single int -- 2 --!entry.CASP.unit.connect array int -- 1 -- 0 --!entry.CASP.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 11 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 11 12 1 -- 11 13 1 --!entry.CASP.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 --!entry.CASP.unit.name single str -- "CASP" --!entry.CASP.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.275101 5.011380 1.194527 -- 3.669108 5.954940 0.620011 -- 5.407731 5.091879 1.740667 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CASP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CASP.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CASP" 1 14 1 "p" 0 --!entry.CASP.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CASP.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CASP.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CCYM.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "HN" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.165660 -- "HA" "H1" 0 1 131072 4 1 0.090680 -- "CB" "CT" 0 1 131072 5 6 0.044510 -- "HB3" "H1" 0 1 131072 6 1 0.006690 -- "HB2" "H1" 0 1 131072 7 1 0.006690 -- "SG" "SH" 0 1 131072 8 16 -0.929850 -- "C" "C" 0 1 131072 9 6 0.705530 -- "O" "O2" 0 1 131072 10 8 -0.822990 -- "OXT" "O2" 0 1 131072 11 8 -0.822990 --!entry.CCYM.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "HN" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB3" "H1" 0 -1 0.0 -- "HB2" "H1" 0 -1 0.0 -- "SG" "SH" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CCYM.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CCYM.unit.childsequence single int -- 2 --!entry.CCYM.unit.connect array int -- 1 -- 0 --!entry.CCYM.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 9 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 9 10 1 -- 9 11 1 --!entry.CCYM.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 --!entry.CCYM.unit.name single str -- "CCYM" --!entry.CCYM.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 3.877484 3.115795 2.131197 -- 2.496995 3.801075 1.241379 -- 4.309573 5.303523 1.366036 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CCYM.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CCYM.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CCYM" 1 12 1 "p" 0 --!entry.CCYM.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CCYM.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CCYM.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CCYS.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.010480 -- "HA" "H1" 0 1 131072 4 1 0.057060 -- "CB" "CT" 0 1 131072 5 6 -0.033990 -- "HB2" "H1" 0 1 131072 6 1 0.066220 -- "HB3" "H1" 0 1 131072 7 1 0.066220 -- "SG" "SH" 0 1 131072 8 16 -0.244870 -- "HG" "HS" 0 1 131072 9 1 0.152900 -- "C" "C" 0 1 131072 10 6 0.705530 -- "O" "O2" 0 1 131072 11 8 -0.822990 -- "OXT" "O2" 0 1 131072 12 8 -0.822990 --!entry.CCYS.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "H1" 0 -1 0.0 -- "HB3" "H1" 0 -1 0.0 -- "SG" "SH" 0 -1 0.0 -- "HG" "HS" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CCYS.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CCYS.unit.childsequence single int -- 2 --!entry.CCYS.unit.connect array int -- 1 -- 0 --!entry.CCYS.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 10 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 10 11 1 -- 10 12 1 --!entry.CCYS.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 --!entry.CCYS.unit.name single str -- "CCYS" --!entry.CCYS.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.309573 5.303523 1.366036 -- 3.725392 5.622018 2.517640 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CCYS.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CCYS.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CCYS" 1 13 1 "p" 0 --!entry.CCYS.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CCYS.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CCYS.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CCYX.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.030070 -- "HA" "H1" 0 1 131072 4 1 0.037000 -- "CB" "CT" 0 1 131072 5 6 -0.043690 -- "HB2" "H1" 0 1 131072 6 1 0.084380 -- "HB3" "H1" 0 1 131072 7 1 0.084380 -- "SG" "S" 0 1 131072 8 16 -0.078940 -- "C" "C" 0 1 131072 9 6 0.705530 -- "O" "O2" 0 1 131072 10 8 -0.822990 -- "OXT" "O2" 0 1 131072 11 8 -0.822990 --!entry.CCYX.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "H1" 0 -1 0.0 -- "HB3" "H1" 0 -1 0.0 -- "SG" "S" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CCYX.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CCYX.unit.childsequence single int -- 2 --!entry.CCYX.unit.connect array int -- 1 -- 0 --!entry.CCYX.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 9 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 9 10 1 -- 9 11 1 --!entry.CCYX.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 --!entry.CCYX.unit.name single str -- "CCYX" --!entry.CCYX.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.309573 5.303523 1.366036 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CCYX.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 8 0 0 0 --!entry.CCYX.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CCYX" 1 12 1 "p" 0 --!entry.CCYX.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CCYX.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CCYX.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CGLH.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.165080 -- "HA" "H1" 0 1 131072 4 1 0.120280 -- "CB" "CT" 0 1 131072 5 6 0.110660 -- "HB2" "HC" 0 1 131072 6 1 0.016640 -- "HB3" "HC" 0 1 131072 7 1 0.016640 -- "CG" "CT" 0 1 131072 8 6 -0.317930 -- "HG2" "HC" 0 1 131072 9 1 0.173880 -- "HG3" "HC" 0 1 131072 10 1 0.173880 -- "CD" "C" 0 1 131072 11 6 0.664690 -- "OE1" "O" 0 1 131072 12 8 -0.583590 -- "OE2" "OH" 0 1 131072 13 8 -0.613880 -- "HE2" "HO" 0 1 131072 14 1 0.456870 -- "C" "C" 0 1 131072 15 6 0.705530 -- "O" "O2" 0 1 131072 16 8 -0.822990 -- "OXT" "O2" 0 1 131072 17 8 -0.822990 --!entry.CGLH.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "C" 0 -1 0.0 -- "OE1" "O" 0 -1 0.0 -- "OE2" "OH" 0 -1 0.0 -- "HE2" "HO" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CGLH.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CGLH.unit.childsequence single int -- 2 --!entry.CGLH.unit.connect array int -- 1 -- 0 --!entry.CGLH.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 15 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 15 16 1 -- 15 17 1 --!entry.CGLH.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 --!entry.CGLH.unit.name single str -- "CGLH" --!entry.CGLH.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.267328 4.996267 1.194946 -- 5.347413 4.849843 1.186158 -- 3.966923 5.535124 0.296342 -- 3.873732 5.805369 2.428706 -- 4.594590 5.679012 3.454376 -- 2.855965 6.542070 2.333721 -- 2.710526 6.996624 3.166684 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CGLH.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CGLH.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CGLH" 1 18 1 "p" 0 --!entry.CGLH.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CGLH.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CGLH.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CGLN.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.174080 -- "HA" "H1" 0 1 131072 4 1 0.063260 -- "CB" "CT" 0 1 131072 5 6 0.396380 -- "HB2" "HC" 0 1 131072 6 1 -0.058620 -- "HB3" "HC" 0 1 131072 7 1 -0.058620 -- "CG" "CT" 0 1 131072 8 6 -0.593580 -- "HG2" "HC" 0 1 131072 9 1 0.218390 -- "HG3" "HC" 0 1 131072 10 1 0.218390 -- "CD" "C" 0 1 131072 11 6 0.770410 -- "OE1" "O" 0 1 131072 12 8 -0.650910 -- "NE2" "N" 0 1 131072 13 7 -0.874140 -- "HE21" "H" 0 1 131072 14 1 0.398090 -- "HE22" "H" 0 1 131072 15 1 0.398090 -- "C" "C" 0 1 131072 16 6 0.705530 -- "O" "O2" 0 1 131072 17 8 -0.822990 -- "OXT" "O2" 0 1 131072 18 8 -0.822990 --!entry.CGLN.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "C" 0 -1 0.0 -- "OE1" "O" 0 -1 0.0 -- "NE2" "N" 0 -1 0.0 -- "HE21" "H" 0 -1 0.0 -- "HE22" "H" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CGLN.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CGLN.unit.childsequence single int -- 2 --!entry.CGLN.unit.connect array int -- 1 -- 0 --!entry.CGLN.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 16 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 15 1 -- 16 17 1 -- 16 18 1 --!entry.CGLN.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 --!entry.CGLN.unit.name single str -- "CGLN" --!entry.CGLN.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.973781 5.548460 0.295972 -- 3.906976 5.848443 2.410302 -- 3.138962 5.408349 3.262893 -- 4.458856 7.061523 2.488333 -- 4.248434 7.659045 3.274966 -- 5.084281 7.376210 1.760379 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CGLN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CGLN.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CGLN" 1 19 1 "p" 0 --!entry.CGLN.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CGLN.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CGLN.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CGLU.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.265130 -- "HA" "H1" 0 1 131072 4 1 0.127760 -- "CB" "CT" 0 1 131072 5 6 0.520990 -- "HB2" "HC" 0 1 131072 6 1 -0.129940 -- "HB3" "HC" 0 1 131072 7 1 -0.129940 -- "CG" "CT" 0 1 131072 8 6 -0.693830 -- "HG2" "HC" 0 1 131072 9 1 0.205050 -- "HG3" "HC" 0 1 131072 10 1 0.205050 -- "CD" "C" 0 1 131072 11 6 0.835690 -- "OE1" "O2" 0 1 131072 12 8 -0.811320 -- "OE2" "O2" 0 1 131072 13 8 -0.811320 -- "C" "C" 0 1 131072 14 6 0.705530 -- "O" "O2" 0 1 131072 15 8 -0.822990 -- "OXT" "O2" 0 1 131072 16 8 -0.822990 --!entry.CGLU.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "C" 0 -1 0.0 -- "OE1" "O2" 0 -1 0.0 -- "OE2" "O2" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CGLU.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CGLU.unit.childsequence single int -- 2 --!entry.CGLU.unit.connect array int -- 1 -- 0 --!entry.CGLU.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 14 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 11 13 1 -- 14 15 1 -- 14 16 1 --!entry.CGLU.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 --!entry.CGLU.unit.name single str -- "CGLU" --!entry.CGLU.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.267328 4.996267 1.194946 -- 5.347413 4.849843 1.186158 -- 3.966923 5.535124 0.296342 -- 3.873732 5.805369 2.428706 -- 4.594590 5.679012 3.454376 -- 2.855965 6.542070 2.333721 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CGLU.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CGLU.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CGLU" 1 17 1 "p" 0 --!entry.CGLU.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CGLU.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CGLU.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CGLY.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.195060 -- "HA2" "H1" 0 1 131072 4 1 0.124060 -- "HA3" "H1" 0 1 131072 5 1 0.124060 -- "C" "C" 0 1 131072 6 6 0.705530 -- "O" "O2" 0 1 131072 7 8 -0.822990 -- "OXT" "O2" 0 1 131072 8 8 -0.822990 --!entry.CGLY.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA2" "H1" 0 -1 0.0 -- "HA3" "H1" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CGLY.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CGLY.unit.childsequence single int -- 2 --!entry.CGLY.unit.connect array int -- 1 -- 0 --!entry.CGLY.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 6 1 -- 6 7 1 -- 6 8 1 --!entry.CGLY.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 --!entry.CGLY.unit.name single str -- "CGLY" --!entry.CGLY.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.671668 3.400125 0.889824 -- 5.483710 2.686702 -4.438857E-06 -- 5.993369 1.568360 -8.469843E-06 -- 6.214748 3.674642 -2.512987E-06 --!entry.CGLY.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CGLY.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CGLY" 1 9 1 "p" 0 --!entry.CGLY.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CGLY.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CGLY.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CHID.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.027370 -- "HA" "H1" 0 1 131072 4 1 0.038450 -- "CB" "CT" 0 1 131072 5 6 -0.339570 -- "HB2" "HC" 0 1 131072 6 1 0.133210 -- "HB3" "HC" 0 1 131072 7 1 0.133210 -- "CG" "CC" 0 1 131072 8 6 0.324210 -- "ND1" "NA" 0 1 131072 9 7 -0.387720 -- "HD1" "H" 0 1 131072 10 1 0.367140 -- "CE1" "CR" 0 1 131072 11 6 0.234580 -- "HE1" "H5" 0 1 131072 12 1 0.060770 -- "NE2" "NB" 0 1 131072 13 7 -0.513820 -- "CD2" "CV" 0 1 131072 14 6 -0.060620 -- "HD2" "H4" 0 1 131072 15 1 0.090590 -- "C" "C" 0 1 131072 16 6 0.705530 -- "O" "O2" 0 1 131072 17 8 -0.822990 -- "OXT" "O2" 0 1 131072 18 8 -0.822990 --!entry.CHID.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CC" 0 -1 0.0 -- "ND1" "NA" 0 -1 0.0 -- "HD1" "H" 0 -1 0.0 -- "CE1" "CR" 0 -1 0.0 -- "HE1" "H5" 0 -1 0.0 -- "NE2" "NB" 0 -1 0.0 -- "CD2" "CV" 0 -1 0.0 -- "HD2" "H4" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CHID.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CHID.unit.childsequence single int -- 2 --!entry.CHID.unit.connect array int -- 1 -- 0 --!entry.CHID.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 16 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 14 1 -- 9 10 1 -- 9 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 14 15 1 -- 16 17 1 -- 16 18 1 --!entry.CHID.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 --!entry.CHID.unit.name single str -- "CHID" --!entry.CHID.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.200813 5.026064 1.321087 -- 3.942782 5.885086 2.382972 -- 3.339725 5.691913 3.169805 -- 4.624274 6.997642 2.182500 -- 4.563048 7.811875 2.904563 -- 5.294011 6.891451 1.061663 -- 5.058974 5.678868 0.492453 -- 5.537741 5.417846 -0.451343 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CHID.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CHID.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CHID" 1 19 1 "p" 0 --!entry.CHID.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CHID.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CHID.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CHIE.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.124850 -- "HA" "H1" 0 1 131072 4 1 0.066680 -- "CB" "CT" 0 1 131072 5 6 -0.261430 -- "HB2" "HC" 0 1 131072 6 1 0.140860 -- "HB3" "HC" 0 1 131072 7 1 0.140860 -- "CG" "CC" 0 1 131072 8 6 0.443190 -- "ND1" "NB" 0 1 131072 9 7 -0.679990 -- "CE1" "CR" 0 1 131072 10 6 0.325720 -- "HE1" "H5" 0 1 131072 11 1 0.037400 -- "NE2" "NA" 0 1 131072 12 7 -0.315320 -- "HE2" "H" 0 1 131072 13 1 0.339080 -- "CD2" "CW" 0 1 131072 14 6 -0.228430 -- "HD2" "H4" 0 1 131072 15 1 0.169290 -- "C" "C" 0 1 131072 16 6 0.705530 -- "O" "O2" 0 1 131072 17 8 -0.822990 -- "OXT" "O2" 0 1 131072 18 8 -0.822990 --!entry.CHIE.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CC" 0 -1 0.0 -- "ND1" "NB" 0 -1 0.0 -- "CE1" "CR" 0 -1 0.0 -- "HE1" "H5" 0 -1 0.0 -- "NE2" "NA" 0 -1 0.0 -- "HE2" "H" 0 -1 0.0 -- "CD2" "CW" 0 -1 0.0 -- "HD2" "H4" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CHIE.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CHIE.unit.childsequence single int -- 2 --!entry.CHIE.unit.connect array int -- 1 -- 0 --!entry.CHIE.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 16 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 14 1 -- 9 10 1 -- 10 11 1 -- 10 12 1 -- 12 13 1 -- 12 14 1 -- 14 15 1 -- 16 17 1 -- 16 18 1 --!entry.CHIE.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 --!entry.CHIE.unit.name single str -- "CHIE" --!entry.CHIE.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.200813 5.026064 1.321087 -- 3.942782 5.885086 2.382972 -- 4.624274 6.997642 2.182500 -- 4.563048 7.811875 2.904563 -- 5.294011 6.891451 1.061663 -- 5.896297 7.605085 0.676854 -- 5.058974 5.678868 0.492453 -- 5.537741 5.417846 -0.451343 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CHIE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CHIE.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CHIE" 1 19 1 "p" 0 --!entry.CHIE.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CHIE.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CHIE.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CHIP.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.029340 -- "HA" "H1" 0 1 131072 4 1 0.065870 -- "CB" "CT" 0 1 131072 5 6 -0.093770 -- "HB2" "HC" 0 1 131072 6 1 0.087980 -- "HB3" "HC" 0 1 131072 7 1 0.087980 -- "CG" "CC" 0 1 131072 8 6 0.263950 -- "ND1" "NA" 0 1 131072 9 7 -0.125480 -- "HD1" "H" 0 1 131072 10 1 0.367860 -- "CE1" "CR" 0 1 131072 11 6 -0.069000 -- "HE1" "H5" 0 1 131072 12 1 0.195860 -- "NE2" "NA" 0 1 131072 13 7 0.034660 -- "HE2" "H" 0 1 131072 14 1 0.297530 -- "CD2" "CW" 0 1 131072 15 6 -0.181280 -- "HD2" "H4" 0 1 131072 16 1 0.150240 -- "C" "C" 0 1 131072 17 6 0.705530 -- "O" "O2" 0 1 131072 18 8 -0.822990 -- "OXT" "O2" 0 1 131072 19 8 -0.822990 --!entry.CHIP.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CC" 0 -1 0.0 -- "ND1" "NA" 0 -1 0.0 -- "HD1" "H" 0 -1 0.0 -- "CE1" "CR" 0 -1 0.0 -- "HE1" "H5" 0 -1 0.0 -- "NE2" "NA" 0 -1 0.0 -- "HE2" "H" 0 -1 0.0 -- "CD2" "CW" 0 -1 0.0 -- "HD2" "H4" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CHIP.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CHIP.unit.childsequence single int -- 2 --!entry.CHIP.unit.connect array int -- 1 -- 0 --!entry.CHIP.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 17 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 15 1 -- 9 10 1 -- 9 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 15 1 -- 15 16 1 -- 17 18 1 -- 17 19 1 --!entry.CHIP.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 --!entry.CHIP.unit.name single str -- "CHIP" --!entry.CHIP.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.200813 5.026064 1.321087 -- 3.942782 5.885086 2.382972 -- 3.339725 5.691913 3.169805 -- 4.624274 6.997642 2.182500 -- 4.563048 7.811875 2.904563 -- 5.294011 6.891451 1.061663 -- 5.896297 7.605085 0.676854 -- 5.058974 5.678868 0.492453 -- 5.537741 5.417846 -0.451343 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CHIP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CHIP.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CHIP" 1 20 1 "p" 0 --!entry.CHIP.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CHIP.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CHIP.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CILE.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.287930 -- "HA" "H1" 0 1 131072 4 1 0.135390 -- "CB" "CT" 0 1 131072 5 6 0.357940 -- "HB" "HC" 0 1 131072 6 1 -0.079320 -- "CG2" "CT" 0 1 131072 7 6 -0.501190 -- "HG21" "HC" 0 1 131072 8 1 0.140430 -- "HG22" "HC" 0 1 131072 9 1 0.140430 -- "HG23" "HC" 0 1 131072 10 1 0.140430 -- "CG1" "CT" 0 1 131072 11 6 -0.081150 -- "HG12" "HC" 0 1 131072 12 1 0.048560 -- "HG13" "HC" 0 1 131072 13 1 0.048560 -- "CD1" "CT" 0 1 131072 14 6 -0.094950 -- "HD11" "HC" 0 1 131072 15 1 0.028620 -- "HD12" "HC" 0 1 131072 16 1 0.028620 -- "HD13" "HC" 0 1 131072 17 1 0.028620 -- "C" "C" 0 1 131072 18 6 0.705530 -- "O" "O2" 0 1 131072 19 8 -0.822990 -- "OXT" "O2" 0 1 131072 20 8 -0.822990 --!entry.CILE.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB" "HC" 0 -1 0.0 -- "CG2" "CT" 0 -1 0.0 -- "HG21" "HC" 0 -1 0.0 -- "HG22" "HC" 0 -1 0.0 -- "HG23" "HC" 0 -1 0.0 -- "CG1" "CT" 0 -1 0.0 -- "HG12" "HC" 0 -1 0.0 -- "HG13" "HC" 0 -1 0.0 -- "CD1" "CT" 0 -1 0.0 -- "HD11" "HC" 0 -1 0.0 -- "HD12" "HC" 0 -1 0.0 -- "HD13" "HC" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CILE.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CILE.unit.childsequence single int -- 2 --!entry.CILE.unit.connect array int -- 1 -- 0 --!entry.CILE.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 18 1 -- 5 6 1 -- 5 7 1 -- 5 11 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 11 12 1 -- 11 13 1 -- 11 14 1 -- 14 15 1 -- 14 16 1 -- 14 17 1 -- 18 19 1 -- 18 20 1 --!entry.CILE.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 --!entry.CILE.unit.name single str -- "CILE" --!entry.CILE.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.552136 3.620733 1.245168 -- 2.470128 3.752486 1.245640 -- 3.970045 2.845728 2.490296 -- 5.052053 2.713974 2.490763 -- 3.671561 3.399208 3.380615 -- 3.485650 1.869275 2.490737 -- 4.230204 4.986694 1.245169 -- 5.312310 4.855746 1.245164 -- 3.931820 5.541027 0.355348 -- 3.812294 5.761632 2.490339 -- 4.110777 5.208104 3.380628 -- 4.296689 6.738085 2.490833 -- 2.730286 5.893383 2.490813 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CILE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CILE.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CILE" 1 21 1 "p" 0 --!entry.CILE.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CILE.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CILE.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CLEU.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.151630 -- "HA" "H1" 0 1 131072 4 1 0.080730 -- "CB" "CT" 0 1 131072 5 6 -0.251240 -- "HB2" "HC" 0 1 131072 6 1 0.113740 -- "HB3" "HC" 0 1 131072 7 1 0.113740 -- "CG" "CT" 0 1 131072 8 6 0.579270 -- "HG" "HC" 0 1 131072 9 1 -0.096890 -- "CD1" "CT" 0 1 131072 10 6 -0.760610 -- "HD11" "HC" 0 1 131072 11 1 0.197760 -- "HD12" "HC" 0 1 131072 12 1 0.197760 -- "HD13" "HC" 0 1 131072 13 1 0.197760 -- "CD2" "CT" 0 1 131072 14 6 -0.760610 -- "HD21" "HC" 0 1 131072 15 1 0.197760 -- "HD22" "HC" 0 1 131072 16 1 0.197760 -- "HD23" "HC" 0 1 131072 17 1 0.197760 -- "C" "C" 0 1 131072 18 6 0.705530 -- "O" "O2" 0 1 131072 19 8 -0.822990 -- "OXT" "O2" 0 1 131072 20 8 -0.822990 --!entry.CLEU.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG" "HC" 0 -1 0.0 -- "CD1" "CT" 0 -1 0.0 -- "HD11" "HC" 0 -1 0.0 -- "HD12" "HC" 0 -1 0.0 -- "HD13" "HC" 0 -1 0.0 -- "CD2" "CT" 0 -1 0.0 -- "HD21" "HC" 0 -1 0.0 -- "HD22" "HC" 0 -1 0.0 -- "HD23" "HC" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CLEU.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CLEU.unit.childsequence single int -- 2 --!entry.CLEU.unit.connect array int -- 1 -- 0 --!entry.CLEU.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 18 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 14 1 -- 10 11 1 -- 10 12 1 -- 10 13 1 -- 14 15 1 -- 14 16 1 -- 14 17 1 -- 18 19 1 -- 18 20 1 --!entry.CLEU.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 --!entry.CLEU.unit.name single str -- "CLEU" --!entry.CLEU.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.853429 5.762895 -0.062857 -- 2.773449 5.910113 -0.054557 -- 4.351513 6.732052 -0.090203 -- 4.134159 5.185704 -0.943846 -- 3.881105 5.817645 2.426721 -- 4.181626 5.279602 3.325774 -- 4.379198 6.786825 2.400363 -- 2.801135 5.964881 2.435959 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CLEU.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CLEU.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CLEU" 1 21 1 "p" 0 --!entry.CLEU.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CLEU.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CLEU.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CLYN.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.163200 -- "HA" "H1" 0 1 131072 4 1 0.095860 -- "CB" "CT" 0 1 131072 5 6 0.095690 -- "HB2" "HC" 0 1 131072 6 1 -0.015960 -- "HB3" "HC" 0 1 131072 7 1 -0.015960 -- "CG" "CT" 0 1 131072 8 6 0.018310 -- "HG2" "HC" 0 1 131072 9 1 0.010750 -- "HG3" "HC" 0 1 131072 10 1 0.010750 -- "CD" "CT" 0 1 131072 11 6 -0.229410 -- "HD2" "HC" 0 1 131072 12 1 0.104310 -- "HD3" "HC" 0 1 131072 13 1 0.104310 -- "CE" "CT" 0 1 131072 14 6 0.528910 -- "HE2" "H1" 0 1 131072 15 1 -0.110750 -- "HE3" "H1" 0 1 131072 16 1 -0.110750 -- "NZ" "NT" 0 1 131072 17 7 -0.980200 -- "HZ2" "H" 0 1 131072 18 1 0.355200 -- "HZ3" "H" 0 1 131072 19 1 0.355200 -- "C" "C" 0 1 131072 20 6 0.705530 -- "O" "O2" 0 1 131072 21 8 -0.822990 -- "OXT" "O2" 0 1 131072 22 8 -0.822990 --!entry.CLYN.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "CT" 0 -1 0.0 -- "HD2" "HC" 0 -1 0.0 -- "HD3" "HC" 0 -1 0.0 -- "CE" "CT" 0 -1 0.0 -- "HE2" "H1" 0 -1 0.0 -- "HE3" "H1" 0 -1 0.0 -- "NZ" "NT" 0 -1 0.0 -- "HZ2" "H" 0 -1 0.0 -- "HZ3" "H" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CLYN.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CLYN.unit.childsequence single int -- 2 --!entry.CLYN.unit.connect array int -- 1 -- 0 --!entry.CLYN.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 20 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 11 13 1 -- 11 14 1 -- 14 15 1 -- 14 16 1 -- 14 17 1 -- 17 18 1 -- 17 19 1 -- 20 21 1 -- 20 22 1 --!entry.CLYN.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 -- "R" 1 "A" 22 --!entry.CLYN.unit.name single str -- "CLYN" --!entry.CLYN.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.973781 5.548460 0.295972 -- 3.881105 5.817645 2.426721 -- 2.801135 5.964881 2.435959 -- 4.181626 5.279602 3.325774 -- 4.578325 7.173410 2.389153 -- 5.658410 7.026987 2.380363 -- 4.277917 7.712267 1.490550 -- 4.199422 7.952309 3.576860 -- 4.661186 8.850226 3.551979 -- 3.198675 8.088466 3.584971 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CLYN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CLYN.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CLYN" 1 23 1 "p" 0 --!entry.CLYN.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CLYN.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CLYN.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CLYS.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.185190 -- "HA" "H1" 0 1 131072 4 1 0.120990 -- "CB" "CT" 0 1 131072 5 6 0.035190 -- "HB2" "HC" 0 1 131072 6 1 0.015850 -- "HB3" "HC" 0 1 131072 7 1 0.015850 -- "CG" "CT" 0 1 131072 8 6 -0.039190 -- "HG2" "HC" 0 1 131072 9 1 0.047540 -- "HG3" "HC" 0 1 131072 10 1 0.047540 -- "CD" "CT" 0 1 131072 11 6 -0.190030 -- "HD2" "HC" 0 1 131072 12 1 0.094440 -- "HD3" "HC" 0 1 131072 13 1 0.094440 -- "CE" "CT" 0 1 131072 14 6 0.457400 -- "HE2" "HP" 0 1 131072 15 1 -0.049110 -- "HE3" "HP" 0 1 131072 16 1 -0.049110 -- "NZ" "N3" 0 1 131072 17 7 -0.371640 -- "HZ1" "H" 0 1 131072 18 1 0.336030 -- "HZ2" "H" 0 1 131072 19 1 0.336030 -- "HZ3" "H" 0 1 131072 20 1 0.336030 -- "C" "C" 0 1 131072 21 6 0.705530 -- "O" "O2" 0 1 131072 22 8 -0.822990 -- "OXT" "O2" 0 1 131072 23 8 -0.822990 --!entry.CLYS.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "CT" 0 -1 0.0 -- "HD2" "HC" 0 -1 0.0 -- "HD3" "HC" 0 -1 0.0 -- "CE" "CT" 0 -1 0.0 -- "HE2" "HP" 0 -1 0.0 -- "HE3" "HP" 0 -1 0.0 -- "NZ" "N3" 0 -1 0.0 -- "HZ1" "H" 0 -1 0.0 -- "HZ2" "H" 0 -1 0.0 -- "HZ3" "H" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CLYS.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CLYS.unit.childsequence single int -- 2 --!entry.CLYS.unit.connect array int -- 1 -- 0 --!entry.CLYS.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 21 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 11 13 1 -- 11 14 1 -- 14 15 1 -- 14 16 1 -- 14 17 1 -- 17 18 1 -- 17 19 1 -- 17 20 1 -- 21 22 1 -- 21 23 1 --!entry.CLYS.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 -- "R" 1 "A" 22 -- "R" 1 "A" 23 --!entry.CLYS.unit.name single str -- "CLYS" --!entry.CLYS.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.973781 5.548460 0.295972 -- 3.881105 5.817645 2.426721 -- 2.801135 5.964881 2.435959 -- 4.181626 5.279602 3.325774 -- 4.578325 7.173410 2.389153 -- 5.658410 7.026987 2.380363 -- 4.277917 7.712267 1.490550 -- 4.199422 7.952309 3.576860 -- 4.478085 7.453366 4.409628 -- 4.661186 8.850226 3.551979 -- 3.198675 8.088466 3.584971 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CLYS.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CLYS.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CLYS" 1 24 1 "p" 0 --!entry.CLYS.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CLYS.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CLYS.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CMET.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.171820 -- "HA" "H1" 0 1 131072 4 1 0.129660 -- "CB" "CT" 0 1 131072 5 6 0.250160 -- "HB2" "HC" 0 1 131072 6 1 -0.026630 -- "HB3" "HC" 0 1 131072 7 1 -0.026630 -- "CG" "CT" 0 1 131072 8 6 -0.366710 -- "HG2" "H1" 0 1 131072 9 1 0.160270 -- "HG3" "H1" 0 1 131072 10 1 0.160270 -- "SD" "S" 0 1 131072 11 16 -0.122120 -- "CE" "CT" 0 1 131072 12 6 -0.263690 -- "HE1" "H1" 0 1 131072 13 1 0.110100 -- "HE2" "H1" 0 1 131072 14 1 0.110100 -- "HE3" "H1" 0 1 131072 15 1 0.110100 -- "C" "C" 0 1 131072 16 6 0.705530 -- "O" "O2" 0 1 131072 17 8 -0.822990 -- "OXT" "O2" 0 1 131072 18 8 -0.822990 --!entry.CMET.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "H1" 0 -1 0.0 -- "HG3" "H1" 0 -1 0.0 -- "SD" "S" 0 -1 0.0 -- "CE" "CT" 0 -1 0.0 -- "HE1" "H1" 0 -1 0.0 -- "HE2" "H1" 0 -1 0.0 -- "HE3" "H1" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CMET.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CMET.unit.childsequence single int -- 2 --!entry.CMET.unit.connect array int -- 1 -- 0 --!entry.CMET.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 16 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 12 13 1 -- 12 14 1 -- 12 15 1 -- 16 17 1 -- 16 18 1 --!entry.CMET.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 --!entry.CMET.unit.name single str -- "CMET" --!entry.CMET.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.973781 5.548460 0.295972 -- 3.817309 5.981266 2.651708 -- 4.753212 7.463128 2.340949 -- 4.433582 7.904044 1.396741 -- 4.585907 8.175299 3.148985 -- 5.814074 7.218763 2.286554 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CMET.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CMET.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CMET" 1 19 1 "p" 0 --!entry.CMET.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CMET.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CMET.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CPHE.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.072690 -- "HA" "H1" 0 1 131072 4 1 0.053080 -- "CB" "CT" 0 1 131072 5 6 -0.213480 -- "HB2" "HC" 0 1 131072 6 1 0.116210 -- "HB3" "HC" 0 1 131072 7 1 0.116210 -- "CG" "CA" 0 1 131072 8 6 0.197950 -- "CD1" "CA" 0 1 131072 9 6 -0.219910 -- "HD1" "HA" 0 1 131072 10 1 0.142120 -- "CE1" "CA" 0 1 131072 11 6 -0.084720 -- "HE1" "HA" 0 1 131072 12 1 0.108500 -- "CZ" "CA" 0 1 131072 13 6 -0.128160 -- "HZ" "HA" 0 1 131072 14 1 0.091960 -- "CE2" "CA" 0 1 131072 15 6 -0.084720 -- "HE2" "HA" 0 1 131072 16 1 0.108500 -- "CD2" "CA" 0 1 131072 17 6 -0.219910 -- "HD2" "HA" 0 1 131072 18 1 0.142120 -- "C" "C" 0 1 131072 19 6 0.705530 -- "O" "O2" 0 1 131072 20 8 -0.822990 -- "OXT" "O2" 0 1 131072 21 8 -0.822990 --!entry.CPHE.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CA" 0 -1 0.0 -- "CD1" "CA" 0 -1 0.0 -- "HD1" "HA" 0 -1 0.0 -- "CE1" "CA" 0 -1 0.0 -- "HE1" "HA" 0 -1 0.0 -- "CZ" "CA" 0 -1 0.0 -- "HZ" "HA" 0 -1 0.0 -- "CE2" "CA" 0 -1 0.0 -- "HE2" "HA" 0 -1 0.0 -- "CD2" "CA" 0 -1 0.0 -- "HD2" "HA" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CPHE.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CPHE.unit.childsequence single int -- 2 --!entry.CPHE.unit.connect array int -- 1 -- 0 --!entry.CPHE.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 19 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 17 1 -- 9 10 1 -- 9 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 15 1 -- 15 16 1 -- 15 17 1 -- 17 18 1 -- 19 20 1 -- 19 21 1 --!entry.CPHE.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 --!entry.CPHE.unit.name single str -- "CPHE" --!entry.CPHE.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.200813 5.026064 1.321087 -- 3.911613 5.857250 2.409890 -- 3.236123 5.513843 3.193398 -- 4.490014 7.129513 2.492354 -- 4.264853 7.776651 3.340066 -- 5.357616 7.570591 1.486016 -- 5.807943 8.561138 1.550220 -- 5.646818 6.739407 0.397211 -- 6.322309 7.082817 -0.386295 -- 5.068419 5.467143 0.314744 -- 5.293584 4.820007 -0.532968 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CPHE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CPHE.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CPHE" 1 22 1 "p" 0 --!entry.CPHE.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CPHE.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CPHE.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CPRO.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.251210 -- "CD" "CT" 0 1 131072 2 6 0.062560 -- "HD2" "H1" 0 1 131072 3 1 0.022030 -- "HD3" "H1" 0 1 131072 4 1 0.022010 -- "CG" "CT" 0 1 131072 5 6 0.066380 -- "HG2" "HC" 0 1 131072 6 1 0.007490 -- "HG3" "HC" 0 1 131072 7 1 0.007490 -- "CB" "CT" 0 1 131072 8 6 0.069820 -- "HB2" "HC" 0 1 131072 9 1 0.013210 -- "HB3" "HC" 0 1 131072 10 1 0.013210 -- "CA" "CT" 0 1 131072 11 6 -0.200450 -- "HA" "H1" 0 1 131072 12 1 0.107910 -- "C" "C" 0 1 131072 13 6 0.705530 -- "O" "O2" 0 1 131072 14 8 -0.822990 -- "OXT" "O2" 0 1 131072 15 8 -0.822990 --!entry.CPRO.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "CD" "CT" 0 -1 0.0 -- "HD2" "H1" 0 -1 0.0 -- "HD3" "H1" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CPRO.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CPRO.unit.childsequence single int -- 2 --!entry.CPRO.unit.connect array int -- 1 -- 0 --!entry.CPRO.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 11 1 -- 2 3 1 -- 2 4 1 -- 2 5 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 15 1 --!entry.CPRO.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 --!entry.CPRO.unit.name single str -- "CPRO" --!entry.CPRO.unit.positions table dbl x dbl y dbl z -- 3.326834 1.557389 -1.603945E-06 -- 4.302147 0.476598 0.080119 -- 4.419998 0.019283 -0.902263 -- 3.955888 -0.274040 0.790574 -- 5.547126 1.172441 0.544693 -- 6.413549 0.741636 0.042879 -- 5.652950 1.047934 1.622376 -- 5.369091 2.628184 0.185227 -- 5.969289 2.861861 -0.694123 -- 5.690642 3.251038 1.019947 -- 3.933610 2.871277 -0.104508 -- 3.611470 3.488570 0.734106 -- 3.505164 3.526392 -1.409783 -- 2.754240 2.939065 -2.185412 -- 3.904907 4.650696 -1.704043 --!entry.CPRO.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CPRO.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CPRO" 1 16 1 "p" 0 --!entry.CPRO.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CPRO.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CPRO.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CSER.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.069940 -- "HA" "H1" 0 1 131072 4 1 0.110000 -- "CB" "CT" 0 1 131072 5 6 0.169960 -- "HB2" "H1" 0 1 131072 6 1 0.022900 -- "HB3" "H1" 0 1 131072 7 1 0.022900 -- "OG" "OH" 0 1 131072 8 8 -0.571310 -- "HG" "HO" 0 1 131072 9 1 0.368550 -- "C" "C" 0 1 131072 10 6 0.705530 -- "O" "O2" 0 1 131072 11 8 -0.822990 -- "OXT" "O2" 0 1 131072 12 8 -0.822990 --!entry.CSER.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "H1" 0 -1 0.0 -- "HB3" "H1" 0 -1 0.0 -- "OG" "OH" 0 -1 0.0 -- "HG" "HO" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CSER.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CSER.unit.childsequence single int -- 2 --!entry.CSER.unit.connect array int -- 1 -- 0 --!entry.CSER.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 10 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 10 11 1 -- 10 12 1 --!entry.CSER.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 --!entry.CSER.unit.name single str -- "CSER" --!entry.CSER.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.230753 4.925145 1.196917 -- 3.983305 5.433814 1.972562 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CSER.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CSER.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CSER" 1 13 1 "p" 0 --!entry.CSER.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CSER.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CSER.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CTHR.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 0.019110 -- "HA" "H1" 0 1 131072 4 1 0.067720 -- "CB" "CT" 0 1 131072 5 6 0.444500 -- "HB" "H1" 0 1 131072 6 1 -0.106110 -- "CG2" "CT" 0 1 131072 7 6 -0.496090 -- "HG21" "HC" 0 1 131072 8 1 0.133070 -- "HG22" "HC" 0 1 131072 9 1 0.133070 -- "HG23" "HC" 0 1 131072 10 1 0.133070 -- "OG1" "OH" 0 1 131072 11 8 -0.724290 -- "HG1" "HO" 0 1 131072 12 1 0.449010 -- "C" "C" 0 1 131072 13 6 0.705530 -- "O" "O2" 0 1 131072 14 8 -0.822990 -- "OXT" "O2" 0 1 131072 15 8 -0.822990 --!entry.CTHR.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB" "H1" 0 -1 0.0 -- "CG2" "CT" 0 -1 0.0 -- "HG21" "HC" 0 -1 0.0 -- "HG22" "HC" 0 -1 0.0 -- "HG23" "HC" 0 -1 0.0 -- "OG1" "OH" 0 -1 0.0 -- "HG1" "HO" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CTHR.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CTHR.unit.childsequence single int -- 2 --!entry.CTHR.unit.connect array int -- 1 -- 0 --!entry.CTHR.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 13 1 -- 5 6 1 -- 5 7 1 -- 5 11 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 11 12 1 -- 13 14 1 -- 13 15 1 --!entry.CTHR.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 --!entry.CTHR.unit.name single str -- "CTHR" --!entry.CTHR.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 4.075059 4.623017 1.205786 -- 2.065936 3.859425 1.244383 -- 1.567127 2.890627 1.271209 -- 1.784431 4.436953 2.124903 -- 1.764699 4.397847 0.345796 -- 3.971501 2.947413 2.411212 -- 3.724052 3.456082 3.186857 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CTHR.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CTHR.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CTHR" 1 16 1 "p" 0 --!entry.CTHR.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CTHR.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CTHR.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CTRP.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.090040 -- "HA" "H1" 0 1 131072 4 1 0.084020 -- "CB" "CT" 0 1 131072 5 6 0.040520 -- "HB2" "HC" 0 1 131072 6 1 0.031680 -- "HB3" "HC" 0 1 131072 7 1 0.031680 -- "CG" "C*" 0 1 131072 8 6 -0.293840 -- "CD1" "CW" 0 1 131072 9 6 0.036620 -- "HD1" "H4" 0 1 131072 10 1 0.130250 -- "NE1" "NA" 0 1 131072 11 7 -0.473000 -- "HE1" "H" 0 1 131072 12 1 0.391490 -- "CE2" "CN" 0 1 131072 13 6 0.187500 -- "CZ2" "CA" 0 1 131072 14 6 -0.261570 -- "HZ2" "HA" 0 1 131072 15 1 0.183290 -- "CH2" "CA" 0 1 131072 16 6 -0.178280 -- "HH2" "HA" 0 1 131072 17 1 0.106010 -- "CZ3" "CA" 0 1 131072 18 6 -0.048150 -- "HZ3" "HA" 0 1 131072 19 1 0.086830 -- "CE3" "CA" 0 1 131072 20 6 -0.414910 -- "HE3" "HA" 0 1 131072 21 1 0.219040 -- "CD2" "CB" 0 1 131072 22 6 0.283920 -- "C" "C" 0 1 131072 23 6 0.705530 -- "O" "O2" 0 1 131072 24 8 -0.822990 -- "OXT" "O2" 0 1 131072 25 8 -0.822990 --!entry.CTRP.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "C*" 0 -1 0.0 -- "CD1" "CW" 0 -1 0.0 -- "HD1" "H4" 0 -1 0.0 -- "NE1" "NA" 0 -1 0.0 -- "HE1" "H" 0 -1 0.0 -- "CE2" "CN" 0 -1 0.0 -- "CZ2" "CA" 0 -1 0.0 -- "HZ2" "HA" 0 -1 0.0 -- "CH2" "CA" 0 -1 0.0 -- "HH2" "HA" 0 -1 0.0 -- "CZ3" "CA" 0 -1 0.0 -- "HZ3" "HA" 0 -1 0.0 -- "CE3" "CA" 0 -1 0.0 -- "HE3" "HA" 0 -1 0.0 -- "CD2" "CB" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CTRP.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CTRP.unit.childsequence single int -- 2 --!entry.CTRP.unit.connect array int -- 1 -- 0 --!entry.CTRP.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 23 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 22 1 -- 9 10 1 -- 9 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 22 1 -- 14 15 1 -- 14 16 1 -- 16 17 1 -- 16 18 1 -- 18 19 1 -- 18 20 1 -- 20 21 1 -- 20 22 1 -- 23 24 1 -- 23 25 1 --!entry.CTRP.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 -- "R" 1 "A" 22 -- "R" 1 "A" 23 -- "R" 1 "A" 24 -- "R" 1 "A" 25 --!entry.CTRP.unit.name single str -- "CTRP" --!entry.CTRP.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.200813 5.026064 1.321087 -- 4.023453 5.931084 2.293240 -- 3.368841 5.705466 3.135071 -- 4.811943 7.073555 1.949808 -- 4.882921 7.922010 2.493118 -- 5.427347 6.842060 0.816764 -- 6.297161 7.689052 0.119605 -- 6.531230 8.676649 0.517050 -- 6.814091 7.187011 -1.069023 -- 7.498074 7.791857 -1.664362 -- 6.482659 5.953119 -1.505101 -- 6.897660 5.575648 -2.439654 -- 5.604041 5.117355 -0.785636 -- 5.358720 4.126570 -1.168080 -- 5.083390 5.623004 0.411545 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CTRP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CTRP.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CTRP" 1 26 1 "p" 0 --!entry.CTRP.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CTRP.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CTRP.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CTYR.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.175550 -- "HA" "H1" 0 1 131072 4 1 0.121890 -- "CB" "CT" 0 1 131072 5 6 -0.093730 -- "HB2" "HC" 0 1 131072 6 1 0.086440 -- "HB3" "HC" 0 1 131072 7 1 0.086440 -- "CG" "CA" 0 1 131072 8 6 0.017450 -- "CD1" "CA" 0 1 131072 9 6 -0.128300 -- "HD1" "HA" 0 1 131072 10 1 0.137650 -- "CE1" "CA" 0 1 131072 11 6 -0.334250 -- "HE1" "HA" 0 1 131072 12 1 0.190120 -- "CZ" "CA" 0 1 131072 13 6 0.442000 -- "OH" "OH" 0 1 131072 14 8 -0.544620 -- "HH" "HO" 0 1 131072 15 1 0.382300 -- "CE2" "CA" 0 1 131072 16 6 -0.334250 -- "HE2" "HA" 0 1 131072 17 1 0.190120 -- "CD2" "CA" 0 1 131072 18 6 -0.128300 -- "HD2" "HA" 0 1 131072 19 1 0.137650 -- "C" "C" 0 1 131072 20 6 0.705530 -- "O" "O2" 0 1 131072 21 8 -0.822990 -- "OXT" "O2" 0 1 131072 22 8 -0.822990 --!entry.CTYR.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CA" 0 -1 0.0 -- "CD1" "CA" 0 -1 0.0 -- "HD1" "HA" 0 -1 0.0 -- "CE1" "CA" 0 -1 0.0 -- "HE1" "HA" 0 -1 0.0 -- "CZ" "CA" 0 -1 0.0 -- "OH" "OH" 0 -1 0.0 -- "HH" "HO" 0 -1 0.0 -- "CE2" "CA" 0 -1 0.0 -- "HE2" "HA" 0 -1 0.0 -- "CD2" "CA" 0 -1 0.0 -- "HD2" "HA" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CTYR.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CTYR.unit.childsequence single int -- 2 --!entry.CTYR.unit.connect array int -- 1 -- 0 --!entry.CTYR.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 20 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 18 1 -- 9 10 1 -- 9 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 16 1 -- 14 15 1 -- 16 17 1 -- 16 18 1 -- 18 19 1 -- 20 21 1 -- 20 22 1 --!entry.CTYR.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 -- "R" 1 "A" 22 --!entry.CTYR.unit.name single str -- "CTYR" --!entry.CTYR.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.267328 4.996267 1.194946 -- 4.059927 5.918911 2.227280 -- 3.400108 5.668218 3.057877 -- 4.699998 7.163547 2.192791 -- 4.538522 7.881891 2.996538 -- 5.547471 7.485542 1.125970 -- 6.169255 8.694617 1.092468 -- 5.956327 9.246984 1.848214 -- 5.754875 6.562900 0.093635 -- 6.414694 6.813595 -0.736962 -- 5.114806 5.318263 0.128119 -- 5.276286 4.599920 -0.675627 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CTYR.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CTYR.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CTYR" 1 23 1 "p" 0 --!entry.CTYR.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CTYR.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CTYR.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CVAL.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.213060 -- "HA" "H1" 0 1 131072 4 1 0.122010 -- "CB" "CT" 0 1 131072 5 6 0.550920 -- "HB" "HC" 0 1 131072 6 1 -0.083650 -- "CG1" "CT" 0 1 131072 7 6 -0.705720 -- "HG11" "HC" 0 1 131072 8 1 0.181380 -- "HG12" "HC" 0 1 131072 9 1 0.181380 -- "HG13" "HC" 0 1 131072 10 1 0.181380 -- "CG2" "CT" 0 1 131072 11 6 -0.705720 -- "HG21" "HC" 0 1 131072 12 1 0.181380 -- "HG22" "HC" 0 1 131072 13 1 0.181380 -- "HG23" "HC" 0 1 131072 14 1 0.181380 -- "C" "C" 0 1 131072 15 6 0.705530 -- "O" "O2" 0 1 131072 16 8 -0.822990 -- "OXT" "O2" 0 1 131072 17 8 -0.822990 --!entry.CVAL.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB" "HC" 0 -1 0.0 -- "CG1" "CT" 0 -1 0.0 -- "HG11" "HC" 0 -1 0.0 -- "HG12" "HC" 0 -1 0.0 -- "HG13" "HC" 0 -1 0.0 -- "CG2" "CT" 0 -1 0.0 -- "HG21" "HC" 0 -1 0.0 -- "HG22" "HC" 0 -1 0.0 -- "HG23" "HC" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O2" 0 -1 0.0 -- "OXT" "O2" 0 -1 0.0 --!entry.CVAL.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CVAL.unit.childsequence single int -- 2 --!entry.CVAL.unit.connect array int -- 1 -- 0 --!entry.CVAL.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 15 1 -- 5 6 1 -- 5 7 1 -- 5 11 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 11 12 1 -- 11 13 1 -- 11 14 1 -- 15 16 1 -- 15 17 1 --!entry.CVAL.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 --!entry.CVAL.unit.name single str -- "CVAL" --!entry.CVAL.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.997712 2.900483 2.489542 -- 5.077693 2.753265 2.481244 -- 3.716972 3.477628 3.370558 -- 3.499630 1.931323 2.516834 -- 4.274186 5.009602 1.194577 -- 3.973781 5.548460 0.295972 -- 3.993559 5.587585 2.075079 -- 5.354271 4.863178 1.185788 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 -- 6.204455 3.702003 -2.420005E-06 --!entry.CVAL.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 0 0 0 0 0 --!entry.CVAL.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CVAL" 1 18 1 "p" 0 --!entry.CVAL.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CVAL.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CVAL.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NME.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.534190 -- "H" "H" 0 1 131072 2 1 0.339300 -- "CH3" "CT" 0 1 131072 3 6 0.044800 -- "HH31" "H1" 0 1 131072 4 1 0.050030 -- "HH32" "H1" 0 1 131072 5 1 0.050030 -- "HH33" "H1" 0 1 131072 6 1 0.050030 --!entry.NME.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CH3" "CT" 0 -1 0.0 -- "HH31" "H1" 0 -1 0.0 -- "HH32" "H1" 0 -1 0.0 -- "HH33" "H1" 0 -1 0.0 --!entry.NME.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NME.unit.childsequence single int -- 2 --!entry.NME.unit.connect array int -- 1 -- 0 --!entry.NME.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 6 1 --!entry.NME.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 --!entry.NME.unit.name single str -- "NME" --!entry.NME.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.211504 3.628554 2.348065E-06 -- 4.591993 2.943271 0.889822 -- 4.591988 2.943275 -0.889825 --!entry.NME.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 3 0 0 0 0 --!entry.NME.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NME" 1 7 1 "p" 0 --!entry.NME.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NME.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NME.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -diff --git a/dat/leap/lib/aminontpol12.lib b/dat/leap/lib/aminontpol12.lib -deleted file mode 100644 -index ead0d89..0000000 ---- a/dat/leap/lib/aminontpol12.lib -+++ /dev/null -@@ -1,3839 +0,0 @@ --!!index array str -- "ACE" -- "NALA" -- "NARG" -- "NASH" -- "NASN" -- "NASP" -- "NCYM" -- "NCYS" -- "NCYX" -- "NGLH" -- "NGLN" -- "NGLU" -- "NGLY" -- "NHID" -- "NHIE" -- "NHIP" -- "NILE" -- "NLEU" -- "NLYN" -- "NLYS" -- "NMET" -- "NPHE" -- "NPRO" -- "NSER" -- "NTHR" -- "NTRP" -- "NTYR" -- "NVAL" --!entry.ACE.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "HH31" "HC" 0 1 131072 1 1 0.245320 -- "CH3" "CT" 0 1 131072 2 6 -0.841920 -- "HH32" "HC" 0 1 131072 3 1 0.245320 -- "HH33" "HC" 0 1 131072 4 1 0.245320 -- "C" "C" 0 1 131072 5 6 0.730100 -- "O" "O" 0 1 131072 6 8 -0.624140 --!entry.ACE.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "HH31" "HC" 0 -1 0.0 -- "CH3" "CT" 0 -1 0.0 -- "HH32" "HC" 0 -1 0.0 -- "HH33" "HC" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.ACE.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.ACE.unit.childsequence single int -- 2 --!entry.ACE.unit.connect array int -- 0 -- 5 --!entry.ACE.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 2 3 1 -- 2 4 1 -- 2 5 1 -- 5 6 1 --!entry.ACE.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 --!entry.ACE.unit.name single str -- "ACE" --!entry.ACE.unit.positions table dbl x dbl y dbl z -- 2.000001 1.000000 -1.346410E-06 -- 2.000001 2.090000 1.211769E-07 -- 1.486264 2.453849 0.889824 -- 1.486259 2.453852 -0.889820 -- 3.427420 2.640795 -2.981008E-06 -- 4.390580 1.877406 -6.602402E-06 --!entry.ACE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 5 0 0 0 0 --!entry.ACE.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "ACE" 1 7 1 "p" 0 --!entry.ACE.unit.residuesPdbSequenceNumber array int -- 0 --!entry.ACE.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.ACE.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NALA.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.062490 -- "HA" "HP" 0 1 131072 6 1 0.052310 -- "CB" "CT" 0 1 131072 7 6 -0.183710 -- "HB1" "HC" 0 1 131072 8 1 0.085560 -- "HB2" "HC" 0 1 131072 9 1 0.085560 -- "HB3" "HC" 0 1 131072 10 1 0.085560 -- "C" "C" 0 1 131072 11 6 0.670480 -- "O" "O" 0 1 131072 12 8 -0.583250 --!entry.NALA.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB1" "HC" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NALA.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NALA.unit.childsequence single int -- 2 --!entry.NALA.unit.connect array int -- 0 -- 11 --!entry.NALA.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 11 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 11 12 1 --!entry.NALA.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 --!entry.NALA.unit.name single str -- "NALA" --!entry.NALA.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 3.877484 3.115795 2.131197 -- 4.075059 4.623017 1.205786 -- 2.496995 3.801075 1.241379 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NALA.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 11 0 0 0 0 --!entry.NALA.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NALA" 1 13 1 "p" 0 --!entry.NALA.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NALA.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NALA.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NARG.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.086660 -- "HA" "HP" 0 1 131072 6 1 0.033450 -- "CB" "CT" 0 1 131072 7 6 0.605740 -- "HB2" "HC" 0 1 131072 8 1 -0.089670 -- "HB3" "HC" 0 1 131072 9 1 -0.111750 -- "CG" "CT" 0 1 131072 10 6 -0.639700 -- "HG2" "HC" 0 1 131072 11 1 0.145340 -- "HG3" "HC" 0 1 131072 12 1 0.145340 -- "CD" "CT" 0 1 131072 13 6 0.616090 -- "HD2" "H1" 0 1 131072 14 1 -0.083600 -- "HD3" "H1" 0 1 131072 15 1 -0.083600 -- "NE" "N2" 0 1 131072 16 7 -0.781830 -- "HE" "H" 0 1 131072 17 1 0.416010 -- "CZ" "CA" 0 1 131072 18 6 1.114550 -- "NH1" "N2" 0 1 131072 19 7 -0.955440 -- "HH11" "H" 0 1 131072 20 1 0.443490 -- "HH12" "H" 0 1 131072 21 1 0.443490 -- "NH2" "N2" 0 1 131072 22 7 -0.955440 -- "HH21" "H" 0 1 131072 23 1 0.443490 -- "HH22" "H" 0 1 131072 24 1 0.443490 -- "C" "C" 0 1 131072 25 6 0.670480 -- "O" "O" 0 1 131072 26 8 -0.583250 --!entry.NARG.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "CT" 0 -1 0.0 -- "HD2" "H1" 0 -1 0.0 -- "HD3" "H1" 0 -1 0.0 -- "NE" "N2" 0 -1 0.0 -- "HE" "H" 0 -1 0.0 -- "CZ" "CA" 0 -1 0.0 -- "NH1" "N2" 0 -1 0.0 -- "HH11" "H" 0 -1 0.0 -- "HH12" "H" 0 -1 0.0 -- "NH2" "N2" 0 -1 0.0 -- "HH21" "H" 0 -1 0.0 -- "HH22" "H" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NARG.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NARG.unit.childsequence single int -- 2 --!entry.NARG.unit.connect array int -- 0 -- 25 --!entry.NARG.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 25 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 12 1 -- 10 13 1 -- 13 14 1 -- 13 15 1 -- 13 16 1 -- 16 17 1 -- 16 18 1 -- 18 19 1 -- 18 22 1 -- 19 20 1 -- 19 21 1 -- 22 23 1 -- 22 24 1 -- 25 26 1 --!entry.NARG.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 -- "R" 1 "A" 22 -- "R" 1 "A" 23 -- "R" 1 "A" 24 -- "R" 1 "A" 25 -- "R" 1 "A" 26 --!entry.NARG.unit.name single str -- "NARG" --!entry.NARG.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.973781 5.548460 0.295972 -- 3.881105 5.817645 2.426721 -- 2.801135 5.964881 2.435959 -- 4.181626 5.279602 3.325774 -- 4.540320 7.142723 2.424483 -- 5.151805 7.375492 1.655065 -- 4.364284 8.040989 3.389382 -- 3.575026 7.807606 4.434133 -- 3.088949 6.925423 4.508848 -- 3.465367 8.513631 5.147998 -- 5.006254 9.201287 3.286991 -- 5.604855 9.375325 2.492329 -- 4.892216 9.903045 4.004368 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NARG.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 25 0 0 0 0 --!entry.NARG.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NARG" 1 27 1 "p" 0 --!entry.NARG.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NARG.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NARG.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NASH.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 0.084490 -- "HA" "HP" 0 1 131072 6 1 0.002600 -- "CB" "CT" 0 1 131072 7 6 -0.222150 -- "HB2" "HC" 0 1 131072 8 1 0.136250 -- "HB3" "HC" 0 1 131072 9 1 0.136250 -- "CG" "C" 0 1 131072 10 6 0.615590 -- "OD1" "O" 0 1 131072 11 8 -0.553020 -- "OD2" "OH" 0 1 131072 12 8 -0.580780 -- "HD2" "HO" 0 1 131072 13 1 0.443560 -- "C" "C" 0 1 131072 14 6 0.670480 -- "O" "O" 0 1 131072 15 8 -0.583250 --!entry.NASH.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "C" 0 -1 0.0 -- "OD1" "O" 0 -1 0.0 -- "OD2" "OH" 0 -1 0.0 -- "HD2" "HO" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NASH.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NASH.unit.childsequence single int -- 2 --!entry.NASH.unit.connect array int -- 0 -- 14 --!entry.NASH.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 14 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 12 1 -- 12 13 1 -- 14 15 1 --!entry.NASH.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 --!entry.NASH.unit.name single str -- "NASH" --!entry.NASH.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.275101 5.011380 1.194527 -- 3.669108 5.954940 0.620011 -- 5.407731 5.091879 1.740667 -- 5.742902 5.987179 1.652920 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NASH.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 14 0 0 0 0 --!entry.NASH.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NASH" 1 16 1 "p" 0 --!entry.NASH.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NASH.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NASH.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NASN.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 0.009080 -- "HA" "HP" 0 1 131072 6 1 0.021090 -- "CB" "CT" 0 1 131072 7 6 -0.279860 -- "HB2" "HC" 0 1 131072 8 1 0.139080 -- "HB3" "HC" 0 1 131072 9 1 0.139080 -- "CG" "C" 0 1 131072 10 6 0.649780 -- "OD1" "O" 0 1 131072 11 8 -0.558030 -- "ND2" "N" 0 1 131072 12 7 -0.826350 -- "HD21" "H" 0 1 131072 13 1 0.384460 -- "HD22" "H" 0 1 131072 14 1 0.384460 -- "C" "C" 0 1 131072 15 6 0.670480 -- "O" "O" 0 1 131072 16 8 -0.583250 --!entry.NASN.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "C" 0 -1 0.0 -- "OD1" "O" 0 -1 0.0 -- "ND2" "N" 0 -1 0.0 -- "HD21" "H" 0 -1 0.0 -- "HD22" "H" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NASN.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NASN.unit.childsequence single int -- 2 --!entry.NASN.unit.connect array int -- 0 -- 15 --!entry.NASN.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 15 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 12 1 -- 12 13 1 -- 12 14 1 -- 15 16 1 --!entry.NASN.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 --!entry.NASN.unit.name single str -- "NASN" --!entry.NASN.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.253700 5.017112 1.232144 -- 5.005299 5.340406 0.315072 -- 3.984885 5.817909 2.265917 -- 4.408015 6.733702 2.314743 -- 3.359611 5.504297 2.994464 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NASN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 15 0 0 0 0 --!entry.NASN.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NASN" 1 17 1 "p" 0 --!entry.NASN.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NASN.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NASN.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NASP.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.021580 -- "HA" "HP" 0 1 131072 6 1 -0.015560 -- "CB" "CT" 0 1 131072 7 6 -0.319940 -- "HB2" "HC" 0 1 131072 8 1 0.089360 -- "HB3" "HC" 0 1 131072 9 1 0.089360 -- "CG" "C" 0 1 131072 10 6 0.883310 -- "OD1" "O2" 0 1 131072 11 8 -0.821080 -- "OD2" "O2" 0 1 131072 12 8 -0.821080 -- "C" "C" 0 1 131072 13 6 0.670480 -- "O" "O" 0 1 131072 14 8 -0.583250 --!entry.NASP.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "C" 0 -1 0.0 -- "OD1" "O2" 0 -1 0.0 -- "OD2" "O2" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NASP.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NASP.unit.childsequence single int -- 2 --!entry.NASP.unit.connect array int -- 0 -- 13 --!entry.NASP.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 13 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 12 1 -- 13 14 1 --!entry.NASP.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 --!entry.NASP.unit.name single str -- "NASP" --!entry.NASP.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.275101 5.011380 1.194527 -- 3.669108 5.954940 0.620011 -- 5.407731 5.091879 1.740667 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NASP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 13 0 0 0 0 --!entry.NASP.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NASP" 1 15 1 "p" 0 --!entry.NASP.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NASP.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NASP.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NCYM.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.141590 -- "HA" "HP" 0 1 131072 6 1 0.070220 -- "CB" "CT" 0 1 131072 7 6 0.112010 -- "HB2" "H1" 0 1 131072 8 1 -0.023100 -- "HB3" "H1" 0 1 131072 9 1 -0.023100 -- "SG" "SH" 0 1 131072 10 16 -0.931650 -- "C" "C" 0 1 131072 11 6 0.670480 -- "O" "O" 0 1 131072 12 8 -0.583250 --!entry.NCYM.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "H1" 0 -1 0.0 -- "HB3" "H1" 0 -1 0.0 -- "SG" "SH" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NCYM.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NCYM.unit.childsequence single int -- 2 --!entry.NCYM.unit.connect array int -- 0 -- 11 --!entry.NCYM.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 11 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 11 12 1 --!entry.NCYM.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 --!entry.NCYM.unit.name single str -- "NCYM" --!entry.NCYM.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.309573 5.303523 1.366036 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NCYM.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 11 0 0 0 0 --!entry.NCYM.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NCYM" 1 13 1 "p" 0 --!entry.NCYM.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NCYM.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NCYM.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NCYS.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.008690 -- "HA" "HP" 0 1 131072 6 1 0.055730 -- "CB" "CT" 0 1 131072 7 6 -0.028460 -- "HB2" "H1" 0 1 131072 8 1 0.068320 -- "HB3" "H1" 0 1 131072 9 1 0.068320 -- "SG" "SH" 0 1 131072 10 16 -0.250480 -- "HG" "HS" 0 1 131072 11 1 0.158050 -- "C" "C" 0 1 131072 12 6 0.670480 -- "O" "O" 0 1 131072 13 8 -0.583250 --!entry.NCYS.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "H1" 0 -1 0.0 -- "HB3" "H1" 0 -1 0.0 -- "SG" "SH" 0 -1 0.0 -- "HG" "HS" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NCYS.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NCYS.unit.childsequence single int -- 2 --!entry.NCYS.unit.connect array int -- 0 -- 12 --!entry.NCYS.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 12 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 12 13 1 --!entry.NCYS.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 --!entry.NCYS.unit.name single str -- "NCYS" --!entry.NCYS.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.309573 5.303523 1.366036 -- 3.725392 5.622018 2.517640 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NCYS.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 12 0 0 0 0 --!entry.NCYS.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NCYS" 1 14 1 "p" 0 --!entry.NCYS.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NCYS.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NCYS.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NCYX.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.016590 -- "HA" "HP" 0 1 131072 6 1 0.026230 -- "CB" "CT" 0 1 131072 7 6 -0.036490 -- "HB2" "H1" 0 1 131072 8 1 0.084950 -- "HB3" "H1" 0 1 131072 9 1 0.084950 -- "SG" "S" 0 1 131072 10 16 -0.080260 -- "C" "C" 0 1 131072 11 6 0.670480 -- "O" "O" 0 1 131072 12 8 -0.583250 --!entry.NCYX.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "H1" 0 -1 0.0 -- "HB3" "H1" 0 -1 0.0 -- "SG" "S" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NCYX.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NCYX.unit.childsequence single int -- 2 --!entry.NCYX.unit.connect array int -- 0 -- 11 --!entry.NCYX.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 11 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 11 12 1 --!entry.NCYX.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 --!entry.NCYX.unit.name single str -- "NCYX" --!entry.NCYX.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.309573 5.303523 1.366036 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NCYX.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 11 10 0 0 0 --!entry.NCYX.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NCYX" 1 13 1 "p" 0 --!entry.NCYX.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NCYX.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NCYX.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NGLH.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.058830 -- "HA" "HP" 0 1 131072 6 1 0.038110 -- "CB" "CT" 0 1 131072 7 6 0.146800 -- "HB2" "HC" 0 1 131072 8 1 0.015120 -- "HB3" "HC" 0 1 131072 9 1 0.015120 -- "CG" "CT" 0 1 131072 10 6 -0.424760 -- "HG2" "HC" 0 1 131072 11 1 0.200810 -- "HG3" "HC" 0 1 131072 12 1 0.200810 -- "CD" "C" 0 1 131072 13 6 0.647590 -- "OE1" "O" 0 1 131072 14 8 -0.569530 -- "OE2" "OH" 0 1 131072 15 8 -0.601150 -- "HE2" "HO" 0 1 131072 16 1 0.452700 -- "C" "C" 0 1 131072 17 6 0.670480 -- "O" "O" 0 1 131072 18 8 -0.583250 --!entry.NGLH.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "C" 0 -1 0.0 -- "OE1" "O" 0 -1 0.0 -- "OE2" "OH" 0 -1 0.0 -- "HE2" "HO" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NGLH.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NGLH.unit.childsequence single int -- 2 --!entry.NGLH.unit.connect array int -- 0 -- 17 --!entry.NGLH.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 17 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 12 1 -- 10 13 1 -- 13 14 1 -- 13 15 1 -- 15 16 1 -- 17 18 1 --!entry.NGLH.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 --!entry.NGLH.unit.name single str -- "NGLH" --!entry.NGLH.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.267328 4.996267 1.194946 -- 5.347413 4.849843 1.186158 -- 3.966923 5.535124 0.296342 -- 3.873732 5.805369 2.428706 -- 4.594590 5.679012 3.454376 -- 2.855965 6.542070 2.333721 -- 2.710526 6.996624 3.166684 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NGLH.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 17 0 0 0 0 --!entry.NGLH.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NGLH" 1 19 1 "p" 0 --!entry.NGLH.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NGLH.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NGLH.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NGLN.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.176770 -- "HA" "HP" 0 1 131072 6 1 0.074450 -- "CB" "CT" 0 1 131072 7 6 0.367300 -- "HB2" "HC" 0 1 131072 8 1 -0.042440 -- "HB3" "HC" 0 1 131072 9 1 -0.042440 -- "CG" "CT" 0 1 131072 10 6 -0.651590 -- "HG2" "HC" 0 1 131072 11 1 0.230560 -- "HG3" "HC" 0 1 131072 12 1 0.230560 -- "CD" "C" 0 1 131072 13 6 0.855380 -- "OE1" "O" 0 1 131072 14 8 -0.671160 -- "NE2" "N" 0 1 131072 15 7 -0.907460 -- "HE21" "H" 0 1 131072 16 1 0.398200 -- "HE22" "H" 0 1 131072 17 1 0.398200 -- "C" "C" 0 1 131072 18 6 0.670480 -- "O" "O" 0 1 131072 19 8 -0.583250 --!entry.NGLN.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "C" 0 -1 0.0 -- "OE1" "O" 0 -1 0.0 -- "NE2" "N" 0 -1 0.0 -- "HE21" "H" 0 -1 0.0 -- "HE22" "H" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NGLN.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NGLN.unit.childsequence single int -- 2 --!entry.NGLN.unit.connect array int -- 0 -- 18 --!entry.NGLN.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 18 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 12 1 -- 10 13 1 -- 13 14 1 -- 13 15 1 -- 15 16 1 -- 15 17 1 -- 18 19 1 --!entry.NGLN.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 --!entry.NGLN.unit.name single str -- "NGLN" --!entry.NGLN.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.973781 5.548460 0.295972 -- 3.906976 5.848443 2.410302 -- 3.138962 5.408349 3.262893 -- 4.458856 7.061523 2.488333 -- 4.248434 7.659045 3.274966 -- 5.084281 7.376210 1.760379 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NGLN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 18 0 0 0 0 --!entry.NGLN.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NGLN" 1 20 1 "p" 0 --!entry.NGLN.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NGLN.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NGLN.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NGLU.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.277630 -- "HA" "HP" 0 1 131072 6 1 0.115460 -- "CB" "CT" 0 1 131072 7 6 0.687660 -- "HB2" "HC" 0 1 131072 8 1 -0.198680 -- "HB3" "HC" 0 1 131072 9 1 -0.198680 -- "CG" "CT" 0 1 131072 10 6 -0.615270 -- "HG2" "HC" 0 1 131072 11 1 0.173380 -- "HG3" "HC" 0 1 131072 12 1 0.173380 -- "CD" "C" 0 1 131072 13 6 0.808370 -- "OE1" "O2" 0 1 131072 14 8 -0.802600 -- "OE2" "O2" 0 1 131072 15 8 -0.802600 -- "C" "C" 0 1 131072 16 6 0.670480 -- "O" "O" 0 1 131072 17 8 -0.583250 --!entry.NGLU.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "C" 0 -1 0.0 -- "OE1" "O2" 0 -1 0.0 -- "OE2" "O2" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NGLU.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NGLU.unit.childsequence single int -- 2 --!entry.NGLU.unit.connect array int -- 0 -- 16 --!entry.NGLU.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 16 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 12 1 -- 10 13 1 -- 13 14 1 -- 13 15 1 -- 16 17 1 --!entry.NGLU.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 --!entry.NGLU.unit.name single str -- "NGLU" --!entry.NGLU.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.267328 4.996267 1.194946 -- 5.347413 4.849843 1.186158 -- 3.966923 5.535124 0.296342 -- 3.873732 5.805369 2.428706 -- 4.594590 5.679012 3.454376 -- 2.855965 6.542070 2.333721 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NGLU.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 16 0 0 0 0 --!entry.NGLU.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NGLU" 1 18 1 "p" 0 --!entry.NGLU.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NGLU.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NGLU.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NGLY.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.170530 -- "HA2" "HP" 0 1 131072 6 1 0.116660 -- "HA3" "HP" 0 1 131072 7 1 0.116660 -- "C" "C" 0 1 131072 8 6 0.670480 -- "O" "O" 0 1 131072 9 8 -0.583250 --!entry.NGLY.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA2" "HP" 0 -1 0.0 -- "HA3" "HP" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NGLY.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NGLY.unit.childsequence single int -- 2 --!entry.NGLY.unit.connect array int -- 0 -- 8 --!entry.NGLY.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 --!entry.NGLY.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 --!entry.NGLY.unit.name single str -- "NGLY" --!entry.NGLY.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.671668 3.400125 0.889824 -- 5.483710 2.686702 -4.438857E-06 -- 5.993369 1.568360 -8.469843E-06 --!entry.NGLY.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 8 0 0 0 0 --!entry.NGLY.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NGLY" 1 10 1 "p" 0 --!entry.NGLY.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NGLY.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NGLY.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NHID.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.018360 -- "HA" "HP" 0 1 131072 6 1 0.005320 -- "CB" "CT" 0 1 131072 7 6 -0.207970 -- "HB2" "HC" 0 1 131072 8 1 0.122530 -- "HB3" "HC" 0 1 131072 9 1 0.122530 -- "CG" "CC" 0 1 131072 10 6 0.205880 -- "ND1" "NA" 0 1 131072 11 7 -0.380080 -- "HD1" "H" 0 1 131072 12 1 0.357430 -- "CE1" "CR" 0 1 131072 13 6 0.262300 -- "HE1" "H5" 0 1 131072 14 1 0.052860 -- "NE2" "NB" 0 1 131072 15 7 -0.525490 -- "CD2" "CV" 0 1 131072 16 6 -0.029750 -- "HD2" "H4" 0 1 131072 17 1 0.095590 -- "C" "C" 0 1 131072 18 6 0.670480 -- "O" "O" 0 1 131072 19 8 -0.583250 --!entry.NHID.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CC" 0 -1 0.0 -- "ND1" "NA" 0 -1 0.0 -- "HD1" "H" 0 -1 0.0 -- "CE1" "CR" 0 -1 0.0 -- "HE1" "H5" 0 -1 0.0 -- "NE2" "NB" 0 -1 0.0 -- "CD2" "CV" 0 -1 0.0 -- "HD2" "H4" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NHID.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NHID.unit.childsequence single int -- 2 --!entry.NHID.unit.connect array int -- 0 -- 18 --!entry.NHID.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 18 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 16 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 15 1 -- 15 16 1 -- 16 17 1 -- 18 19 1 --!entry.NHID.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 --!entry.NHID.unit.name single str -- "NHID" --!entry.NHID.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.200813 5.026064 1.321087 -- 3.942782 5.885086 2.382972 -- 3.339725 5.691913 3.169805 -- 4.624274 6.997642 2.182500 -- 4.563048 7.811875 2.904563 -- 5.294011 6.891451 1.061663 -- 5.058974 5.678868 0.492453 -- 5.537741 5.417846 -0.451343 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NHID.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 18 0 0 0 0 --!entry.NHID.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NHID" 1 20 1 "p" 0 --!entry.NHID.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NHID.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NHID.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NHIE.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.035930 -- "HA" "HP" 0 1 131072 6 1 0.022090 -- "CB" "CT" 0 1 131072 7 6 -0.326150 -- "HB2" "HC" 0 1 131072 8 1 0.147760 -- "HB3" "HC" 0 1 131072 9 1 0.147760 -- "CG" "CC" 0 1 131072 10 6 0.467290 -- "ND1" "NB" 0 1 131072 11 7 -0.678510 -- "CE1" "CR" 0 1 131072 12 6 0.312370 -- "HE1" "H5" 0 1 131072 13 1 0.042060 -- "NE2" "NA" 0 1 131072 14 7 -0.318040 -- "HE2" "H" 0 1 131072 15 1 0.341000 -- "CD2" "CW" 0 1 131072 16 6 -0.217930 -- "HD2" "H4" 0 1 131072 17 1 0.159020 -- "C" "C" 0 1 131072 18 6 0.670480 -- "O" "O" 0 1 131072 19 8 -0.583250 --!entry.NHIE.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CC" 0 -1 0.0 -- "ND1" "NB" 0 -1 0.0 -- "CE1" "CR" 0 -1 0.0 -- "HE1" "H5" 0 -1 0.0 -- "NE2" "NA" 0 -1 0.0 -- "HE2" "H" 0 -1 0.0 -- "CD2" "CW" 0 -1 0.0 -- "HD2" "H4" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NHIE.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NHIE.unit.childsequence single int -- 2 --!entry.NHIE.unit.connect array int -- 0 -- 18 --!entry.NHIE.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 18 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 16 1 -- 11 12 1 -- 12 13 1 -- 12 14 1 -- 14 15 1 -- 14 16 1 -- 16 17 1 -- 18 19 1 --!entry.NHIE.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 --!entry.NHIE.unit.name single str -- "NHIE" --!entry.NHIE.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.200813 5.026064 1.321087 -- 3.942782 5.885086 2.382972 -- 4.624274 6.997642 2.182500 -- 4.563048 7.811875 2.904563 -- 5.294011 6.891451 1.061663 -- 5.896297 7.605085 0.676854 -- 5.058974 5.678868 0.492453 -- 5.537741 5.417846 -0.451343 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NHIE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 18 0 0 0 0 --!entry.NHIE.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NHIE" 1 20 1 "p" 0 --!entry.NHIE.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NHIE.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NHIE.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NHIP.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 0.119410 -- "HA" "HP" 0 1 131072 6 1 -0.053970 -- "CB" "CT" 0 1 131072 7 6 -0.059690 -- "HB2" "HC" 0 1 131072 8 1 0.073300 -- "HB3" "HC" 0 1 131072 9 1 0.073300 -- "CG" "CC" 0 1 131072 10 6 0.259530 -- "ND1" "NA" 0 1 131072 11 7 -0.115370 -- "HD1" "H" 0 1 131072 12 1 0.355750 -- "CE1" "CR" 0 1 131072 13 6 -0.085390 -- "HE1" "H5" 0 1 131072 14 1 0.198640 -- "NE2" "NA" 0 1 131072 15 7 0.055360 -- "HE2" "H" 0 1 131072 16 1 0.293500 -- "CD2" "CW" 0 1 131072 17 6 -0.207090 -- "HD2" "H4" 0 1 131072 18 1 0.155510 -- "C" "C" 0 1 131072 19 6 0.670480 -- "O" "O" 0 1 131072 20 8 -0.583250 --!entry.NHIP.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CC" 0 -1 0.0 -- "ND1" "NA" 0 -1 0.0 -- "HD1" "H" 0 -1 0.0 -- "CE1" "CR" 0 -1 0.0 -- "HE1" "H5" 0 -1 0.0 -- "NE2" "NA" 0 -1 0.0 -- "HE2" "H" 0 -1 0.0 -- "CD2" "CW" 0 -1 0.0 -- "HD2" "H4" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NHIP.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NHIP.unit.childsequence single int -- 2 --!entry.NHIP.unit.connect array int -- 0 -- 19 --!entry.NHIP.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 19 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 17 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 15 1 -- 15 16 1 -- 15 17 1 -- 17 18 1 -- 19 20 1 --!entry.NHIP.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 --!entry.NHIP.unit.name single str -- "NHIP" --!entry.NHIP.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.200813 5.026064 1.321087 -- 3.942782 5.885086 2.382972 -- 3.339725 5.691913 3.169805 -- 4.624274 6.997642 2.182500 -- 4.563048 7.811875 2.904563 -- 5.294011 6.891451 1.061663 -- 5.896297 7.605085 0.676854 -- 5.058974 5.678868 0.492453 -- 5.537741 5.417846 -0.451343 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NHIP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 19 0 0 0 0 --!entry.NHIP.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NHIP" 1 21 1 "p" 0 --!entry.NHIP.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NHIP.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NHIP.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NILE.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.229690 -- "HA" "HP" 0 1 131072 6 1 0.080520 -- "CB" "CT" 0 1 131072 7 6 0.455630 -- "HB" "HC" 0 1 131072 8 1 -0.113680 -- "CG2" "CT" 0 1 131072 9 6 -0.498950 -- "HG21" "HC" 0 1 131072 10 1 0.129740 -- "HG22" "HC" 0 1 131072 11 1 0.129740 -- "HG23" "HC" 0 1 131072 12 1 0.129740 -- "CG1" "CT" 0 1 131072 13 6 -0.144720 -- "HG12" "HC" 0 1 131072 14 1 0.066780 -- "HG13" "HC" 0 1 131072 15 1 0.066780 -- "CD1" "CT" 0 1 131072 16 6 -0.134770 -- "HD11" "HC" 0 1 131072 17 1 0.041890 -- "HD12" "HC" 0 1 131072 18 1 0.041890 -- "HD13" "HC" 0 1 131072 19 1 0.041890 -- "C" "C" 0 1 131072 20 6 0.670480 -- "O" "O" 0 1 131072 21 8 -0.583250 --!entry.NILE.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB" "HC" 0 -1 0.0 -- "CG2" "CT" 0 -1 0.0 -- "HG21" "HC" 0 -1 0.0 -- "HG22" "HC" 0 -1 0.0 -- "HG23" "HC" 0 -1 0.0 -- "CG1" "CT" 0 -1 0.0 -- "HG12" "HC" 0 -1 0.0 -- "HG13" "HC" 0 -1 0.0 -- "CD1" "CT" 0 -1 0.0 -- "HD11" "HC" 0 -1 0.0 -- "HD12" "HC" 0 -1 0.0 -- "HD13" "HC" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NILE.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NILE.unit.childsequence single int -- 2 --!entry.NILE.unit.connect array int -- 0 -- 20 --!entry.NILE.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 20 1 -- 7 8 1 -- 7 9 1 -- 7 13 1 -- 9 10 1 -- 9 11 1 -- 9 12 1 -- 13 14 1 -- 13 15 1 -- 13 16 1 -- 16 17 1 -- 16 18 1 -- 16 19 1 -- 20 21 1 --!entry.NILE.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 --!entry.NILE.unit.name single str -- "NILE" --!entry.NILE.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.552136 3.620733 1.245168 -- 2.470128 3.752486 1.245640 -- 3.970045 2.845728 2.490296 -- 5.052053 2.713974 2.490763 -- 3.671561 3.399208 3.380615 -- 3.485650 1.869275 2.490737 -- 4.230204 4.986694 1.245169 -- 3.931820 5.541027 0.355348 -- 5.312310 4.855746 1.245164 -- 3.812294 5.761632 2.490339 -- 4.110777 5.208104 3.380628 -- 4.296689 6.738085 2.490833 -- 2.730286 5.893383 2.490813 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NILE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 20 0 0 0 0 --!entry.NILE.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NILE" 1 22 1 "p" 0 --!entry.NILE.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NILE.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NILE.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NLEU.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.048190 -- "HA" "HP" 0 1 131072 6 1 0.009070 -- "CB" "CT" 0 1 131072 7 6 -0.232000 -- "HB2" "HC" 0 1 131072 8 1 0.091230 -- "HB3" "HC" 0 1 131072 9 1 0.091230 -- "CG" "CT" 0 1 131072 10 6 0.595680 -- "HG" "HC" 0 1 131072 11 1 -0.106730 -- "CD1" "CT" 0 1 131072 12 6 -0.811380 -- "HD11" "HC" 0 1 131072 13 1 0.214210 -- "HD12" "HC" 0 1 131072 14 1 0.214210 -- "HD13" "HC" 0 1 131072 15 1 0.214210 -- "CD2" "CT" 0 1 131072 16 6 -0.811380 -- "HD21" "HC" 0 1 131072 17 1 0.214210 -- "HD22" "HC" 0 1 131072 18 1 0.214210 -- "HD23" "HC" 0 1 131072 19 1 0.214210 -- "C" "C" 0 1 131072 20 6 0.670480 -- "O" "O" 0 1 131072 21 8 -0.583250 --!entry.NLEU.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG" "HC" 0 -1 0.0 -- "CD1" "CT" 0 -1 0.0 -- "HD11" "HC" 0 -1 0.0 -- "HD12" "HC" 0 -1 0.0 -- "HD13" "HC" 0 -1 0.0 -- "CD2" "CT" 0 -1 0.0 -- "HD21" "HC" 0 -1 0.0 -- "HD22" "HC" 0 -1 0.0 -- "HD23" "HC" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NLEU.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NLEU.unit.childsequence single int -- 2 --!entry.NLEU.unit.connect array int -- 0 -- 20 --!entry.NLEU.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 20 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 12 1 -- 10 16 1 -- 12 13 1 -- 12 14 1 -- 12 15 1 -- 16 17 1 -- 16 18 1 -- 16 19 1 -- 20 21 1 --!entry.NLEU.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 --!entry.NLEU.unit.name single str -- "NLEU" --!entry.NLEU.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.853429 5.762895 -0.062857 -- 2.773449 5.910113 -0.054557 -- 4.351513 6.732052 -0.090203 -- 4.134159 5.185704 -0.943846 -- 3.881105 5.817645 2.426721 -- 4.181626 5.279602 3.325774 -- 4.379198 6.786825 2.400363 -- 2.801135 5.964881 2.435959 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NLEU.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 20 0 0 0 0 --!entry.NLEU.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NLEU" 1 22 1 "p" 0 --!entry.NLEU.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NLEU.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NLEU.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NLYN.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.095720 -- "HA" "HP" 0 1 131072 6 1 0.049030 -- "CB" "CT" 0 1 131072 7 6 0.079910 -- "HB2" "HC" 0 1 131072 8 1 -0.013700 -- "HB3" "HC" 0 1 131072 9 1 -0.013700 -- "CG" "CT" 0 1 131072 10 6 0.022200 -- "HG2" "HC" 0 1 131072 11 1 0.016820 -- "HG3" "HC" 0 1 131072 12 1 0.016820 -- "CD" "CT" 0 1 131072 13 6 -0.303010 -- "HD2" "HC" 0 1 131072 14 1 0.123310 -- "HD3" "HC" 0 1 131072 15 1 0.123310 -- "CE" "CT" 0 1 131072 16 6 0.555520 -- "HE2" "HP" 0 1 131072 17 1 -0.113930 -- "HE3" "HP" 0 1 131072 18 1 -0.113930 -- "NZ" "NT" 0 1 131072 19 7 -0.979040 -- "HZ2" "H" 0 1 131072 20 1 0.354450 -- "HZ3" "H" 0 1 131072 21 1 0.354450 -- "C" "C" 0 1 131072 22 6 0.670480 -- "O" "O" 0 1 131072 23 8 -0.583250 --!entry.NLYN.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "CT" 0 -1 0.0 -- "HD2" "HC" 0 -1 0.0 -- "HD3" "HC" 0 -1 0.0 -- "CE" "CT" 0 -1 0.0 -- "HE2" "HP" 0 -1 0.0 -- "HE3" "HP" 0 -1 0.0 -- "NZ" "NT" 0 -1 0.0 -- "HZ2" "H" 0 -1 0.0 -- "HZ3" "H" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NLYN.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NLYN.unit.childsequence single int -- 2 --!entry.NLYN.unit.connect array int -- 0 -- 22 --!entry.NLYN.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 22 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 12 1 -- 10 13 1 -- 13 14 1 -- 13 15 1 -- 13 16 1 -- 16 17 1 -- 16 18 1 -- 16 19 1 -- 19 20 1 -- 19 21 1 -- 22 23 1 --!entry.NLYN.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 -- "R" 1 "A" 22 -- "R" 1 "A" 23 --!entry.NLYN.unit.name single str -- "NLYN" --!entry.NLYN.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.973781 5.548460 0.295972 -- 3.881105 5.817645 2.426721 -- 2.801135 5.964881 2.435959 -- 4.181626 5.279602 3.325774 -- 4.578325 7.173410 2.389153 -- 5.658410 7.026987 2.380363 -- 4.277917 7.712267 1.490550 -- 4.199422 7.952309 3.576860 -- 4.661186 8.850226 3.551979 -- 3.198675 8.088466 3.584971 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NLYN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 22 0 0 0 0 --!entry.NLYN.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NLYN" 1 24 1 "p" 0 --!entry.NLYN.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NLYN.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NLYN.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NLYS.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.109440 -- "HA" "HP" 0 1 131072 6 1 0.074110 -- "CB" "CT" 0 1 131072 7 6 0.027560 -- "HB2" "HC" 0 1 131072 8 1 0.006150 -- "HB3" "HC" 0 1 131072 9 1 0.006150 -- "CG" "CT" 0 1 131072 10 6 -0.012430 -- "HG2" "HC" 0 1 131072 11 1 0.044300 -- "HG3" "HC" 0 1 131072 12 1 0.044300 -- "CD" "CT" 0 1 131072 13 6 -0.229220 -- "HD2" "HC" 0 1 131072 14 1 0.103290 -- "HD3" "HC" 0 1 131072 15 1 0.103290 -- "CE" "CT" 0 1 131072 16 6 0.454620 -- "HE2" "HP" 0 1 131072 17 1 -0.045920 -- "HE3" "HP" 0 1 131072 18 1 -0.045920 -- "NZ" "N3" 0 1 131072 19 7 -0.357710 -- "HZ1" "H" 0 1 131072 20 1 0.333220 -- "HZ2" "H" 0 1 131072 21 1 0.333220 -- "HZ3" "H" 0 1 131072 22 1 0.333220 -- "C" "C" 0 1 131072 23 6 0.670480 -- "O" "O" 0 1 131072 24 8 -0.583250 --!entry.NLYS.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "CT" 0 -1 0.0 -- "HD2" "HC" 0 -1 0.0 -- "HD3" "HC" 0 -1 0.0 -- "CE" "CT" 0 -1 0.0 -- "HE2" "HP" 0 -1 0.0 -- "HE3" "HP" 0 -1 0.0 -- "NZ" "N3" 0 -1 0.0 -- "HZ1" "H" 0 -1 0.0 -- "HZ2" "H" 0 -1 0.0 -- "HZ3" "H" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NLYS.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NLYS.unit.childsequence single int -- 2 --!entry.NLYS.unit.connect array int -- 0 -- 23 --!entry.NLYS.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 23 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 12 1 -- 10 13 1 -- 13 14 1 -- 13 15 1 -- 13 16 1 -- 16 17 1 -- 16 18 1 -- 16 19 1 -- 19 20 1 -- 19 21 1 -- 19 22 1 -- 23 24 1 --!entry.NLYS.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 -- "R" 1 "A" 22 -- "R" 1 "A" 23 -- "R" 1 "A" 24 --!entry.NLYS.unit.name single str -- "NLYS" --!entry.NLYS.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.973781 5.548460 0.295972 -- 3.881105 5.817645 2.426721 -- 2.801135 5.964881 2.435959 -- 4.181626 5.279602 3.325774 -- 4.578325 7.173410 2.389153 -- 5.658410 7.026987 2.380363 -- 4.277917 7.712267 1.490550 -- 4.199422 7.952309 3.576860 -- 4.478085 7.453366 4.409628 -- 4.661186 8.850226 3.551979 -- 3.198675 8.088466 3.584971 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NLYS.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 23 0 0 0 0 --!entry.NLYS.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NLYS" 1 25 1 "p" 0 --!entry.NLYS.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NLYS.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NLYS.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NMET.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.097630 -- "HA" "HP" 0 1 131072 6 1 0.070210 -- "CB" "CT" 0 1 131072 7 6 0.275580 -- "HB2" "HC" 0 1 131072 8 1 -0.049150 -- "HB3" "HC" 0 1 131072 9 1 -0.049150 -- "CG" "CT" 0 1 131072 10 6 -0.318690 -- "HG2" "H1" 0 1 131072 11 1 0.142380 -- "HG3" "H1" 0 1 131072 12 1 0.142380 -- "SD" "S" 0 1 131072 13 16 -0.124640 -- "CE" "CT" 0 1 131072 14 6 -0.228860 -- "HE1" "H1" 0 1 131072 15 1 0.100120 -- "HE2" "H1" 0 1 131072 16 1 0.100120 -- "HE3" "H1" 0 1 131072 17 1 0.100120 -- "C" "C" 0 1 131072 18 6 0.670480 -- "O" "O" 0 1 131072 19 8 -0.583250 --!entry.NMET.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "H1" 0 -1 0.0 -- "HG3" "H1" 0 -1 0.0 -- "SD" "S" 0 -1 0.0 -- "CE" "CT" 0 -1 0.0 -- "HE1" "H1" 0 -1 0.0 -- "HE2" "H1" 0 -1 0.0 -- "HE3" "H1" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NMET.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NMET.unit.childsequence single int -- 2 --!entry.NMET.unit.connect array int -- 0 -- 18 --!entry.NMET.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 18 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 12 1 -- 10 13 1 -- 13 14 1 -- 14 15 1 -- 14 16 1 -- 14 17 1 -- 18 19 1 --!entry.NMET.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 --!entry.NMET.unit.name single str -- "NMET" --!entry.NMET.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.973781 5.548460 0.295972 -- 3.817309 5.981266 2.651708 -- 4.753212 7.463128 2.340949 -- 4.433582 7.904044 1.396741 -- 4.585907 8.175299 3.148985 -- 5.814074 7.218763 2.286554 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NMET.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 18 0 0 0 0 --!entry.NMET.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NMET" 1 20 1 "p" 0 --!entry.NMET.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NMET.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NMET.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NPHE.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.033820 -- "HA" "HP" 0 1 131072 6 1 0.035950 -- "CB" "CT" 0 1 131072 7 6 -0.264720 -- "HB2" "HC" 0 1 131072 8 1 0.129600 -- "HB3" "HC" 0 1 131072 9 1 0.129600 -- "CG" "CA" 0 1 131072 10 6 0.233490 -- "CD1" "CA" 0 1 131072 11 6 -0.246420 -- "HD1" "HA" 0 1 131072 12 1 0.151840 -- "CE1" "CA" 0 1 131072 13 6 -0.076860 -- "HE1" "HA" 0 1 131072 14 1 0.108390 -- "CZ" "CA" 0 1 131072 15 6 -0.134740 -- "HZ" "HA" 0 1 131072 16 1 0.093530 -- "CE2" "CA" 0 1 131072 17 6 -0.076860 -- "HE2" "HA" 0 1 131072 18 1 0.108390 -- "CD2" "CA" 0 1 131072 19 6 -0.246420 -- "HD2" "HA" 0 1 131072 20 1 0.151840 -- "C" "C" 0 1 131072 21 6 0.670480 -- "O" "O" 0 1 131072 22 8 -0.583250 --!entry.NPHE.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CA" 0 -1 0.0 -- "CD1" "CA" 0 -1 0.0 -- "HD1" "HA" 0 -1 0.0 -- "CE1" "CA" 0 -1 0.0 -- "HE1" "HA" 0 -1 0.0 -- "CZ" "CA" 0 -1 0.0 -- "HZ" "HA" 0 -1 0.0 -- "CE2" "CA" 0 -1 0.0 -- "HE2" "HA" 0 -1 0.0 -- "CD2" "CA" 0 -1 0.0 -- "HD2" "HA" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NPHE.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NPHE.unit.childsequence single int -- 2 --!entry.NPHE.unit.connect array int -- 0 -- 21 --!entry.NPHE.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 21 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 19 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 15 1 -- 15 16 1 -- 15 17 1 -- 17 18 1 -- 17 19 1 -- 19 20 1 -- 21 22 1 --!entry.NPHE.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 -- "R" 1 "A" 22 --!entry.NPHE.unit.name single str -- "NPHE" --!entry.NPHE.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.200813 5.026064 1.321087 -- 3.911613 5.857250 2.409890 -- 3.236123 5.513843 3.193398 -- 4.490014 7.129513 2.492354 -- 4.264853 7.776651 3.340066 -- 5.357616 7.570591 1.486016 -- 5.807943 8.561138 1.550220 -- 5.646818 6.739407 0.397211 -- 6.322309 7.082817 -0.386295 -- 5.068419 5.467143 0.314744 -- 5.293584 4.820007 -0.532968 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NPHE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 21 0 0 0 0 --!entry.NPHE.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NPHE" 1 23 1 "p" 0 --!entry.NPHE.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NPHE.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NPHE.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NPRO.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 -0.138570 -- "H2" "H" 0 1 131072 2 1 0.257280 -- "H3" "H" 0 1 131072 3 1 0.257280 -- "CD" "CT" 0 1 131072 4 6 0.227570 -- "HD2" "HP" 0 1 131072 5 1 0.017160 -- "HD3" "HP" 0 1 131072 6 1 0.017150 -- "CG" "CT" 0 1 131072 7 6 -0.073460 -- "HG2" "HC" 0 1 131072 8 1 0.038960 -- "HG3" "HC" 0 1 131072 9 1 0.038960 -- "CB" "CT" 0 1 131072 10 6 0.189500 -- "HB2" "HC" 0 1 131072 11 1 -0.029230 -- "HB3" "HC" 0 1 131072 12 1 -0.029230 -- "CA" "CT" 0 1 131072 13 6 0.104090 -- "HA" "HP" 0 1 131072 14 1 0.035310 -- "C" "C" 0 1 131072 15 6 0.670480 -- "O" "O" 0 1 131072 16 8 -0.583250 --!entry.NPRO.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CD" "CT" 0 -1 0.0 -- "HD2" "HP" 0 -1 0.0 -- "HD3" "HP" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NPRO.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NPRO.unit.childsequence single int -- 2 --!entry.NPRO.unit.connect array int -- 0 -- 15 --!entry.NPRO.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 13 1 -- 4 5 1 -- 4 6 1 -- 4 7 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 12 1 -- 10 13 1 -- 13 14 1 -- 13 15 1 -- 15 16 1 --!entry.NPRO.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 --!entry.NPRO.unit.name single str -- "NPRO" --!entry.NPRO.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 4.293514 0.460336 0.080119 -- 4.408169 0.002209 -0.902263 -- 3.942023 -0.287867 0.790574 -- 5.543321 1.147470 0.544693 -- 6.406715 0.710627 0.042879 -- 5.648273 1.022228 1.622376 -- 5.375453 2.604421 0.185227 -- 5.977268 2.833902 -0.694123 -- 5.701345 3.225015 1.019947 -- 3.941704 2.857529 -0.104508 -- 3.623882 3.477056 0.734106 -- 3.517842 3.515620 -1.409783 -- 2.762837 2.933549 -2.185412 --!entry.NPRO.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 15 0 0 0 0 --!entry.NPRO.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NPRO" 1 17 1 "p" 0 --!entry.NPRO.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NPRO.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NPRO.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NSER.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 0.006090 -- "HA" "HP" 0 1 131072 6 1 0.050540 -- "CB" "CT" 0 1 131072 7 6 0.197970 -- "HB2" "H1" 0 1 131072 8 1 0.017960 -- "HB3" "H1" 0 1 131072 9 1 0.017970 -- "OG" "OH" 0 1 131072 10 8 -0.606020 -- "HG" "HO" 0 1 131072 11 1 0.378280 -- "C" "C" 0 1 131072 12 6 0.670480 -- "O" "O" 0 1 131072 13 8 -0.583250 --!entry.NSER.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "H1" 0 -1 0.0 -- "HB3" "H1" 0 -1 0.0 -- "OG" "OH" 0 -1 0.0 -- "HG" "HO" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NSER.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NSER.unit.childsequence single int -- 2 --!entry.NSER.unit.connect array int -- 0 -- 12 --!entry.NSER.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 12 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 12 13 1 --!entry.NSER.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 --!entry.NSER.unit.name single str -- "NSER" --!entry.NSER.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.230753 4.925145 1.196917 -- 3.983305 5.433814 1.972562 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NSER.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 12 0 0 0 0 --!entry.NSER.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NSER" 1 14 1 "p" 0 --!entry.NSER.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NSER.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NSER.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NTHR.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 0.036230 -- "HA" "HP" 0 1 131072 6 1 0.028680 -- "CB" "CT" 0 1 131072 7 6 0.563540 -- "HB" "H1" 0 1 131072 8 1 -0.161960 -- "CG2" "CT" 0 1 131072 9 6 -0.574400 -- "HG21" "HC" 0 1 131072 10 1 0.154000 -- "HG22" "HC" 0 1 131072 11 1 0.154000 -- "HG23" "HC" 0 1 131072 12 1 0.154000 -- "OG1" "OH" 0 1 131072 13 8 -0.735860 -- "HG1" "HO" 0 1 131072 14 1 0.444560 -- "C" "C" 0 1 131072 15 6 0.670480 -- "O" "O" 0 1 131072 16 8 -0.583250 --!entry.NTHR.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB" "H1" 0 -1 0.0 -- "CG2" "CT" 0 -1 0.0 -- "HG21" "HC" 0 -1 0.0 -- "HG22" "HC" 0 -1 0.0 -- "HG23" "HC" 0 -1 0.0 -- "OG1" "OH" 0 -1 0.0 -- "HG1" "HO" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NTHR.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NTHR.unit.childsequence single int -- 2 --!entry.NTHR.unit.connect array int -- 0 -- 15 --!entry.NTHR.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 15 1 -- 7 8 1 -- 7 9 1 -- 7 13 1 -- 9 10 1 -- 9 11 1 -- 9 12 1 -- 13 14 1 -- 15 16 1 --!entry.NTHR.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 --!entry.NTHR.unit.name single str -- "NTHR" --!entry.NTHR.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 4.075059 4.623017 1.205786 -- 2.065936 3.859425 1.244383 -- 1.567127 2.890627 1.271209 -- 1.784431 4.436953 2.124903 -- 1.764699 4.397847 0.345796 -- 3.971501 2.947413 2.411212 -- 3.724052 3.456082 3.186857 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NTHR.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 15 0 0 0 0 --!entry.NTHR.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NTHR" 1 17 1 "p" 0 --!entry.NTHR.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NTHR.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NTHR.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NTRP.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.064400 -- "HA" "HP" 0 1 131072 6 1 0.060910 -- "CB" "CT" 0 1 131072 7 6 0.072380 -- "HB2" "HC" 0 1 131072 8 1 0.023340 -- "HB3" "HC" 0 1 131072 9 1 0.023340 -- "CG" "C*" 0 1 131072 10 6 -0.302580 -- "CD1" "CW" 0 1 131072 11 6 0.030860 -- "HD1" "H4" 0 1 131072 12 1 0.139310 -- "NE1" "NA" 0 1 131072 13 7 -0.480170 -- "HE1" "H" 0 1 131072 14 1 0.392790 -- "CE2" "CN" 0 1 131072 15 6 0.192760 -- "CZ2" "CA" 0 1 131072 16 6 -0.261010 -- "HZ2" "HA" 0 1 131072 17 1 0.183580 -- "CH2" "CA" 0 1 131072 18 6 -0.180740 -- "HH2" "HA" 0 1 131072 19 1 0.106860 -- "CZ3" "CA" 0 1 131072 20 6 -0.044730 -- "HZ3" "HA" 0 1 131072 21 1 0.086480 -- "CE3" "CA" 0 1 131072 22 6 -0.427910 -- "HE3" "HA" 0 1 131072 23 1 0.225690 -- "CD2" "CB" 0 1 131072 24 6 0.286030 -- "C" "C" 0 1 131072 25 6 0.670480 -- "O" "O" 0 1 131072 26 8 -0.583250 --!entry.NTRP.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "C*" 0 -1 0.0 -- "CD1" "CW" 0 -1 0.0 -- "HD1" "H4" 0 -1 0.0 -- "NE1" "NA" 0 -1 0.0 -- "HE1" "H" 0 -1 0.0 -- "CE2" "CN" 0 -1 0.0 -- "CZ2" "CA" 0 -1 0.0 -- "HZ2" "HA" 0 -1 0.0 -- "CH2" "CA" 0 -1 0.0 -- "HH2" "HA" 0 -1 0.0 -- "CZ3" "CA" 0 -1 0.0 -- "HZ3" "HA" 0 -1 0.0 -- "CE3" "CA" 0 -1 0.0 -- "HE3" "HA" 0 -1 0.0 -- "CD2" "CB" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NTRP.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NTRP.unit.childsequence single int -- 2 --!entry.NTRP.unit.connect array int -- 0 -- 25 --!entry.NTRP.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 25 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 24 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 15 1 -- 15 16 1 -- 15 24 1 -- 16 17 1 -- 16 18 1 -- 18 19 1 -- 18 20 1 -- 20 21 1 -- 20 22 1 -- 22 23 1 -- 22 24 1 -- 25 26 1 --!entry.NTRP.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 -- "R" 1 "A" 22 -- "R" 1 "A" 23 -- "R" 1 "A" 24 -- "R" 1 "A" 25 -- "R" 1 "A" 26 --!entry.NTRP.unit.name single str -- "NTRP" --!entry.NTRP.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.200813 5.026064 1.321087 -- 4.023453 5.931084 2.293240 -- 3.368841 5.705466 3.135071 -- 4.811943 7.073555 1.949808 -- 4.882921 7.922010 2.493118 -- 5.427347 6.842060 0.816764 -- 6.297161 7.689052 0.119605 -- 6.531230 8.676649 0.517050 -- 6.814091 7.187011 -1.069023 -- 7.498074 7.791857 -1.664362 -- 6.482659 5.953119 -1.505101 -- 6.897660 5.575648 -2.439654 -- 5.604041 5.117355 -0.785636 -- 5.358720 4.126570 -1.168080 -- 5.083390 5.623004 0.411545 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NTRP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 25 0 0 0 0 --!entry.NTRP.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NTRP" 1 27 1 "p" 0 --!entry.NTRP.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NTRP.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NTRP.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NTYR.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.117360 -- "HA" "HP" 0 1 131072 6 1 0.085560 -- "CB" "CT" 0 1 131072 7 6 -0.110270 -- "HB2" "HC" 0 1 131072 8 1 0.083860 -- "HB3" "HC" 0 1 131072 9 1 0.083860 -- "CG" "CA" 0 1 131072 10 6 0.037350 -- "CD1" "CA" 0 1 131072 11 6 -0.143640 -- "HD1" "HA" 0 1 131072 12 1 0.146300 -- "CE1" "CA" 0 1 131072 13 6 -0.334390 -- "HE1" "HA" 0 1 131072 14 1 0.190770 -- "CZ" "CA" 0 1 131072 15 6 0.444500 -- "OH" "OH" 0 1 131072 16 8 -0.546480 -- "HH" "HO" 0 1 131072 17 1 0.383690 -- "CE2" "CA" 0 1 131072 18 6 -0.334390 -- "HE2" "HA" 0 1 131072 19 1 0.190770 -- "CD2" "CA" 0 1 131072 20 6 -0.143640 -- "HD2" "HA" 0 1 131072 21 1 0.146300 -- "C" "C" 0 1 131072 22 6 0.670480 -- "O" "O" 0 1 131072 23 8 -0.583250 --!entry.NTYR.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CA" 0 -1 0.0 -- "CD1" "CA" 0 -1 0.0 -- "HD1" "HA" 0 -1 0.0 -- "CE1" "CA" 0 -1 0.0 -- "HE1" "HA" 0 -1 0.0 -- "CZ" "CA" 0 -1 0.0 -- "OH" "OH" 0 -1 0.0 -- "HH" "HO" 0 -1 0.0 -- "CE2" "CA" 0 -1 0.0 -- "HE2" "HA" 0 -1 0.0 -- "CD2" "CA" 0 -1 0.0 -- "HD2" "HA" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NTYR.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NTYR.unit.childsequence single int -- 2 --!entry.NTYR.unit.connect array int -- 0 -- 22 --!entry.NTYR.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 22 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 10 11 1 -- 10 20 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 15 1 -- 15 16 1 -- 15 18 1 -- 16 17 1 -- 18 19 1 -- 18 20 1 -- 20 21 1 -- 22 23 1 --!entry.NTYR.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 -- "R" 1 "A" 22 -- "R" 1 "A" 23 --!entry.NTYR.unit.name single str -- "NTYR" --!entry.NTYR.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.267328 4.996267 1.194946 -- 4.059927 5.918911 2.227280 -- 3.400108 5.668218 3.057877 -- 4.699998 7.163547 2.192791 -- 4.538522 7.881891 2.996538 -- 5.547471 7.485542 1.125970 -- 6.169255 8.694617 1.092468 -- 5.956327 9.246984 1.848214 -- 5.754875 6.562900 0.093635 -- 6.414694 6.813595 -0.736962 -- 5.114806 5.318263 0.128119 -- 5.276286 4.599920 -0.675627 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NTYR.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 22 0 0 0 0 --!entry.NTYR.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NTYR" 1 24 1 "p" 0 --!entry.NTYR.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NTYR.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NTYR.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.NVAL.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N3" 0 1 131072 1 7 0.351680 -- "H1" "H" 0 1 131072 2 1 0.166100 -- "H2" "H" 0 1 131072 3 1 0.166100 -- "H3" "H" 0 1 131072 4 1 0.166100 -- "CA" "CT" 0 1 131072 5 6 -0.131460 -- "HA" "HP" 0 1 131072 6 1 0.055960 -- "CB" "CT" 0 1 131072 7 6 0.600860 -- "HB" "HC" 0 1 131072 8 1 -0.088610 -- "CG1" "CT" 0 1 131072 9 6 -0.789890 -- "HG11" "HC" 0 1 131072 10 1 0.200970 -- "HG12" "HC" 0 1 131072 11 1 0.200970 -- "HG13" "HC" 0 1 131072 12 1 0.200970 -- "CG2" "CT" 0 1 131072 13 6 -0.789890 -- "HG21" "HC" 0 1 131072 14 1 0.200970 -- "HG22" "HC" 0 1 131072 15 1 0.200970 -- "HG23" "HC" 0 1 131072 16 1 0.200970 -- "C" "C" 0 1 131072 17 6 0.670480 -- "O" "O" 0 1 131072 18 8 -0.583250 --!entry.NVAL.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N3" 0 -1 0.0 -- "H1" "H" 0 -1 0.0 -- "H2" "H" 0 -1 0.0 -- "H3" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "HP" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB" "HC" 0 -1 0.0 -- "CG1" "CT" 0 -1 0.0 -- "HG11" "HC" 0 -1 0.0 -- "HG12" "HC" 0 -1 0.0 -- "HG13" "HC" 0 -1 0.0 -- "CG2" "CT" 0 -1 0.0 -- "HG21" "HC" 0 -1 0.0 -- "HG22" "HC" 0 -1 0.0 -- "HG23" "HC" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.NVAL.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NVAL.unit.childsequence single int -- 2 --!entry.NVAL.unit.connect array int -- 0 -- 17 --!entry.NVAL.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 1 4 1 -- 1 5 1 -- 5 6 1 -- 5 7 1 -- 5 17 1 -- 7 8 1 -- 7 9 1 -- 7 13 1 -- 9 10 1 -- 9 11 1 -- 9 12 1 -- 13 14 1 -- 13 15 1 -- 13 16 1 -- 17 18 1 --!entry.NVAL.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 --!entry.NVAL.unit.name single str -- "NVAL" --!entry.NVAL.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 4.046154 0.839991 -2.855245E-06 -- 2.823094 1.499508 -0.874687 -- 2.823097 1.499507 0.874685 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.997712 2.900483 2.489542 -- 5.077693 2.753265 2.481244 -- 3.716972 3.477628 3.370558 -- 3.499630 1.931323 2.516834 -- 4.274186 5.009602 1.194577 -- 3.973781 5.548460 0.295972 -- 3.993559 5.587585 2.075079 -- 5.354271 4.863178 1.185788 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.NVAL.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 0 17 0 0 0 0 --!entry.NVAL.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "NVAL" 1 19 1 "p" 0 --!entry.NVAL.unit.residuesPdbSequenceNumber array int -- 0 --!entry.NVAL.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.NVAL.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -diff --git a/dat/leap/lib/aminopol12.lib b/dat/leap/lib/aminopol12.lib -deleted file mode 100644 -index ed9039d..0000000 ---- a/dat/leap/lib/aminopol12.lib -+++ /dev/null -@@ -1,3521 +0,0 @@ --!!index array str -- "ALA" -- "ARG" -- "ASH" -- "ASN" -- "ASP" -- "CIM" -- "CIP" -- "CYM" -- "CYS" -- "CYX" -- "GLH" -- "GLN" -- "GLU" -- "GLY" -- "HID" -- "HIE" -- "HIP" -- "ILE" -- "LEU" -- "LYN" -- "LYS" -- "MET" -- "PHE" -- "PRO" -- "SER" -- "THR" -- "TRP" -- "TYR" -- "VAL" --!entry.ALA.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.107660 -- "HA" "H1" 0 1 131072 4 1 0.039730 -- "CB" "CT" 0 1 131072 5 6 -0.131600 -- "HB1" "HC" 0 1 131072 6 1 0.074970 -- "HB2" "HC" 0 1 131072 7 1 0.074970 -- "HB3" "HC" 0 1 131072 8 1 0.074970 -- "C" "C" 0 1 131072 9 6 0.670480 -- "O" "O" 0 1 131072 10 8 -0.583250 --!entry.ALA.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB1" "HC" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.ALA.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.ALA.unit.childsequence single int -- 2 --!entry.ALA.unit.connect array int -- 1 -- 9 --!entry.ALA.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 9 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 9 10 1 --!entry.ALA.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 --!entry.ALA.unit.name single str -- "ALA" --!entry.ALA.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 3.877484 3.115795 2.131197 -- 4.075059 4.623017 1.205786 -- 2.496995 3.801075 1.241379 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.ALA.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 9 0 0 0 0 --!entry.ALA.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "ALA" 1 11 1 "p" 0 --!entry.ALA.unit.residuesPdbSequenceNumber array int -- 0 --!entry.ALA.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.ALA.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.ARG.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.226630 -- "HA" "H1" 0 1 131072 4 1 0.106720 -- "CB" "CT" 0 1 131072 5 6 0.333990 -- "HB2" "HC" 0 1 131072 6 1 -0.030430 -- "HB3" "HC" 0 1 131072 7 1 -0.030430 -- "CG" "CT" 0 1 131072 8 6 -0.417310 -- "HG2" "HC" 0 1 131072 9 1 0.127030 -- "HG3" "HC" 0 1 131072 10 1 0.127030 -- "CD" "CT" 0 1 131072 11 6 0.599560 -- "HD2" "H1" 0 1 131072 12 1 -0.082670 -- "HD3" "H1" 0 1 131072 13 1 -0.082670 -- "NE" "N2" 0 1 131072 14 7 -0.785780 -- "HE" "H" 0 1 131072 15 1 0.415010 -- "CZ" "CA" 0 1 131072 16 6 1.104320 -- "NH1" "N2" 0 1 131072 17 7 -0.960300 -- "HH11" "H" 0 1 131072 18 1 0.447060 -- "HH12" "H" 0 1 131072 19 1 0.447060 -- "NH2" "N2" 0 1 131072 20 7 -0.960300 -- "HH21" "H" 0 1 131072 21 1 0.447060 -- "HH22" "H" 0 1 131072 22 1 0.447060 -- "C" "C" 0 1 131072 23 6 0.670480 -- "O" "O" 0 1 131072 24 8 -0.583250 --!entry.ARG.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "CT" 0 -1 0.0 -- "HD2" "H1" 0 -1 0.0 -- "HD3" "H1" 0 -1 0.0 -- "NE" "N2" 0 -1 0.0 -- "HE" "H" 0 -1 0.0 -- "CZ" "CA" 0 -1 0.0 -- "NH1" "N2" 0 -1 0.0 -- "HH11" "H" 0 -1 0.0 -- "HH12" "H" 0 -1 0.0 -- "NH2" "N2" 0 -1 0.0 -- "HH21" "H" 0 -1 0.0 -- "HH22" "H" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.ARG.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.ARG.unit.childsequence single int -- 2 --!entry.ARG.unit.connect array int -- 1 -- 23 --!entry.ARG.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 23 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 11 13 1 -- 11 14 1 -- 14 15 1 -- 14 16 1 -- 16 17 1 -- 16 20 1 -- 17 18 1 -- 17 19 1 -- 20 21 1 -- 20 22 1 -- 23 24 1 --!entry.ARG.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 -- "R" 1 "A" 22 -- "R" 1 "A" 23 -- "R" 1 "A" 24 --!entry.ARG.unit.name single str -- "ARG" --!entry.ARG.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.973781 5.548460 0.295972 -- 3.881105 5.817645 2.426721 -- 2.801135 5.964881 2.435959 -- 4.181626 5.279602 3.325774 -- 4.540320 7.142723 2.424483 -- 5.151805 7.375492 1.655065 -- 4.364284 8.040989 3.389382 -- 3.575026 7.807606 4.434133 -- 3.088949 6.925423 4.508848 -- 3.465367 8.513631 5.147998 -- 5.006254 9.201287 3.286991 -- 5.604855 9.375325 2.492329 -- 4.892216 9.903045 4.004368 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.ARG.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 23 0 0 0 0 --!entry.ARG.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "ARG" 1 25 1 "p" 0 --!entry.ARG.unit.residuesPdbSequenceNumber array int -- 0 --!entry.ARG.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.ARG.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.ASH.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 0.002180 -- "HA" "H1" 0 1 131072 4 1 0.013640 -- "CB" "CT" 0 1 131072 5 6 -0.142020 -- "HB2" "HC" 0 1 131072 6 1 0.124360 -- "HB3" "HC" 0 1 131072 7 1 0.124360 -- "CG" "C" 0 1 131072 8 6 0.584300 -- "OD1" "O" 0 1 131072 9 8 -0.548830 -- "OD2" "OH" 0 1 131072 10 8 -0.581530 -- "HD2" "HO" 0 1 131072 11 1 0.448920 -- "C" "C" 0 1 131072 12 6 0.670480 -- "O" "O" 0 1 131072 13 8 -0.583250 --!entry.ASH.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "C" 0 -1 0.0 -- "OD1" "O" 0 -1 0.0 -- "OD2" "OH" 0 -1 0.0 -- "HD2" "HO" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.ASH.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.ASH.unit.childsequence single int -- 2 --!entry.ASH.unit.connect array int -- 1 -- 12 --!entry.ASH.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 12 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 10 11 1 -- 12 13 1 --!entry.ASH.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 --!entry.ASH.unit.name single str -- "ASH" --!entry.ASH.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.275101 5.011380 1.194527 -- 3.669108 5.954940 0.620011 -- 5.407731 5.091879 1.740667 -- 5.742902 5.987179 1.652920 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.ASH.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 12 0 0 0 0 --!entry.ASH.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "ASH" 1 14 1 "p" 0 --!entry.ASH.unit.residuesPdbSequenceNumber array int -- 0 --!entry.ASH.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.ASH.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.ASN.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.045790 -- "HA" "H1" 0 1 131072 4 1 0.030960 -- "CB" "CT" 0 1 131072 5 6 -0.284870 -- "HB2" "HC" 0 1 131072 6 1 0.150880 -- "HB3" "HC" 0 1 131072 7 1 0.150880 -- "CG" "C" 0 1 131072 8 6 0.619540 -- "OD1" "O" 0 1 131072 9 8 -0.546540 -- "ND2" "N" 0 1 131072 10 7 -0.812900 -- "HD21" "H" 0 1 131072 11 1 0.381610 -- "HD22" "H" 0 1 131072 12 1 0.381610 -- "C" "C" 0 1 131072 13 6 0.670480 -- "O" "O" 0 1 131072 14 8 -0.583250 --!entry.ASN.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "C" 0 -1 0.0 -- "OD1" "O" 0 -1 0.0 -- "ND2" "N" 0 -1 0.0 -- "HD21" "H" 0 -1 0.0 -- "HD22" "H" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.ASN.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.ASN.unit.childsequence single int -- 2 --!entry.ASN.unit.connect array int -- 1 -- 13 --!entry.ASN.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 13 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 10 11 1 -- 10 12 1 -- 13 14 1 --!entry.ASN.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 --!entry.ASN.unit.name single str -- "ASN" --!entry.ASN.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.253700 5.017112 1.232144 -- 5.005299 5.340406 0.315072 -- 3.984885 5.817909 2.265917 -- 4.408015 6.733702 2.314743 -- 3.359611 5.504297 2.994464 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.ASN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 13 0 0 0 0 --!entry.ASN.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "ASN" 1 15 1 "p" 0 --!entry.ASN.unit.residuesPdbSequenceNumber array int -- 0 --!entry.ASN.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.ASN.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.ASP.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.155870 -- "HA" "H1" 0 1 131072 4 1 0.001730 -- "CB" "CT" 0 1 131072 5 6 -0.175110 -- "HB2" "HC" 0 1 131072 6 1 0.072670 -- "HB3" "HC" 0 1 131072 7 1 0.072670 -- "CG" "C" 0 1 131072 8 6 0.847270 -- "OD1" "O2" 0 1 131072 9 8 -0.818990 -- "OD2" "O2" 0 1 131072 10 8 -0.818990 -- "C" "C" 0 1 131072 11 6 0.670480 -- "O" "O" 0 1 131072 12 8 -0.583250 --!entry.ASP.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "C" 0 -1 0.0 -- "OD1" "O2" 0 -1 0.0 -- "OD2" "O2" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.ASP.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.ASP.unit.childsequence single int -- 2 --!entry.ASP.unit.connect array int -- 1 -- 11 --!entry.ASP.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 11 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 11 12 1 --!entry.ASP.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 --!entry.ASP.unit.name single str -- "ASP" --!entry.ASP.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.275101 5.011380 1.194527 -- 3.669108 5.954940 0.620011 -- 5.407731 5.091879 1.740667 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.ASP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 11 0 0 0 0 --!entry.ASP.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "ASP" 1 13 1 "p" 0 --!entry.ASP.unit.residuesPdbSequenceNumber array int -- 0 --!entry.ASP.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.ASP.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CIM.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "CL-" "IM" 0 1 131072 1 -1 -1.000000 --!entry.CIM.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "CL-" "IM" 0 -1 0.0 --!entry.CIM.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CIM.unit.childsequence single int -- 2 --!entry.CIM.unit.connect array int -- 1 -- 1 --!entry.CIM.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 --!entry.CIM.unit.name single str -- "CIM" --!entry.CIM.unit.positions table dbl x dbl y dbl z -- 2.000001 1.000000 -1.346410E-06 --!entry.CIM.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 1 0 0 0 0 --!entry.CIM.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CIM" 1 2 1 "?" 0 --!entry.CIM.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CIM.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CIM.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 --!entry.CIP.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "NA+" "IP" 0 1 131072 1 -1 1.000000 --!entry.CIP.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "NA+" "IP" 0 -1 0.0 --!entry.CIP.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CIP.unit.childsequence single int -- 2 --!entry.CIP.unit.connect array int -- 1 -- 1 --!entry.CIP.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 --!entry.CIP.unit.name single str -- "CIP" --!entry.CIP.unit.positions table dbl x dbl y dbl z -- 2.000001 1.000000 -1.346410E-06 --!entry.CIP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 1 0 0 0 0 --!entry.CIP.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CIP" 1 2 1 "?" 0 --!entry.CIP.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CIP.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CIP.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 --!entry.CYM.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "HN" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.218730 -- "HA" "H1" 0 1 131072 4 1 0.077600 -- "CB" "CT" 0 1 131072 5 6 0.224400 -- "HB3" "H1" 0 1 131072 6 1 -0.057150 -- "HB2" "H1" 0 1 131072 7 1 -0.057150 -- "SG" "SH" 0 1 131072 8 16 -0.943590 -- "C" "C" 0 1 131072 9 6 0.670480 -- "O" "O" 0 1 131072 10 8 -0.583250 --!entry.CYM.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "HN" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB3" "H1" 0 -1 0.0 -- "HB2" "H1" 0 -1 0.0 -- "SG" "SH" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.CYM.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CYM.unit.childsequence single int -- 2 --!entry.CYM.unit.connect array int -- 1 -- 9 --!entry.CYM.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 9 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 9 10 1 --!entry.CYM.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 --!entry.CYM.unit.name single str -- "CYM" --!entry.CYM.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 3.877484 3.115795 2.131197 -- 2.496995 3.801075 1.241379 -- 4.309573 5.303523 1.366036 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.CYM.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 9 0 0 0 0 --!entry.CYM.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CYM" 1 11 1 "p" 0 --!entry.CYM.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CYM.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CYM.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CYS.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.038240 -- "HA" "H1" 0 1 131072 4 1 0.042360 -- "CB" "CT" 0 1 131072 5 6 0.012160 -- "HB2" "H1" 0 1 131072 6 1 0.051450 -- "HB3" "H1" 0 1 131072 7 1 0.051450 -- "SG" "SH" 0 1 131072 8 16 -0.245770 -- "HG" "HS" 0 1 131072 9 1 0.151970 -- "C" "C" 0 1 131072 10 6 0.670480 -- "O" "O" 0 1 131072 11 8 -0.583250 --!entry.CYS.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "H1" 0 -1 0.0 -- "HB3" "H1" 0 -1 0.0 -- "SG" "SH" 0 -1 0.0 -- "HG" "HS" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.CYS.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CYS.unit.childsequence single int -- 2 --!entry.CYS.unit.connect array int -- 1 -- 10 --!entry.CYS.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 10 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 10 11 1 --!entry.CYS.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 --!entry.CYS.unit.name single str -- "CYS" --!entry.CYS.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.309573 5.303523 1.366036 -- 3.725392 5.622018 2.517640 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.CYS.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 10 0 0 0 0 --!entry.CYS.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CYS" 1 12 1 "p" 0 --!entry.CYS.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CYS.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CYS.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.CYX.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.036230 -- "HA" "H1" 0 1 131072 4 1 0.016940 -- "CB" "CT" 0 1 131072 5 6 -0.039530 -- "HB2" "H1" 0 1 131072 6 1 0.081010 -- "HB3" "H1" 0 1 131072 7 1 0.081010 -- "SG" "S" 0 1 131072 8 16 -0.077820 -- "C" "C" 0 1 131072 9 6 0.670480 -- "O" "O" 0 1 131072 10 8 -0.583250 --!entry.CYX.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "H1" 0 -1 0.0 -- "HB3" "H1" 0 -1 0.0 -- "SG" "S" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.CYX.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CYX.unit.childsequence single int -- 2 --!entry.CYX.unit.connect array int -- 1 -- 9 --!entry.CYX.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 9 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 9 10 1 --!entry.CYX.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 --!entry.CYX.unit.name single str -- "CYX" --!entry.CYX.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.309573 5.303523 1.366036 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.CYX.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 9 8 0 0 0 --!entry.CYX.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "CYX" 1 11 1 "p" 0 --!entry.CYX.unit.residuesPdbSequenceNumber array int -- 0 --!entry.CYX.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.CYX.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.GLH.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.137720 -- "HA" "H1" 0 1 131072 4 1 0.067770 -- "CB" "CT" 0 1 131072 5 6 0.139840 -- "HB2" "HC" 0 1 131072 6 1 0.014650 -- "HB3" "HC" 0 1 131072 7 1 0.014650 -- "CG" "CT" 0 1 131072 8 6 -0.360940 -- "HG2" "HC" 0 1 131072 9 1 0.184800 -- "HG3" "HC" 0 1 131072 10 1 0.184800 -- "CD" "C" 0 1 131072 11 6 0.639100 -- "OE1" "O" 0 1 131072 12 8 -0.571870 -- "OE2" "OH" 0 1 131072 13 8 -0.605840 -- "HE2" "HO" 0 1 131072 14 1 0.456140 -- "C" "C" 0 1 131072 15 6 0.670480 -- "O" "O" 0 1 131072 16 8 -0.583250 --!entry.GLH.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "C" 0 -1 0.0 -- "OE1" "O" 0 -1 0.0 -- "OE2" "OH" 0 -1 0.0 -- "HE2" "HO" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.GLH.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.GLH.unit.childsequence single int -- 2 --!entry.GLH.unit.connect array int -- 1 -- 15 --!entry.GLH.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 15 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 15 16 1 --!entry.GLH.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 --!entry.GLH.unit.name single str -- "GLH" --!entry.GLH.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.267328 4.996267 1.194946 -- 5.347413 4.849843 1.186158 -- 3.966923 5.535124 0.296342 -- 3.873732 5.805369 2.428706 -- 4.594590 5.679012 3.454376 -- 2.855965 6.542070 2.333721 -- 2.710526 6.996624 3.166684 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.GLH.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 15 0 0 0 0 --!entry.GLH.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "GLH" 1 17 1 "p" 0 --!entry.GLH.unit.residuesPdbSequenceNumber array int -- 0 --!entry.GLH.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.GLH.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.GLN.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.239260 -- "HA" "H1" 0 1 131072 4 1 0.070250 -- "CB" "CT" 0 1 131072 5 6 0.515970 -- "HB2" "HC" 0 1 131072 6 1 -0.085650 -- "HB3" "HC" 0 1 131072 7 1 -0.085650 -- "CG" "CT" 0 1 131072 8 6 -0.728430 -- "HG2" "HC" 0 1 131072 9 1 0.258090 -- "HG3" "HC" 0 1 131072 10 1 0.258090 -- "CD" "C" 0 1 131072 11 6 0.823540 -- "OE1" "O" 0 1 131072 12 8 -0.668550 -- "NE2" "N" 0 1 131072 13 7 -0.858360 -- "HE21" "H" 0 1 131072 14 1 0.382670 -- "HE22" "H" 0 1 131072 15 1 0.382670 -- "C" "C" 0 1 131072 16 6 0.670480 -- "O" "O" 0 1 131072 17 8 -0.583250 --!entry.GLN.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "C" 0 -1 0.0 -- "OE1" "O" 0 -1 0.0 -- "NE2" "N" 0 -1 0.0 -- "HE21" "H" 0 -1 0.0 -- "HE22" "H" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.GLN.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.GLN.unit.childsequence single int -- 2 --!entry.GLN.unit.connect array int -- 1 -- 16 --!entry.GLN.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 16 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 15 1 -- 16 17 1 --!entry.GLN.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 --!entry.GLN.unit.name single str -- "GLN" --!entry.GLN.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.973781 5.548460 0.295972 -- 3.906976 5.848443 2.410302 -- 3.138962 5.408349 3.262893 -- 4.458856 7.061523 2.488333 -- 4.248434 7.659045 3.274966 -- 5.084281 7.376210 1.760379 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.GLN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 16 0 0 0 0 --!entry.GLN.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "GLN" 1 18 1 "p" 0 --!entry.GLN.unit.residuesPdbSequenceNumber array int -- 0 --!entry.GLN.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.GLN.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.GLU.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.348150 -- "HA" "H1" 0 1 131072 4 1 0.126380 -- "CB" "CT" 0 1 131072 5 6 0.696480 -- "HB2" "HC" 0 1 131072 6 1 -0.186180 -- "HB3" "HC" 0 1 131072 7 1 -0.186180 -- "CG" "CT" 0 1 131072 8 6 -0.662250 -- "HG2" "HC" 0 1 131072 9 1 0.193310 -- "HG3" "HC" 0 1 131072 10 1 0.193310 -- "CD" "C" 0 1 131072 11 6 0.804540 -- "OE1" "O2" 0 1 131072 12 8 -0.802940 -- "OE2" "O2" 0 1 131072 13 8 -0.802940 -- "C" "C" 0 1 131072 14 6 0.670480 -- "O" "O" 0 1 131072 15 8 -0.583250 --!entry.GLU.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "C" 0 -1 0.0 -- "OE1" "O2" 0 -1 0.0 -- "OE2" "O2" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.GLU.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.GLU.unit.childsequence single int -- 2 --!entry.GLU.unit.connect array int -- 1 -- 14 --!entry.GLU.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 14 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 11 13 1 -- 14 15 1 --!entry.GLU.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 --!entry.GLU.unit.name single str -- "GLU" --!entry.GLU.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.267328 4.996267 1.194946 -- 5.347413 4.849843 1.186158 -- 3.966923 5.535124 0.296342 -- 3.873732 5.805369 2.428706 -- 4.594590 5.679012 3.454376 -- 2.855965 6.542070 2.333721 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.GLU.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 14 0 0 0 0 --!entry.GLU.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "GLU" 1 16 1 "p" 0 --!entry.GLU.unit.residuesPdbSequenceNumber array int -- 0 --!entry.GLU.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.GLU.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.GLY.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.277560 -- "HA2" "H0" 0 1 131072 4 -1 0.151470 -- "HA3" "H0" 0 1 131072 5 -1 0.151470 -- "C" "C" 0 1 131072 6 6 0.670480 -- "O" "O" 0 1 131072 7 8 -0.583250 --!entry.GLY.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA2" "H0" 0 -1 0.0 -- "HA3" "H0" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.GLY.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.GLY.unit.childsequence single int -- 2 --!entry.GLY.unit.connect array int -- 1 -- 6 --!entry.GLY.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 6 1 -- 6 7 1 --!entry.GLY.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 --!entry.GLY.unit.name single str -- "GLY" --!entry.GLY.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.671668 3.400125 0.889824 -- 5.483710 2.686702 -4.438857E-06 -- 5.993369 1.568360 -8.469843E-06 --!entry.GLY.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 6 0 0 0 0 --!entry.GLY.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "GLY" 1 8 1 "p" 0 --!entry.GLY.unit.residuesPdbSequenceNumber array int -- 0 --!entry.GLY.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.GLY.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.HID.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.046110 -- "HA" "H1" 0 1 131072 4 1 -0.008910 -- "CB" "CT" 0 1 131072 5 6 -0.213070 -- "HB2" "HC" 0 1 131072 6 1 0.111650 -- "HB3" "HC" 0 1 131072 7 1 0.111650 -- "CG" "CC" 0 1 131072 8 6 0.275120 -- "ND1" "NA" 0 1 131072 9 7 -0.364930 -- "HD1" "H" 0 1 131072 10 1 0.352330 -- "CE1" "CR" 0 1 131072 11 6 0.226080 -- "HE1" "H5" 0 1 131072 12 1 0.060700 -- "NE2" "NB" 0 1 131072 13 7 -0.504470 -- "CD2" "CV" 0 1 131072 14 6 -0.070100 -- "HD2" "H4" 0 1 131072 15 1 0.095440 -- "C" "C" 0 1 131072 16 6 0.670480 -- "O" "O" 0 1 131072 17 8 -0.583250 --!entry.HID.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CC" 0 -1 0.0 -- "ND1" "NA" 0 -1 0.0 -- "HD1" "H" 0 -1 0.0 -- "CE1" "CR" 0 -1 0.0 -- "HE1" "H5" 0 -1 0.0 -- "NE2" "NB" 0 -1 0.0 -- "CD2" "CV" 0 -1 0.0 -- "HD2" "H4" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.HID.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.HID.unit.childsequence single int -- 2 --!entry.HID.unit.connect array int -- 1 -- 16 --!entry.HID.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 16 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 14 1 -- 9 10 1 -- 9 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 14 15 1 -- 16 17 1 --!entry.HID.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 --!entry.HID.unit.name single str -- "HID" --!entry.HID.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.200813 5.026064 1.321087 -- 3.942782 5.885086 2.382972 -- 3.339725 5.691913 3.169805 -- 4.624274 6.997642 2.182500 -- 4.563048 7.811875 2.904563 -- 5.294011 6.891451 1.061663 -- 5.058974 5.678868 0.492453 -- 5.537741 5.417846 -0.451343 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.HID.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 16 0 0 0 0 --!entry.HID.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "HID" 1 18 1 "p" 0 --!entry.HID.unit.residuesPdbSequenceNumber array int -- 0 --!entry.HID.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.HID.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.HIE.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.125440 -- "HA" "H1" 0 1 131072 4 1 0.030840 -- "CB" "CT" 0 1 131072 5 6 -0.214440 -- "HB2" "HC" 0 1 131072 6 1 0.140600 -- "HB3" "HC" 0 1 131072 7 1 0.140600 -- "CG" "CC" 0 1 131072 8 6 0.385250 -- "ND1" "NB" 0 1 131072 9 7 -0.681670 -- "CE1" "CR" 0 1 131072 10 6 0.349170 -- "HE1" "H5" 0 1 131072 11 1 0.030760 -- "NE2" "NA" 0 1 131072 12 7 -0.327570 -- "HE2" "H" 0 1 131072 13 1 0.341080 -- "CD2" "CW" 0 1 131072 14 6 -0.206690 -- "HD2" "H4" 0 1 131072 15 1 0.162890 -- "C" "C" 0 1 131072 16 6 0.670480 -- "O" "O" 0 1 131072 17 8 -0.583250 --!entry.HIE.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CC" 0 -1 0.0 -- "ND1" "NB" 0 -1 0.0 -- "CE1" "CR" 0 -1 0.0 -- "HE1" "H5" 0 -1 0.0 -- "NE2" "NA" 0 -1 0.0 -- "HE2" "H" 0 -1 0.0 -- "CD2" "CW" 0 -1 0.0 -- "HD2" "H4" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.HIE.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.HIE.unit.childsequence single int -- 2 --!entry.HIE.unit.connect array int -- 1 -- 16 --!entry.HIE.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 16 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 14 1 -- 9 10 1 -- 10 11 1 -- 10 12 1 -- 12 13 1 -- 12 14 1 -- 14 15 1 -- 16 17 1 --!entry.HIE.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 --!entry.HIE.unit.name single str -- "HIE" --!entry.HIE.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.200813 5.026064 1.321087 -- 3.942782 5.885086 2.382972 -- 4.624274 6.997642 2.182500 -- 4.563048 7.811875 2.904563 -- 5.294011 6.891451 1.061663 -- 5.896297 7.605085 0.676854 -- 5.058974 5.678868 0.492453 -- 5.537741 5.417846 -0.451343 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.HIE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 16 0 0 0 0 --!entry.HIE.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "HIE" 1 18 1 "p" 0 --!entry.HIE.unit.residuesPdbSequenceNumber array int -- 0 --!entry.HIE.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.HIE.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.HIP.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 0.017840 -- "HA" "H1" 0 1 131072 4 1 -0.000340 -- "CB" "CT" 0 1 131072 5 6 -0.074410 -- "HB2" "HC" 0 1 131072 6 1 0.084140 -- "HB3" "HC" 0 1 131072 7 1 0.084140 -- "CG" "CC" 0 1 131072 8 6 0.259530 -- "ND1" "NA" 0 1 131072 9 7 -0.134860 -- "HD1" "H" 0 1 131072 10 1 0.376730 -- "CE1" "CR" 0 1 131072 11 6 -0.086920 -- "HE1" "H5" 0 1 131072 12 1 0.197160 -- "NE2" "NA" 0 1 131072 13 7 0.089780 -- "HE2" "H" 0 1 131072 14 1 0.285300 -- "CD2" "CW" 0 1 131072 15 6 -0.259230 -- "HD2" "H4" 0 1 131072 16 1 0.186520 -- "C" "C" 0 1 131072 17 6 0.670480 -- "O" "O" 0 1 131072 18 8 -0.583250 --!entry.HIP.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CC" 0 -1 0.0 -- "ND1" "NA" 0 -1 0.0 -- "HD1" "H" 0 -1 0.0 -- "CE1" "CR" 0 -1 0.0 -- "HE1" "H5" 0 -1 0.0 -- "NE2" "NA" 0 -1 0.0 -- "HE2" "H" 0 -1 0.0 -- "CD2" "CW" 0 -1 0.0 -- "HD2" "H4" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.HIP.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.HIP.unit.childsequence single int -- 2 --!entry.HIP.unit.connect array int -- 1 -- 17 --!entry.HIP.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 17 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 15 1 -- 9 10 1 -- 9 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 15 1 -- 15 16 1 -- 17 18 1 --!entry.HIP.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 --!entry.HIP.unit.name single str -- "HIP" --!entry.HIP.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.200813 5.026064 1.321087 -- 3.942782 5.885086 2.382972 -- 3.339725 5.691913 3.169805 -- 4.624274 6.997642 2.182500 -- 4.563048 7.811875 2.904563 -- 5.294011 6.891451 1.061663 -- 5.896297 7.605085 0.676854 -- 5.058974 5.678868 0.492453 -- 5.537741 5.417846 -0.451343 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.HIP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 17 0 0 0 0 --!entry.HIP.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "HIP" 1 19 1 "p" 0 --!entry.HIP.unit.residuesPdbSequenceNumber array int -- 0 --!entry.HIP.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.HIP.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.ILE.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.319670 -- "HA" "H1" 0 1 131072 4 1 0.149580 -- "CB" "CT" 0 1 131072 5 6 0.330640 -- "HB" "HC" 0 1 131072 6 1 -0.064360 -- "CG2" "CT" 0 1 131072 7 6 -0.412720 -- "HG21" "HC" 0 1 131072 8 1 0.117730 -- "HG22" "HC" 0 1 131072 9 1 0.117730 -- "HG23" "HC" 0 1 131072 10 1 0.117730 -- "CG1" "CT" 0 1 131072 11 6 -0.127860 -- "HG12" "HC" 0 1 131072 12 1 0.051810 -- "HG13" "HC" 0 1 131072 13 1 0.051810 -- "CD1" "CT" 0 1 131072 14 6 -0.024360 -- "HD11" "HC" 0 1 131072 15 1 0.012440 -- "HD12" "HC" 0 1 131072 16 1 0.012440 -- "HD13" "HC" 0 1 131072 17 1 0.012440 -- "C" "C" 0 1 131072 18 6 0.670480 -- "O" "O" 0 1 131072 19 8 -0.583250 --!entry.ILE.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB" "HC" 0 -1 0.0 -- "CG2" "CT" 0 -1 0.0 -- "HG21" "HC" 0 -1 0.0 -- "HG22" "HC" 0 -1 0.0 -- "HG23" "HC" 0 -1 0.0 -- "CG1" "CT" 0 -1 0.0 -- "HG12" "HC" 0 -1 0.0 -- "HG13" "HC" 0 -1 0.0 -- "CD1" "CT" 0 -1 0.0 -- "HD11" "HC" 0 -1 0.0 -- "HD12" "HC" 0 -1 0.0 -- "HD13" "HC" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.ILE.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.ILE.unit.childsequence single int -- 2 --!entry.ILE.unit.connect array int -- 1 -- 18 --!entry.ILE.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 18 1 -- 5 6 1 -- 5 7 1 -- 5 11 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 11 12 1 -- 11 13 1 -- 11 14 1 -- 14 15 1 -- 14 16 1 -- 14 17 1 -- 18 19 1 --!entry.ILE.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 --!entry.ILE.unit.name single str -- "ILE" --!entry.ILE.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.552136 3.620733 1.245168 -- 2.470128 3.752486 1.245640 -- 3.970045 2.845728 2.490296 -- 5.052053 2.713974 2.490763 -- 3.671561 3.399208 3.380615 -- 3.485650 1.869275 2.490737 -- 4.230204 4.986694 1.245169 -- 5.312310 4.855746 1.245164 -- 3.931820 5.541027 0.355348 -- 3.812294 5.761632 2.490339 -- 4.110777 5.208104 3.380628 -- 4.296689 6.738085 2.490833 -- 2.730286 5.893383 2.490813 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.ILE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 18 0 0 0 0 --!entry.ILE.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "ILE" 1 20 1 "p" 0 --!entry.ILE.unit.residuesPdbSequenceNumber array int -- 0 --!entry.ILE.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.ILE.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.LEU.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.116580 -- "HA" "H1" 0 1 131072 4 1 0.026810 -- "CB" "CT" 0 1 131072 5 6 -0.227760 -- "HB2" "HC" 0 1 131072 6 1 0.095470 -- "HB3" "HC" 0 1 131072 7 1 0.095470 -- "CG" "CT" 0 1 131072 8 6 0.606550 -- "HG" "HC" 0 1 131072 9 1 -0.114060 -- "CD1" "CT" 0 1 131072 10 6 -0.794260 -- "HD11" "HC" 0 1 131072 11 1 0.208000 -- "HD12" "HC" 0 1 131072 12 1 0.208000 -- "HD13" "HC" 0 1 131072 13 1 0.208000 -- "CD2" "CT" 0 1 131072 14 6 -0.794260 -- "HD21" "HC" 0 1 131072 15 1 0.208000 -- "HD22" "HC" 0 1 131072 16 1 0.208000 -- "HD23" "HC" 0 1 131072 17 1 0.208000 -- "C" "C" 0 1 131072 18 6 0.670480 -- "O" "O" 0 1 131072 19 8 -0.583250 --!entry.LEU.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG" "HC" 0 -1 0.0 -- "CD1" "CT" 0 -1 0.0 -- "HD11" "HC" 0 -1 0.0 -- "HD12" "HC" 0 -1 0.0 -- "HD13" "HC" 0 -1 0.0 -- "CD2" "CT" 0 -1 0.0 -- "HD21" "HC" 0 -1 0.0 -- "HD22" "HC" 0 -1 0.0 -- "HD23" "HC" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.LEU.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.LEU.unit.childsequence single int -- 2 --!entry.LEU.unit.connect array int -- 1 -- 18 --!entry.LEU.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 18 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 14 1 -- 10 11 1 -- 10 12 1 -- 10 13 1 -- 14 15 1 -- 14 16 1 -- 14 17 1 -- 18 19 1 --!entry.LEU.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 --!entry.LEU.unit.name single str -- "LEU" --!entry.LEU.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.853429 5.762895 -0.062857 -- 2.773449 5.910113 -0.054557 -- 4.351513 6.732052 -0.090203 -- 4.134159 5.185704 -0.943846 -- 3.881105 5.817645 2.426721 -- 4.181626 5.279602 3.325774 -- 4.379198 6.786825 2.400363 -- 2.801135 5.964881 2.435959 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.LEU.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 18 0 0 0 0 --!entry.LEU.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "LEU" 1 20 1 "p" 0 --!entry.LEU.unit.residuesPdbSequenceNumber array int -- 0 --!entry.LEU.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.LEU.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.LYN.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.181890 -- "HA" "H1" 0 1 131072 4 1 0.074160 -- "CB" "CT" 0 1 131072 5 6 0.078320 -- "HB2" "HC" 0 1 131072 6 1 -0.000500 -- "HB3" "HC" 0 1 131072 7 1 -0.000500 -- "CG" "CT" 0 1 131072 8 6 0.004490 -- "HG2" "HC" 0 1 131072 9 1 0.023890 -- "HG3" "HC" 0 1 131072 10 1 0.023890 -- "CD" "CT" 0 1 131072 11 6 -0.277170 -- "HD2" "HC" 0 1 131072 12 1 0.112690 -- "HD3" "HC" 0 1 131072 13 1 0.112690 -- "CE" "CT" 0 1 131072 14 6 0.554010 -- "HE2" "H1" 0 1 131072 15 1 -0.114200 -- "HE3" "H1" 0 1 131072 16 1 -0.114200 -- "NZ" "NT" 0 1 131072 17 7 -0.979220 -- "HZ2" "H" 0 1 131072 18 1 0.354460 -- "HZ3" "H" 0 1 131072 19 1 0.354460 -- "C" "C" 0 1 131072 20 6 0.670480 -- "O" "O" 0 1 131072 21 8 -0.583250 --!entry.LYN.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "CT" 0 -1 0.0 -- "HD2" "HC" 0 -1 0.0 -- "HD3" "HC" 0 -1 0.0 -- "CE" "CT" 0 -1 0.0 -- "HE2" "H1" 0 -1 0.0 -- "HE3" "H1" 0 -1 0.0 -- "NZ" "NT" 0 -1 0.0 -- "HZ2" "H" 0 -1 0.0 -- "HZ3" "H" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.LYN.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.LYN.unit.childsequence single int -- 2 --!entry.LYN.unit.connect array int -- 1 -- 20 --!entry.LYN.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 20 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 11 13 1 -- 11 14 1 -- 14 15 1 -- 14 16 1 -- 14 17 1 -- 17 18 1 -- 17 19 1 -- 20 21 1 --!entry.LYN.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 --!entry.LYN.unit.name single str -- "LYN" --!entry.LYN.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.973781 5.548460 0.295972 -- 3.881105 5.817645 2.426721 -- 2.801135 5.964881 2.435959 -- 4.181626 5.279602 3.325774 -- 4.578325 7.173410 2.389153 -- 5.658410 7.026987 2.380363 -- 4.277917 7.712267 1.490550 -- 4.199422 7.952309 3.576860 -- 4.661186 8.850226 3.551979 -- 3.198675 8.088466 3.584971 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.LYN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 20 0 0 0 0 --!entry.LYN.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "LYN" 1 22 1 "p" 0 --!entry.LYN.unit.residuesPdbSequenceNumber array int -- 0 --!entry.LYN.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.LYN.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.LYS.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.181230 -- "HA" "H1" 0 1 131072 4 1 0.099160 -- "CB" "CT" 0 1 131072 5 6 0.004110 -- "HB2" "HC" 0 1 131072 6 1 0.027580 -- "HB3" "HC" 0 1 131072 7 1 0.027580 -- "CG" "CT" 0 1 131072 8 6 -0.053270 -- "HG2" "HC" 0 1 131072 9 1 0.053050 -- "HG3" "HC" 0 1 131072 10 1 0.053050 -- "CD" "CT" 0 1 131072 11 6 -0.201370 -- "HD2" "HC" 0 1 131072 12 1 0.095630 -- "HD3" "HC" 0 1 131072 13 1 0.095630 -- "CE" "CT" 0 1 131072 14 6 0.465480 -- "HE2" "HP" 0 1 131072 15 1 -0.049170 -- "HE3" "HP" 0 1 131072 16 1 -0.049170 -- "NZ" "N3" 0 1 131072 17 7 -0.366380 -- "HZ1" "H" 0 1 131072 18 1 0.334900 -- "HZ2" "H" 0 1 131072 19 1 0.334900 -- "HZ3" "H" 0 1 131072 20 1 0.334900 -- "C" "C" 0 1 131072 21 6 0.670480 -- "O" "O" 0 1 131072 22 8 -0.583250 --!entry.LYS.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CD" "CT" 0 -1 0.0 -- "HD2" "HC" 0 -1 0.0 -- "HD3" "HC" 0 -1 0.0 -- "CE" "CT" 0 -1 0.0 -- "HE2" "HP" 0 -1 0.0 -- "HE3" "HP" 0 -1 0.0 -- "NZ" "N3" 0 -1 0.0 -- "HZ1" "H" 0 -1 0.0 -- "HZ2" "H" 0 -1 0.0 -- "HZ3" "H" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.LYS.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.LYS.unit.childsequence single int -- 2 --!entry.LYS.unit.connect array int -- 1 -- 21 --!entry.LYS.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 21 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 11 13 1 -- 11 14 1 -- 14 15 1 -- 14 16 1 -- 14 17 1 -- 17 18 1 -- 17 19 1 -- 17 20 1 -- 21 22 1 --!entry.LYS.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 -- "R" 1 "A" 22 --!entry.LYS.unit.name single str -- "LYS" --!entry.LYS.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.973781 5.548460 0.295972 -- 3.881105 5.817645 2.426721 -- 2.801135 5.964881 2.435959 -- 4.181626 5.279602 3.325774 -- 4.578325 7.173410 2.389153 -- 5.658410 7.026987 2.380363 -- 4.277917 7.712267 1.490550 -- 4.199422 7.952309 3.576860 -- 4.478085 7.453366 4.409628 -- 4.661186 8.850226 3.551979 -- 3.198675 8.088466 3.584971 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.LYS.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 21 0 0 0 0 --!entry.LYS.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "LYS" 1 23 1 "p" 0 --!entry.LYS.unit.residuesPdbSequenceNumber array int -- 0 --!entry.LYS.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.LYS.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.MET.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.152290 -- "HA" "H1" 0 1 131072 4 1 0.080630 -- "CB" "CT" 0 1 131072 5 6 0.271900 -- "HB2" "HC" 0 1 131072 6 1 -0.049340 -- "HB3" "HC" 0 1 131072 7 1 -0.049340 -- "CG" "CT" 0 1 131072 8 6 -0.289240 -- "HG2" "H1" 0 1 131072 9 1 0.138580 -- "HG3" "H1" 0 1 131072 10 1 0.138580 -- "SD" "S" 0 1 131072 11 16 -0.127450 -- "CE" "CT" 0 1 131072 12 6 -0.275560 -- "HE1" "H1" 0 1 131072 13 1 0.112970 -- "HE2" "H1" 0 1 131072 14 1 0.112970 -- "HE3" "H1" 0 1 131072 15 1 0.112970 -- "C" "C" 0 1 131072 16 6 0.670480 -- "O" "O" 0 1 131072 17 8 -0.583250 --!entry.MET.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "H1" 0 -1 0.0 -- "HG3" "H1" 0 -1 0.0 -- "SD" "S" 0 -1 0.0 -- "CE" "CT" 0 -1 0.0 -- "HE1" "H1" 0 -1 0.0 -- "HE2" "H1" 0 -1 0.0 -- "HE3" "H1" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.MET.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.MET.unit.childsequence single int -- 2 --!entry.MET.unit.connect array int -- 1 -- 16 --!entry.MET.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 16 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 12 13 1 -- 12 14 1 -- 12 15 1 -- 16 17 1 --!entry.MET.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 --!entry.MET.unit.name single str -- "MET" --!entry.MET.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.274186 5.009602 1.194577 -- 5.354271 4.863178 1.185788 -- 3.973781 5.548460 0.295972 -- 3.817309 5.981266 2.651708 -- 4.753212 7.463128 2.340949 -- 4.433582 7.904044 1.396741 -- 4.585907 8.175299 3.148985 -- 5.814074 7.218763 2.286554 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.MET.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 16 0 0 0 0 --!entry.MET.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "MET" 1 18 1 "p" 0 --!entry.MET.unit.residuesPdbSequenceNumber array int -- 0 --!entry.MET.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.MET.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.PHE.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.097530 -- "HA" "H1" 0 1 131072 4 1 0.021040 -- "CB" "CT" 0 1 131072 5 6 -0.127300 -- "HB2" "HC" 0 1 131072 6 1 0.103640 -- "HB3" "HC" 0 1 131072 7 1 0.103640 -- "CG" "CA" 0 1 131072 8 6 0.128890 -- "CD1" "CA" 0 1 131072 9 6 -0.194310 -- "HD1" "HA" 0 1 131072 10 1 0.141910 -- "CE1" "CA" 0 1 131072 11 6 -0.098170 -- "HE1" "HA" 0 1 131072 12 1 0.108820 -- "CZ" "CA" 0 1 131072 13 6 -0.112640 -- "HZ" "HA" 0 1 131072 14 1 0.089140 -- "CE2" "CA" 0 1 131072 15 6 -0.098170 -- "HE2" "HA" 0 1 131072 16 1 0.108820 -- "CD2" "CA" 0 1 131072 17 6 -0.194310 -- "HD2" "HA" 0 1 131072 18 1 0.141910 -- "C" "C" 0 1 131072 19 6 0.670480 -- "O" "O" 0 1 131072 20 8 -0.583250 --!entry.PHE.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CA" 0 -1 0.0 -- "CD1" "CA" 0 -1 0.0 -- "HD1" "HA" 0 -1 0.0 -- "CE1" "CA" 0 -1 0.0 -- "HE1" "HA" 0 -1 0.0 -- "CZ" "CA" 0 -1 0.0 -- "HZ" "HA" 0 -1 0.0 -- "CE2" "CA" 0 -1 0.0 -- "HE2" "HA" 0 -1 0.0 -- "CD2" "CA" 0 -1 0.0 -- "HD2" "HA" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.PHE.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.PHE.unit.childsequence single int -- 2 --!entry.PHE.unit.connect array int -- 1 -- 19 --!entry.PHE.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 19 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 17 1 -- 9 10 1 -- 9 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 15 1 -- 15 16 1 -- 15 17 1 -- 17 18 1 -- 19 20 1 --!entry.PHE.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 --!entry.PHE.unit.name single str -- "PHE" --!entry.PHE.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.200813 5.026064 1.321087 -- 3.911613 5.857250 2.409890 -- 3.236123 5.513843 3.193398 -- 4.490014 7.129513 2.492354 -- 4.264853 7.776651 3.340066 -- 5.357616 7.570591 1.486016 -- 5.807943 8.561138 1.550220 -- 5.646818 6.739407 0.397211 -- 6.322309 7.082817 -0.386295 -- 5.068419 5.467143 0.314744 -- 5.293584 4.820007 -0.532968 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.PHE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 19 0 0 0 0 --!entry.PHE.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "PHE" 1 21 1 "p" 0 --!entry.PHE.unit.residuesPdbSequenceNumber array int -- 0 --!entry.PHE.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.PHE.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.PRO.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.259820 -- "CD" "CT" 0 1 131072 2 6 0.070890 -- "HD2" "H1" 0 1 131072 3 1 0.019250 -- "HD3" "H1" 0 1 131072 4 1 0.019260 -- "CG" "CT" 0 1 131072 5 6 0.067960 -- "HG2" "HC" 0 1 131072 6 1 0.009600 -- "HG3" "HC" 0 1 131072 7 1 0.009600 -- "CB" "CT" 0 1 131072 8 6 0.038490 -- "HB2" "HC" 0 1 131072 9 1 0.020120 -- "HB3" "HC" 0 1 131072 10 1 0.020120 -- "CA" "CT" 0 1 131072 11 6 -0.194650 -- "HA" "H1" 0 1 131072 12 1 0.091950 -- "C" "C" 0 1 131072 13 6 0.670480 -- "O" "O" 0 1 131072 14 8 -0.583250 --!entry.PRO.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "CD" "CT" 0 -1 0.0 -- "HD2" "H1" 0 -1 0.0 -- "HD3" "H1" 0 -1 0.0 -- "CG" "CT" 0 -1 0.0 -- "HG2" "HC" 0 -1 0.0 -- "HG3" "HC" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.PRO.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.PRO.unit.childsequence single int -- 2 --!entry.PRO.unit.connect array int -- 1 -- 13 --!entry.PRO.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 11 1 -- 2 3 1 -- 2 4 1 -- 2 5 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 10 1 -- 8 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 --!entry.PRO.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 --!entry.PRO.unit.name single str -- "PRO" --!entry.PRO.unit.positions table dbl x dbl y dbl z -- 3.326834 1.557389 -1.603945E-06 -- 4.302147 0.476598 0.080119 -- 4.419998 0.019283 -0.902263 -- 3.955888 -0.274040 0.790574 -- 5.547126 1.172441 0.544693 -- 6.413549 0.741636 0.042879 -- 5.652950 1.047934 1.622376 -- 5.369091 2.628184 0.185227 -- 5.969289 2.861861 -0.694123 -- 5.690642 3.251038 1.019947 -- 3.933610 2.871277 -0.104508 -- 3.611470 3.488570 0.734106 -- 3.505164 3.526392 -1.409783 -- 2.754240 2.939065 -2.185412 --!entry.PRO.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 13 0 0 0 0 --!entry.PRO.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "PRO" 1 15 1 "p" 0 --!entry.PRO.unit.residuesPdbSequenceNumber array int -- 0 --!entry.PRO.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.PRO.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.SER.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.066190 -- "HA" "H1" 0 1 131072 4 1 0.078820 -- "CB" "CT" 0 1 131072 5 6 0.185370 -- "HB2" "H1" 0 1 131072 6 1 0.025410 -- "HB3" "H1" 0 1 131072 7 1 0.025410 -- "OG" "OH" 0 1 131072 8 8 -0.602470 -- "HG" "HO" 0 1 131072 9 1 0.379030 -- "C" "C" 0 1 131072 10 6 0.670480 -- "O" "O" 0 1 131072 11 8 -0.583250 --!entry.SER.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "H1" 0 -1 0.0 -- "HB3" "H1" 0 -1 0.0 -- "OG" "OH" 0 -1 0.0 -- "HG" "HO" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.SER.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.SER.unit.childsequence single int -- 2 --!entry.SER.unit.connect array int -- 1 -- 10 --!entry.SER.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 10 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 10 11 1 --!entry.SER.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 --!entry.SER.unit.name single str -- "SER" --!entry.SER.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.230753 4.925145 1.196917 -- 3.983305 5.433814 1.972562 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.SER.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 10 0 0 0 0 --!entry.SER.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "SER" 1 12 1 "p" 0 --!entry.SER.unit.residuesPdbSequenceNumber array int -- 0 --!entry.SER.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.SER.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.THR.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.022270 -- "HA" "H1" 0 1 131072 4 1 0.053100 -- "CB" "CT" 0 1 131072 5 6 0.522850 -- "HB" "H1" 0 1 131072 6 1 -0.139050 -- "CG2" "CT" 0 1 131072 7 6 -0.588650 -- "HG21" "HC" 0 1 131072 8 1 0.162040 -- "HG22" "HC" 0 1 131072 9 1 0.162040 -- "HG23" "HC" 0 1 131072 10 1 0.162040 -- "OG1" "OH" 0 1 131072 11 8 -0.739400 -- "HG1" "HO" 0 1 131072 12 1 0.452680 -- "C" "C" 0 1 131072 13 6 0.670480 -- "O" "O" 0 1 131072 14 8 -0.583250 --!entry.THR.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB" "H1" 0 -1 0.0 -- "CG2" "CT" 0 -1 0.0 -- "HG21" "HC" 0 -1 0.0 -- "HG22" "HC" 0 -1 0.0 -- "HG23" "HC" 0 -1 0.0 -- "OG1" "OH" 0 -1 0.0 -- "HG1" "HO" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.THR.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.THR.unit.childsequence single int -- 2 --!entry.THR.unit.connect array int -- 1 -- 13 --!entry.THR.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 13 1 -- 5 6 1 -- 5 7 1 -- 5 11 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 11 12 1 -- 13 14 1 --!entry.THR.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 --!entry.THR.unit.name single str -- "THR" --!entry.THR.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 4.075059 4.623017 1.205786 -- 2.065936 3.859425 1.244383 -- 1.567127 2.890627 1.271209 -- 1.784431 4.436953 2.124903 -- 1.764699 4.397847 0.345796 -- 3.971501 2.947413 2.411212 -- 3.724052 3.456082 3.186857 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.THR.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 13 0 0 0 0 --!entry.THR.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "THR" 1 15 1 "p" 0 --!entry.THR.unit.residuesPdbSequenceNumber array int -- 0 --!entry.THR.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.THR.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.TRP.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.094050 -- "HA" "H1" 0 1 131072 4 1 0.058350 -- "CB" "CT" 0 1 131072 5 6 0.034010 -- "HB2" "HC" 0 1 131072 6 1 0.031520 -- "HB3" "HC" 0 1 131072 7 1 0.031520 -- "CG" "C*" 0 1 131072 8 6 -0.279060 -- "CD1" "CW" 0 1 131072 9 6 0.030520 -- "HD1" "H4" 0 1 131072 10 1 0.136990 -- "NE1" "NA" 0 1 131072 11 7 -0.483180 -- "HE1" "H" 0 1 131072 12 1 0.393090 -- "CE2" "CN" 0 1 131072 13 6 0.203200 -- "CZ2" "CA" 0 1 131072 14 6 -0.272110 -- "HZ2" "HA" 0 1 131072 15 1 0.185390 -- "CH2" "CA" 0 1 131072 16 6 -0.171160 -- "HH2" "HA" 0 1 131072 17 1 0.105360 -- "CZ3" "CA" 0 1 131072 18 6 -0.058970 -- "HZ3" "HA" 0 1 131072 19 1 0.088920 -- "CE3" "CA" 0 1 131072 20 6 -0.403270 -- "HE3" "HA" 0 1 131072 21 1 0.216660 -- "CD2" "CB" 0 1 131072 22 6 0.271650 -- "C" "C" 0 1 131072 23 6 0.670480 -- "O" "O" 0 1 131072 24 8 -0.583250 --!entry.TRP.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "C*" 0 -1 0.0 -- "CD1" "CW" 0 -1 0.0 -- "HD1" "H4" 0 -1 0.0 -- "NE1" "NA" 0 -1 0.0 -- "HE1" "H" 0 -1 0.0 -- "CE2" "CN" 0 -1 0.0 -- "CZ2" "CA" 0 -1 0.0 -- "HZ2" "HA" 0 -1 0.0 -- "CH2" "CA" 0 -1 0.0 -- "HH2" "HA" 0 -1 0.0 -- "CZ3" "CA" 0 -1 0.0 -- "HZ3" "HA" 0 -1 0.0 -- "CE3" "CA" 0 -1 0.0 -- "HE3" "HA" 0 -1 0.0 -- "CD2" "CB" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.TRP.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.TRP.unit.childsequence single int -- 2 --!entry.TRP.unit.connect array int -- 1 -- 23 --!entry.TRP.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 23 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 22 1 -- 9 10 1 -- 9 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 22 1 -- 14 15 1 -- 14 16 1 -- 16 17 1 -- 16 18 1 -- 18 19 1 -- 18 20 1 -- 20 21 1 -- 20 22 1 -- 23 24 1 --!entry.TRP.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 -- "R" 1 "A" 22 -- "R" 1 "A" 23 -- "R" 1 "A" 24 --!entry.TRP.unit.name single str -- "TRP" --!entry.TRP.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.200813 5.026064 1.321087 -- 4.023453 5.931084 2.293240 -- 3.368841 5.705466 3.135071 -- 4.811943 7.073555 1.949808 -- 4.882921 7.922010 2.493118 -- 5.427347 6.842060 0.816764 -- 6.297161 7.689052 0.119605 -- 6.531230 8.676649 0.517050 -- 6.814091 7.187011 -1.069023 -- 7.498074 7.791857 -1.664362 -- 6.482659 5.953119 -1.505101 -- 6.897660 5.575648 -2.439654 -- 5.604041 5.117355 -0.785636 -- 5.358720 4.126570 -1.168080 -- 5.083390 5.623004 0.411545 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.TRP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 23 0 0 0 0 --!entry.TRP.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "TRP" 1 25 1 "p" 0 --!entry.TRP.unit.residuesPdbSequenceNumber array int -- 0 --!entry.TRP.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.TRP.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.TYR.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.176100 -- "HA" "H1" 0 1 131072 4 1 0.082580 -- "CB" "CT" 0 1 131072 5 6 -0.032040 -- "HB2" "HC" 0 1 131072 6 1 0.077470 -- "HB3" "HC" 0 1 131072 7 1 0.077470 -- "CG" "CA" 0 1 131072 8 6 -0.034160 -- "CD1" "CA" 0 1 131072 9 6 -0.120710 -- "HD1" "HA" 0 1 131072 10 1 0.140120 -- "CE1" "CA" 0 1 131072 11 6 -0.333900 -- "HE1" "HA" 0 1 131072 12 1 0.188970 -- "CZ" "CA" 0 1 131072 13 6 0.442780 -- "OH" "OH" 0 1 131072 14 8 -0.541860 -- "HH" "HO" 0 1 131072 15 1 0.380280 -- "CE2" "CA" 0 1 131072 16 6 -0.333900 -- "HE2" "HA" 0 1 131072 17 1 0.188970 -- "CD2" "CA" 0 1 131072 18 6 -0.120710 -- "HD2" "HA" 0 1 131072 19 1 0.140120 -- "C" "C" 0 1 131072 20 6 0.670480 -- "O" "O" 0 1 131072 21 8 -0.583250 --!entry.TYR.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB2" "HC" 0 -1 0.0 -- "HB3" "HC" 0 -1 0.0 -- "CG" "CA" 0 -1 0.0 -- "CD1" "CA" 0 -1 0.0 -- "HD1" "HA" 0 -1 0.0 -- "CE1" "CA" 0 -1 0.0 -- "HE1" "HA" 0 -1 0.0 -- "CZ" "CA" 0 -1 0.0 -- "OH" "OH" 0 -1 0.0 -- "HH" "HO" 0 -1 0.0 -- "CE2" "CA" 0 -1 0.0 -- "HE2" "HA" 0 -1 0.0 -- "CD2" "CA" 0 -1 0.0 -- "HD2" "HA" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.TYR.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.TYR.unit.childsequence single int -- 2 --!entry.TYR.unit.connect array int -- 1 -- 20 --!entry.TYR.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 20 1 -- 5 6 1 -- 5 7 1 -- 5 8 1 -- 8 9 1 -- 8 18 1 -- 9 10 1 -- 9 11 1 -- 11 12 1 -- 11 13 1 -- 13 14 1 -- 13 16 1 -- 14 15 1 -- 16 17 1 -- 16 18 1 -- 18 19 1 -- 20 21 1 --!entry.TYR.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 -- "R" 1 "A" 17 -- "R" 1 "A" 18 -- "R" 1 "A" 19 -- "R" 1 "A" 20 -- "R" 1 "A" 21 --!entry.TYR.unit.name single str -- "TYR" --!entry.TYR.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.877484 3.115795 2.131197 -- 4.267328 4.996267 1.194946 -- 4.059927 5.918911 2.227280 -- 3.400108 5.668218 3.057877 -- 4.699998 7.163547 2.192791 -- 4.538522 7.881891 2.996538 -- 5.547471 7.485542 1.125970 -- 6.169255 8.694617 1.092468 -- 5.956327 9.246984 1.848214 -- 5.754875 6.562900 0.093635 -- 6.414694 6.813595 -0.736962 -- 5.114806 5.318263 0.128119 -- 5.276286 4.599920 -0.675627 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.TYR.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 20 0 0 0 0 --!entry.TYR.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "TYR" 1 22 1 "p" 0 --!entry.TYR.unit.residuesPdbSequenceNumber array int -- 0 --!entry.TYR.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.TYR.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 --!entry.VAL.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg -- "N" "N" 0 1 131072 1 7 -0.404070 -- "H" "H" 0 1 131072 2 1 0.291460 -- "CA" "CT" 0 1 131072 3 6 -0.248670 -- "HA" "H1" 0 1 131072 4 1 0.096610 -- "CB" "CT" 0 1 131072 5 6 0.652680 -- "HB" "HC" 0 1 131072 6 1 -0.125280 -- "CG1" "CT" 0 1 131072 7 6 -0.741410 -- "HG11" "HC" 0 1 131072 8 1 0.188810 -- "HG12" "HC" 0 1 131072 9 1 0.188810 -- "HG13" "HC" 0 1 131072 10 1 0.188810 -- "CG2" "CT" 0 1 131072 11 6 -0.741410 -- "HG21" "HC" 0 1 131072 12 1 0.188810 -- "HG22" "HC" 0 1 131072 13 1 0.188810 -- "HG23" "HC" 0 1 131072 14 1 0.188810 -- "C" "C" 0 1 131072 15 6 0.670480 -- "O" "O" 0 1 131072 16 8 -0.583250 --!entry.VAL.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -- "N" "N" 0 -1 0.0 -- "H" "H" 0 -1 0.0 -- "CA" "CT" 0 -1 0.0 -- "HA" "H1" 0 -1 0.0 -- "CB" "CT" 0 -1 0.0 -- "HB" "HC" 0 -1 0.0 -- "CG1" "CT" 0 -1 0.0 -- "HG11" "HC" 0 -1 0.0 -- "HG12" "HC" 0 -1 0.0 -- "HG13" "HC" 0 -1 0.0 -- "CG2" "CT" 0 -1 0.0 -- "HG21" "HC" 0 -1 0.0 -- "HG22" "HC" 0 -1 0.0 -- "HG23" "HC" 0 -1 0.0 -- "C" "C" 0 -1 0.0 -- "O" "O" 0 -1 0.0 --!entry.VAL.unit.boundbox array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.VAL.unit.childsequence single int -- 2 --!entry.VAL.unit.connect array int -- 1 -- 15 --!entry.VAL.unit.connectivity table int atom1x int atom2x int flags -- 1 2 1 -- 1 3 1 -- 3 4 1 -- 3 5 1 -- 3 15 1 -- 5 6 1 -- 5 7 1 -- 5 11 1 -- 7 8 1 -- 7 9 1 -- 7 10 1 -- 11 12 1 -- 11 13 1 -- 11 14 1 -- 15 16 1 --!entry.VAL.unit.hierarchy table str abovetype int abovex str belowtype int belowx -- "U" 0 "R" 1 -- "R" 1 "A" 1 -- "R" 1 "A" 2 -- "R" 1 "A" 3 -- "R" 1 "A" 4 -- "R" 1 "A" 5 -- "R" 1 "A" 6 -- "R" 1 "A" 7 -- "R" 1 "A" 8 -- "R" 1 "A" 9 -- "R" 1 "A" 10 -- "R" 1 "A" 11 -- "R" 1 "A" 12 -- "R" 1 "A" 13 -- "R" 1 "A" 14 -- "R" 1 "A" 15 -- "R" 1 "A" 16 --!entry.VAL.unit.name single str -- "VAL" --!entry.VAL.unit.positions table dbl x dbl y dbl z -- 3.325770 1.547909 -1.607204E-06 -- 3.909407 0.723611 -2.739882E-06 -- 3.970048 2.845795 -1.311163E-07 -- 3.671663 3.400129 -0.889820 -- 3.576965 3.653838 1.232143 -- 2.496995 3.801075 1.241379 -- 3.997712 2.900483 2.489542 -- 5.077693 2.753265 2.481244 -- 3.716972 3.477628 3.370558 -- 3.499630 1.931323 2.516834 -- 4.274186 5.009602 1.194577 -- 3.973781 5.548460 0.295972 -- 3.993559 5.587585 2.075079 -- 5.354271 4.863178 1.185788 -- 5.485541 2.705207 -4.398755E-06 -- 6.008824 1.593175 -8.449768E-06 --!entry.VAL.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -- 1 15 0 0 0 0 --!entry.VAL.unit.residues table str name int seq int childseq int startatomx str restype int imagingx -- "VAL" 1 17 1 "p" 0 --!entry.VAL.unit.residuesPdbSequenceNumber array int -- 0 --!entry.VAL.unit.solventcap array dbl -- -1.000000 -- 0.0 -- 0.0 -- 0.0 -- 0.0 --!entry.VAL.unit.velocities table dbl x dbl y dbl z -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -- 0.0 0.0 0.0 -diff --git a/dat/leap/parm/frcmod.pol12 b/dat/leap/parm/frcmod.pol12 -deleted file mode 100644 -index cff8162..0000000 ---- a/dat/leap/parm/frcmod.pol12 -+++ /dev/null -@@ -1,180 +0,0 @@ --Mainchain torsion parameters --IPOL -- 4 -- --MASS -- --BOND -- --ANGL -- --DIHEDRAL --C -N -CT-C 1 0.79 0.0 -1. 1.0 2.0 frm gly phi-psi gas map MP2(CBS, atz-aqz)+CCSD(T)(adz) --C -N -CT-C 1 1.24 0.0 -2. 1.0 2.0 frm gly phi-psi gas map MP2(CBS, atz-aqz)+CCSD(T)(adz) --C -N -CT-C 1 0.42 0.0 3. 1.0 2.0 frm gly phi-psi gas map MP2(CBS, atz-aqz)+CCSD(T)(adz) --N -CT-C -N 1 1.96 0.0 -1. 1.0 2.0 frm gly phi-psi gas map MP2(CBS, atz-aqz)+CCSD(T)(adz) --N -CT-C -N 1 1.37 180.0 -2. 1.0 2.0 frm gly phi-psi gas map MP2(CBS, atz-aqz)+CCSD(T)(adz) --N -CT-C -N 1 0.42 180.0 3. 1.0 2.0 frm gly phi-psi gas map MP2(CBS, atz-aqz)+CCSD(T)(adz) --CT-CT-N -C 1 0.02 180.0 -1. 1.0 2.0 --CT-CT-N -C 1 0.65 0.0 2. 1.0 2.0 --H1-CT-N -C 1 0.99 180.0 -1. 1.0 2.0 --H1-CT-N -C 1 0.80 0.0 2. 1.0 2.0 --CT-CT-C -N 1 1.34 0.0 -1. 1.0 2.0 --CT-CT-C -N 1 0.50 180.0 2. 1.0 2.0 --H1-CT-C -N 1 0.09 180.0 -2. 1.0 2.0 --H1-CT-C -N 1 1.14 0.0 1. 1.0 2.0 -- --NONBON -- --CMAP --%FLAG CMAP_COUNT 3 --%FLAG CMAP_TITLE --ALA CMAP --%FLAG CMAP_RESLIST 26 --ALA ASP SER THR LEU ILE VAL ASN GLN ARG --HID HIE HIP TRP PHE TYR GLU ASP LYS LYN --CYS CYX MET ASH GLH CYM --%FLAG CMAP_RESOLUTION 18 --%FLAG CMAP_PARAMETER -- 0.6996 0.7109 0.7452 0.8985 1.2822 1.4924 0.8283 0.0309 -- 0.1762 -0.0044 -0.9781 -0.9596 -0.2536 0.2216 0.2768 0.2998 -- 0.3343 0.4811 0.6979 0.5886 0.6524 0.9473 1.2845 1.1558 -- 0.6335 0.2926 0.8031 -0.6203 -1.0679 -0.8046 -0.1339 0.1863 -- 0.2679 0.4891 0.6519 0.7084 0.4314 0.4697 0.7114 1.0596 -- 1.0858 0.7096 0.5322 1.0603 -0.2603 -0.9325 -0.9777 -0.5784 -- -0.1384 -0.0963 0.0316 0.3500 0.5028 0.4746 0.6188 0.9074 -- 1.1282 1.2028 0.9105 0.6231 1.0358 0.2832 -0.7467 -0.8248 -- -0.5121 -0.1238 -0.1961 -0.4874 -0.2169 0.2218 0.4082 0.4486 -- 0.9788 1.1395 1.0923 1.0718 0.9625 1.1138 1.3863 -0.1392 -- -0.7237 -0.2872 0.4985 0.3261 -0.5791 -1.0942 -0.4770 0.2321 -- 0.5573 0.7415 0.5292 0.4950 0.5479 0.9137 1.3146 1.8892 -- 0.9379 -0.6194 -0.6632 0.6898 1.7557 1.5728 0.6566 -0.5970 -- -0.8672 -0.1900 0.2293 0.4321 -1.0380 -0.5799 0.3862 1.5984 -- 2.3166 2.1500 -0.0677 -1.2216 0.0062 2.3366 3.2155 2.7916 -- 1.8380 0.3829 -0.8178 -1.0808 -1.1518 -1.1570 -1.8094 -0.0773 -- 2.1498 3.7544 3.6406 0.8498 -1.3804 -0.9843 1.5549 3.2365 -- 3.3981 2.9209 2.2171 0.8749 -0.6221 -2.0341 -2.7537 -2.6330 -- -0.3319 2.8137 3.2646 1.8770 0.3246 -1.2216 -1.4980 0.5532 -- 2.1118 2.6618 2.5746 2.5164 2.1009 0.9974 -1.3076 -2.7967 -- -2.9532 -2.1699 3.6877 0.8028 -0.7043 -1.5370 -1.7409 -1.0954 -- 0.5853 1.2217 1.6359 1.8122 2.1382 2.1394 1.1467 -1.1553 -- -2.0555 -1.8169 -1.0220 0.4087 0.0138 -2.0970 -3.0277 -2.8743 -- -1.2829 0.5478 1.1379 1.4164 1.7734 2.3230 2.4142 1.2562 -- -1.5766 -1.7018 -0.3087 1.2616 2.6633 2.9485 -1.7710 -2.9352 -- -3.2016 -2.3880 -0.8571 0.2752 1.2115 1.6828 2.2605 2.5641 -- 1.5681 -1.1818 -2.0490 -0.0671 2.4541 3.1648 1.9621 0.0054 -- -0.5880 -1.1331 -1.1982 -0.9946 -0.7792 -0.0902 0.9375 1.5375 -- 1.8883 1.4039 -0.3318 -1.8684 -0.9853 1.1723 2.2107 1.9406 -- 1.1240 0.2128 1.1816 0.7833 0.6454 0.3474 -0.5170 -0.9473 -- -0.1769 0.3671 0.4441 -0.0054 -1.1102 -1.1976 0.1113 1.5763 -- 1.7120 1.7491 1.6278 1.5039 1.8743 1.3537 1.1335 0.8916 -- 0.2183 -0.9854 -1.0827 -0.5687 -0.2308 -0.5702 -0.8166 -0.2464 -- 1.0822 1.2795 1.3026 1.7406 1.9548 2.1020 1.2800 0.9715 -- 0.8172 0.7412 0.5890 0.3522 0.0954 -0.2460 -0.5892 -0.5927 -- -0.2446 0.9237 1.1241 0.5542 1.0488 1.5582 1.5830 1.4282 -- 0.3882 0.4559 0.4963 0.4920 0.6253 0.9252 0.5006 -0.7605 -- -0.6854 -0.3495 0.6981 0.6922 -0.0579 0.2654 0.8917 0.9409 -- 0.5017 0.1950 0.2477 0.3903 0.5167 0.6139 0.8817 1.2830 -- 0.7453 -0.3047 -0.4839 0.3175 -0.1271 -0.8020 -0.3850 0.2424 -- 0.4141 0.2357 -0.0419 -0.0473 --%FLAG CMAP_TITLE --GLY CMAP --%FLAG CMAP_RESLIST 1 --GLY --%FLAG CMAP_RESOLUTION 18 --%COMMENT GLY CMAP from MP2(CBS atz-aqz)+CCSD(T)(adz) correction --%COMMENT from gly-CMAP-optBBV01-gas-formatted-psi-phi.dat --%COMMENT PSI PHI --%FLAG CMAP_PARAMETER -- 1.1507 0.7349 0.5033 0.4851 0.6055 0.6617 -0.1372 -0.4814 -- -0.4244 3.5760 -0.4244 -0.4814 -0.1372 0.6617 0.6055 0.4851 -- 0.5033 0.7349 0.8169 0.6015 0.5487 0.7802 1.0366 0.9827 -- 0.5364 0.2725 1.1192 -0.5549 -1.1726 -0.9070 -0.1156 0.2913 -- 0.3275 0.4620 0.6558 0.7885 0.7603 0.7381 0.9566 1.2999 -- 1.3313 0.9787 0.8744 1.4168 -0.1690 -1.1676 -1.3768 -1.0856 -- -0.2490 -0.0108 0.1378 0.4506 0.6648 0.7392 0.9915 1.1016 -- 1.2424 1.3636 1.2423 1.0643 1.4604 0.6995 -0.6354 -1.0819 -- -0.9636 -0.5145 -0.2270 -0.2924 0.0124 0.4572 0.7197 0.8353 -- 1.1798 1.1241 1.1031 1.2584 1.3540 1.5273 1.8196 0.1895 -- -0.6672 -0.5774 -0.0897 -0.1227 -0.6643 -0.9178 -0.3044 0.4086 -- 0.7943 1.0196 0.4751 0.3508 0.5391 1.1479 1.6817 2.1172 -- 1.0757 -0.5530 -0.7982 0.1466 0.8419 0.8318 0.3350 -0.6135 -- -0.8554 -0.2406 0.1999 0.4241 -1.1995 -0.7114 0.4296 1.8756 -- 2.6117 2.1615 -0.1812 -1.4398 -0.4034 1.4799 2.2439 2.0908 -- 1.5528 0.3805 -0.8859 -1.3330 -1.4658 -1.4169 -1.7376 0.0374 -- 2.3126 3.9828 3.4776 0.7125 -1.5839 -1.2740 1.1103 2.4687 -- 2.5524 2.2668 1.9382 0.8766 -0.7227 -2.3671 -3.1074 -2.8081 -- 0.1638 3.0876 3.5261 1.9682 0.2306 -1.3484 -1.5582 0.5419 -- 1.8350 2.0962 1.8764 1.8112 1.6715 0.8664 -1.3883 -2.9899 -- -3.0123 -1.9469 5.5352 1.0681 -0.6188 -1.6349 -1.9353 -1.1019 -- 0.8247 1.4255 1.5776 1.8010 1.5776 1.4255 0.8247 -1.1019 -- -1.9353 -1.6349 -0.6188 1.0681 0.1638 -1.9469 -3.0123 -2.9899 -- -1.3883 0.8664 1.6715 1.8112 1.8764 2.0962 1.8350 0.5419 -- -1.5582 -1.3484 0.2306 1.9682 3.5261 3.0876 -1.7376 -2.8081 -- -3.1074 -2.3671 -0.7227 0.8766 1.9382 2.2668 2.5524 2.4687 -- 1.1103 -1.2740 -1.5839 0.7125 3.4776 3.9828 2.3126 0.0374 -- -1.1995 -1.4169 -1.4658 -1.3330 -0.8859 0.3805 1.5528 2.0908 -- 2.2439 1.4799 -0.4034 -1.4398 -0.1812 2.1615 2.6117 1.8756 -- 0.4296 -0.7114 0.4751 0.4241 0.1999 -0.2406 -0.8554 -0.6135 -- 0.3350 0.8318 0.8419 0.1466 -0.7982 -0.5530 1.0757 2.1172 -- 1.6817 1.1479 0.5391 0.3508 1.1798 1.0196 0.7943 0.4086 -- -0.3044 -0.9178 -0.6643 -0.1227 -0.0897 -0.5774 -0.6672 0.1895 -- 1.8196 1.5273 1.3540 1.2584 1.1031 1.1241 0.9915 0.8353 -- 0.7197 0.4572 0.0124 -0.2924 -0.2270 -0.5145 -0.9636 -1.0819 -- -0.6354 0.6995 1.4604 1.0643 1.2423 1.3636 1.2424 1.1016 -- 0.7603 0.7392 0.6648 0.4506 0.1378 -0.0108 -0.2490 -1.0856 -- -1.3768 -1.1676 -0.1690 1.4168 0.8744 0.9787 1.3313 1.2999 -- 0.9566 0.7381 0.8169 0.7885 0.6558 0.4620 0.3275 0.2913 -- -0.1156 -0.9070 -1.1726 -0.5549 1.1192 0.2725 0.5364 0.9827 -- 1.0366 0.7802 0.5487 0.6015 --%FLAG CMAP_TITLE --PRO CMAP --%FLAG CMAP_RESLIST 1 --PRO --%FLAG CMAP_RESOLUTION 18 --%COMMENT PRO CMAP from MP2(atz) correction --%COMMENT PSI PHI --%FLAG CMAP_PARAMETER -- -11.8681 -11.9836 -12.3616 -13.6168 -14.1453 -14.0496 -13.2367 -11.7198 -- -12.3096 -13.3794 -14.8656 -16.1479 -16.2807 -15.2755 -14.2653 -13.6480 -- -13.2047 -12.3285 -6.6149 -6.6085 -6.9286 -8.0418 -8.9648 -9.1397 -- -8.0198 -7.5099 -8.3788 -9.3943 -10.1089 -10.4542 -10.0455 -9.4001 -- -8.8431 -8.2531 -7.6409 -6.9275 -2.2957 -2.2463 -2.3664 -3.3373 -- -4.3855 -4.6521 -3.5502 -3.0913 -3.9517 -5.7538 -5.9899 -5.5195 -- -4.8746 -4.7226 -4.4199 -3.7774 -3.1315 -2.5488 0.6680 0.7260 -- 0.9072 0.3973 -0.5339 -0.8094 0.0774 -0.6931 -1.1404 -1.1815 -- -1.1333 -0.6621 -0.7192 -1.4151 -1.1788 -0.0419 1.2083 0.4615 -- 2.1095 4.2916 4.4484 4.5978 2.0399 2.3643 1.5854 -0.6165 -- -2.3163 -2.1003 -1.6863 -2.0963 1.1545 0.2034 0.3478 1.5816 -- 2.8385 3.6463 1.4654 1.9240 2.1607 2.3294 2.1657 1.1236 -- 0.0568 -1.0419 -1.1277 0.0585 1.0645 0.9305 -0.0229 -1.3432 -- -1.8853 -0.9112 0.1465 0.8421 0.7720 0.5083 2.0895 4.2326 -- 3.4621 1.6070 -0.1446 -0.4766 0.0496 1.9172 2.8496 2.5803 -- 1.8081 0.4834 -0.8311 -0.9350 -0.4975 0.0686 0.1101 2.1266 -- 4.1675 4.8614 3.2766 0.8449 -1.0386 -0.7694 1.0610 2.6106 -- 2.9484 2.6931 2.3165 1.1273 -0.6244 -1.8051 -1.8110 -1.1012 -- 0.8389 3.2290 4.5077 3.5467 1.5644 -0.8184 -1.6190 -0.0314 -- 1.4359 1.9499 1.9228 2.1114 2.0614 0.8497 -1.6471 -2.9782 -- -2.4091 -1.0655 2.1214 2.4093 1.8722 0.8322 -0.9802 -2.0624 -- -0.9195 -0.7585 0.3481 0.2424 0.7417 1.3245 0.8544 -1.4936 -- -3.4435 -3.2387 -1.8418 -0.1330 1.1045 -0.0764 -1.2071 -2.5678 -- -3.1670 -2.1847 -1.3846 -1.6251 -1.7513 -1.1878 -0.5694 -0.9375 -- -3.0564 -4.7386 -4.5548 -3.3367 -2.2528 -0.6426 -2.6725 -4.4937 -- -5.8072 -6.1904 -5.2607 -4.0146 -3.6532 -3.7922 -3.4941 -3.0741 -- -3.5874 -5.8952 -8.2189 -7.9584 -6.6024 -5.1969 -2.9854 -5.5137 -- -7.9466 -9.1555 -9.7366 -9.4550 -8.4636 -7.2113 -6.5882 -6.3548 -- -6.2295 -6.8226 -8.8572 -11.4670 -11.6480 -10.2777 -8.5312 -6.9800 -- -8.2061 -5.8153 -11.6999 -12.2452 -12.6181 -13.0581 -13.3102 -12.5095 -- -11.5831 -11.1878 -11.4400 -12.4275 -14.0503 -14.7786 -14.2390 -13.2677 -- -14.5183 -11.0713 -10.6889 -11.0171 -13.0625 -13.4223 -13.6765 -14.3336 -- -14.6319 -14.0585 -16.8736 -16.1852 -15.4669 -15.8732 -16.5863 -16.5814 -- -16.0226 -15.6145 -14.9156 -14.2166 -13.6532 -13.3471 -14.4252 -14.5993 -- -14.7349 -15.6092 -15.9535 -15.6075 -16.3631 -15.6054 -15.8061 -16.5334 -- -17.0429 -16.9562 -16.5669 -16.5470 -15.8568 -15.1665 -15.5102 -15.0609 -- -15.7879 -15.7763 -15.7932 -16.8848 -17.2752 -17.1565 -17.2433 -16.5548 -- -16.1162 -16.6112 -17.8811 -19.0447 -19.4487 -18.9047 -17.8098 -17.1771 -- -17.3673 -16.7746 -17.1505 -16.9534 -16.8516 -18.1603 -18.1481 -18.1358 -- -18.1236 -17.5042 -16.4263 -16.6890 -18.7194 -21.1332 -22.3304 -21.2623 -- -19.7629 -19.1877 -19.2243 -18.4884 -- -- -diff --git a/dat/leap/parm/parmpol12.dat b/dat/leap/parm/parmpol12.dat -deleted file mode 100644 -index 13fefad..0000000 ---- a/dat/leap/parm/parmpol12.dat -+++ /dev/null -@@ -1,756 +0,0 @@ --based on PARM99 ff11D1, Thole-Linear SL=2.5874 --C 12.01 1.2955 2.5874 sp2 C carbonyl group --C2 12.01 1.2955 2.5874 sp2 C --CA 12.01 1.2955 2.5874 sp2 C pure aromatic (benzene) --CB 12.01 1.2955 2.5874 sp2 aromatic C, 5&6 membered ring junction --CC 12.01 1.2955 2.5874 sp2 aromatic C, 5 memb. ring HIS --CD 12.01 1.2955 2.5874 sp2 C atom in the middle of: C=CD-CD=C --CK 12.01 1.2955 2.5874 sp2 C 5 memb.ring in purines --CM 12.01 1.2955 2.5874 sp2 C pyrimidines in pos. 5 & 6 --CN 12.01 1.2955 2.5874 sp2 C aromatic 5&6 memb.ring junct.(TRP) --CQ 12.01 1.2955 2.5874 sp2 C in 5 mem.ring of purines between 2 N --CR 12.01 1.2955 2.5874 sp2 arom as CQ but in HIS --CT 12.01 0.9399 2.5874 sp3 aliphatic C --CV 12.01 1.2955 2.5874 sp2 arom. 5 memb.ring w/1 N and 1 H (HIS) --CW 12.01 1.2955 2.5874 sp2 arom. 5 memb.ring w/1 N-H and 1 H (HIS) --C* 12.01 1.2955 2.5874 sp2 arom. 5 memb.ring w/1 subst. (TRP) --CY 12.01 1.3916 2.5874 nitrile C (Howard et al.JCC,16,243,1995) --CZ 12.01 1.3916 2.5874 sp C (Howard et al.JCC,16,243,1995) --C0 40.08 calcium --H 1.008 0.4255 2.5874 H bonded to nitrogen atoms --H0 1.008 0.4255 2.5874 for Gly only --HC 1.008 0.4255 2.5874 H aliph. bond. to C without electrwd.group --H1 1.008 0.4255 2.5874 H aliph. bond. to C with 1 electrwd. group --H2 1.008 0.4255 2.5874 H aliph. bond. to C with 2 electrwd.groups --H3 1.008 0.4255 2.5874 H aliph. bond. to C with 3 eletrwd.groups --HA 1.008 0.4255 2.5874 H arom. bond. to C without elctrwd. groups --H4 1.008 0.4255 2.5874 H arom. bond. to C with 1 electrwd. group --H5 1.008 0.4255 2.5874 H arom.at C with 2 elctrwd. gr,+HCOO group --HO 1.008 0.4255 2.5874 hydroxyl group --HS 1.008 0.4255 2.5874 hydrogen bonded to sulphur (pol?) --HW 1.008 0.1700 2.4410 H in POL3 water --HP 1.008 0.4255 2.5874 H bonded to C next to positively charged gr --HZ 1.008 0.4255 2.5874 H bond sp C (Howard et al.JCC,16,243,1995) --F 19.00 0.4839 2.5874 fluorine --Cl 35.45 2.3707 2.5874 chlorine --IM 35.45 2.3707 2.5874 assumed to be Cl- (ion minus) --Br 79.90 3.5016 2.5874 bromine --I 126.9 5.5787 2.5874 iodine --IB 131.0 'big ion w/ waters' for vacuum (Na+, 6H2O) --MG 24.305 0.120 2.5874 magnesium --N 14.01 0.9603 2.5874 sp2 nitrogen in amide groups --NA 14.01 0.9603 2.5874 sp2 N in 5 memb.ring w/H atom (HIS) --NB 14.01 0.9603 2.5874 sp2 N in 5 memb.ring w/LP (HIS,ADE,GUA) --NC 14.01 0.9603 2.5874 sp2 N in 6 memb.ring w/LP (ADE,GUA) --N2 14.01 0.9603 2.5874 sp2 N in amino groups --N3 14.01 0.9603 2.5874 sp3 N for charged amino groups (Lys, etc) --NT 14.01 0.9603 2.5874 sp3 N for amino groups amino groups --N* 14.01 0.9603 2.5874 sp2 N --NY 14.01 0.9603 2.5874 nitrile N (Howard et al.JCC,16,243,1995) --O 16.00 0.6049 2.5874 carbonyl group oxygen --O2 16.00 0.6049 2.5874 carboxyl and phosphate group oxygen --OW 16.00 0.5280 2.4410 oxygen in POL3 water --OH 16.00 0.6148 2.5874 oxygen in hydroxyl group --OS 16.00 0.6148 2.5874 ether and ester oxygen --P 30.97 1.7927 2.5874 phosphate,pol:JACS,112,8543,90,K.J.Miller --S 32.06 3.1686 2.5874 S in disulfide linkage,pol:JPC,102,2399,98 --SH 32.06 3.1686 2.5874 S in cystine --S4 32.06 2.3149 2.5874 S --CU 63.55 copper --FE 55.00 iron --Li 6.94 0.029 2.5874 lithium, ions pol:J.PhysC,11,1541,(1978) --IP 22.99 0.250 2.5874 assumed to be Na+ (ion plus) --Na 22.99 0.250 2.5874 Na+, ions pol:J.PhysC,11,1541,(1978) --K 39.10 1.060 2.5874 potassium --Rb 85.47 rubidium --Cs 132.91 cesium --Zn 65.4 Zn2+ --LP 3.00 0.000 lone pair -- --C H HO N NA NB NC N2 NT N2 N3 N* O OH OS P O2 --OW-HW 320.0 1.0000 ! POL3, SPC/E water --HW-HW 553.0 1.6330 POL3, SPC/E water --C -C 310.0 1.525 Junmei et al, 1999 --C -CA 469.0 1.409 JCC,7,(1986),230; (not used any more in TYR) --C -CB 447.0 1.419 JCC,7,(1986),230; GUA --C -CM 410.0 1.444 JCC,7,(1986),230; THY,URA --C -CT 317.0 1.522 JCC,7,(1986),230; AA --C -N 490.0 1.335 JCC,7,(1986),230; AA --C -N* 424.0 1.383 JCC,7,(1986),230; CYT,URA --C -NA 418.0 1.388 JCC,7,(1986),230; GUA.URA --C -NC 457.0 1.358 JCC,7,(1986),230; CYT --C -O 570.0 1.229 JCC,7,(1986),230; AA,CYT,GUA,THY,URA --C -O2 656.0 1.250 JCC,7,(1986),230; GLU,ASP --C -OH 450.0 1.364 JCC,7,(1986),230; (not used any more for TYR) --C -OS 450.0 1.323 Junmei et al, 1999 --C -H4 367.0 1.080 Junmei et al, 1999 --C -H5 367.0 1.080 Junmei et al, 1999 --CA-CA 469.0 1.400 JCC,7,(1986),230; BENZENE,PHE,TRP,TYR --CA-CB 469.0 1.404 JCC,7,(1986),230; ADE,TRP --CA-CM 427.0 1.433 JCC,7,(1986),230; CYT --CA-CN 469.0 1.400 JCC,7,(1986),230; TRP --CA-CT 317.0 1.510 JCC,7,(1986),230; PHE,TYR --CA-HA 367.0 1.080 changed from 340. bsd on C6H6 nmodes; PHE,TRP,TYR --CA-H4 367.0 1.080 changed from 340. bsd on C6H6 nmodes; no assigned --CA-N2 481.0 1.340 JCC,7,(1986),230; ARG,CYT,GUA --CA-NA 427.0 1.381 JCC,7,(1986),230; GUA --CA-NC 483.0 1.339 JCC,7,(1986),230; ADE,CYT,GUA --CA-OH 450.0 1.364 substituted for C-OH in tyr --CB-CB 520.0 1.370 JCC,7,(1986),230; ADE,GUA --CB-N* 436.0 1.374 JCC,7,(1986),230; ADE,GUA --CB-NB 414.0 1.391 JCC,7,(1986),230; ADE,GUA --CB-NC 461.0 1.354 JCC,7,(1986),230; ADE,GUA --CD-HA 367.0 1.080 Junmei et al, 1999 --CD-CD 469.0 1.400 Junmei et al, 1999 --CD-CM 549.0 1.350 Junmei et al, 1999 --CD-CT 317.0 1.510 Junmei et al, 1999 --CK-H5 367.0 1.080 changed from 340. bsd on C6H6 nmodes; ADE,GUA --CK-N* 440.0 1.371 JCC,7,(1986),230; ADE,GUA --CK-NB 529.0 1.304 JCC,7,(1986),230; ADE,GUA --CM-CM 549.0 1.350 JCC,7,(1986),230; CYT,THY,URA --CM-CT 317.0 1.510 JCC,7,(1986),230; THY --CM-HA 367.0 1.080 changed from 340. bsd on C6H6 nmodes; CYT,URA --CM-H4 367.0 1.080 changed from 340. bsd on C6H6 nmodes; CYT,URA --CM-H5 367.0 1.080 changed from 340. bsd on C6H6 nmodes; not assigned --CM-N* 448.0 1.365 JCC,7,(1986),230; CYT,THY,URA --CM-OS 480.0 1.240 Junmei et al, 1999 --CQ-H5 367.0 1.080 changed from 340. bsd on C6H6 nmodes; ADE --CQ-NC 502.0 1.324 JCC,7,(1986),230; ADE --CT-CT 310.0 1.526 JCC,7,(1986),230; AA, SUGARS --CT-HC 340.0 1.090 changed from 331 bsd on NMA nmodes; AA, SUGARS --CT-H0 340.0 1.090 changed from 331 bsd on NMA nmodes; AA, RIBOSE --CT-H1 340.0 1.090 changed from 331 bsd on NMA nmodes; AA, RIBOSE --CT-H2 340.0 1.090 changed from 331 bsd on NMA nmodes; SUGARS --CT-H3 340.0 1.090 changed from 331 bsd on NMA nmodes; not assigned --CT-HP 340.0 1.090 changed from 331; AA-lysine, methyl ammonium cation --CT-N* 337.0 1.475 JCC,7,(1986),230; ADE,CYT,GUA,THY,URA --CT-N2 337.0 1.463 JCC,7,(1986),230; ARG --CT-OH 320.0 1.410 JCC,7,(1986),230; SUGARS --CT-OS 320.0 1.410 JCC,7,(1986),230; NUCLEIC ACIDS --C*-HC 367.0 1.080 changed from 340. bsd on C6H6 nmodes, not needed AA --C*-CB 388.0 1.459 JCC,7,(1986),230; TRP --C*-CT 317.0 1.495 JCC,7,(1986),230; TRP --C*-CW 546.0 1.352 JCC,7,(1986),230; TRP --CB-CN 447.0 1.419 JCC,7,(1986),230; TRP --CC-CT 317.0 1.504 JCC,7,(1986),230; HIS --CC-CV 512.0 1.375 JCC,7,(1986),230; HIS(delta) --CC-CW 518.0 1.371 JCC,7,(1986),230; HIS(epsilon) --CC-NA 422.0 1.385 JCC,7,(1986),230; HIS --CC-NB 410.0 1.394 JCC,7,(1986),230; HIS --CN-NA 428.0 1.380 JCC,7,(1986),230; TRP --CR-H5 367.0 1.080 changed from 340. bsd on C6H6 nmodes;HIS --CR-NA 477.0 1.343 JCC,7,(1986),230; HIS --CR-NB 488.0 1.335 JCC,7,(1986),230; HIS --CT-N 337.0 1.449 JCC,7,(1986),230; AA --CT-N3 367.0 1.471 JCC,7,(1986),230; LYS --CT-NT 367.0 1.471 for neutral amines --CT-S 227.0 1.810 changed from 222.0 based on dimethylS nmodes --CT-SH 237.0 1.810 changed from 222.0 based on methanethiol nmodes --CT-CY 400.0 1.458 Howard et al JCC.16,243,1995 --CT-CZ 400.0 1.459 Howard et al JCC,16,243,1995 --CV-H4 367.0 1.080 changed from 340. bsd on C6H6 nmodes; HIS --CV-NB 410.0 1.394 JCC,7,(1986),230; HIS --CW-H4 367.0 1.080 changed from 340. bsd on C6H6 nmodes;HIS(epsilon,+) --CW-NA 427.0 1.381 JCC,7,(1986),230; HIS,TRP --CY-NY 600.0 1.150 Howard et al JCC,16,243,1995 --CZ-CZ 600.0 1.206 Howard et al JCC,16,243,1995 --CZ-HZ 400.0 1.056 Howard et al JCC,16,243,1995 --O2-P 525.0 1.480 JCC,7,(1986),230; NA PHOSPHATES --OH-P 230.0 1.610 JCC,7,(1986),230; NA PHOSPHATES --OS-P 230.0 1.610 JCC,7,(1986),230; NA PHOSPHATES --H -N2 434.0 1.010 JCC,7,(1986),230; ADE,CYT,GUA,ARG --H -N* 434.0 1.010 for plain unmethylated bases ADE,CYT,GUA,ARG --H -NA 434.0 1.010 JCC,7,(1986),230; GUA,URA,HIS --H -N 434.0 1.010 JCC,7,(1986),230; AA --H -N3 434.0 1.010 JCC,7,(1986),230; LYS --H -NT 434.0 1.010 for neutral amines --HO-OH 553.0 0.960 JCC,7,(1986),230; SUGARS,SER,TYR --HO-OS 553.0 0.960 JCC,7,(1986),230; NUCLEOTIDE ENDS --HS-SH 274.0 1.336 JCC,7,(1986),230; CYS --S -S 166.0 2.038 JCC,7,(1986),230; CYX (SCHERAGA) --F -CT 367.0 1.380 JCC,13,(1992),963;CF4; R0=1.332 FOR CHF3 --Cl-CT 232.0 1.766 6-31g* opt --Br-CT 159.0 1.944 Junmei et al,99 --I -CT 148.0 2.166 Junmei et al,99 --F -CA 386.0 1.359 Junmei et al,99 --Cl-CA 193.0 1.727 Junmei et al,99 --I -CA 171.0 2.075 Junmei et al,99 --Br-CA 172.0 1.890 Junmei et al,99 --LP-O 600.0 0.200 or 0.35 --LP-OH 600.0 0.200 or 0.35 --LP-OS 600.0 0.200 or 0.35 --LP-N3 600.0 0.200 or 0.35 --LP-NT 600.0 0.200 or 0.35 --LP-NB 600.0 0.200 or 0.35 histidines, nucleic acids --LP-NC 600.0 0.200 or 0.35 nucleic acids --LP-S 600.0 0.700 cys,cyx,met --LP-SH 600.0 0.700 cys,cyx -- --HW-OW-HW 100. 104.52 TIP3P water --HW-HW-OW 0. 127.74 (found in crystallographic water with 3 bonds) --C -C -O 80.0 120.00 Junmei et al, 1999 acrolein --C -C -OH 80.0 120.00 Junmei et al, 1999 --CA-C -CA 63.0 120.00 changed from 85.0 bsd on C6H6 nmodes; AA --CA-C -OH 70.0 120.00 AA (not used in tyr) --CB-C -NA 70.0 111.30 NA --CB-C -O 80.0 128.80 --CM-C -NA 70.0 114.10 --CM-C -O 80.0 125.30 --CT-C -O 80.0 120.40 --CT-C -O2 70.0 117.00 --CT-C -N 70.0 116.60 AA general --CT-C -CT 63.0 117.00 Junmei et al, 1999 --CT-C -OS 80.0 115.00 Junmei et al, 1999 --CT-C -OH 80.0 110.00 Junmei et al, 1999 --N*-C -NA 70.0 115.40 --N*-C -NC 70.0 118.60 --N*-C -O 80.0 120.90 --NA-C -O 80.0 120.60 --NC-C -O 80.0 122.50 --N -C -O 80.0 122.90 AA general --O -C -O 80.0 126.00 AA COO- terminal residues --O -C -OH 80.0 120.00 (check with Junmei for: theta0:120.0?) --O -C -OS 80.0 125.00 Junmei et al, 1999 --O2-C -O2 80.0 126.00 AA GLU (SCH JPC 79,2379) --H4-C -C 50.0 120.00 Junmei et al, 1999 --H4-C -CM 50.0 115.00 Junmei et al, 1999 --H4-C -CT 50.0 115.00 Junmei et al, 1999 --H4-C -O 50.0 120.00 Junmei et al, 1999 --H4-C -OH 50.0 120.00 Junmei et al, 1999 --H5-C -N 50.0 120.00 Junmei et al, 1999 --H5-C -O 50.0 119.00 Junmei et al, 1999 --H5-C -OH 50.0 107.00 Junmei et al, 1999 --H5-C -OS 50.0 107.00 Junmei et al, 1999 --C -CA-CA 63.0 120.00 changed from 85.0 bsd on C6H6 nmodes --C -CA-HA 50.0 120.00 AA (not used in tyr) --CA-CA-CA 63.0 120.00 changed from 85.0 bsd on C6H6 nmodes --CA-CA-CB 63.0 120.00 changed from 85.0 bsd on C6H6 nmodes --CA-CA-CT 70.0 120.00 --CA-CA-HA 50.0 120.00 --CA-CA-H4 50.0 120.00 --CA-CA-OH 70.0 120.00 replacement in tyr --CA-CA-CN 63.0 120.00 changed from 85.0 bsd on C6H6 nmodes; AA trp --CB-CA-HA 50.0 120.00 --CB-CA-H4 50.0 120.00 --CB-CA-N2 70.0 123.50 --CB-CA-NC 70.0 117.30 --CM-CA-N2 70.0 120.10 --CM-CA-NC 70.0 121.50 --CN-CA-HA 50.0 120.00 AA trp --NA-CA-NC 70.0 123.30 --N2-CA-NA 70.0 116.00 --N2-CA-NC 70.0 119.30 --N2-CA-N2 70.0 120.00 AA arg --F -CA-CA 70.0 121.00 Junmei et al,99 --Cl-CA-CA 70.0 118.80 Junmei et al,99 --Br-CA-CA 70.0 118.80 Junmei et al,99 --I -CA-CA 70.0 118.80 Junmei et al,99 --C -CB-CB 63.0 119.20 changed from 85.0 bsd on C6H6 nmodes; NA gua --C -CB-NB 70.0 130.00 --CA-CB-CB 63.0 117.30 changed from 85.0 bsd on C6H6 nmodes; NA ade --CA-CB-NB 70.0 132.40 --CB-CB-N* 70.0 106.20 --CB-CB-NB 70.0 110.40 --CB-CB-NC 70.0 127.70 --C*-CB-CA 63.0 134.90 changed from 85.0 bsd on C6H6 nmodes; AA trp --C*-CB-CN 63.0 108.80 changed from 85.0 bsd on C6H6 nmodes; AA trp --CA-CB-CN 63.0 116.20 changed from 85.0 bsd on C6H6 nmodes; AA trp --N*-CB-NC 70.0 126.20 --CD-CD-CM 63.0 120.00 Junmei et al, 1999 --CD-CD-CT 70.0 120.00 Junmei et al, 1999 --CM-CD-CT 70.0 120.00 Junmei et al, 1999 --HA-CD-HA 35.0 119.00 Junmei et al, 1999 --HA-CD-CD 50.0 120.00 Junmei et al, 1999 --HA-CD-CM 50.0 120.00 Junmei et al, 1999 --H5-CK-N* 50.0 123.05 --H5-CK-NB 50.0 123.05 --N*-CK-NB 70.0 113.90 --C -CM-CM 63.0 120.70 changed from 85.0 bsd on C6H6 nmodes; NA thy --C -CM-CT 70.0 119.70 --C -CM-HA 50.0 119.70 --C -CM-H4 50.0 119.70 --CA-CM-CM 63.0 117.00 changed from 85.0 bsd on C6H6 nmodes; NA cyt --CA-CM-HA 50.0 123.30 --CA-CM-H4 50.0 123.30 --CM-CM-CT 70.0 119.70 --CM-CM-HA 50.0 119.70 --CM-CM-H4 50.0 119.70 --CM-CM-N* 70.0 121.20 --CM-CM-OS 80.0 125.00 Junmei et al, 1999 --H4-CM-N* 50.0 119.10 --H4-CM-OS 50.0 113.00 Junmei et al, 1999 --HA-CM-HA 35.0 120.00 Junmei et al, 1999 --HA-CM-CD 50.0 120.00 Junmei et al, 1999 --HA-CM-CT 50.0 120.00 Junmei et al, 1999 --NC-CQ-NC 70.0 129.10 --H5-CQ-NC 50.0 115.45 --H0-CT-H0 35.0 109.50 --H0-CT-N 50.0 109.50 AA general changed based on NMA nmodes --C -CT-H0 50.0 109.50 AA general changed based on NMA nmodes --H1-CT-H1 35.0 109.50 --H1-CT-N* 50.0 109.50 changed based on NMA nmodes --H1-CT-OH 50.0 109.50 changed based on NMA nmodes --H1-CT-OS 50.0 109.50 changed based on NMA nmodes --H1-CT-CM 50.0 109.50 Junmei et al, 1999 --H1-CT-CY 50.0 110.00 Junmei et al, 1999 --H1-CT-CZ 50.0 110.00 Junmei et al, 1999 --H1-CT-N 50.0 109.50 AA general changed based on NMA nmodes --H1-CT-S 50.0 109.50 AA cys changed based on NMA nmodes --H1-CT-SH 50.0 109.50 AA cyx changed based on NMA nmodes --H1-CT-N2 50.0 109.50 AA arg changed based on NMA nmodes --H1-CT-NT 50.0 109.50 neutral amines --H2-CT-H2 35.0 109.50 AA lys --H2-CT-N* 50.0 109.50 changed based on NMA nmodes --H2-CT-OS 50.0 109.50 changed based on NMA nmodes --HP-CT-HP 35.0 109.50 AA lys, ch3nh4+ --HP-CT-N3 50.0 109.50 AA lys, ch3nh3+, changed based on NMA nmodes --HC-CT-HC 35.0 109.50 --HC-CT-CM 50.0 109.50 changed based on NMA nmodes --HC-CT-CD 50.0 109.50 Junmei et al, 1999 --HC-CT-CZ 50.0 110.00 Junmei et al, 1999 --C -CT-H1 50.0 109.50 AA general changed based on NMA nmodes --C -CT-HP 50.0 109.50 AA zwitterion changed based on NMA nmodes --C -CT-HC 50.0 109.50 AA gln changed based on NMA nmodes --C -CT-N 63.0 110.10 AA general --C -CT-N3 80.0 111.20 AA amino terminal residues --C -CT-CT 63.0 111.10 AA general --C -CT-OS 60.0 109.50 Junmei et al, 1999 --CA-CT-HC 50.0 109.50 AA tyr changed based on NMA nmodes --CC-CT-CT 63.0 113.10 AA his --CC-CT-HC 50.0 109.50 AA his changed based on NMA nmodes --CM-CT-CT 63.0 111.00 Junmei et al, 1999 (last change: Mar24,99) --CM-CT-OS 50.0 109.50 Junmei et al, 1999 --CT-CT-CT 40.0 109.50 --CT-CT-HC 50.0 109.50 changed based on NMA nmodes --CT-CT-H1 50.0 109.50 changed based on NMA nmodes --CT-CT-H2 50.0 109.50 changed based on NMA nmodes --CT-CT-HP 50.0 109.50 changed based on NMA nmodes --CT-CT-N* 50.0 109.50 --CT-CT-OH 50.0 109.50 --CT-CT-OS 50.0 109.50 --CT-CT-S 50.0 114.70 AA cyx (SCHERAGA JPC 79,1428) --CT-CT-SH 50.0 108.60 AA cys --CT-CT-CA 63.0 114.00 AA phe tyr (SCH JPC 79,2379) --CT-CT-N2 80.0 111.20 AA arg (JCP 76, 1439) --CT-CT-N 80.0 109.70 AA ala, general (JACS 94, 2657) --CT-CT-N3 80.0 111.20 AA lys (JCP 76, 1439) --CT-CT-NT 80.0 111.20 neutral amines --CT-CT-CY 63.0 110.00 Junmei et al, 1999 --CT-CT-CZ 63.0 110.00 Junmei et al, 1999 --C*-CT-CT 63.0 115.60 AA trp --C*-CT-HC 50.0 109.50 AA trp changed based on NMA nmodes --OS-CT-OS 160.0 101.00 Junmei et al, 1999 --OS-CT-CY 50.0 110.00 Junmei et al, 1999 --OS-CT-CZ 50.0 110.00 Junmei et al, 1999 --OS-CT-N* 50.0 109.50 --F -CT-F 77.0 109.10 JCC,13,(1992),963; --F -CT-H1 50.0 109.50 JCC,13,(1992),963; --F -CT-CT 50.0 109.00 --F -CT-H2 50.0 109.50 --Cl-CT-CT 50.0 108.50 (6-31g* opt value) --Cl-CT-H1 50.0 108.50 (6-31g* opt value) --Br-CT-CT 50.0 108.00 Junmei et al 99 --Br-CT-H1 50.0 106.50 Junmei et al 99 --I -CT-CT 50.0 106.00 Junmei et al,99 --CT-CC-NA 70.0 120.00 AA his --CT-CC-CV 70.0 120.00 AA his --CT-CC-NB 70.0 120.00 AA his --CV-CC-NA 70.0 120.00 AA his --CW-CC-NA 70.0 120.00 AA his --CW-CC-NB 70.0 120.00 AA his --CT-CC-CW 70.0 120.00 AA his --H5-CR-NA 50.0 120.00 AA his --H5-CR-NB 50.0 120.00 AA his --NA-CR-NA 70.0 120.00 AA his --NA-CR-NB 70.0 120.00 AA his --CC-CV-H4 50.0 120.00 AA his --CC-CV-NB 70.0 120.00 AA his --H4-CV-NB 50.0 120.00 AA his --CC-CW-H4 50.0 120.00 AA his --CC-CW-NA 70.0 120.00 AA his --C*-CW-H4 50.0 120.00 AA trp --C*-CW-NA 70.0 108.70 AA trp --H4-CW-NA 50.0 120.00 AA his --CB-C*-CT 70.0 128.60 AA trp --CB-C*-CW 63.0 106.40 changed from 85.0 bsd on C6H6 nmodes; AA trp --CT-C*-CW 70.0 125.00 AA trp --CA-CN-CB 63.0 122.70 changed from 85.0 bsd on C6H6 nmodes; AA trp --CA-CN-NA 70.0 132.80 AA trp --CB-CN-NA 70.0 104.40 AA trp --CT-CY-NY 80.0 180.00 Junmei et al, 1999 --CT-CZ-CZ 80.0 180.00 Junmei et al, 1999 --CZ-CZ-HZ 50.0 180.00 Junmei et al, 1999 --C -N -CT 50.0 121.90 AA general --C -N -H 50.0 120.00 AA general, gln, asn,changed based on NMA nmodes --CT-N -H 50.0 118.04 AA general, changed based on NMA nmodes --CT-N -CT 50.0 118.00 AA pro (DETAR JACS 99,1232) --H -N -H 35.0 120.00 ade,cyt,gua,gln,asn ** --C -N*-CM 70.0 121.60 --C -N*-CT 70.0 117.60 --C -N*-H 50.0 119.20 changed based on NMA nmodes --CB-N*-CK 70.0 105.40 --CB-N*-CT 70.0 125.80 --CB-N*-H 50.0 125.80 for unmethylated n.a. bases,chngd bsd NMA nmodes --CK-N*-CT 70.0 128.80 --CK-N*-H 50.0 128.80 for unmethylated n.a. bases,chngd bsd NMA nmodes --CM-N*-CT 70.0 121.20 --CM-N*-H 50.0 121.20 for unmethylated n.a. bases,chngd bsd NMA nmodes --CA-N2-H 50.0 120.00 --CA-N2-CT 50.0 123.20 AA arg --CT-N2-H 50.0 118.40 AA arg --H -N2-H 35.0 120.00 --CT-N3-H 50.0 109.50 AA lys, changed based on NMA nmodes --CT-N3-CT 50.0 109.50 AA pro/nt --H -N3-H 35.0 109.50 AA lys, AA(end) --CT-NT-H 50.0 109.50 neutral amines --CT-NT-CT 50.0 109.50 neutral amines --H -NT-H 35.0 109.50 neutral amines --C -NA-C 70.0 126.40 --C -NA-CA 70.0 125.20 --C -NA-H 50.0 116.80 changed based on NMA nmodes --CA-NA-H 50.0 118.00 changed based on NMA nmodes --CC-NA-CR 70.0 120.00 AA his --CC-NA-H 50.0 120.00 AA his, changed based on NMA nmodes --CR-NA-CW 70.0 120.00 AA his --CR-NA-H 50.0 120.00 AA his, changed based on NMA nmodes --CW-NA-H 50.0 120.00 AA his, changed based on NMA nmodes --CN-NA-CW 70.0 111.60 AA trp --CN-NA-H 50.0 123.10 AA trp, changed based on NMA nmodes --CB-NB-CK 70.0 103.80 --CC-NB-CR 70.0 117.00 AA his --CR-NB-CV 70.0 117.00 AA his --C -NC-CA 70.0 120.50 --CA-NC-CB 70.0 112.20 --CA-NC-CQ 70.0 118.60 --CB-NC-CQ 70.0 111.00 --C -OH-HO 50.0 113.00 (not used in tyr anymore) --CA-OH-HO 50.0 113.00 replacement in tyr --CT-OH-HO 55.0 108.50 --HO-OH-P 45.0 108.50 --C -OS-CT 60.0 117.00 Junmei et al, 1999 --CM-OS-CT 60.0 117.00 Junmei et al, 1999 --CT-OS-CT 60.0 109.50 --CT-OS-P 100.0 120.50 --P -OS-P 100.0 120.50 --O2-P -OH 45.0 108.23 --O2-P -O2 140.0 119.90 --O2-P -OS 100.0 108.23 --OH-P -OS 45.0 102.60 --OS-P -OS 45.0 102.60 --CT-S -CT 62.0 98.90 AA met --CT-S -S 68.0 103.70 AA cyx (SCHERAGA JPC 79,1428) --CT-SH-HS 43.0 96.00 changed from 44.0 based on methanethiol nmodes --HS-SH-HS 35.0 92.07 AA cys --CB-NB-LP 150.0 126.0 NA --CC-NB-LP 150.0 126.0 his,NA --CK-NB-LP 150.0 126.0 NA --CR-NB-LP 150.0 126.0 his,NA --CV-NB-LP 150.0 126.0 his,NA --C -NC-LP 150.0 120.0 NA --CA-NC-LP 150.0 120.0 NA --CB-NC-LP 150.0 120.0 NA --CQ-NC-LP 150.0 120.0 NA --CT-N3-LP 150.0 109.5 in neutral lysine --H -N3-LP 150.0 109.5 in neutral lysine --CT-NT-LP 150.0 109.5 --H -NT-LP 150.0 109.5 --C -O -LP 150.0 120.0 --LP-O -LP 150.0 120.0 --C -OH-LP 150.0 120.0 --CT-OH-LP 150.0 109.5 --HO-OH-LP 150.0 109.5 --LP-OH-LP 150.0 109.5 --C -OS-LP 150.0 109.5 --CM-OS-LP 150.0 109.5 methyl vinyl ether --CT-OS-LP 150.0 109.5 --LP-OS-LP 150.0 109.5 --CT-S -LP 150.0 90.0 cys,cyx,met --CT-SH-LP 150.0 90.0 cys,cyx,met --P -OS-LP 150.0 109.5 NA --LP-S -LP 150.0 180.0 cys,cyx,met --LP-SH-LP 150.0 180.0 cys,cyx,met --HS-SH-LP 150.0 90.0 cys -- --X -C -C -X 4 14.50 180.0 2. Junmei et al, 1999 --X -C -CA-X 4 14.50 180.0 2. intrpol.bsd.on C6H6 --X -C -CB-X 4 12.00 180.0 2. intrpol.bsd.on C6H6 --X -C -CM-X 4 8.70 180.0 2. intrpol.bsd.on C6H6 --X -C -CT-X 6 0.00 0.0 2. JCC,7,(1986),230 --X -C -N -X 4 10.00 180.0 2. AA,NMA --X -C -N*-X 4 5.80 180.0 2. JCC,7,(1986),230 --X -C -NA-X 4 5.40 180.0 2. JCC,7,(1986),230 --X -C -NC-X 2 8.00 180.0 2. JCC,7,(1986),230 --X -C -O -X 4 11.20 180.0 2. Junmei et al, 1999 --X -C -OH-X 2 4.60 180.0 2. Junmei et al, 1999 --X -C -OS-X 2 5.40 180.0 2. Junmei et al, 1999 --X -CA-CA-X 4 14.50 180.0 2. intrpol.bsd.on C6H6 --X -CA-CB-X 4 14.00 180.0 2. intrpol.bsd.on C6H6 --X -CA-CM-X 4 10.20 180.0 2. intrpol.bsd.on C6H6 --X -CA-CN-X 4 14.50 180.0 2. reinterpolated 93' --X -CA-CT-X 6 0.00 0.0 2. JCC,7,(1986),230 --X -CA-N2-X 4 9.60 180.0 2. reinterpolated 93' --X -CA-NA-X 4 6.00 180.0 2. JCC,7,(1986),230 --X -CA-NC-X 2 9.60 180.0 2. JCC,7,(1986),230 --X -CA-OH-X 2 1.80 180.0 2. Junmei et al, 99 --X -CB-CB-X 4 21.80 180.0 2. intrpol.bsd.on C6H6 --X -CB-CN-X 4 12.00 180.0 2. reinterpolated 93' --X -CB-N*-X 4 6.60 180.0 2. JCC,7,(1986),230 --X -CB-NB-X 2 5.10 180.0 2. JCC,7,(1986),230 --X -CB-NC-X 2 8.30 180.0 2. JCC,7,(1986),230 --X -CC-CT-X 6 0.00 0.0 2. JCC,7,(1986),230 --X -CC-CV-X 4 20.60 180.0 2. intrpol.bsd.on C6H6 --X -CC-CW-X 4 21.50 180.0 2. intrpol.bsd.on C6H6 --X -CC-NA-X 4 5.60 180.0 2. JCC,7,(1986),230 --X -CC-NB-X 2 4.80 180.0 2. JCC,7,(1986),230 --X -CD-CD-X 4 4.00 180.0 2. Junmei et al, 1999 --X -CD-CT-X 6 0.00 0.0 2. Junmei et al, 1999 --X -CD-CM-X 4 26.60 180.0 2. Junmei et al, 1999 --X -CK-N*-X 4 6.80 180.0 2. JCC,7,(1986),230 --X -CK-NB-X 2 20.00 180.0 2. JCC,7,(1986),230 --X -CM-CM-X 4 26.60 180.0 2. intrpol.bsd.on C6H6 --X -CM-CT-X 6 0.00 0.0 3. JCC,7,(1986),230 --X -CM-N*-X 4 7.40 180.0 2. JCC,7,(1986),230 --X -CM-OS-X 2 2.10 180.0 2. Junmei et al, 1999 --X -CN-NA-X 4 6.10 180.0 2. reinterpolated 93' --X -CQ-NC-X 2 13.60 180.0 2. JCC,7,(1986),230 --X -CT-CT-X 9 1.40 0.0 3. JCC,7,(1986),230 --X -CT-CY-X 3 0.00 0.0 1. Junmei et al, 1999 --X -CT-CZ-X 3 0.00 0.0 1. Junmei et al, 1999 --X -CT-N -X 6 0.00 0.0 2. JCC,7,(1986),230 --X -CT-N*-X 6 0.00 0.0 2. JCC,7,(1986),230 --X -CT-N2-X 6 0.00 0.0 3. JCC,7,(1986),230 --X -CT-NT-X 6 1.80 0.0 3. Junmei et al, 1999 --X -CT-N3-X 9 1.40 0.0 3. JCC,7,(1986),230 --X -CT-OH-X 3 0.50 0.0 3. JCC,7,(1986),230 --X -CT-OS-X 3 1.15 0.0 3. JCC,7,(1986),230 --X -CT-S -X 3 1.00 0.0 3. JCC,7,(1986),230 --X -CT-SH-X 3 0.75 0.0 3. JCC,7,(1986),230 --X -C*-CB-X 4 6.70 180.0 2. intrpol.bsd.onC6H6aa --X -C*-CT-X 6 0.00 0.0 2. JCC,7,(1986),230 --X -C*-CW-X 4 26.10 180.0 2. intrpol.bsd.on C6H6 --X -CR-NA-X 4 9.30 180.0 2. JCC,7,(1986),230 --X -CR-NB-X 2 10.00 180.0 2. JCC,7,(1986),230 --X -CV-NB-X 2 4.80 180.0 2. JCC,7,(1986),230 --X -CW-NA-X 4 6.00 180.0 2. JCC,7,(1986),230 --X -OH-P -X 3 0.75 0.0 3. JCC,7,(1986),230 --X -OS-P -X 3 0.75 0.0 3. JCC,7,(1986),230 --N -CT-C -N 1 1.700 180.000 -1. --N -CT-C -N 1 2.000 180.000 2. --C -N -CT-C 1 0.850 180.000 -2. --C -N -CT-C 1 0.800 0.000 1. --CT-CT-N -C 1 0.50 180.0 -4. phi,psi,parm94 --CT-CT-N -C 1 0.15 180.0 -3. phi,psi,parm94 --CT-CT-N -C 1 0.00 0.0 -2. JCC,7,(1986),230 --CT-CT-N -C 1 0.53 0.0 1. phi,psi,parm94 --CT-CT-C -N 1 0.100 0.0 -4. phi,psi,parm94 --CT-CT-C -N 1 0.07 0.0 2. phi,psi,parm94 --H -N -C -O 1 2.50 180.0 -2. JCC,7,(1986),230 --H -N -C -O 1 2.00 0.0 1. J.C.cistrans-NMA DE --CT-S -S -CT 1 3.50 0.0 -2. JCC,7,(1986),230 --CT-S -S -CT 1 0.60 0.0 3. JCC,7,(1986),230 --OH-P -OS-CT 1 0.25 0.0 -3. JCC,7,(1986),230 --OH-P -OS-CT 1 1.20 0.0 2. gg> ene.631g*/mp2 --OS-P -OS-CT 1 0.25 0.0 -3. JCC,7,(1986),230 --OS-P -OS-CT 1 1.20 0.0 2. gg> ene.631g*/mp2 --H1-CT-C -O 1 0.80 0.0 -1. Junmei et al, 1999 --H1-CT-C -O 1 0.00 0.0 -2. Explicit of wild card X-C-CT-X --H1-CT-C -O 1 0.08 180.0 3. Junmei et al, 1999 --HC-CT-C -O 1 0.80 0.0 -1. Junmei et al, 1999 --HC-CT-C -O 1 0.00 0.0 -2. Explicit of wild card X-C-CT-X --HC-CT-C -O 1 0.08 180.0 3. Junmei et al, 1999 --HC-CT-CT-HC 1 0.15 0.0 3. Junmei et al, 1999 --HC-CT-CT-CT 1 0.16 0.0 3. Junmei et al, 1999 --HC-CT-CM-CM 1 0.38 180.0 -3. Junmei et al, 1999 --HC-CT-CM-CM 1 1.15 0.0 1. Junmei et al, 1999 --HO-OH-CT-CT 1 0.16 0.0 -3. Junmei et al, 1999 --HO-OH-CT-CT 1 0.25 0.0 1. Junmei et al, 1999 --HO-OH-C -O 1 2.30 180.0 -2. Junmei et al, 1999 --HO-OH-C -O 1 0.00 0.0 1. Junmei et al, 2011, actyle acid density optimization --CM-CM-C -O 1 2.175 180.0 -2. Junmei et al, 1999 --CM-CM-C -O 1 0.30 0.0 3. Junmei et al, 1999 --CT-CM-CM-CT 1 6.65 180.0 -2. Junmei et al, 1999 --CT-CM-CM-CT 1 1.90 180.0 1. Junmei et al, 1999 --CT-CT-CT-CT 1 0.18 0.0 -3. Junmei et al, 1999 --CT-CT-CT-CT 1 0.25 180.0 -2. Junmei et al, 1999 --CT-CT-CT-CT 1 0.20 180.0 1. Junmei et al, 1999 --CT-CT-NT-CT 1 0.30 0.0 -3. Junmei et al, 1999 --CT-CT-NT-CT 1 0.48 180.0 2. Junmei et al, 1999 --CT-CT-OS-CT 1 0.383 0.0 -3. --CT-CT-OS-CT 1 0.1 180.0 2. --CT-CT-OS-C 1 0.383 0.0 -3. Junmei et al, 1999 --CT-CT-OS-C 1 0.80 180.0 1. Junmei et al, 1999 --CT-OS-CT-OS 1 0.10 0.0 -3. Junmei et al, 1999 --CT-OS-CT-OS 1 0.85 180.0 -2. Junmei et al, 1999 --CT-OS-CT-OS 1 1.35 180.0 1. Junmei et al, 1999 --CT-OS-CT-N* 1 0.383 0.0 -3. parm98.dat, TC,PC,PAK --CT-OS-CT-N* 1 0.65 0.0 2. Piotr et al. --CT-CZ-CZ-HZ 1 0.00 0.0 1. Junmei et al, 1999 --O -C -OS-CT 1 2.70 180.0 -2. Junmei et al, 1999 --O -C -OS-CT 1 1.40 180.0 1. Junmei et al, 1999 --OS-CT-N*-CK 1 0.00 000.0 -2. parm98, TC,PC,PAK --OS-CT-N*-CK 1 2.50 0.0 1. parm98, TC,PC,PAK --OS-CT-N*-CM 1 0.00 000.0 -2. parm98, TC,PC,PAK --OS-CT-N*-CM 1 2.50 0.0 1. parm98, TC,PC,PAK --OS-CT-CT-OS 1 0.144 0.0 -3. parm98, TC,PC,PAK --OS-CT-CT-OS 1 1.175 0.0 2. Piotr et al. --OS-CT-CT-OH 1 0.144 0.0 -3. parm98, TC,PC,PAK --OS-CT-CT-OH 1 1.175 0.0 2. parm98, TC,PC,PAK --OH-CT-CT-OH 1 0.144 0.0 -3. parm98, TC,PC,PAK --OH-CT-CT-OH 1 1.175 0.0 2. parm98, TC,PC,PAK --F -CT-CT-F 1 0.000 0.0 -3. JCC,7,(1986),230 --F -CT-CT-F 1 1.20 180.0 1. Junmei et al, 1999 --Cl-CT-CT-Cl 1 0.000 0.0 -3. JCC,7,(1986),230 --Cl-CT-CT-Cl 1 0.45 180.0 1. Junmei et al, 1999 --Br-CT-CT-Br 1 0.000 0.0 -3. JCC,7,(1986),230 --Br-CT-CT-Br 1 0.00 180.0 1. Junmei et al, 1999 --H1-CT-CT-OS 1 0.000 0.0 -3. JCC,7,(1986),230 --H1-CT-CT-OS 1 0.25 0.0 1. Junmei et al, 1999 --H1-CT-CT-OH 1 0.000 0.0 -3. JCC,7,(1986),230 --H1-CT-CT-OH 1 0.25 0.0 1. Junmei et al, 1999 --H1-CT-CT-F 1 0.000 0.0 -3. JCC,7,(1986),230 --H1-CT-CT-F 1 0.19 0.0 1. Junmei et al, 1999 --H1-CT-CT-Cl 1 0.000 0.0 -3. JCC,7,(1986),230 --H1-CT-CT-Cl 1 0.25 0.0 1. Junmei et al, 1999 --H1-CT-CT-Br 1 0.000 0.0 -3. JCC,7,(1986),230 --H1-CT-CT-Br 1 0.55 0.0 1. Junmei et al, 1999 --HC-CT-CT-OS 1 0.000 0.0 -3. JCC,7,(1986),230 --HC-CT-CT-OS 1 0.25 0.0 1. Junmei et al, 1999 --HC-CT-CT-OH 1 0.000 0.0 -3. JCC,7,(1986),230 --HC-CT-CT-OH 1 0.25 0.0 1. Junmei et al, 1999 --HC-CT-CT-F 1 0.000 0.0 -3. JCC,7,(1986),230 --HC-CT-CT-F 1 0.19 0.0 1. Junmei et al, 1999 --HC-CT-CT-Cl 1 0.000 0.0 -3. JCC,7,(1986),230 --HC-CT-CT-Cl 1 0.25 0.0 1. Junmei et al, 1999 --HC-CT-CT-Br 1 0.000 0.0 -3. JCC,7,(1986),230 --HC-CT-CT-Br 1 0.55 0.0 1. Junmei et al, 1999 --H1-CT-NT-LP 1 0.000 0.000 3. --CT-CT-NT-LP 1 0.000 0.000 3. --CT-C -N -LP 1 0.000 180.000 2. --O -C -N -LP 1 0.000 180.000 2. --H1-CT-OH-LP 1 0.000 0.000 3. --CT-CT-OH-LP 1 0.000 0.000 3. --H1-CT-OS-LP 1 0.000 0.000 3. --H2-CT-OS-LP 1 0.000 0.000 3. --CT-CT-OS-LP 1 0.000 0.000 3. --CM-CM-OS-LP 1 0.000 180.000 2. --HA-CM-OS-LP 1 0.000 180.000 2. --H4-CM-OS-LP 1 0.000 180.000 2. -- --X -X -C -O 10.5 180. 2. JCC,7,(1986),230 --X -O2-C -O2 10.5 180. 2. JCC,7,(1986),230 --X -X -N -H 1.0 180. 2. JCC,7,(1986),230 --X -X -N2-H 1.0 180. 2. JCC,7,(1986),230 --X -X -NA-H 1.0 180. 2. JCC,7,(1986),230 --X -N2-CA-N2 10.5 180. 2. JCC,7,(1986),230 --X -CT-N -CT 1.0 180. 2. JCC,7,(1986),230 --X -X -CA-HA 1.1 180. 2. bsd.on C6H6 nmodes --X -X -CW-H4 1.1 180. 2. --X -X -CR-H5 1.1 180. 2. --X -X -CV-H4 1.1 180. 2. --X -X -CQ-H5 1.1 180. 2. --X -X -CK-H5 1.1 180. 2. --X -X -CM-H4 1.1 180. 2. --X -X -CM-HA 1.1 180. 2. --X -X -CA-H4 1.1 180. 2. bsd.on C6H6 nmodes --X -X -CA-H5 1.1 180. 2. bsd.on C6H6 nmodes --CB-CK-N*-CT 1.0 180. 2. --C -CM-N*-CT 1.0 180. 2. dac guess, 9/94 --C -CM-CM-CT 1.1 180. 2. --CT-O -C -OH 10.5 180. 2. --CT-CV-CC-NA 1.1 180. 2. --CT-CW-CC-NB 1.1 180. 2. --CT-CW-CC-NA 1.1 180. 2. --CB-CT-C*-CW 1.1 180. 2. --CA-CA-CA-CT 1.1 180. 2. --C -CM-CM-CT 1.1 180. 2. dac guess, 9/94 --CM-N2-CA-NC 1.1 180. 2. dac guess, 9/94 --CB-N2-CA-NC 1.1 180. 2. dac, 10/94 --N2-NA-CA-NC 1.1 180. 2. dac, 10/94 --CA-CA-C -OH 1.1 180. 2. (not used in tyr!) --CA-CA-CA-OH 1.1 180. 2. in tyr --H5-O -C -OH 1.1 180. 2. Junmei et al.1999 --H5-O -C -OS 1.1 180. 2. --CM-CT-CM-HA 1.1 180. 2. Junmei et al.1999 --Br-CA-CA-CA 1.1 180. 2. Junmei et al.1999 --CM-H4-C -O 1.1 180. 2. Junmei et al.1999 --C -CT-N -H 1.1 180. 2. Junmei et al.1999 --C -CT-N -O 1.1 180. 2. Junmei et al.1999 -- -- HW OW 0000. 0000. 4. flag for fast water -- --N NA N2 N* NC NB NY --C* CA CB CC CD CK CM CN CQ CR CV CW CZ -- --MOD4 RE -- H 0.9000 0.0008 Junmei optimization -- HO 0.6000 0.0000 Junmei optimization -- HS 0.6000 0.0157 Junmei optimization -- HC 1.3992 0.0326 Junmei optimization -- H0 1.2992 0.0326 Junmei optimization -- H1 1.2992 0.0326 Junmei optimization -- H2 1.1992 0.0326 Junmei optimization -- H3 1.0992 0.0326 Junmei optimization -- H4 1.5424 0.0052 Junmei optimization -- H5 1.4924 0.0052 Junmei optimization -- HA 1.5924 0.0052 Junmei optimization -- HP 0.9000 0.0008 Junmei optimization -- HZ 1.4590 0.0150 H bonded to sp C (Howard et al JCC 16) -- HW 0.0000 0.0000 TIP3P, POL3, SPC/E water models -- OW 1.7980 0.1560 POL3 water model -- O 1.6582 0.2146 Junmei optimization -- OH 1.7895 0.0752 Junmei optimization -- O2 1.4062 1.3962 Junmei optimization -- OS 1.7127 0.1385 Junmei optimization -- C 2.1034 0.0267 Junmei optimization -- C2 1.8446 0.1290 Junmei optimization -- CY 1.9295 0.1836 Junmei optimization -- CT 2.0242 0.0538 Junmei optimization -- C* 1.8738 0.1068 Junmei optimization -- N 1.8714 0.1312 Junmei optimization -- NT 1.9500 0.0450 Junmei optimization -- N3 1.9500 0.0450 Junmei optimization -- S 1.9980 0.2530 Junmei optimization -- SH 1.9980 0.2530 Junmei optimization -- P 2.1000 0.2000 JCC,7,(1986),230; -- IM 2.47 0.1 Cl- Smith & Dang, JCP 1994,100:5,3757 -- Li 1.1370 0.0183 Li+ Aqvist JPC 1990,94,8021. (adapted) -- IP 1.8680 0.00277 Na+ Aqvist JPC 1990,94,8021. (adapted) -- Na 1.8680 0.00277 Na+ Aqvist JPC 1990,94,8021. (adapted) -- K 2.6580 0.000328 K+ Aqvist JPC 1990,94,8021. (adapted) -- Rb 2.9560 0.00017 Rb+ Aqvist JPC 1990,94,8021. (adapted) -- Cs 3.3950 0.0000806 Cs+ Aqvist JPC 1990,94,8021. (adapted) -- MG 0.7926 0.8947 Mg2+ Aqvist JPC 1990,94,8021.(adapted) -- C0 1.7131 0.459789 Ca2+ Aqvist JPC 1990,94,8021.(adapted) -- Zn 1.10 0.0125 Zn2+, Merz,PAK, JACS,113,8262,(1991) -- F 1.75 0.061 Gough et al. JCC 13,(1992),963. -- Cl 1.948 0.265 Fox, JPCB,102,8070,(98),flex.mdl CHCl3 -- Br 2.22 0.320 Junmei(?) -- I 2.35 0.40 JCC,7,(1986),230; -- IB 5.0 0.1 solvated ion for vacuum approximation -- LP 0.00 0.0000 lone pair -- --END -- -- --#################################################### --Polarizabilities: --Mg2+ 0.120 --F- 0.9743 -- -- --additional parameters of LP -- --H1-CT-NT-LP 1 0.000 0.000 3.000 --CT-CT-NT-LP 1 0.000 0.000 3.000 --CT-C -N -LP 1 0.000 180.000 2.000 --O -C -N -LP 1 0.000 180.000 2.000 --H1-CT-OH-LP 1 0.000 0.000 3.000 --CT-CT-OH-LP 1 0.000 0.000 3.000 --H1-CT-OS-LP 1 0.000 0.000 3.000 --H2-CT-OS-LP 1 0.000 0.000 3.000 --CT-CT-OS-LP 1 0.000 0.000 3.000 --CM-CM-OS-LP 1 0.000 180.000 2.000 --HA-CM-OS-LP 1 0.000 180.000 2.000 --H4-CM-OS-LP 1 0.000 180.000 2.000 -- -- -diff --git a/patch_amber.py b/patch_amber.py -index 84d90c4..2b5ae7a 100755 ---- a/patch_amber.py -+++ b/patch_amber.py -@@ -25,7 +25,7 @@ Acknowledgements/Contributions from others - * Tyler Luchko made helpful contributions to the user-interface - """ - # Load common os module and package into top level namespace --from os import path, getenv -+from os import path, getenv, chmod - - # Global variables. Other ones that change less frequently can be found below - # the Patch class definitions. -@@ -230,9 +230,11 @@ class Patch(object): - """ - # This regex matches lines that start like "+++ path/to/file.cpp" - modfile = re.compile(r'\+\+\+ \.*\/*[\w\-\/\.\+]+[\w\-\.\+]+\.*\w*') -- selffile = re.compile('\\+\\+\\+ %s' % path.split(sys.argv[0])[1]) -+ selffile = re.compile(r'\+\+\+ %s' % path.split(sys.argv[0])[1]) -+ newfile = re.compile(r'new file mode (\d{3})+') - patch = open(self.name, 'r') - files_modified = [] -+ newfile_modes = [] - for line in patch: - if modfile.match(line): - filename = modfile.findall(line)[0].strip('+++').strip() -@@ -247,8 +249,17 @@ class Patch(object): - elif selffile.match(line): - filename = path.split(sys.argv[0])[1] - if not filename in files_modified: files_modified.append(filename) -+ elif newfile.match(line): -+ ftmp = newfile.match(line).groups() -+ if isinstance(ftmp, tuple): -+ if len(ftmp) == 2: -+ newfile_modes.append(ftmp[1]) -+ elif len(ftmp) == 1: -+ newfile_modes.append(ftmp[0]) -+ elif isinstance(ftmp, str): -+ newfile_modes.append(ftmp) - patch.close() -- return files_modified -+ return files_modified, newfile_modes - - #======================================== - -@@ -331,7 +342,7 @@ class PatchBz2(Patch): - - print 'Decompressing %s with %s' % (patch_file, bunzip) - -- process = Popen([bunzip, patch_file], stdout=PIPE, stderr=PIPE) -+ process = Popen([bunzip, '-f', patch_file], stdout=PIPE, stderr=PIPE) - - (output, error) = process.communicate('') - -@@ -340,8 +351,8 @@ class PatchBz2(Patch): - patch_file, error)) - sys.exit(1) - -- # Get rid of the file extension -- patch_file = patch_file.strip('.bz2') -+ # Get rid of the file extension (.bz2) -+ patch_file = patch_file[:len(patch_file)-4] - Patch.__init__(self, patch_file) - - #~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~ -@@ -370,7 +381,7 @@ class PatchGz(Patch): - - print 'Decompressing %s with %s' % (patch_file, gunzip) - -- process = Popen([gunzip, patch_file], stdout=PIPE, stderr=PIPE) -+ process = Popen([gunzip, '-f', patch_file], stdout=PIPE, stderr=PIPE) - - (output, error) = process.communicate('') - -@@ -379,14 +390,14 @@ class PatchGz(Patch): - patch_file, error)) - sys.exit(1) - -- # Get rid of the file extension -- patch_file = patch_file.strip('.gz') -+ # Get rid of the file extension (.gz) -+ patch_file = patch_file[:len(patch_file)-3] - Patch.__init__(self, patch_file) - - #~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~+~ - - # The list of searched suffixes for patch names (ASCII, Bzip2, Gzip) --patch_suffixes = ('', '.bz2', '.gz') -+patch_suffixes = ('', '.bz2_', '.gz_') - # The corresponding classes for each patch suffix listed above IN SAME ORDER - patch_classes = (Patch, PatchBz2, PatchGz) - # This is the description printed with the program usage message -@@ -413,14 +424,18 @@ def download_patch(search_location, patch_number, save_loc): - if 'timed out' in str(err): - print >> sys.stderr, 'Timed out connecting to server' - sys.exit(1) -- raise err -+ continue - # A 404 code means we didn't find it - if url_patch.getcode() == 404: - url_patch.close() - continue - # Otherwise we found it, so use urlretrieve to download the file - url_patch.close() -- local_patch = path.join(save_loc, fixname) -+ # Hack for compressed patch files -+ if fixname.endswith('_'): -+ local_patch = path.join(save_loc, fixname[:len(fixname)-1]) -+ else: -+ local_patch = path.join(save_loc, fixname) - print ' Downloading %s' % fixname - urllib.urlretrieve(search_location + fixname, local_patch) - # Now that we have the patch file saved, return the appropriate PatchClass -@@ -484,8 +499,8 @@ def describe_patch(patch, full=True, hide_prefix=True): - if patch.author(): print ' Author: ', patch.author() - if patch.date(): print ' Created on: ', patch.date() - if patch.programs(): print ' Programs fixed: ', ', '.join(patch.programs()) -- if patch.files_edited(): -- print ' Files affected: ', ('\n%19s' % ' ').join(patch.files_edited()) -+ if patch.files_edited()[0]: -+ print ' Files affected: ', ('\n%19s' % ' ').join(patch.files_edited()[0]) - if full: print '\n', patch.description() - print '' - -@@ -513,18 +528,32 @@ def _files_present(patch): - return -2: Same as -1, except we also modify this program (as in 2) - """ - -- edfiles = patch.files_edited() -+ edfiles, newmodes = patch.files_edited() - if not edfiles: - print >> sys.stderr, ('Fatal Error: The patch "%s" does not edit any ' + - 'files!') % patch.name - sys.exit(1) - fname = edfiles[0] - ret_code = 1 -+ newfile_count = 0 - if ('src/sander' in fname or 'src/pmemd' in fname) and not path.isdir( - path.join(getenv('AMBERHOME'), 'src', 'pmemd', 'src')): - ret_code = 0 - if fname == path.split(sys.argv[0])[1]: - ret_code = 2 -+ elif not path.exists(path.join(getenv('AMBERHOME'), fname)): -+ _mkdir(path.join(getenv('AMBERHOME'), path.split(fname)[0])) -+ print 'Creating file %s' % (path.join(getenv('AMBERHOME'), fname)) -+ tmpfile = open(path.join(getenv('AMBERHOME'), fname), 'w') -+ tmpfile.close() -+ try: -+ print 'Changing mode to %s' % (newmodes[0]) -+ # chmod takes octal numbers, so convert the octal number -+ chmod(path.join(getenv('AMBERHOME'), fname), int(newmodes[0], 8)) -+ newfile_count += 1 -+ except IndexError: -+ # If our patch didn't have mode info, don't pitch a fit -+ pass - for i in range(1,len(edfiles)): - fname = edfiles[i] - # If ret_code is already 1, then our first file matched one we had, -@@ -544,6 +573,15 @@ def _files_present(patch): - print 'Creating file %s' % (path.join(getenv('AMBERHOME'), fname)) - tmpfile = open(path.join(getenv('AMBERHOME'), fname), 'w') - tmpfile.close() -+ try: -+ print 'Changing mode to %s' % (newmodes[newfile_count]) -+ # chmod takes octal numbers, so convert the octal number -+ chmod(path.join(getenv('AMBERHOME'), fname), -+ int(newmodes[newfile_count], 8)) -+ newfile_count += 1 -+ except IndexError: -+ # Don't pitch a fit if our patch file didn't have permission info -+ pass - - return ret_code - -@@ -775,7 +813,7 @@ if __name__ == '__main__': - sys.exit(1) - if opt.apply_patch: single_patch = Patch(opt.apply_patch) - else: single_patch = Patch(opt.reverse_patch) -- if not single_patch.files_edited(): -+ if not single_patch.files_edited()[0]: - print >> sys.stderr, 'Fatal Error: Bad patch. Could not find the ' + \ - 'files that were supposed to be edited!' - # Print out message based on whether we're applying forward or reverse diff --git a/sci-chemistry/ambertools/files/ambertools-12-gentoo.patch b/sci-chemistry/ambertools/files/ambertools-12-gentoo.patch index e52e39daf..110343e22 100644 --- a/sci-chemistry/ambertools/files/ambertools-12-gentoo.patch +++ b/sci-chemistry/ambertools/files/ambertools-12-gentoo.patch @@ -1,3 +1,26 @@ + AmberTools/src/Makefile | 42 +- + AmberTools/src/configure2 | 63 +- + AmberTools/src/cpptraj/src/Makefile_at | 14 +- + AmberTools/src/mdgx/Makefile | 9 +- + AmberTools/src/mdgx/Trajectory.c | 2 +- + .../src/mmpbsa_py/MMPBSA_mods/amber_outputs.py | 4 +- + AmberTools/src/nab/database.c | 2 +- + AmberTools/src/nab/nab.c | 4 +- + AmberTools/src/pbsa/Makefile | 44 +- + AmberTools/src/ptraj/Makefile | 9 +- + AmberTools/src/ptraj/trajectory.c | 2 +- + AmberTools/src/sff/Makefile | 4 +- + AmberTools/src/sff/dsarpack.f | 654 +++++++++++++++++++++ + AmberTools/src/sqm/Makefile | 7 +- + AmberTools/test/Makefile | 4 +- + .../01_Generalized_Born/energies.csv.save | 8 +- + AmberTools/test/nab/Makefile | 2 + + AmberTools/test/nab/Run.rism_sp | 2 +- + AmberTools/test/nab/Run.rism_sp2 | 2 +- + AmberTools/test/test_at_serial.sh | 6 + + Makefile | 2 +- + 21 files changed, 725 insertions(+), 161 deletions(-) + diff --git a/AmberTools/src/Makefile b/AmberTools/src/Makefile index e5c0ded..ce8f883 100644 --- a/AmberTools/src/Makefile @@ -145,10 +168,10 @@ index e5c0ded..ce8f883 100644 cuda: @echo "$(AMBERTOOLS) has no CUDA-enabled components" diff --git a/AmberTools/src/configure2 b/AmberTools/src/configure2 -index 9ce5ef0..8dfcd3e 100755 +index 25d3f0a..1ad86e6 100755 --- a/AmberTools/src/configure2 +++ b/AmberTools/src/configure2 -@@ -389,11 +389,11 @@ omp_flag= +@@ -387,11 +387,11 @@ omp_flag= mpi_flag= lex=flex flibs_mkl= @@ -164,7 +187,7 @@ index 9ce5ef0..8dfcd3e 100755 #----------------------------------- # skip building of xleap? -@@ -621,13 +621,14 @@ gnu) +@@ -618,13 +618,14 @@ gnu) flibs_arch="-lgfortran -w" flibsf_arch= cc=gcc @@ -182,7 +205,7 @@ index 9ce5ef0..8dfcd3e 100755 staticflag='-static' # If -noopt has been requested, force lack of optimisation; -@@ -648,11 +649,11 @@ gnu) +@@ -645,11 +646,11 @@ gnu) foptflags="" else cnooptflags= @@ -197,7 +220,7 @@ index 9ce5ef0..8dfcd3e 100755 fi # Debugging options -@@ -2044,26 +2045,26 @@ EOF +@@ -2026,26 +2027,26 @@ EOF if [ "$sse" = "yes" ]; then enable_sse="--enable-sse2=yes" # --enable-avx=yes" fi @@ -243,7 +266,7 @@ index 9ce5ef0..8dfcd3e 100755 fftw3="\$(LIBDIR)/libfftw3.a" if [ "$mpi" = 'yes' ]; then flibs_fftw3="-lfftw3_mpi $flibs_fftw3" -@@ -2300,7 +2301,7 @@ LDFLAGS=$ldflags \$(CUSTOMBUILDFLAGS) +@@ -2282,7 +2283,7 @@ LDFLAGS=$ldflags \$(CUSTOMBUILDFLAGS) AMBERLDFLAGS=\$(AMBERBUILDFLAGS) LEX= $lex @@ -252,7 +275,7 @@ index 9ce5ef0..8dfcd3e 100755 AR= ar rv M4= $m4 RANLIB=$ranlib -@@ -2337,7 +2338,7 @@ CP=$localcp +@@ -2319,7 +2320,7 @@ CP=$localcp # Information about Fortran compilation: FC=$fc @@ -330,7 +353,7 @@ index 524dad8..5df64c6 100644 coord tc; diff --git a/AmberTools/src/mmpbsa_py/MMPBSA_mods/amber_outputs.py b/AmberTools/src/mmpbsa_py/MMPBSA_mods/amber_outputs.py -index 0349ba9..c700beb 100644 +index b01b891..24ea20f 100644 --- a/AmberTools/src/mmpbsa_py/MMPBSA_mods/amber_outputs.py +++ b/AmberTools/src/mmpbsa_py/MMPBSA_mods/amber_outputs.py @@ -210,7 +210,7 @@ class AmberOutput(object): @@ -502,7 +525,7 @@ index 110ffce..49bdf1a 100644 char c; int j,ret; diff --git a/AmberTools/src/sff/Makefile b/AmberTools/src/sff/Makefile -index 83f362c..b1a1b2e 100644 +index 83f362c..13efc78 100644 --- a/AmberTools/src/sff/Makefile +++ b/AmberTools/src/sff/Makefile @@ -3,7 +3,7 @@ include ../config.h @@ -514,9 +537,19 @@ index 83f362c..b1a1b2e 100644 prm.o rand2.o sasad.o sff.o time.o xminC.o AmberNetcdf.o $(SFF_RISM_INTERFACE) +@@ -63,7 +63,7 @@ xminC.o: sff.h + AmberNetcdf.o: AmberNetcdf.h + + hcp_getpdb: hcp_getpdb.c +- $(CC) -o $(BINDIR)/hcp_getpdb hcp_getpdb.c ++ $(CC) $(CFLAGS) $(LDFLAGS) -o $(BINDIR)/hcp_getpdb hcp_getpdb.c + + .PHONY: ../rism/amber_rism_interface.NAB.o + ../rism/amber_rism_interface.NAB.o: diff --git a/AmberTools/src/sff/dsarpack.f b/AmberTools/src/sff/dsarpack.f -index e69de29..5544df9 100644 ---- a/AmberTools/src/sff/dsarpack.f +new file mode 100644 +index 0000000..5544df9 +--- /dev/null +++ b/AmberTools/src/sff/dsarpack.f @@ -0,0 +1,654 @@ + subroutine dsarpack(n_dim,n_eig_in,n_eig_out,ncv_in,itr_in, |