diff options
author | Justin Lecher <jlec@gentoo.org> | 2011-06-24 22:31:53 +0200 |
---|---|---|
committer | Justin Lecher <jlec@gentoo.org> | 2011-06-24 22:31:53 +0200 |
commit | a45778629384b0ca72fcad0f6026f3bec4f4fbe6 (patch) | |
tree | ca344fb04733cf436a4c6ed224d09dd9a3e84d11 /sci-chemistry/ambertools | |
parent | Some ebuild cleaning (diff) | |
download | sci-a45778629384b0ca72fcad0f6026f3bec4f4fbe6.tar.gz sci-a45778629384b0ca72fcad0f6026f3bec4f4fbe6.tar.bz2 sci-a45778629384b0ca72fcad0f6026f3bec4f4fbe6.zip |
Cleaned ebuild
(Portage version: 2.2.0_alpha41/git/Linux x86_64, signed Manifest commit with key 70EB7916)
Diffstat (limited to 'sci-chemistry/ambertools')
-rw-r--r-- | sci-chemistry/ambertools/ChangeLog | 5 | ||||
-rw-r--r-- | sci-chemistry/ambertools/Manifest | 16 | ||||
-rw-r--r-- | sci-chemistry/ambertools/ambertools-1.4.ebuild | 6 | ||||
-rw-r--r-- | sci-chemistry/ambertools/ambertools-1.5.ebuild | 6 | ||||
-rw-r--r-- | sci-chemistry/ambertools/files/ambertools-1.4-bugfix_1-18.patch | 9025 | ||||
-rw-r--r-- | sci-chemistry/ambertools/files/ambertools-1.5-bugfix_1-3.patch | 3831 |
6 files changed, 21 insertions, 12868 deletions
diff --git a/sci-chemistry/ambertools/ChangeLog b/sci-chemistry/ambertools/ChangeLog index 9d1fcad27..d51fa1a46 100644 --- a/sci-chemistry/ambertools/ChangeLog +++ b/sci-chemistry/ambertools/ChangeLog @@ -2,6 +2,11 @@ # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 # $Header: $ + 24 Jun 2011; Justin Lecher <jlec@gentoo.org> ambertools-1.4.ebuild, + -files/ambertools-1.4-bugfix_1-18.patch, ambertools-1.5.ebuild, + -files/ambertools-1.5-bugfix_1-3.patch: + Cleaned ebuild + 23 Jun 2011; Justin Lecher <jlec@gentoo.org> ambertools-1.4.ebuild, ambertools-1.5.ebuild: Streamlined fortran-2 eclass usage diff --git a/sci-chemistry/ambertools/Manifest b/sci-chemistry/ambertools/Manifest index d6c3b72dc..98d79e2e3 100644 --- a/sci-chemistry/ambertools/Manifest +++ b/sci-chemistry/ambertools/Manifest @@ -1,20 +1,20 @@ -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 -AUX ambertools-1.4-bugfix_1-18.patch 365430 RMD160 09bf7da6a1d386af8fc5cb70269442ed82c81866 SHA1 11c8aa73dc11dd2b4794a25fe8bf8c26813024f3 SHA256 9b4e310e02039e07f4b063af13ba360afc88b92912f2e283210be26a89245bfa AUX ambertools-1.4-gentoo.patch 9926 RMD160 d84b121e1fa940cbf949855de3a5f0bee7566330 SHA1 08ea41b969bed5320230420d047e71a28333f76c SHA256 8f520c01146a704173ca31c68dc9440e2938263416f6d0c95de22d138426e01f -AUX ambertools-1.5-bugfix_1-3.patch 142997 RMD160 db9360ec6fca0be4582380bf99e5b981dae9ee77 SHA1 49be38f7650959705516948e5b0c9d27b6f3775f SHA256 f0bb5a30fb9bff698dcbcddd27c5412377a43577a883f7bbf8488c8fffdfbab3 AUX ambertools-1.5-gentoo.patch 14083 RMD160 762c52626c4eda51839caf74c001bb660052706a SHA1 ab0afa1f5b73569539515dba4cf6638a594c7d6e SHA256 82a83f660701c192272e79f5bab17a8a8be945d78fdab454ade3918281749922 DIST AmberTools-1.4.tar.bz2 67331137 RMD160 b499e18b583a0b454dd3a554986c19c111822e6a SHA1 ef0f9a44c8767ed35f942fd41afc636b67da0389 SHA256 af61da2f3643b4ec7f41620242b734a3cb4a79c5d422100fbd1fd1c402fecfc1 DIST AmberTools-1.5.tar.bz2 121062582 RMD160 4a086b42c378f0904f7bf0b16adb042f1677be55 SHA1 92e47e7337fb4901a5a145d808c5ffd42c82d08d SHA256 0c7d397d2e91603bb9123ae68e91af3525269e60800ced360f68c13350651d7c -EBUILD ambertools-1.4.ebuild 3157 RMD160 cf165f04d81d256969080dccd8de2609d44d9892 SHA1 36bdb6958290b065b35952b7b93c2c5fbfa0502f SHA256 408e9c4013608b928a454912c0c9c79f309eaa39060502ae4aafb37e6597390e -EBUILD ambertools-1.5.ebuild 3293 RMD160 6a10117366e9352ff1c7aedbd46a6ffc88de5378 SHA1 11181cbd77bebe5470c6c749f34ebf9301942405 SHA256 2cc41ea50c86d3c338065a4baca68dd108e7ddce006e6806d8fa5a897693ebec -MISC ChangeLog 783 RMD160 364f9e2b07f3e3df0cd228dc09541da2cd02d87e SHA1 7b9e2d023ed2d1808cc170ab2bd9a5c7b717de30 SHA256 4540b082a6824ee7e782951cf28af1ad9b470ae806f7cfb2f0997998f53345b3 +DIST ambertools-1.4-bugfix_1-18.patch.xz 48136 RMD160 83fe98ef2f4620cd4c85fc72147f830ddfa47b51 SHA1 7a5a2cba9172d017d83aed16ece06d6fed6a5196 SHA256 7ea936442ce1b29943e867adaeb69932d297ae50e0a63b0e03cfb18953e9f7c2 +DIST ambertools-1.5-bugfix_1-3.patch.xz 27268 RMD160 18a74e2e84e81d39417f656ef93e8ee4d4d4583d SHA1 bc52c0776d151a8db005bb7bfb40bf9e963bdeba SHA256 edec6ccc275ee0a70b2ecc9316c031249c4f32d89b1aa145cee32c862516049a +EBUILD ambertools-1.4.ebuild 3201 RMD160 b2f4331166bafc5093f04c4e7ad9bf2eee9ee0e5 SHA1 4033d6225f7e86d42292eed5ddecd7edeb6742ec SHA256 e3a77f1a006832c46117a5c6a6a641685965f8dfe0c949c0ec1e2f7e57f73835 +EBUILD ambertools-1.5.ebuild 3336 RMD160 d97fc7eade8bcf0d12596d42a512560671751d18 SHA1 0427a45349e95be91e274d0e12eb2eb484da6dd3 SHA256 8f8f33770cb12253fef10e9b651a567de36a2863d674b82ca3b1959ab8684353 +MISC ChangeLog 979 RMD160 02da25807e2c08495e5e6ed5803c8db37b6f0630 SHA1 086394d21356fb100929d5f86e86a098d34abe43 SHA256 c3cf8fabe0c249e1b500319df8296405392fa976fb599d941544af342d292aec MISC metadata.xml 263 RMD160 9484584cc295931e963dc785e211261f68e48c82 SHA1 a2c5af57c8eb879a4249fc0240432a4fc5b91ca5 SHA256 0e94df6d8502bc41ccd18ec4d570490e245c08595e837fd116a255458939e69b -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.17 (GNU/Linux) -iEYEARECAAYFAk4DBuUACgkQgAnW8HDreRaCZQCfUv8wRu9KIxodTi2o4m3Pjz4F -xQUAn0J2bWy6dMEB5TDhgWKM7G96Tys2 -=5zK4 +iEYEARECAAYFAk4E9DkACgkQgAnW8HDreRa8NwCg0fxLgoMsWuqoreVAAV0tzOgb +Bp4An3RO97c8j9rzfFLDjx6ix2ySY7kE +=zAXR -----END PGP SIGNATURE----- diff --git a/sci-chemistry/ambertools/ambertools-1.4.ebuild b/sci-chemistry/ambertools/ambertools-1.4.ebuild index 8820dc6a9..5e75cdb63 100644 --- a/sci-chemistry/ambertools/ambertools-1.4.ebuild +++ b/sci-chemistry/ambertools/ambertools-1.4.ebuild @@ -8,7 +8,9 @@ inherit eutils fortran-2 toolchain-funcs DESCRIPTION="A suite for carrying out complete molecular mechanics investigations" HOMEPAGE="http://ambermd.org/#AmberTools" -SRC_URI="AmberTools-${PV}.tar.bz2" +SRC_URI=" + AmberTools-${PV}.tar.bz2 + mirror://gentoo/${P}-bugfix_1-18.patch.xz" LICENSE="GPL-2" SLOT="0" @@ -48,7 +50,7 @@ pkg_setup() { src_prepare() { epatch \ - "${FILESDIR}/${P}-bugfix_1-18.patch" \ + "${WORKDIR}/${P}-bugfix_1-18.patch" \ "${FILESDIR}/${P}-gentoo.patch" cd AmberTools/src rm -r arpack blas lapack fftw-2.1.5 c9x-complex cifparse netcdf pnetcdf reduce ucpp-1.3 || die diff --git a/sci-chemistry/ambertools/ambertools-1.5.ebuild b/sci-chemistry/ambertools/ambertools-1.5.ebuild index 0788a8d2c..9ac9755e7 100644 --- a/sci-chemistry/ambertools/ambertools-1.5.ebuild +++ b/sci-chemistry/ambertools/ambertools-1.5.ebuild @@ -8,7 +8,9 @@ inherit eutils fortran-2 toolchain-funcs DESCRIPTION="A suite for carrying out complete molecular mechanics investigations" HOMEPAGE="http://ambermd.org/#AmberTools" -SRC_URI="AmberTools-${PV}.tar.bz2" +SRC_URI=" + AmberTools-${PV}.tar.bz2 + mirror://gentoo/${P}-bugfix_1-3.patch.xz" LICENSE="GPL-2" SLOT="0" @@ -50,7 +52,7 @@ pkg_setup() { src_prepare() { epatch \ - "${FILESDIR}/${P}-bugfix_1-3.patch" \ + "${WORKDIR}/${P}-bugfix_1-3.patch" \ "${FILESDIR}/${P}-gentoo.patch" cd AmberTools/src rm -r arpack blas lapack fftw-2.1.5 c9x-complex cifparse netcdf pnetcdf reduce ucpp-1.3 || die diff --git a/sci-chemistry/ambertools/files/ambertools-1.4-bugfix_1-18.patch b/sci-chemistry/ambertools/files/ambertools-1.4-bugfix_1-18.patch deleted file mode 100644 index 2bc899b3c..000000000 --- a/sci-chemistry/ambertools/files/ambertools-1.4-bugfix_1-18.patch +++ /dev/null @@ -1,9025 +0,0 @@ -diff -urN amber11.orig/AmberTools/src/gleap/leapsrc/plugins.cpp amber11/AmberTools/src/gleap/leapsrc/plugins.cpp ---- amber11.orig/AmberTools/src/gleap/leapsrc/plugins.cpp 2010-03-31 07:05:14.000000000 +0400 -+++ amber11/AmberTools/src/gleap/leapsrc/plugins.cpp 2011-03-08 16:38:44.000000000 +0300 -@@ -37,7 +37,7 @@ - - amber::help_command g_help_command; - amber::add_command g_add_command2; --amber::addions_command g_addions_command2; -+amber::addions_command g_addions_command2( "addions" ); - amber::addmap_command g_addpdbatommap_command2( "addpdbatommap" ); - amber::addmap_command g_addpdbresmap_command2( "addpdbresmap" ); - amber::null_command g_addatomtypes_command2( "addatomtypes" ); -diff -urN amber11.orig/AmberTools/src/gleap/mortsrc/ambfmt/parm.cpp amber11/AmberTools/src/gleap/mortsrc/ambfmt/parm.cpp ---- amber11.orig/AmberTools/src/gleap/mortsrc/ambfmt/parm.cpp 2010-03-31 07:05:14.000000000 +0400 -+++ amber11/AmberTools/src/gleap/mortsrc/ambfmt/parm.cpp 2011-03-08 16:38:44.000000000 +0300 -@@ -110,7 +110,7 @@ - assert( tmp.size() == 3 ); - atmvec as(tmp); - -- angl_t an = angl_t::create( as[0], as[1], as[2] ); -+ angl_t an = angl_t::frcget( as[0], as[1], as[2] ); - set_les( an ); - - atom_t pa1( *pff, as[0].get_i(TYPEID)-1 ); -@@ -277,6 +277,15 @@ - copy_dparm(pdihs[i], SCEE, di); - copy_dparm(pdihs[i], SCNB, di); - set_les( di ); -+ -+ /* -+ std::cout << as[0].get_s(NAME) << "-"; -+ std::cout << as[1].get_s(NAME) << "-"; -+ std::cout << as[2].get_s(NAME) << "-"; -+ std::cout << as[3].get_s(NAME) << " SCEE=" << di.get_d(SCEE) << std::endl; -+ */ -+ -+ - } - } - } -@@ -434,6 +443,8 @@ - parm_gbsa( *ai, gbtype ); - } - -+ //std::cout << " atom parameter assigned." << std::endl; -+ - bonditer_t bi = mol.bond_begin(); - bonditer_t be = mol.bond_end(); - for( ; bi != be; ++bi ) -@@ -441,6 +452,8 @@ - parm_bond( &ff, *bi ); - } - -+ //std::cout << " bond parameter assigned." << std::endl; -+ - bool fw = fixed_water(); - ai = mol.atom_begin(); - ae = mol.atom_end(); -diff -urN amber11.orig/AmberTools/src/gleap/mortsrc/ambfmt/prep.cpp amber11/AmberTools/src/gleap/mortsrc/ambfmt/prep.cpp ---- amber11.orig/AmberTools/src/gleap/mortsrc/ambfmt/prep.cpp 2010-03-31 07:05:14.000000000 +0400 -+++ amber11/AmberTools/src/gleap/mortsrc/ambfmt/prep.cpp 2011-03-08 16:38:44.000000000 +0300 -@@ -39,7 +39,7 @@ - resd_t r = resd_t::create( m ); - r.set_s(NAME, name); - r.set_s(TYPE, name.length()<3?name:name.substr(0,3)); -- -+ //std::cout << "Loading model " << name << std::endl; - // CORR/CHANGE, if CHANGE then sort line according - // the first column, no supported any more. - string use_first_column; -@@ -55,9 +55,13 @@ - is >> cutoff; - is.ignore(MAX_LINE_WIDTH, '\n'); - -+ vector<numvec> crdlst; -+ vector<int> nbrmap; -+ -+ // stacks - vector<atom_t> atoms; -- vector<numvec> crds; - vector<int> nunfills; -+ vector<int> idxstack; - - int head = 0; - int tail = 0; -@@ -71,7 +75,7 @@ - string name, type, chain; - ls >> name >> type >> chain; - -- -+ //std::cout << " processing atom " << name << std::endl; - string curt; - vector<string> terms; - while(ls >> curt) -@@ -96,22 +100,31 @@ - double angl = atof( terms[4].c_str() ); - double tors = atof( terms[5].c_str() ); - pchg = (terms.size()==7) ? atof( terms[6].c_str() ) : 0.0; -- int len = crds.size(); -- if(len==0) -+ if( idxstack.size()==0 ) - { - pos = makevec(0.0, 0.0, 0.0); -- } -- else if(len==1) -- { -- pos = zmatrix(crds[len-1], dist); -- } -- else if(len==2) -- { -- pos = zmatrix(crds[len-1], dist, crds[len-2], angl); -+ crdlst.push_back( pos ); -+ nbrmap.push_back( -1 ); - } - else -- { -- pos = zmatrix(crds[len-1], dist, crds[len-2], angl, crds[len-3], tors); -+ { -+ int nbr1 = idxstack.back(); -+ int nbr2 = nbrmap[nbr1]; -+ int nbr3 = (nbr2==-1) ? -1 : nbrmap[nbr2]; -+ if(nbr2==-1) -+ { -+ pos = zmatrix(crdlst[nbr1], dist); -+ } -+ else if(nbr3==-1) -+ { -+ pos = zmatrix(crdlst[nbr1], dist, crdlst[nbr2], angl); -+ } -+ else -+ { -+ pos = zmatrix(crdlst[nbr1], dist, crdlst[nbr2], angl, crdlst[nbr3], tors); -+ } -+ crdlst.push_back( pos ); -+ nbrmap.push_back( nbr1 ); - } - } - -@@ -127,7 +140,7 @@ - - if(atoms.size() > 0) - { -- assert( nunfills.size()==crds.size() ); -+ assert( nunfills.size()==idxstack.size() ); - bond_t::create(atom, atoms.back() ).set_i(ORDER, 1); - nunfills.back() -= 1; - } -@@ -145,7 +158,7 @@ - - if( nunfills.size()>0 && nunfills.back()==0 ) - { -- crds.pop_back(); -+ idxstack.pop_back(); - atoms.pop_back(); - nunfills.pop_back(); - } -@@ -153,7 +166,7 @@ - int nunfill = get_nunfill(chain); - if(nunfill > 0) - { -- crds.push_back(pos); -+ idxstack.push_back(crdlst.size()-1); - if(type != "DU") - atoms.push_back(atom); - nunfills.push_back(nunfill); -diff -urN amber11.orig/AmberTools/src/gleap/mortsrc/capbox/addions.cpp amber11/AmberTools/src/gleap/mortsrc/capbox/addions.cpp ---- amber11.orig/AmberTools/src/gleap/mortsrc/capbox/addions.cpp 2010-03-31 07:05:14.000000000 +0400 -+++ amber11/AmberTools/src/gleap/mortsrc/capbox/addions.cpp 2011-03-08 16:38:44.000000000 +0300 -@@ -83,11 +83,82 @@ - - void addions( molecule_t& m, const molecule_t& ion, int num_ion, double shlext, double resolution ) - { -+ vector<molecule_t> ionlst(num_ion, ion); - mort_ionee ionee(m); -- addions_core( ionee, ion, num_ion, shlext, resolution ); -+ addions_core( ionee, ionlst, shlext, resolution ); -+ m.cleanup(); - } - -- void addions_core( ionee_i& ionee, const molecule_t& ion, int num_ion, double shlext, double resolution ) -+ void addions( molecule_t& m, const molecule_t& ion1, int numion1, const molecule_t& ion2, int numion2, double shlext, double resolution ) -+ { -+ vector<molecule_t> ionlst; -+ int minnumion = std::min( numion1, numion2 ); -+ for( int i=0; i < minnumion; ++i ) -+ { -+ ionlst.push_back( ion1 ); -+ ionlst.push_back( ion2 ); -+ } -+ -+ int moreadd = std::max( numion1, numion2 ) - minnumion; -+ if( moreadd > 0 ) -+ { -+ const molecule_t* padd = (minnumion==numion1) ? &ion2 : &ion1; -+ for( int i=0; i < moreadd; ++i ) -+ { -+ ionlst.push_back( *padd ); -+ } -+ } -+ -+ mort_ionee ionee(m); -+ addions_core( ionee, ionlst, shlext, resolution ); -+ m.cleanup(); -+ } -+ -+ double get_ionvdwr( const molecule_t& ion ) -+ { -+ double r = get_vdwr( ion.atom_begin()->get_s(TYPE) ); -+ if( ion.natom() > 1 ) -+ { -+ std::cout << "Info: polyatomic ion, radius set to " << r*2.5 << " (2.5 times first atom)" << std::endl; -+ r *= 2.5; -+ } -+ return r; -+ } -+ -+ double get_minvdwr( const vector<molecule_t>& ionlst ) -+ { -+ double minr = 1000.0; -+ int numion = ionlst.size(); -+ for( int i=0; i < numion; ++i ) -+ { -+ double r = get_ionvdwr( ionlst[i] ); -+ minr = std::min( r, minr ); -+ } -+ -+ if( numion > 5 ) -+ { -+ double f = exp( log(numion+1.0)/3.0 ); -+ if( f > 1.0 ) minr *= f; -+ } -+ -+ return minr; -+ } -+ -+ double get_maxvdwr( const vector<molecule_t>& ionlst ) -+ { -+ double maxr = 0.0; -+ int numion = ionlst.size(); -+ for( int i=0; i < numion; ++i ) -+ { -+ double r = get_ionvdwr( ionlst[i] ); -+ maxr = std::max( r, maxr ); -+ } -+ -+ return maxr; -+ } -+ -+ -+ void addions_core( ionee_i& ionee, const vector<molecule_t>& ionlst, double shlext, double resolution ) - { - int natom = ionee.natom(); - int nresd = ionee.nresd(); -@@ -98,8 +169,8 @@ - - if( solute_natom != ionee.natom() ) - { -- std::cout << "Info: solute natom, total natom: " << solute_natom << " " << natom << std::endl; -- std::cout << " solute nresd, total nresd: " << solute_nresd << " " << nresd << std::endl; -+ std::cout << "Info: Number of solute atoms: " << solute_natom << ", total number of atoms: " << natom << std::endl; -+ std::cout << " Number of solute residues: " << solute_nresd << ", total number of residues: " << nresd << std::endl; - } - - vector<double>& pcord = ionee.getcord(); -@@ -111,23 +182,12 @@ - minmaxpos( pcord, pmin, pmax, solute_natom ); - - double max_radius = *std::max_element( pvdwr.begin(), pvdwr.end() ); -- double ion_radius = get_vdwr( ion.atom_begin()->get_s(TYPE) ); -- if( ion.natom() > 1 ) -- { -- std::cout << "Info: polyatomic ion, radius set to " << ion_radius*2.5 << " (2.5 times first atom)" << std::endl; -- ion_radius *= 2.5; -- } -- -- if( std::abs( charge(ion) ) < 0.1 ) -- { -- throw std::runtime_error( "Error: the ion you chose is in fact netural, thus add ion won't work" ); -- } -+ double ion_radius = get_maxvdwr( ionlst ); - - double buffer = ion_radius + max_radius + shlext; - std::cout << "Info: rmax, rion, shell: " << max_radius << " " << ion_radius << " " << shlext << std::endl; -- -- std::cout << "Info: pmin: " << pmin[0] << " " << pmin[1] << " " << pmin[2] << std::endl; -- std::cout << "Info: pmax: " << pmax[0] << " " << pmax[1] << " " << pmax[2] << std::endl; -+ //std::cout << "Info: pmin: " << pmin[0] << " " << pmin[1] << " " << pmin[2] << std::endl; -+ //std::cout << "Info: pmax: " << pmax[0] << " " << pmax[1] << " " << pmax[2] << std::endl; - - - pmin -= makevec(buffer, buffer, buffer); -@@ -151,9 +211,20 @@ - std::pair<double, numvec> max = make_pair(-1e20, numvec(3)); - tree.calculate( capbox::elepot_t(&pcord[0], &pchrg[0], solute_natom), min, max ); - -- for( int i=0; i < num_ion; ++i ) -+ int numion = ionlst.size(); -+ for( int i=0; i < numion; ++i ) - { -- numvec pos = charge(ion)>0 ? min.second : max.second; -+ if( std::abs( charge(ionlst[i]) ) < 0.1 ) -+ { -+ throw std::runtime_error( "Error: the ion you chose is in fact netural, thus add ion won't work" ); -+ } -+ -+ std::cout << "min potential: " << min.first << " x,y,z: " << min.second[0] << " " << min.second[1] << " " << min.second[2] << std::endl; -+ std::cout << "max potential: " << max.first << " x,y,z: " << max.second[0] << " " << max.second[1] << " " << max.second[2] << std::endl; -+ -+ -+ -+ numvec pos = charge(ionlst[i])>0 ? min.second : max.second; - - if( nosolvent ) - { -@@ -161,8 +232,8 @@ - std::cout << "Info: new ion will be placed at: "; - std::cout << pos[0] << " " << pos[1] << " " << pos[2] << " " << std::endl; - -- numvec sft = pos - center(ion); -- ionee.insert_resd( ion, sft, -1 ); -+ numvec sft = pos - center(ionlst[i]); -+ ionee.insert_resd( ionlst[i], sft, -1 ); - } - else - { -@@ -171,19 +242,19 @@ - { - // solvent present, find the nearest solvent residue, use ion to replace it. - // besides the ion must be before solvent, after the solute -- numvec sft = pos - center(ion); -- ionee.insert_resd( ion, sft, solute_nresd+i ); -+ numvec sft = pos - center(ionlst[i]); -+ ionee.insert_resd( ionlst[i], sft, solute_nresd+i ); - ionee.remove_resd( rid ); - } - else - { - // no bump atom: insert residue directly, no need to delete solvent residue -- numvec sft = pos - center(ion); -- ionee.insert_resd( ion, sft, solute_nresd+i ); -+ numvec sft = pos - center(ionlst[i]); -+ ionee.insert_resd( ionlst[i], sft, solute_nresd+i ); - } - } - -- if( i < num_ion-1 ) -+ if( i < numion-1 ) - { - // more ions to add: cut a sphere from the tree, make sure no overlapping - // the radius is 2*ion_radius, to avoid in the future ion -@@ -193,7 +264,7 @@ - - min.first = 1e20; - max.first =-1e20; -- tree.calculate(elepot_t(pos, charge(ion)), min, max); -+ tree.calculate(elepot_t(pos, charge(ionlst[i])), min, max); - } - } - -diff -urN amber11.orig/AmberTools/src/gleap/mortsrc/capbox/addions.hpp amber11/AmberTools/src/gleap/mortsrc/capbox/addions.hpp ---- amber11.orig/AmberTools/src/gleap/mortsrc/capbox/addions.hpp 2010-03-31 07:05:14.000000000 +0400 -+++ amber11/AmberTools/src/gleap/mortsrc/capbox/addions.hpp 2011-03-08 16:38:44.000000000 +0300 -@@ -91,7 +91,7 @@ - - if( i != m_natom ) - { -- throw std::runtime_error( "Error: there are atoms do not belong to any residue" ); -+ throw std::runtime_error( "Error: Atoms are present that are part of no residue!" ); - } - - m_pcord = &m_cord; -@@ -178,9 +178,11 @@ - vector<string> m_type; - }; - -- void addions_core( ionee_i& ionee, const molecule_t& ion, int nion, double shlext, double resolution ); -- -+ void addions_core( ionee_i& ionee, const vector<molecule_t>& ionlst, double shlext, double resolution ); -+ - void addions( molecule_t& m, const molecule_t& ion, int nion, double shlext, double res ); -+ -+ void addions( molecule_t& m, const molecule_t& ion1, int numion1, const molecule_t& ion2, int numion2, double shlext, double res ); - } - - -diff -urN amber11.orig/AmberTools/src/gleap/mortsrc/capbox/solvate.cpp amber11/AmberTools/src/gleap/mortsrc/capbox/solvate.cpp ---- amber11.orig/AmberTools/src/gleap/mortsrc/capbox/solvate.cpp 2010-03-31 07:05:14.000000000 +0400 -+++ amber11/AmberTools/src/gleap/mortsrc/capbox/solvate.cpp 2011-03-08 16:38:44.000000000 +0300 -@@ -126,13 +126,23 @@ - return cap.extent(); - } - -- numvec solvatebox_core( solute_i& solute, const molecule_t& m, double buffer, double closeness ) -+ numvec solvatebox_core( solute_i& solute, const molecule_t& m, double buffer, double closeness, bool iso ) - { - funstack_t::push( "solvatebox" ); - - numvec extent = regionlize( solute, true ); - extent += scalar_numvec(extent.size(), 2*buffer); - -+ if( iso ) -+ { -+ double extmax = std::max( extent[0], std::max(extent[1], extent[2]) ); -+ extent[0] = extmax; -+ extent[1] = extmax; -+ extent[2] = extmax; -+ } -+ -+ -+ - box_region box( extent ); - out_solute inn( solute, closeness ); - solvate( solute, m, and_region(box, inn) ); -@@ -180,10 +190,10 @@ - mol.set_v( CAP, makevec(capcnt[0],capcnt[1],capcnt[2],caprad) ); - } - -- void solvatebox(molecule_t& mol, const molecule_t& svt, double buffer, double closeness) -+ void solvatebox(molecule_t& mol, const molecule_t& svt, double buffer, double closeness, bool iso) - { - mort_solute solute(mol); -- numvec extent = solvatebox_core( solute, svt, buffer, closeness ); -+ numvec extent = solvatebox_core( solute, svt, buffer, closeness, iso ); - - mol.set_i( SOLUTE, BOX ); - mol.set_v( BOX, makevec(extent[0], extent[1], extent[2], 90.0) ); -diff -urN amber11.orig/AmberTools/src/gleap/mortsrc/capbox/solvate.hpp amber11/AmberTools/src/gleap/mortsrc/capbox/solvate.hpp ---- amber11.orig/AmberTools/src/gleap/mortsrc/capbox/solvate.hpp 2010-03-31 07:05:14.000000000 +0400 -+++ amber11/AmberTools/src/gleap/mortsrc/capbox/solvate.hpp 2011-03-08 16:38:44.000000000 +0300 -@@ -10,7 +10,7 @@ - - numvec solvatecap_core( solute_i& solute, const molecule_t& m, const numvec& capcnt, double caprad, double closeness ); - -- numvec solvatebox_core( solute_i& solute, const molecule_t& m, double buffer, double closeness ); -+ numvec solvatebox_core( solute_i& solute, const molecule_t& m, double buffer, double closeness, bool iso ); - - double solvateoct_core( solute_i& solute, const molecule_t& m, double buffer, double closeness ); - -@@ -18,7 +18,7 @@ - - void solvatecap( molecule_t& mol, const molecule_t& svt, const numvec& capcnt, double caprad, double closeness ); - -- void solvatebox( molecule_t& mol, const molecule_t& svt, double buffer, double closeness ); -+ void solvatebox( molecule_t& mol, const molecule_t& svt, double buffer, double closeness, bool iso ); - - void solvateoct( molecule_t& mol, const molecule_t& svt, double buffer, double closeness ); - -diff -urN amber11.orig/AmberTools/src/gleap/mortsrc/pdbent/atom.cpp amber11/AmberTools/src/gleap/mortsrc/pdbent/atom.cpp ---- amber11.orig/AmberTools/src/gleap/mortsrc/pdbent/atom.cpp 2010-04-06 04:38:00.000000000 +0400 -+++ amber11/AmberTools/src/gleap/mortsrc/pdbent/atom.cpp 2011-03-08 16:38:44.000000000 +0300 -@@ -57,9 +57,9 @@ - { - funstack_t::push( "pdbent::write_atom" ); - -- os << "ATOM "; -+ os << "ATOM "; - -- write_iparm( os, atom, ID, "%5d" ); -+ write_iparm( os, atom, ID, "%6d" ); - - write_atom_name( os, atom ); - -@@ -102,7 +102,15 @@ - os << ' '; - } - -- os << format( "%4d " ) % (atom.resd().relid()+1); -+ int rid = atom.resd().relid() + 1; -+ if( rid < 10000 ) -+ { -+ os << format( "%4d " ) % rid; -+ } -+ else -+ { -+ os << format( "%5d " ) % rid; -+ } - } - - } // namespace pdbent -diff -urN amber11.orig/AmberTools/src/gleap/plugins/addions.cpp amber11/AmberTools/src/gleap/plugins/addions.cpp ---- amber11.orig/AmberTools/src/gleap/plugins/addions.cpp 2010-03-31 07:05:14.000000000 +0400 -+++ amber11/AmberTools/src/gleap/plugins/addions.cpp 2011-03-08 16:38:44.000000000 +0300 -@@ -4,15 +4,33 @@ - - namespace amber - { -+ int get_numion( double dstchg, double ionchg ) -+ { -+ if( dstchg * ionchg >= 0 ) -+ { -+ throw std::runtime_error( "Error: molecule and ion are both positive (or negative), can not make neutral" ); -+ } -+ -+ return int( -dstchg/ionchg+0.5); -+ } -+ -+ - -- addions_command::addions_command( ) -- :command_i( "addions" ) -+ addions_command::addions_command( const char* cmd ) -+ :command_i( cmd ) - { - } - -- addions_command::addions_command( const string& dest, const string& ion, int number ) -- :m_dest( dest ), m_ion( ion ), m_number( number ) -+ addions_command::addions_command( const string& dest, const string& ion1, int numion1 ) -+ :m_dest( dest ), m_ion1( ion1 ), m_numion1( numion1 ) - { -+ m_runtyp = 1; -+ } -+ -+ addions_command::addions_command( const string& dest, const string& ion1, int numion1, const string& ion2, int numion2 ) -+ :m_dest( dest ), m_ion1( ion1 ), m_numion1( numion1 ), m_ion2(ion2), m_numion2(numion2) -+ { -+ m_runtyp = 2; - } - - addions_command::~addions_command() -@@ -21,28 +39,42 @@ - - bool addions_command::exec() - { -+ double shell_extent = 4.0; -+ double resolution = 1.0; - molecule_ptr pdst = content().get_mol( m_dest ); -- molecule_ptr pion = content().get_mol( m_ion ); - -- if( m_number==0 ) -+ if( m_runtyp==1 ) - { -- double dstchg = charge( *pdst ); -- double ionchg = charge( *pion ); -- if( dstchg * ionchg >= 0 ) -+ molecule_ptr pion = content().get_mol( m_ion1 ); -+ if( m_numion1==0 ) - { -- throw std::runtime_error( "Error: molecule and ion are both positive (or negative), can not make neutral" ); -+ m_numion1 = get_numion( charge(*pdst), charge(*pion) ); - } -- -- m_number = int( -dstchg/ionchg+0.5); -+ -+ assert( pdst != NULL && pion != NULL ); -+ addions( *pdst, *pion, m_numion1, shell_extent, resolution); - } -- -- -- assert( pdst != NULL && pion != NULL ); -+ else if( m_runtyp==2 ) -+ { -+ molecule_ptr pion1 = content().get_mol( m_ion1 ); -+ molecule_ptr pion2 = content().get_mol( m_ion2 ); -+ if( m_numion1==0 && m_numion2==0 ) -+ { -+ throw std::runtime_error( "Error: while addions2, numion1 and numion2 cannot both be zero" ); -+ } - -- double shell_extent = 4.0; -- double resolution = 1.0; -+ if( m_numion1==0 ) -+ { -+ m_numion1 = get_numion( charge(*pdst)+m_numion2*charge(*pion2), charge(*pion1) ); -+ } -+ else if( m_numion2==0 ) -+ { -+ m_numion2 = get_numion( charge(*pdst)+m_numion1*charge(*pion1), charge(*pion2) ); -+ } -+ -+ addions( *pdst, *pion1, m_numion1, *pion2, m_numion2, shell_extent, resolution ); -+ } - -- addions( *pdst, *pion, m_number, shell_extent, resolution); - return true; - } - -@@ -53,22 +85,29 @@ - - const char* addions_command::info( ) const - { -- return " usage: addion mol ion1 numIon1 "; -+ return " usage: addions mol ion1 numIon1 "; - } - - shared_ptr< command_i > addions_command::clone( const vector< string >& args ) const - { -- if( args.size()!=3 && args.size()!=4 ) -+ if( args.size()==3 || args.size()==4 ) - { -- throw std::runtime_error( "Error: wrong number of arguments " ); -+ int numb = args.size()==3 ? 0 : atoi(args[3].c_str()); -+ return shared_ptr< command_i >( new addions_command(args[1], args[2], numb) ); - } - -- int numb = args.size()==3 ? 0 : atoi(args[3].c_str()); -- -- return shared_ptr< command_i >( new addions_command(args[1], args[2], numb) ); -+ if( args.size()==6 ) -+ { -+ int nion1 = atoi( args[3].c_str() ); -+ int nion2 = atoi( args[5].c_str() ); -+ return shared_ptr< command_i >( new addions_command(args[1], args[2], nion1, args[4], nion2 ) ); -+ } -+ -+ throw std::runtime_error( "Error: Wrong number of arguments!" ); - } - -- addions_command g_addions_command; -+ addions_command g_addions_command( "addions" ); -+ addions_command g_addions2_command( "addions2" ); - - } // namespace amber - -diff -urN amber11.orig/AmberTools/src/gleap/plugins/addions.hpp amber11/AmberTools/src/gleap/plugins/addions.hpp ---- amber11.orig/AmberTools/src/gleap/plugins/addions.hpp 2010-03-31 07:05:14.000000000 +0400 -+++ amber11/AmberTools/src/gleap/plugins/addions.hpp 2011-03-08 16:38:44.000000000 +0300 -@@ -11,10 +11,12 @@ - { - public: - -- addions_command(); -+ addions_command( const char* cmdnam ); - - addions_command( const string& dest, const string& ion, int number ); -- -+ -+ addions_command( const string& dest, const string& ion1, int numion1, const string& ion2, int numion2 ); -+ - virtual ~addions_command(); - - virtual bool exec(); -@@ -28,10 +30,12 @@ - private: - - string m_dest; -+ string m_ion1; -+ int m_numion1; -+ string m_ion2; -+ int m_numion2; - -- string m_ion; -- -- int m_number; -+ int m_runtyp; - }; - - } // namespace amber -diff -urN amber11.orig/AmberTools/src/gleap/plugins/check.cpp amber11/AmberTools/src/gleap/plugins/check.cpp ---- amber11.orig/AmberTools/src/gleap/plugins/check.cpp 1970-01-01 03:00:00.000000000 +0300 -+++ amber11/AmberTools/src/gleap/plugins/check.cpp 2011-03-08 16:38:44.000000000 +0300 -@@ -0,0 +1,415 @@ -+#include <object.hpp> -+#include "check.hpp" -+ -+namespace amber -+{ -+ void check_charge( const molecule_t& m ) -+ { -+ std::cout << "Checking charge: "; -+ double chg = charge( m ); -+ double dif = std::abs( chg - int(chg) ); -+ if( dif > 0.01 && dif < 0.99 ) -+ { -+ std::cout << std::endl; -+ std::cout << "Warning: non-integral total charge: " << chg << std::endl; -+ } -+ else -+ { -+ std::cout << chg << ", OK!" << std::endl; -+ } -+ } -+ -+ void check_bond_length( const molecule_t& m, double lowcutoff, double hghcutoff ) -+ { -+ std::cout << "Checking bond lengths: "; -+ bool ok = true; -+ bonditer_t bi = m.bond_begin(); -+ for( ; bi != m.bond_end(); ++bi ) -+ { -+ atom_t a1 = atom_1st( *bi ); -+ atom_t a2 = atom_2nd( *bi ); -+ double ln = dist( a1, a2 ); -+ if( ln < lowcutoff || ln > hghcutoff ) -+ { -+ resd_t r1 = a1.resd(); -+ resd_t r2 = a2.resd(); -+ ok = false; -+ std::cout << std::endl; -+ std::cout << format("Warning: There is a bond of %4.2f angstroms between: ") % ln; -+ std::cout << r1.get_s(NAME) << "." << a1.get_s(NAME) << " and "; -+ std::cout << r2.get_s(NAME) << "." << a2.get_s(NAME); -+ } -+ } -+ -+ if( ok ) -+ { -+ std::cout << "OK!" << std::endl; -+ } -+ else -+ { -+ std::cout << std::endl; -+ } -+ } -+ -+ void check_atom_distance( const molecule_t& m, double cutoff ) -+ { -+ std::cout << "Checking nonbonded atom contacts: "; -+ bool ok = true; -+ atomiter_t ai = m.atom_begin(); -+ for( ; ai != m.atom_end(); ++ai ) -+ { -+ atomiter_t aj = ai + 1; -+ for( ; aj != m.atom_end(); ++aj ) -+ { -+ if( bond_t::has(*ai, *aj) ) -+ { -+ continue; -+ } -+ -+ double d = dist( *ai, *aj ); -+ if( d < cutoff ) -+ { -+ ok = false; -+ resd_t r1 = ai->resd(); -+ resd_t r2 = aj->resd(); -+ std::cout << std::endl; -+ std::cout << format( "Warning: Close contact of %4.2f Angstroms between atoms ") % d; -+ std::cout << r1.get_s(NAME) << "." << ai->name() << " and "; -+ std::cout << r2.get_s(NAME) << "." << aj->name(); -+ } -+ } -+ } -+ -+ if( ok ) -+ { -+ std::cout << "OK!" << std::endl; -+ } -+ else -+ { -+ std::cout << std::endl; -+ } -+ } -+ -+ void check_atom_params( const molecule_t& m, const molecule_t& ff ) -+ { -+ std::cout << "Checking atom parameters: "; -+ bool ok = true; -+ atomiter_t ai = m.atom_begin(); -+ for( ; ai != m.atom_end(); ++ai ) -+ { -+ string t = ai->type(); -+ if( !atom_t::has(ff, t) ) -+ { -+ ok = false; -+ std::cout << "Warning: could not find parameters for atom: " << t << std::endl; -+ } -+ } -+ -+ if( ok ) -+ { -+ std::cout << "OK!" << std::endl; -+ } -+ else -+ { -+ std::cout << std::endl; -+ } -+ } -+ -+ void check_bond_params( const molecule_t& m, const molecule_t& ff ) -+ { -+ std::cout << "Checking bond parameters: "; -+ bool ok = true; -+ bonditer_t bi = m.bond_begin(); -+ for( ; bi != m.bond_end(); ++bi ) -+ { -+ atom_t a1 = atom_1st( *bi ); -+ atom_t a2 = atom_2nd( *bi ); -+ string t1 = a1.type(); -+ string t2 = a2.type(); -+ -+ atom_t pa1(ff, -1), pa2(ff, -1); -+ -+ if( atom_t::get(ff, t1, pa1) && atom_t::get(ff, t2, pa2) ) -+ { -+ if( bond_t::has(pa1, pa2) ) -+ { -+ continue; -+ } -+ } -+ -+ ok = false; -+ std::cout << std::endl; -+ std::cout << "Warning: could not find parameters for bond " << t1 << "-" << t2 << std::endl; -+ } -+ -+ if( ok ) -+ { -+ std::cout << "OK!" << std::endl; -+ } -+ else -+ { -+ std::cout << std::endl; -+ } -+ } -+ -+ void check_angl_params( const molecule_t& m, const molecule_t& ff ) -+ { -+ std::cout << "Checking angle parameters: "; -+ bool ok = true; -+ atomiter_t ai = m.atom_begin(); -+ for( ; ai != m.atom_end(); ++ai ) -+ { -+ atomiter_t aj = ai->atom_begin(); -+ for( ; aj != ai->atom_end(); ++aj ) -+ { -+ atomiter_t ak = aj + 1; -+ for( ; ak != ai->atom_end(); ++ak ) -+ { -+ string t1 = ai->type(); -+ string t2 = aj->type(); -+ string t3 = ak->type(); -+ atom_t pa1(ff, -1); -+ atom_t pa2(ff, -1); -+ atom_t pa3(ff, -1); -+ if( atom_t::get(ff, t1, pa1) && atom_t::get(ff, t2, pa2) && atom_t::get(ff, t3, pa3) ) -+ { -+ if( angl_t::has(pa2, pa1, pa3) ) -+ { -+ continue; -+ } -+ } -+ -+ ok = false; -+ std::cout << std::endl; -+ std::cout << "Warning: could not find parameters for angle " << t2 << "-" << t1 << "-" << t3; -+ } -+ } -+ } -+ -+ if( ok ) -+ { -+ std::cout << "OK!" << std::endl; -+ } -+ else -+ { -+ std::cout << std::endl; -+ } -+ } -+ -+ check_command::check_command() -+ : command_i( "check" ) -+ { -+ } -+ -+ check_command::check_command( bool checkmolcharge, bool checkatomparams, -+ bool checkbondparams, bool checkangleparams, -+ bool checkbondlength, bool checkatomclashes, -+ const string& molnam ) -+ : m_checkmolcharge(checkmolcharge), m_checkatomparams(checkatomparams), -+ m_checkbondparams(checkbondparams), m_checkangleparams(checkangleparams), -+ m_checkbondlength(checkbondlength), m_checkatomclashes(checkatomclashes), -+ m_molnam( molnam ) -+ { -+ } -+ -+ check_command::~check_command( ) -+ { -+ } -+ -+ bool check_command::exec( ) -+ { -+ int ndot = std::count( m_molnam.begin(), m_molnam.end(), '.' ); -+ if( ndot != 0 ) -+ { -+ throw std::runtime_error( "Error: Arguments, other than flags, must be units!" ); -+ } -+ -+ std::cout << "Checking unit \"" << m_molnam << "\"" << std::endl; -+ -+ molecule_ptr pmol = content().get_mol( m_molnam ); -+ molecule_ptr parm = content().get_mol( "_amberffp" ); -+ -+ if (m_checkmolcharge == true) -+ { -+ check_charge( *pmol ); -+ } -+ -+ if (m_checkatomparams == true) -+ { -+ check_atom_params( *pmol, *parm ); -+ } -+ -+ if (m_checkbondparams == true) -+ { -+ check_bond_params( *pmol, *parm ); -+ } -+ -+ if (m_checkangleparams == true) -+ { -+ check_angl_params( *pmol, *parm ); -+ } -+ -+ if (m_checkbondlength == true) -+ { -+ check_bond_length( *pmol, 0.5, 3.0 ); -+ } -+ -+ if (m_checkatomclashes == true) -+ { -+ check_atom_distance( *pmol, 1.5 ); -+ } -+ -+ return true; -+ } -+ -+ void check_command::undo() -+ { -+ } -+ -+ const char* check_command::info() const -+ { -+ return "check unit"; -+ } -+ -+ command_ptr check_command::clone( const vector< string >& args ) const -+ { -+ bool checkall = false; -+ bool checkmolcharge = false; -+ bool checkatomparams = false; -+ bool checkbondparams = false; -+ bool checkangleparams = false; -+ bool checkbondlength = false; -+ bool checkatomclashes = false; -+ bool nocheckatomclashes = false; -+ -+ std::string unit = ""; -+ -+ int i; -+ -+ //if( args.size()!=2 ) -+ //{ -+ // throw std::runtime_error( "Error: Wrong number of arguments!" ); -+ //} -+ -+ for (i = 1; i < args.size(); i++) -+ { -+ if (args[i] == "-charge") -+ { -+ checkmolcharge = true; -+ std::cout << "charge check requested" << std::endl; -+ } -+ else if (args[i] == "-atomparams") -+ { -+ checkatomparams = true; -+ std::cout << "atom parameter check requested" << std::endl; -+ } -+ else if (args[i] == "-bondparams") -+ { -+ checkbondparams = true; -+ std::cout << "bond parameter check requested" << std::endl; -+ } -+ else if (args[i] == "-angleparams") -+ { -+ checkangleparams = true; -+ std::cout << "angle parameter check requested" << std::endl; -+ } -+ else if (args[i] == "-bondlength") -+ { -+ checkbondlength = true; -+ std::cout << "bond length check requested" << std::endl; -+ } -+ else if (args[i] == "-clashes") -+ { -+ if (nocheckatomclashes == true) -+ { -+ throw std::runtime_error("Error: can't use -clashes and -noclashes together!"); -+ } -+ -+ checkatomclashes = true; -+ std::cout << "atom proximity (clash) check requested" << std::endl; -+ } -+ else if (args[i] == "-noclashes") -+ { -+ if (checkatomclashes == true) -+ { -+ throw std::runtime_error("Error: can't use -clashes and -noclashes together!"); -+ } -+ if (checkall == true) -+ { -+ throw std::runtime_error("Error: can't use -all and -noclashes together!"); -+ } -+ -+ nocheckatomclashes = true; -+ // Set everything else, too -+ checkmolcharge = true; -+ checkatomparams = true; -+ checkbondparams = true; -+ checkangleparams = true; -+ checkbondlength = true; -+ checkatomclashes = false; -+ checkall = false; -+ std::cout << "all except atom proximity (clash) check requested" << std::endl; -+ } -+ else if (args[i] == "-all") -+ { -+ if (nocheckatomclashes == true) -+ { -+ throw std::runtime_error("Error: can't use -all and -noclashes together!"); -+ } -+ -+ checkall = true; -+ } -+ else if (args[i].substr(0,1) == "-") -+ { -+ throw std::runtime_error("Error: in check, unrecognised flag: " + args[i] + "\n" -+ + " Allowed flags:" + "\n" -+ + " -charge" + "\n" -+ + " -atomparams" + "\n" -+ + " -bondparams" + "\n" -+ + " -angleparams" + "\n" -+ + " -bondlength" + "\n" -+ + " -clashes" + "\n" -+ + " -noclashes" + "\n" -+ + " -all" ); -+ } -+ else if (unit == "") -+ { -+ unit = args[i]; -+ } -+ else -+ { -+ throw std::runtime_error("Error: Too many arguments!"); -+ } -+ } -+ -+ if (unit == "") -+ { -+ throw std::runtime_error("Error: A unit must be supplied as an argument!"); -+ } -+ -+ // If everything is false except possibly checkall (whose truth -+ // or falsity is irrelevant), we want to check everything -+ if (checkmolcharge == false && checkatomparams == false -+ && checkbondparams == false && checkangleparams == false -+ && checkbondlength == false && checkatomclashes == false -+ && nocheckatomclashes == false) -+ { -+ checkmolcharge = true; -+ checkatomparams = true; -+ checkbondparams = true; -+ checkangleparams = true; -+ checkbondlength = true; -+ checkatomclashes = true; -+ std::cout << "all checks requested" << std::endl; -+ } -+ -+ return shared_ptr< command_i >( new check_command(checkmolcharge, checkatomparams, -+ checkbondparams, checkangleparams, -+ checkbondlength, checkatomclashes, -+ unit ) ); -+ } -+ -+} // namespace amber -+ -+amber::check_command g_check_command; -+ -diff -urN amber11.orig/AmberTools/src/gleap/plugins/check.hpp amber11/AmberTools/src/gleap/plugins/check.hpp ---- amber11.orig/AmberTools/src/gleap/plugins/check.hpp 1970-01-01 03:00:00.000000000 +0300 -+++ amber11/AmberTools/src/gleap/plugins/check.hpp 2011-03-08 16:38:44.000000000 +0300 -@@ -0,0 +1,49 @@ -+#ifndef GLEAP_PLUGINS_CHECK_HPP -+#define GLEAP_PLUGINS_CHECK_HPP -+ -+#include <guilib.hpp> -+ -+namespace amber -+{ -+ -+ using namespace mort; -+ -+ class check_command : public command_i -+ { -+ public: -+ -+ check_command(); -+ -+ check_command( bool checkmolcharge, bool checkatomparams, -+ bool checkbondparams, bool checkangleparams, -+ bool checkbondlength, bool checkatomclashes, -+ const string& molnam ); -+ -+ virtual ~check_command(); -+ -+ virtual bool exec(); -+ -+ virtual void undo(); -+ -+ virtual const char* info( ) const; -+ -+ virtual shared_ptr< command_i > clone( const vector<string>& args ) const; -+ -+ private: -+ -+ bool m_checkmolcharge; -+ bool m_checkatomparams; -+ bool m_checkbondparams; -+ bool m_checkangleparams; -+ bool m_checkbondlength; -+ bool m_checkatomclashes; -+ string m_molnam; -+ -+ }; -+ -+} // namespace amber -+ -+ -+ -+#endif -+ -diff -urN amber11.orig/AmberTools/src/gleap/plugins/loadpdb.cpp amber11/AmberTools/src/gleap/plugins/loadpdb.cpp ---- amber11.orig/AmberTools/src/gleap/plugins/loadpdb.cpp 2010-03-31 07:05:14.000000000 +0400 -+++ amber11/AmberTools/src/gleap/plugins/loadpdb.cpp 2011-03-08 16:38:44.000000000 +0300 -@@ -31,28 +31,29 @@ - throw std::runtime_error( "Error: file " + m_file + " doesn't exist" ); - } - -- - molecule_ptr pmol( new molecule_t() ); - - read_pdb( is, *pmol ); - - string disulf = "auto"; - mortenv().get_s("disulfide", disulf); -- console_t* pcon = (disulf=="auto") ? NULL : console().get(); -+ if( disulf!="off" ) -+ { -+ console_t* pcon = (disulf=="auto") ? NULL : console().get(); - -- double disulfcut = 2.1; -- string tmp; -- if( mortenv().get_s("disulfcut", tmp) ) -- { -- disulfcut = atof( tmp.c_str() ); -- } -+ double disulfcut = 2.1; -+ string tmp; -+ if( mortenv().get_s("disulfcut", tmp) ) -+ { -+ disulfcut = atof( tmp.c_str() ); -+ } - -- disulfide( *pmol, disulfcut, pcon ); -+ disulfide( *pmol, disulfcut, pcon ); -+ } - - namemap_ptr nmap = content().get_nmap( "_namemap" ); - if( nmap != NULL ) - { -- - if( m_action=="loadpdb" ) - { - mdlize_mdb( *pmol, content() ); -diff -urN amber11.orig/AmberTools/src/gleap/plugins/merge.cpp amber11/AmberTools/src/gleap/plugins/merge.cpp ---- amber11.orig/AmberTools/src/gleap/plugins/merge.cpp 2010-03-31 07:05:14.000000000 +0400 -+++ amber11/AmberTools/src/gleap/plugins/merge.cpp 2011-03-08 16:38:44.000000000 +0300 -@@ -241,6 +241,12 @@ - - - morf_t resd = merge(*pmol, *pseg, -1); -+ if( i==1 ) -+ { -+ // for the first residue. the head atom need to be unset for counting nunit in topology. -+ resd.set_i(HEAD, 0); -+ } -+ - resd.get_i(HEAD, head); - - if( m_action == "sequence" && i > 1) -diff -urN amber11.orig/AmberTools/src/gleap/plugins/set.cpp amber11/AmberTools/src/gleap/plugins/set.cpp ---- amber11.orig/AmberTools/src/gleap/plugins/set.cpp 2010-03-31 07:05:14.000000000 +0400 -+++ amber11/AmberTools/src/gleap/plugins/set.cpp 2011-03-08 16:38:44.000000000 +0300 -@@ -4,6 +4,29 @@ - - namespace amber - { -+ vector<string> split( const string& a ) -+ { -+ size_t bgn = a.find( '{' ); -+ if( bgn==string::npos ) bgn = 0; -+ else bgn = bgn + 1; -+ -+ size_t end = a.rfind( '}' ); -+ if( end==string::npos ) end = a.length(); -+ -+ vector<string> result; -+ std::istringstream is( a.substr(bgn, end - bgn) ); -+ string s; -+ while( is >> s ) -+ { -+ result.push_back( s ); -+ } -+ -+ return result; -+ } -+ -+ -+ -+ - numvec atov(const string& a, int len) - { - std::istringstream is(a); -@@ -98,9 +121,23 @@ - } - else if( parm == "box" ) - { -+ numvec box(4); - obj.set_i(SOLUTE, BOX); -- obj.set_v(BOX, atov4d(value) ); -- return true; -+ vector<string> itmlst = split( value ); -+ if( itmlst.size()==3 || itmlst.size()==4 ) -+ { -+ box[0] = atof( itmlst[0].c_str() ); -+ box[1] = atof( itmlst[1].c_str() ); -+ box[2] = atof( itmlst[2].c_str() ); -+ box[3] = (itmlst.size()==4) ? atof(itmlst[3].c_str()) : 90.0; -+ obj.set_v(BOX, box); -+ return true; -+ } -+ else -+ { -+ std::cout << "Error: cannot understand box value: " << value << std::endl; -+ return false; -+ } - } - else if( parm == "cap" ) - { -diff -urN amber11.orig/AmberTools/src/gleap/plugins/solvate.cpp amber11/AmberTools/src/gleap/plugins/solvate.cpp ---- amber11.orig/AmberTools/src/gleap/plugins/solvate.cpp 2010-03-31 07:05:14.000000000 +0400 -+++ amber11/AmberTools/src/gleap/plugins/solvate.cpp 2011-03-08 16:38:44.000000000 +0300 -@@ -11,9 +11,9 @@ - } - - solvate_command::solvate_command( const string& action, const string& solute, const string& solvent, -- const string& center, const string& extent, double closeness ) -+ const string& center, const string& extent, double closeness, bool iso ) - : m_action( action ), m_solute( solute ), m_center( center ), m_solvent( solvent ), -- m_extent( extent ), m_closeness( closeness ) -+ m_extent( extent ), m_closeness( closeness ), m_iso(iso) - { - } - -@@ -33,7 +33,7 @@ - { - double length = atof( m_extent.c_str() ); - -- solvatebox( *psolute, *psolvent, length, m_closeness ); -+ solvatebox( *psolute, *psolvent, length, m_closeness, m_iso ); - - return true; - } -@@ -103,7 +103,48 @@ - - shared_ptr< command_i > solvate_command::clone( const vector< string >& args ) const - { -- if( args[0]=="solvatebox" || args[0]=="solvateshell" || args[0]=="solvateoct" ) -+ if( args[0]=="solvatebox" ) -+ { -+ bool iso = false; -+ double closeness = 1.0; -+ if( args.size()==4 ) -+ { -+ iso = false; -+ closeness = 1.0; -+ } -+ else if( args.size()==5 ) -+ { -+ if( args[4]=="iso" ) -+ { -+ iso = true; -+ closeness = 1.0; -+ } -+ else -+ { -+ iso = false; -+ closeness = atof( args[4].c_str() ); -+ } -+ } -+ else if( args.size()==6 ) -+ { -+ if( args[5] != "iso" ) -+ { -+ throw std::runtime_error( "Error: cannot understand argument: " + args[5] ); -+ } -+ -+ iso = true; -+ closeness = atof( args[4].c_str() ); -+ } -+ else -+ { -+ throw std::runtime_error( "Error: wrong number of argument." ); -+ } -+ -+ return shared_ptr<command_i>( new solvate_command(args[0], args[1], args[2], "", args[3], closeness, iso) ); -+ } -+ -+ -+ if( args[0]=="solvateshell" || args[0]=="solvateoct" ) - { - if( args.size()!=4 && args.size()!=5 ) - { -@@ -111,7 +152,7 @@ - } - - double closeness = (args.size()==4) ? 1.0 : atof( args[4].c_str() ); -- return shared_ptr< command_i >( new solvate_command( args[0], args[1], args[2], "", args[3], closeness ) ); -+ return shared_ptr<command_i>( new solvate_command(args[0], args[1], args[2], "", args[3], closeness, false) ); - } - - assert( args[0] == "solvatecap" ); -@@ -122,7 +163,7 @@ - } - - double closeness = (args.size()==5) ? 1.0 : atof( args[5].c_str() ); -- return shared_ptr< command_i >( new solvate_command( args[0], args[1], args[2], args[3], args[4], closeness ) ); -+ return shared_ptr< command_i >( new solvate_command( args[0], args[1], args[2], args[3], args[4], closeness,false) ); - } - - } // namespace amber -diff -urN amber11.orig/AmberTools/src/gleap/plugins/solvate.hpp amber11/AmberTools/src/gleap/plugins/solvate.hpp ---- amber11.orig/AmberTools/src/gleap/plugins/solvate.hpp 2010-03-31 07:05:14.000000000 +0400 -+++ amber11/AmberTools/src/gleap/plugins/solvate.hpp 2011-03-08 16:38:44.000000000 +0300 -@@ -13,7 +13,7 @@ - - solvate_command( const string& type ); - -- solvate_command( const string& action, const string& solute, const string& solvent, const string& center, const string& extent, double closeness ); -+ solvate_command( const string& action, const string& solute, const string& solvent, const string& center, const string& extent, double closeness, bool iso ); - - virtual ~solvate_command( ); - -@@ -38,6 +38,8 @@ - string m_extent; - - double m_closeness; -+ -+ bool m_iso; - }; - - } // namespace amber -diff -urN amber11.orig/AmberTools/src/leap/src/leap/basics.c amber11/AmberTools/src/leap/src/leap/basics.c ---- amber11.orig/AmberTools/src/leap/src/leap/basics.c 2010-03-31 07:05:15.000000000 +0400 -+++ amber11/AmberTools/src/leap/src/leap/basics.c 2011-03-08 16:38:44.000000000 +0300 -@@ -462,7 +462,7 @@ - SmPMallocList = mPMem; - - sTrailer = ((char*)mPMem)+sizeof(MEMHEADER)+lSize; -- memcpy( sTrailer, mPMem->sCheck, TRAILERLEN ); -+ memmove( sTrailer, mPMem->sCheck, TRAILERLEN ); - - return ((char*)mPMem) + sizeof(MEMHEADER); - } -@@ -528,7 +528,7 @@ - if ( mPMem == NULL ) { - DFATAL(( "Could not malloc in REALLOC: %s\n", strerror(errno) )); - } -- memcpy( mPMem, mPPrevious, -+ memmove( mPMem, mPPrevious, - MIN( lSize, mPPrevious->lSize) + sizeof(MEMHEADER)+TRAILERLEN ); - - strcpy( mPPrevious->sCheck, FREESTR ); -@@ -540,7 +540,8 @@ - /* Fill the trailer */ - - sTrailer = ((char*)mPMem)+sizeof(MEMHEADER)+lSize; -- strcpy( sTrailer, mPMem->sCheck ); -+ memmove( sTrailer, mPMem->sCheck, strlen(mPMem->sCheck) ); -+ sTrailer[strlen(mPMem->sCheck)]='\0'; - - return ((char*)mPMem) + sizeof(MEMHEADER); - } -diff -urN amber11.orig/AmberTools/src/leap/src/leap/database.c amber11/AmberTools/src/leap/src/leap/database.c ---- amber11.orig/AmberTools/src/leap/src/leap/database.c 2010-03-31 07:05:15.000000000 +0400 -+++ amber11/AmberTools/src/leap/src/leap/database.c 2011-03-08 16:38:44.000000000 +0300 -@@ -594,6 +594,7 @@ - sStripString( char *sLine, char *sStr ) - { - char c, *sCur, *sStart; -+int mylength; - - sCur = sLine; - sStart = sStr; -@@ -615,8 +616,10 @@ - (*sStr++) = c; - } while ( (*sCur) != '\0' ); - *sStr = '\0'; -- strcpy( sLine, sCur ); -- -+ mylength=strlen(sCur); -+ //strcpy( sLine, sCur ); -+ memmove(sLine, sCur, mylength); -+ sLine[mylength]='\0'; - return(sStart); - } - -diff -urN amber11.orig/AmberTools/src/leap/src/leap/sort.c amber11/AmberTools/src/leap/src/leap/sort.c ---- amber11.orig/AmberTools/src/leap/src/leap/sort.c 2010-03-31 07:05:15.000000000 +0400 -+++ amber11/AmberTools/src/leap/src/leap/sort.c 2011-03-08 16:38:44.000000000 +0300 -@@ -217,9 +217,9 @@ - /* If false then swap it with the bottom of the false */ - /* group, and leave the current pointer where it is */ - -- memcpy( PSwapBuffer, PCur, iElementSize ); -- memcpy( PCur, PTop, iElementSize ); -- memcpy( PTop, PSwapBuffer, iElementSize ); -+ memmove( PSwapBuffer, PCur, iElementSize ); -+ memmove( PCur, PTop, iElementSize ); -+ memmove( PTop, PSwapBuffer, iElementSize ); - - PTop = (char*)PTop - iElementSize; - iBottomFalse--; -diff -urN amber11.orig/AmberTools/src/leap/src/leap/stringExtra.c amber11/AmberTools/src/leap/src/leap/stringExtra.c ---- amber11.orig/AmberTools/src/leap/src/leap/stringExtra.c 2010-03-31 07:05:15.000000000 +0400 -+++ amber11/AmberTools/src/leap/src/leap/stringExtra.c 2011-03-08 16:38:44.000000000 +0300 -@@ -130,10 +130,13 @@ - sRemoveLeadingSpaces( char *sLine ) - { - char *sTemp; -- -+int mylength; - sTemp = sLine; - while ( (*sTemp==' ') && ( *sTemp!='\0' )) sTemp++; -- strcpy( sLine, sTemp ); -+ mylength=strlen(sTemp); -+ //strcpy( sLine, sTemp ); -+ memmove(sLine, sTemp, mylength); -+ sLine[mylength]='\0'; - return(sLine); - } - -@@ -152,6 +155,7 @@ - sRemoveFirstString( char *sLine, char *sHead ) - { - char *sTemp; -+int mylength; - - sTemp = sLine; - while ( (*sTemp!=' ') && ( *sTemp!='\0' )) sTemp++; -@@ -163,7 +167,11 @@ - *sTemp = '\0'; - strcpy( sHead, sLine ); - sTemp++; -- strcpy( sLine, sTemp ); -+ mylength=strlen(sTemp); -+ //strcpy( sLine, sTemp ); -+ memmove(sLine, sTemp, mylength); -+ sLine[mylength]='\0'; -+ - } - - -diff -urN amber11.orig/AmberTools/src/leap/src/leap/xaCommand.c amber11/AmberTools/src/leap/src/leap/xaCommand.c ---- amber11.orig/AmberTools/src/leap/src/leap/xaCommand.c 2010-03-31 07:05:15.000000000 +0400 -+++ amber11/AmberTools/src/leap/src/leap/xaCommand.c 2011-03-08 16:38:44.000000000 +0300 -@@ -837,7 +837,7 @@ - * at the top of the list - */ - qsort( saPNames, iNumber, sizeof(STRING), -- (int (*) (void *, void *) )ziXACCompareTwoDirectoryEntries ); -+ (int (*) (const void *, const void *) )ziXACCompareTwoDirectoryEntries ); - - /* - * Reformulate as an array of pointers to char -diff -urN amber11.orig/AmberTools/src/pbsa/pb_init.f amber11/AmberTools/src/pbsa/pb_init.f ---- amber11.orig/AmberTools/src/pbsa/pb_init.f 2010-03-31 07:05:15.000000000 +0400 -+++ amber11/AmberTools/src/pbsa/pb_init.f 2011-03-08 16:38:44.000000000 +0300 -@@ -153,6 +153,7 @@ - - integer ires, iatm, jatm, maxmax, ic, i, j, jp, idum - integer alloc_err(64) -+ _REAL_ maxnbr_l, maxnba_l - _REAL_ rinchk - _REAL_ ucrgh(natom), ucrga(natom) - character (len=4) :: residue, resid(natom) -@@ -207,16 +208,24 @@ - - ! allocate pb nblists - -- maxnba = natom * ( sqrt( max(cutnb,cutsa,cutfd) ) )**3 / 3.0d0 -- maxnbr = natom * ( sqrt( cutres ) + 3.0d0 )**3 / 3.0d0 -+ maxnba_l = dble(natom) * ( sqrt( max(cutnb,cutsa,cutfd) ) )**3 / 3.0d0 -+ maxnbr_l = dble(natom) * ( sqrt( cutres ) + 3.0d0 )**3 / 3.0d0 - if ( natom >= 65536 ) then - write(6,'(a)') "PB Warnning: natom**2 exceeds integer limit (2147483647)." - maxmax = 2147483647 - else - maxmax = ceiling(dble(natom)/2*dble(natom)) -- endif -- if ( maxnba > maxmax ) maxnba = maxmax -- if ( maxnbr > maxmax ) maxnbr = maxmax -+ end if -+ if ( maxnbr_l > maxmax ) then -+ maxnbr = maxmax -+ else -+ maxnbr = int(maxnbr_l) -+ end if -+ if ( maxnba_l > maxmax ) then -+ maxnba = maxmax -+ else -+ maxnba = int(maxnba_l) -+ end if - - allocate( iar1pb (6,0:natom), stat = alloc_err(24) ) - allocate( iprshrt( maxnba ), stat = alloc_err(25) ) -diff -urN amber11.orig/AmberTools/src/ptraj/actions.c amber11/AmberTools/src/ptraj/actions.c ---- amber11.orig/AmberTools/src/ptraj/actions.c 2010-03-31 07:05:16.000000000 +0400 -+++ amber11/AmberTools/src/ptraj/actions.c 2011-03-08 16:38:44.000000000 +0300 -@@ -3655,6 +3655,8 @@ - { - action->mask = processAtomMask("*", action->state); - } -+ if (action->mask==NULL) -+ return INVALID_ARGUMENTS_RETURN_CODE; - /* Create a new "substate" trajInfo->state containing only some atoms: */ - modifyStateByMask(&trajInfo->state, &action->state, action->mask, 0); - trajInfo->atoms = trajInfo->state->atoms; -@@ -16406,6 +16408,10 @@ - residues[i].antiparallelSheetProb = 0; - residues[i].turnProb = 0; - residues[i].isActive = 0; -+ residues[i].H=-1; -+ residues[i].C=-1; -+ residues[i].N=-1; -+ residues[i].O=-1; - } - actRes = 0; - for (i = 0; i < action->state->atoms; i++) { -diff -urN amber11.orig/AmberTools/src/ptraj/cluster.c amber11/AmberTools/src/ptraj/cluster.c ---- amber11.orig/AmberTools/src/ptraj/cluster.c 2010-03-31 07:05:16.000000000 +0400 -+++ amber11/AmberTools/src/ptraj/cluster.c 2011-03-08 16:38:44.000000000 +0300 -@@ -4041,7 +4041,7 @@ - OutputTrajInfo = (trajectoryInfo*)action->carg2; - } - -- if (!FirstOutputFlag) -+ if (FirstOutputFlag==NULL) - { - FirstOutputFlag = (int*)SafeMalloc(__FILE__, __LINE__, sizeof(int) * This->ClusterCount); - memset(FirstOutputFlag, 1, sizeof(int) * This->ClusterCount); -@@ -4089,7 +4089,7 @@ - * to avoid crashing out if we hit the OS-level file-size limit: - */ - FileNumber[ClusterIndex] = FileNumber[ClusterIndex] + 1; -- fclose(OutputFiles[ClusterIndex]); -+ safe_fclose(OutputFiles[ClusterIndex]); - FirstOutputFlag[ClusterIndex] = 1; - FirstFlag = 1; - } -diff -urN amber11.orig/AmberTools/src/ptraj/io.c amber11/AmberTools/src/ptraj/io.c ---- amber11.orig/AmberTools/src/ptraj/io.c 2010-03-31 07:05:16.000000000 +0400 -+++ amber11/AmberTools/src/ptraj/io.c 2011-03-08 16:38:44.000000000 +0300 -@@ -673,6 +673,107 @@ - } - } - -+/* gzipFileSize() -+ * DRR: Return the uncompressed size in bytes of gzipped file by peeking -+ * at the last 4 bytes. -+ * NOTE: long long int should be equivalent to off_t. -+ */ -+long long int gzipFileSize(char *filename) { -+ FILE *infile; -+ unsigned char b1,b2,b3,b4; -+ long long int val,temp; -+ -+ if (filename==NULL) return -1; -+ if ( (infile = fopen(filename,"rb"))==NULL ) { -+ fprintf(stdout,"Error: gzipFileSize: Could not open %s for reading.\n",filename); -+ return -1; -+ } -+ -+ // Place 4 bytes from the end -+ fseek(infile, -4, SEEK_END); -+ -+ b1=0; b2=0; b3=0; b4=0; -+ fread(&b4,1,1,infile); -+ fread(&b3,1,1,infile); -+ fread(&b2,1,1,infile); -+ fread(&b1,1,1,infile); -+ -+ val = 0; -+ temp = (long long int) b1; -+ temp <<= 24; -+ val = val | temp; -+ temp = (long long int) b2; -+ temp <<= 16; -+ val = val | temp; -+ temp = (long long int) b3; -+ temp <<= 8; -+ val = val | temp; -+ temp = (long long int) b4; -+ val = val | temp; -+ -+ //val = (b1 << 24) | (b2 << 16) + (b3 << 8) + b4; -+ -+ fclose(infile); -+ -+ if (prnlev>0) fprintf(stdout,"gzipFileSize: Uncompressed size of %s: %lli\n",filename,val); -+ -+ return val; -+} -+ -+/* -+ * bzip2FileSize() -+ * DRR: Return the uncompressed size of bzip2 file in bytes by counting -+ * all characters using bzcat and wc. -+ */ -+long long int bzip2FileSize(char *filename) { -+ long long int val; -+ char *command; -+ FILE *pipe; -+ -+ if (filename==NULL) return -1; -+ // Use bzcat <file> | wc -c to calc file size -+ command=(char*) malloc( (15 + strlen(filename)) * sizeof(char)); -+ sprintf(command,"bzcat %s | wc -c",filename); -+ if ((pipe=popen(command,"r"))==NULL) { -+ fprintf(stdout,"Error: bzip2FileSize: Could not open %s for reading.\n",filename); -+ fprintf(stdout," Check that bzcat and wc are present on your system.\n"); -+ return -1; -+ } -+ fscanf(pipe,"%lli",&val); -+ pclose(pipe); -+ -+ if (prnlev>0) fprintf(stdout,"bzip2FileSize: Uncompressed size of %s: %lli\n",filename,val); -+ -+ return val; -+} -+ -+/* -+ * zipFileSize() -+ * DRR: Return the uncompressed size of zip file in bytes by counting -+ * all characters using unzip and wc. -+ */ -+long long int zipFileSize(char *filename) { -+ long long int val; -+ char *command; -+ FILE *pipe; -+ -+ if (filename==NULL) return -1; -+ // Use unzip -p <file> | wc -c to calc file size -+ command=(char*) malloc( (18 + strlen(filename)) * sizeof(char)); -+ sprintf(command,"unzip -p %s | wc -c",filename); -+ if ((pipe=popen(command,"r"))==NULL) { -+ fprintf(stdout,"Error: zipFileSize: Could not open %s for reading.\n",filename); -+ fprintf(stdout," Check that unzip and wc are present on your system.\n"); -+ return -1; -+ } -+ fscanf(pipe,"%lli",&val); -+ pclose(pipe); -+ -+ if (prnlev>0) fprintf(stdout,"zipFileSize: Uncompressed size of %s: %lli\n",filename,val); -+ -+ return val; -+} -+ - /* DAN ROE: - * id_Filesig(): Attempt to identify the file type by first 3 hex vals. - * A filename or an open stream should be supplied. -@@ -689,7 +790,7 @@ - * -2: Internal error - */ - int id_Filesig(char *filename, FILE *infile) { -- int *h; -+ unsigned char *h; - int i, type; - - /* Check that either filename or infile is specified, but not both */ -@@ -712,7 +813,7 @@ - rewind(infile); - - /* Read first 3 bytes from file */ -- h=(int*) calloc(3,sizeof(int)); -+ h=(unsigned char*) calloc(3,sizeof(unsigned char)); - fread(h,1,1,infile); - fread(h+1,1,1,infile); - fread(h+2,1,1,infile); -diff -urN amber11.orig/AmberTools/src/ptraj/io.h amber11/AmberTools/src/ptraj/io.h ---- amber11.orig/AmberTools/src/ptraj/io.h 2010-03-31 07:05:16.000000000 +0400 -+++ amber11/AmberTools/src/ptraj/io.h 2011-03-08 16:38:44.000000000 +0300 -@@ -76,6 +76,9 @@ - - extern void doSystem(char *); - extern char * promptToOpenFile( FILE **, char *, char *, char *); -+extern long long int gzipFileSize(char *); -+extern long long int bzip2FileSize(char *); -+extern long long int zipFileSize(char *); - extern int id_Filesig(char *,FILE *); - extern int openFile( FILE **, char *, char *); - extern int promptUserResponse(FILE *, FILE *, char *, char *, int); -@@ -94,6 +97,9 @@ - - extern void doSystem(); - extern char * promptToOpenFile(); -+extern long long int gzipFileSize(); -+extern long long int bzip2FileSize(); -+extern long long int zipFileSize(); - extern int id_Filesig(); - extern int openFile(); - extern int promptUserResponse(); -diff -urN amber11.orig/AmberTools/src/ptraj/ptraj.c amber11/AmberTools/src/ptraj/ptraj.c ---- amber11.orig/AmberTools/src/ptraj/ptraj.c 2010-04-23 18:17:17.000000000 +0400 -+++ amber11/AmberTools/src/ptraj/ptraj.c 2011-03-08 16:38:44.000000000 +0300 -@@ -2058,7 +2058,8 @@ - int lines_per_set; - int start = 1; - int stop = 1; -- int frame_lines, frame_size, title_size, seekable; -+ int frame_lines, title_size, seekable; -+ long long int file_size, frame_size; - long int endoffset; - float *binposScratch; - FILE *fp; -@@ -2414,12 +2415,34 @@ - fprintf(stderr, "WARNING in %s: Could not find file status for %s\n", ROUTINE, filename); - return NULL; - } -+ -+ // Determine Uncompressed File Size for Nframes calculation -+ file_size=0; -+ if (trajInfo->compressType==1) // Gzip -+ file_size=gzipFileSize(filename); -+ else if (trajInfo->compressType==2) // Bzip2 -+ file_size=bzip2FileSize(filename); -+ else if (trajInfo->compressType==3) // Zip -+ file_size=zipFileSize(filename); -+ if (file_size<0) { -+ fprintf(stdout, -+ "ERROR in %s: Could not calculate uncompressed file size for %s\n", -+ ROUTINE, filename); -+ return NULL; -+ } -+ if (file_size==0) file_size=frame_stat.st_size; -+ - if (prnlev>0) -- fprintf(stdout,"[%i] Title offset %u Frame Size %u File size %lu\n", -- worldrank,trajInfo->titleSize,trajInfo->frameSize,frame_stat.st_size); -- if (((frame_stat.st_size - trajInfo->titleSize) % (trajInfo->frameSize)) == 0) { -+ fprintf(stdout,"[%i] Title offset %u Frame Size %u File size %lli\n", -+ worldrank,trajInfo->titleSize,trajInfo->frameSize,file_size); -+ frame_size = (long long int) trajInfo->titleSize; -+ 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); -+ if (prnlev>0) fprintf(stdout," File has %i frames.\n",trajInfo->Nframes); -+ if ( (file_size % frame_size) == 0 ) { - seekable = 1; -- stop = (int) ((frame_stat.st_size - trajInfo->titleSize) / trajInfo->frameSize); -+ stop = trajInfo->Nframes; - } else { - stop = -1; - seekable = 0; -@@ -2538,7 +2561,8 @@ - printfone(" With this version of the code, this will likely lead to program failure!!!\n"); - } - -- -+ // Set number of frames. Amber trajectory sets Nframes above -+ if (trajInfo->Nframes==0 && stop>0) trajInfo->Nframes=stop; - trajInfo->start = start; - trajInfo->stop = stop; - trajInfo->offset = 1; -@@ -4182,7 +4206,7 @@ - fprintf(stderr,"Could not get replica temperature from file# %i\n",i); - break; - } -- fprintf(stdout," Replica %i mytemp=%lf ",i,repTemp); //DEBUG -+ if (prnlev>0) fprintf(stdout," Replica %i mytemp=%lf ",i,repTemp); //DEBUG - if (repTemp==currentCoordinateInfo->remdtrajtemp) { - if (prnlev>0) fprintf(stdout, - " REMD target temperature (%lf) found (%lf) at replica index %i\n", -@@ -7078,6 +7102,7 @@ - stackType *sp, *argumentStack; - ptrajState *startingState, *currentState, **statep; - char *continuation; -+ int totalFrames; - - int readCoordinates; - int processCoordinates; -@@ -7140,8 +7165,8 @@ - */ - - argumentStack = NULL; -- while ( (bufferp = fgets(buffer, BUFFER_SIZE, infile)) != NULL && -- strcmp(bufferp, "go\n") != 0 ) { -+ while ( (bufferp = fgets(buffer, BUFFER_SIZE, infile)) != NULL ) { -+ if ( strncmp(bufferp, "go", 2) == 0 ) break; - - continuation = bufferp; - while ( continuation != NULL ) { -@@ -7218,18 +7243,25 @@ - */ - - startingState->maxFrames = 0; -+ totalFrames=0; - for (sp = transformFileStack; sp != NULL; sp = sp->next) { - currentCoordinateInfo = (coordinateInfo *) sp->entry; - -+ fprintf(stdout," %s: %i frames.\n",currentCoordinateInfo->filename,currentCoordinateInfo->Nframes); -+ - startingState->maxFrames += (currentCoordinateInfo->stop - - currentCoordinateInfo->start) / - currentCoordinateInfo->offset + 1; -+ // In case we dont know how many frames will be processed, use total number of frames -+ totalFrames += currentCoordinateInfo->Nframes; - } - - printfone("\nPTRAJ: Successfully read the input file.\n"); -- if (startingState->maxFrames == -1) -+ if (startingState->maxFrames == -1) { - printfone(" Coordinate processing will occur until EOF (unknown number of frames).\n"); -- else -+ // Use total frames for action memory alloc. -+ startingState->maxFrames = totalFrames; -+ } else - printfone(" Coordinate processing will occur on %i frames.\n", - startingState->maxFrames); - printfone(" Summary of I/O and actions follows:\n\n"); -diff -urN amber11.orig/AmberTools/src/ptraj/trajectory.c amber11/AmberTools/src/ptraj/trajectory.c ---- amber11.orig/AmberTools/src/ptraj/trajectory.c 2010-03-31 07:05:16.000000000 +0400 -+++ amber11/AmberTools/src/ptraj/trajectory.c 2011-03-08 16:38:44.000000000 +0300 -@@ -2341,15 +2341,22 @@ - - /* trajFile_fseek() - * Wrapper for fseek. Seek to a given frame. -+ * fseeko is used for better compatibility with large files. To avoid -+ * losing bits each variable is explicitly converted to off_t in offset -+ * calculation. - */ - int trajFile_fseek(coordinateInfo *C, int frame) { - int err; -+ off_t offset; - - if (C==NULL) return -1; - -- if (C->isMPI==0) -- err=fseek(C->file, C->titleSize+(frame*C->frameSize), SEEK_SET); -- else -+ if (C->isMPI==0) { -+ offset = (off_t) frame; -+ offset *= (off_t) C->frameSize; -+ offset += (off_t) C->titleSize; -+ err=fseeko(C->file, offset, SEEK_SET); -+ } else - err=parallel_fseek(C,frame); - - return err; -diff -urN amber11.orig/AmberTools/src/ptraj/trajectory.h amber11/AmberTools/src/ptraj/trajectory.h ---- amber11.orig/AmberTools/src/ptraj/trajectory.h 2010-03-31 07:05:16.000000000 +0400 -+++ amber11/AmberTools/src/ptraj/trajectory.h 2011-03-08 16:38:44.000000000 +0300 -@@ -168,6 +168,7 @@ - char *filename; // File name - int start; // Frame to start processing - int stop; // Frame to end processing -+ int Nframes; // Total number of frames in the file. - int offset; // # of frames to skip - int append; // File will be appended to - int isBox; // File has box information -@@ -230,6 +231,7 @@ - _p_->filename = NULL; \ - _p_->start = 1; \ - _p_->stop = -1; \ -+ _p_->Nframes = 0; \ - _p_->offset = 1; \ - _p_->append = 0; \ - _p_->isBox = 0; \ -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 2010-04-07 16:55:55.000000000 +0400 -+++ amber11/AmberTools/src/rism/amber_rism_interface.f 2011-03-08 16:38:44.000000000 +0300 -@@ -501,7 +501,8 @@ - call timer_stop(TIME_REORIENT) - !linproj predict - call timer_start(TIME_CRDINTERP) -- call fce_force(fce_o,ff,rism_3d%solu%ratu) -+ if(rismprm%apply_rism_force==1)& -+ call fce_force(fce_o,ff,rism_3d%solu%ratu) - call timer_stop(TIME_CRDINTERP) - - call timer_start(TIME_REORIENT) -@@ -537,16 +538,17 @@ - end if - #else /*SANDER*/ - #endif /*SANDER*/ -- call rism3d_force(rism_3d,ff) -- if(rismprm%zerofrc==1)then -+ if(rismprm%apply_rism_force==1)then -+ call rism3d_force(rism_3d,ff) -+ if(rismprm%zerofrc==1)then - #ifdef MPI -- call corr_drift(ff,rism_3d%solu%mass,rism_3d%solu%natom,& -- mpirank,mpisize,mpicomm) -+ call corr_drift(ff,rism_3d%solu%mass,rism_3d%solu%natom,& -+ mpirank,mpisize,mpicomm) - #else -- call corr_drift(ff,rism_3d%solu%mass,rism_3d%solu%natom) -+ call corr_drift(ff,rism_3d%solu%mass,rism_3d%solu%natom) - #endif /*MPI*/ -+ end if - end if -- - !get the excess chemical potential - call timer_start(TIME_EXCHEM) - if(rismprm%gauss_fluct == 0)then -@@ -563,12 +565,12 @@ - #endif /*defined(MPI)*/ - end if - call timer_stop(TIME_EXCHEM) -- -+ - #ifdef RISM_CRDINTERP - call timer_start(TIME_REORIENT) - call orient(rism_3d,ff,qback) - call timer_stop(TIME_REORIENT) -- if(rismprm%fcestride >0)then -+ if(rismprm%fcestride >0 .and. rismprm%apply_rism_force==1)then - call timer_start(TIME_SAVECRDINTERP) - call fce_update(fce_o,ff,rism_3d%solu%ratu) - call timer_stop(TIME_SAVECRDINTERP) -@@ -586,7 +588,6 @@ - - end if - if(rismprm%apply_rism_force==1) frc = frc+ff -- call flush(6) - return - end subroutine rism_force - -@@ -1087,6 +1088,7 @@ - subroutine rism_writeSolvDistF(this,step) - use amber_rism_interface - use rism3d_opendx -+ use safemem - implicit none - #if defined(MPI) - include 'mpif.h' -@@ -1097,9 +1099,18 @@ - character(len=16) :: cstep - character(len=64) :: suffix - integer :: unit = 99,iostat=0 -+#ifdef MPI -+ integer :: err -+ _REAL_, pointer::work(:,:,:)=>NULL() -+#endif /*MPI*/ - #ifdef RISM_DEBUG - write(6,*) "printrism" - #endif -+#ifdef MPI -+ if(len_trim(guvfile) /= 0 .or. len_trim(huvfile) /= 0)then -+ work => reallocate_pointer(work, this%ng3(1), this%ng3(2), this%nz_local) -+ end if -+#endif /*MPI*/ - !................... outputting Guv and Cuv profiles ................... - do iv=1,this%solv%natom - write(cstep,'(i16)') step -@@ -1112,9 +1123,15 @@ - call mexit(6,1) - end if - # if defined(MPI) -+ do k=1,this%nz_local -+ do j=1,this%ng3(2) -+ do i=1,this%ng3(1) -+ work(i,j,k) = this%guv(i+(j-1)*(this%ng3(1)+2)+(k-1)*(this%ng3(1)+2)*this%ng3(2),iv) -+ end do -+ end do -+ end do - call writeDX(unit,& -- (/(((this%guv(i+(j-1)*(this%ng3(1)+2)+(k-1)*(this%ng3(1)+2)*this%ng3(2),iv)& -- ,i=1,this%ng3(1)),j=1,this%ng3(2)),k=1,this%nz_local)/),& -+ work,& - this%boxlen,this%ng3_local,this%ng3(3),this%ratucm,& - mpirank,mpisize,mpicomm) - # else -@@ -1131,9 +1148,16 @@ - call mexit(6,1) - end if - # if defined(MPI) -+ -+ do k=1,this%nz_local -+ do j=1,this%ng3(2) -+ do i=1,this%ng3(1) -+ work(i,j,k) =this%huv(i+(j-1)*(this%ng3(1)+2)+(k-1)*(this%ng3(1)+2)*this%ng3(2),iv) -+ end do -+ end do -+ end do - call writeDX(unit,& -- (/(((this%huv(i+(j-1)*(this%ng3(1)+2)+(k-1)*(this%ng3(1)+2)*this%ng3(2),iv)& -- ,i=1,this%ng3(1)),j=1,this%ng3(2)),k=1,this%nz_local)/),& -+ work,& - this%boxlen,this%ng3_local,this%ng3(3),this%ratucm,& - mpirank,mpisize,mpicomm) - # else -@@ -1160,6 +1184,9 @@ - if(mpirank==0)close(unit) - endif - end do -+#ifdef MPI -+ err = safe_deallocate(work) -+#endif /*MPI*/ - end subroutine rism_writeSolvDistF - - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -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 2010-04-07 16:55:55.000000000 +0400 -+++ amber11/AmberTools/src/rism/rism3d_c.f 2011-03-08 16:38:44.000000000 +0300 -@@ -911,7 +911,7 @@ - !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - subroutine rism3d_aexchem_sp (this,xmu0,xmu0sp,egf) - use constants, only : PI,KB,AMBER_ELECTROSTATIC2 -- use rism_util, only : gaussquad_legendre -+ use rism_util, only : gaussquad_legendre, checksum - implicit none - #if defined(MPI) - include 'mpif.h' -@@ -947,132 +947,130 @@ - call flush(6) - #endif /*RISM_DEBUG*/ - -+ !.....total charge of solute -+ qut = sum(this%solu%charge) - !.....getting the numerical long-range contribution - egf = 0 -- eqkt = AMBER_ELECTROSTATIC2/KB/this%solv%temperature -- -- Nintmx = 200 -- if(Nintmx > ntvlmx)then -- write(6,'(1X,"Nintmx gt ntvlmx",I10)')ntvlmx -- call mexit(6,1) -- endif -- -- !.....initialize gauss-legendre integration -- call gaussquad_legendre (0d0,1d0,argum,weight,Nintmx) -- sumhc = 0.d0 -- sumh2 = 0.d0 -- -- !.....k loop -- do ik = 1, Nintmx -- -- k = argum(ik)/(1.d0-argum(ik)) -- -- !.....Bessel part -- sumb = 0.d0 -- -- do i=2,this%solu%natom -- do j=1,i-1 -- -- !......... site separation .......... -- dx = this%solu%ratu(1,i) - this%solu%ratu(1,j) -- dy = this%solu%ratu(2,i) - this%solu%ratu(2,j) -- dz = this%solu%ratu(3,i) - this%solu%ratu(3,j) -- -- r2 = dx*dx + dy*dy + dz*dz -- -- xarg = this%solv%xappa*k*sqrt(r2) -- if(xarg == 0.d0) & -- sumb = sumb + 1.d0*this%solu%charge(i)*this%solu%charge(j) -- if(xarg /= 0.d0) & -- sumb = sumb + sin(xarg)/xarg *this%solu%charge(i)*this%solu%charge(j) - -+ if(this%mpirank==0)then -+ eqkt = AMBER_ELECTROSTATIC2/KB/this%solv%temperature -+ Nintmx = 200 -+ if(Nintmx > ntvlmx)then -+ write(6,'(1X,"Nintmx gt ntvlmx",I10)')ntvlmx -+ call mexit(6,1) -+ endif -+ -+ !.....initialize gauss-legendre integration -+ call gaussquad_legendre (0d0,1d0,argum,weight,Nintmx) -+ sumhc = 0.d0 -+ sumh2 = 0.d0 -+ -+ !.....k loop -+ do ik = 1, Nintmx -+ -+ k = argum(ik)/(1.d0-argum(ik)) -+ -+ !.....Bessel part -+ sumb = 0.d0 -+ -+ do i=2,this%solu%natom -+ do j=1,i-1 -+ -+ !......... site separation .......... -+ dx = this%solu%ratu(1,i) - this%solu%ratu(1,j) -+ dy = this%solu%ratu(2,i) - this%solu%ratu(2,j) -+ dz = this%solu%ratu(3,i) - this%solu%ratu(3,j) -+ -+ r2 = dx*dx + dy*dy + dz*dz -+ -+ xarg = this%solv%xappa*k*sqrt(r2) -+ if(xarg == 0.d0) & -+ sumb = sumb + 1.d0*this%solu%charge(i)*this%solu%charge(j) -+ if(xarg /= 0.d0) & -+ sumb = sumb + sin(xarg)/xarg *this%solu%charge(i)*this%solu%charge(j) -+ -+ enddo - enddo -- enddo -- -- sumb = sumb*2.d0 -- -- do i=1,this%solu%natom -- sumb = sumb + 1.d0*this%solu%charge(i)*this%solu%charge(i) -- enddo -- -- !.....end of Bessel part -- -- x2arg = (k*this%solv%xappa*this%solv%smear)**2 -- k2 = k**2 -- -- denom = argum(ik)**2+(1.0d0-argum(ik))**2 -- -- sumhc = sumhc + & -- exp(-x2arg/2.d0)/denom*sumb*weight(ik) -- sumh2 = sumh2 + & -- exp(-x2arg/2.d0)*argum(ik)**2/(denom**2)*sumb*weight(ik) -- -- enddo -- -- !.....end of k-loop -- -- !.....total charge of solute -- qut = 0.d0 -- do i = 1,this%solu%natom -- qut = qut + this%solu%charge(i) -- enddo -- !.....site xappa -- if (this%closure == KH) then -+ -+ sumb = sumb*2.d0 -+ -+ do i=1,this%solu%natom -+ sumb = sumb + 1.d0*this%solu%charge(i)*this%solu%charge(i) -+ enddo -+ -+ !.....end of Bessel part -+ -+ x2arg = (k*this%solv%xappa*this%solv%smear)**2 -+ k2 = k**2 -+ -+ denom = argum(ik)**2+(1.0d0-argum(ik))**2 -+ -+ sumhc = sumhc + & -+ exp(-x2arg/2.d0)/denom*sumb*weight(ik) -+ sumh2 = sumh2 + & -+ exp(-x2arg/2.d0)*argum(ik)**2/(denom**2)*sumb*weight(ik) -+ -+ enddo -+ -+ !.....end of k-loop -+ -+ !.....site xappa -+ if (this%closure == KH) then -+ do iv = 1,this%solv%natom -+ if(qut*this%solv%charge_sp(iv) <= 0.d0) & -+ xmuh2lr(iv) = 4.d0*PI/(this%solv%dielconst) * this%solv%rho(iv)*this%solv%charge_sp(iv)**2 -+ if(qut*this%solv%charge_sp(iv) > 0.d0) & -+ xmuh2lr(iv) = 0.d0 -+ xmuhclr(iv) = 4.d0*PI/(this%solv%dielconst) * this%solv%rho(iv)*this%solv%charge(iv)*this%solv%charge_sp(iv) -+ enddo -+ else -+ do iv = 1,this%solv%natom -+ xmuh2lr(iv) = 4.d0*PI/(this%solv%dielconst) * this%solv%rho(iv)*this%solv%charge_sp(iv)**2 -+ xmuhclr(iv) = 4.d0*PI/(this%solv%dielconst) * this%solv%rho(iv)*this%solv%charge(iv)*this%solv%charge_sp(iv) -+ enddo -+ endif -+ -+ !.....unit for xappa - do iv = 1,this%solv%natom -- if(qut*this%solv%charge_sp(iv) <= 0.d0) & -- xmuh2lr(iv) = 4.d0*PI/(this%solv%dielconst) * this%solv%rho(iv)*this%solv%charge_sp(iv)**2 -- if(qut*this%solv%charge_sp(iv) > 0.d0) & -- xmuh2lr(iv) = 0.d0 -- xmuhclr(iv) = 4.d0*PI/(this%solv%dielconst) * this%solv%rho(iv)*this%solv%charge(iv)*this%solv%charge_sp(iv) -+ xmuh2lr(iv) = xmuh2lr(iv) * eqkt -+ xmuhclr(iv) = xmuhclr(iv) * eqkt - enddo -- else -+ -+ !.....divided by total xappa -+ if(this%solv%xappa /= 0.d0)then -+ do iv = 1,this%solv%natom -+ xmuh2lr(iv) = xmuh2lr(iv) / this%solv%xappa -+ xmuhclr(iv) = xmuhclr(iv) / this%solv%xappa -+ enddo -+ else -+ do iv = 1,this%solv%natom -+ xmuh2lr(iv) = 0.d0 -+ xmuhclr(iv) = 0.d0 -+ enddo -+ endif -+ -+ !.....multiplying xmulr by integral - do iv = 1,this%solv%natom -- xmuh2lr(iv) = 4.d0*PI/(this%solv%dielconst) * this%solv%rho(iv)*this%solv%charge_sp(iv)**2 -- xmuhclr(iv) = 4.d0*PI/(this%solv%dielconst) * this%solv%rho(iv)*this%solv%charge(iv)*this%solv%charge_sp(iv) -+ xmuh2lr(iv) = xmuh2lr(iv)*sumh2 -+ xmuhclr(iv) = - xmuhclr(iv)*sumhc - enddo -- endif -- -- !.....unit for xappa -- do iv = 1,this%solv%natom -- xmuh2lr(iv) = xmuh2lr(iv) * eqkt -- xmuhclr(iv) = xmuhclr(iv) * eqkt -- enddo -- -- !.....divided by total xappa -- if(this%solv%xappa /= 0.d0)then -+ -+ sumh2 = 0.d0 -+ sumhc = 0.d0 - do iv = 1,this%solv%natom -- xmuh2lr(iv) = xmuh2lr(iv) / this%solv%xappa -- xmuhclr(iv) = xmuhclr(iv) / this%solv%xappa -+ sumh2 = sumh2 + xmuh2lr(iv) -+ sumhc = sumhc + xmuhclr(iv) - enddo -- else -+ -+ !.....J devided by KT -+ sumh2 = sumh2 / (PI*this%solv%dielconst) * eqkt -+ sumhc = sumhc / PI * eqkt - do iv = 1,this%solv%natom -- xmuh2lr(iv) = 0.d0 -- xmuhclr(iv) = 0.d0 -+ xmuh2lr(iv) = xmuh2lr(iv) / (PI*this%solv%dielconst) * eqkt -+ xmuhclr(iv) = xmuhclr(iv) / PI * eqkt - enddo -- endif -- -- !.....multiplying xmulr by integral -- do iv = 1,this%solv%natom -- xmuh2lr(iv) = xmuh2lr(iv)*sumh2 -- xmuhclr(iv) = - xmuhclr(iv)*sumhc -- enddo -- -- sumh2 = 0.d0 -- sumhc = 0.d0 -- do iv = 1,this%solv%natom -- sumh2 = sumh2 + xmuh2lr(iv) -- sumhc = sumhc + xmuhclr(iv) -- enddo -- -- !.....J devided by KT -- sumh2 = sumh2 / (PI*this%solv%dielconst) * eqkt -- sumhc = sumhc / PI * eqkt -- do iv = 1,this%solv%natom -- xmuh2lr(iv) = xmuh2lr(iv) / (PI*this%solv%dielconst) * eqkt -- xmuhclr(iv) = xmuhclr(iv) / PI * eqkt -- enddo -- xmulr = sumh2 + sumhc -- -+ xmulr = sumh2 + sumhc -+ end if - !.................. calculating xMu0 by PLHNC closure .................. - if (this%closure == KH) then - dxmu = 0.d0 -@@ -1232,13 +1230,20 @@ - xmu0sp(iv) = xmu0sp(iv) * (this%boxvol/this%ngr) - enddo - -- !.....add long-range part -- xmu0 = xmu0 + (xmulr) -- egf = egf + (xmulr) -- do iv=1,this%solv%natom -- xmu0sp(iv) = xmu0sp(iv) + xmuh2lr(iv) + xmuhclr(iv) -- enddo -- -+ !.....add long-range part but only on the master process so we don't over count -+ !.....this contribution. -+!!$ write(0,*) "pre lr", this%mpirank, xmu0 -+!!$ write(0,*) checksum(this%huv,product(shape(this%huv)),this%mpicomm), & -+!!$ checksum(this%cuv,product(shape(this%cuv)),this%mpicomm), & -+!!$ checksum(this%uuv,product(shape(this%uuv)),this%mpicomm) -+ if(this%mpirank==0)then -+ xmu0 = xmu0 + (xmulr) -+ egf = egf + (xmulr) -+ do iv=1,this%solv%natom -+ xmu0sp(iv) = xmu0sp(iv) + xmuh2lr(iv) + xmuhclr(iv) -+ enddo -+ end if -+!!$ write(0,*) "post lr", this%mpirank, xmu0 - return - end subroutine rism3d_aexchem_sp - -@@ -2322,6 +2327,7 @@ - subroutine asympch(this,huvk0) - use constants, only : PI, FOURPI,& - AMBER_ELECTROSTATIC2,KB -+ use rism_util, only : checksum - implicit none - #if defined(MPI) - include 'mpif.h' -@@ -2339,9 +2345,7 @@ - _REAL_ :: xappa2,smear2_4 - _REAL_ :: asymhr_coeff - _REAL_,save :: asymhr_coeff_at_cut=0,asymcr_coeff_at_cut=0 -- _REAL_,save :: erfcAtCut=0,erfcAtNegCut=0,cut=15.5d0 --!! _REAL_,save :: erfcAtCut=0,erfcAtNegCut=0,cut=999d0 --! !linear spacing of the grid -+ _REAL_,save :: erfcAtCut=0,erfcAtNegCut=0,cut=4d0,maxcut - !offset :: z-axis offset (important for spatially distributed MPI) - _REAL_ :: offset - ! !number of gridpoints in each direction to use -@@ -2351,7 +2355,7 @@ - _REAL_ :: erfc - external erfc - integer :: irank,ierr,i -- _REAL_:: checksum,mpitmp -+ _REAL_:: mpitmp - - half_smear_root_pi=sqrt(PI)*this%solv%smear/2d0 - half_xappa_smear=this%solv%xappa*this%solv%smear/2d0 -@@ -2361,7 +2365,9 @@ - asymhr_coeff=exp(-(this%solv%xappa**2)*(this%solv%smear**2)/4d0)* & - (2d0*exp(-(this%solv%smear*this%solv%xappa/2d0)**2)/(sqrt(PI)*this%solv%smear) & - - this%solv%xappa * erfc(this%solv%xappa*this%solv%smear/2d0)) -- do while(exp(-quarter_xappa2_smear2)-asymhr_coeff_at_cut > 1d-7 .and. 1d0-asymcr_coeff_at_cut > 1d-7) -+ maxcut = sqrt(sum(this%boxlen**2)) -+ do while((exp(-quarter_xappa2_smear2)-asymhr_coeff_at_cut > 1d-7 .or. 1d0-asymcr_coeff_at_cut > 1d-7)& -+ .and. cut < maxcut) - erfcAtCut = erfc(cut) - erfcAtNegCut = erfc(-cut) - asymhr_coeff_at_cut=exp(-quarter_xappa2_smear2) & -@@ -2370,10 +2376,10 @@ - !(erfcAtNegCut - erfcAtCut)/2d0 - asymcr_coeff_at_cut=(1d0-erfc(cut/this%solv%smear)) - cut = cut+.1d0 -- ! write(6,*)'cut coeff',asymhr_coeff_at_cut,asymcr_coeff_at_cut -+! write(0,*)'cut coeff',this%mpirank,asymhr_coeff_at_cut,asymcr_coeff_at_cut - end do - #ifdef RISM_DEBUG -- write(6,*)'cut coeff',cut,asymhr_coeff_at_cut,asymcr_coeff_at_cut -+ write(0,*)'cut coeff',cut,exp(-quarter_xappa2_smear2)-asymhr_coeff_at_cut,asymcr_coeff_at_cut - #endif /*RISM_DEBUG*/ - !.....initialize - this%asymcr=0d0 -@@ -2569,7 +2575,7 @@ - this%asymcr = this%asymcr * factor - this%asymhr = this%asymhr * factor - this%asymck = this%asymck * (factor / this%boxvol) -- this%asymhk = this%asymhk * (factor / this%boxvol)/2d0/PI**2 -+ this%asymhk = this%asymhk * (factor / this%boxvol) - - !?WHY IS THIS ONLY FOR ny_start==0?! - if(this%ny_start==0)then -@@ -2591,35 +2597,22 @@ - end if - #ifdef RISM_DEBUG - # ifdef MPI -- checksum = sum(this%asymck) --# ifdef USE_MPI_IN_PLACE -- call mpi_allreduce(MPI_IN_PLACE,checksum,1,MPI_DOUBLE_PRECISION,mpi_sum,this%mpicomm,ierr) --# else -- call mpi_allreduce(checksum,mpitmp,1,MPI_DOUBLE_PRECISION,mpi_sum,this%mpicomm,ierr) -- checksum = mpitmp --# endif /*USE_MPI_IN_PLACE*/ -- if(this%mpirank == 0)then -- write(6,*) "SUM this%asymck", this%mpirank, checksum -+ write(6,*) "SUM this%asymhr", this%mpirank, & -+ checksum(this%asymhr,product(shape(this%asymhr)), this%mpicomm), sum(this%asymhr) -+ write(6,*) "SUM this%asymcr", this%mpirank, & -+ checksum(this%asymcr,product(shape(this%asymcr)), this%mpicomm), sum(this%asymcr) - call flush(6) -- end if -- checksum = sum(this%asymhk) --# ifdef USE_MPI_IN_PLACE -- call mpi_allreduce(MPI_IN_PLACE,checksum,1,MPI_DOUBLE_PRECISION,mpi_sum,this%mpicomm,ierr) --# else -- call mpi_allreduce(checksum,mpitmp,1,MPI_DOUBLE_PRECISION,mpi_sum,this%mpicomm,ierr) -- checksum = mpitmp --# endif /*USE_MPI_IN_PLACE*/ -- if(this%mpirank == 0)then -- write(6,*) "SUM this%asymhk", this%mpirank, checksum -- call flush(6) -- end if - # else -- write(6,*)"SUM this%asymcr ",size(this%asymcr),sum(this%asymcr),& -- sum(this%asymcr(1:this%ngr_local/2)),sum(this%asymcr(this%ngr_local/2+1:this%ngr_local)) -- write(6,*)"SUM this%asymhr ",size(this%asymhr),sum(this%asymhr),& -- sum(this%asymhr(1:this%ngr_local/2)),sum(this%asymhr(this%ngr_local/2+1:this%ngr_local)) -+ write(6,*) cut, asymhr_coeff_at_cut, asymcr_coeff_at_cut -+ write(6,*)"SUM this%asymcr ",size(this%asymcr),sum(this%asymcr),& -+ sum(this%asymcr(1:this%ngr_local/2)),sum(this%asymcr(this%ngr_local/2+1:this%ngr_local)) -+ write(6,*)"SUM this%asymhr ",size(this%asymhr),sum(this%asymhr),& -+ sum(this%asymhr(1:this%ngr_local/2)),sum(this%asymhr(this%ngr_local/2+1:this%ngr_local)) -+ stop -+# endif /*MPI */ - #endif /*RISM_DEBUG*/ - #ifdef RISM_DEBUG -+# ifdef MPI - write(6,*) "RANK",this%mpirank,factor,this%boxvol - write(6,'(a,i4,f15.10,f15.10)') "SUM this%asymck",this%ngk,sum(this%asymck),sum(this%asymck(3:)) - write(6,'(a,i4,f15.10,f15.10)') "SUM this%asymhk",this%ngk,sum(this%asymhk),sum(this%asymhk(3:)) -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 2010-04-07 16:55:55.000000000 +0400 -+++ amber11/AmberTools/src/rism/rism3d_opendx.f 2011-03-08 16:38:44.000000000 +0300 -@@ -55,28 +55,37 @@ - contains - subroutine writeDX (unit, data, rism_box, n,nz_total,ratucm & - #ifdef MPI -- ,rank,size,comm & -+ ,rank,nproc,comm & - #endif /*MPI*/ - ) -+ use safemem - implicit none - #if defined(MPI) - include 'mpif.h' -- integer, intent(in) :: rank,size,comm -+ integer, intent(in) :: rank,nproc,comm - #else -- integer,parameter :: rank = 0, size=1 -+ integer,parameter :: rank = 0, nproc=1 - #endif /*defined(MPI)*/ - integer, intent(in) :: nz_total - integer,intent(in) :: unit, n(3) - _REAL_,intent(in) :: data(n(1),n(2),n(3)), rism_box(3),ratucm(3) - integer :: i,j,k, irank, ierr,count,icount -- integer :: nz_offset(size),nz_local(size) -+ integer :: nz_offset(nproc),nz_local(nproc) - integer, parameter :: dataperline=3 -- _REAL_ :: z_data(nz_total) -+#ifdef MPI -+ integer :: err -+ _REAL_,pointer :: z_data(:)=>NULL() -+#endif /*MPI*/ - #ifdef RISM_DEBUG -+ - write(6,*) "writeDX",rism_box,ratucm - call flush(6) - #endif /*RISM_DEBUG*/ -- -+!!$ do i = 1,nproc -+!!$ if(rank==i)& -+!!$ write(0,*) "DX",rank,sum(data)/(rank+1),n(3) -+!!$ call mpi_barrier(comm,ierr) -+!!$ end do - if(rank==0)then - write(unit,"(a,i8,i8,i8)") "object 1 class gridpositions counts",n(1),n(2),nz_total - write(unit,"(a,3(f15.8))") "origin ",ratucm(1)-rism_box(1)/2,ratucm(2)-rism_box(2)/2,ratucm(3)-rism_box(3)/2 -@@ -89,9 +98,14 @@ - end if - count = 0 - #if defined(MPI) -+ z_data =>reallocate_pointer(z_data,nz_total) - call mpi_gather(n(3),1,mpi_integer,nz_local,1,mpi_integer,0,comm,ierr) - nz_offset(1) = 0 -- nz_offset(2:) = nz_local(1:size-1) -+ do i = 2, nproc -+ nz_offset(i) =sum( nz_local(1:i-1)) -+ end do -+!!$ if(rank==0)& -+!!$ write(0,*) "NZ",rank,nz_offset, nz_local - #endif /*defined(MPI)*/ - do i=1,n(1) - do j=1,n(2) -@@ -122,5 +136,8 @@ - end if - write(unit,"(a)") 'object "Untitled" call field' - end if -+#ifdef MPI -+ err = safe_deallocate(z_data) -+#endif /*MPI*/ - end subroutine writeDX - end module rism3d_opendx -diff -urN amber11.orig/AmberTools/src/rism/rism_fft.f amber11/AmberTools/src/rism/rism_fft.f ---- amber11.orig/AmberTools/src/rism/rism_fft.f 2010-04-07 16:55:55.000000000 +0400 -+++ amber11/AmberTools/src/rism/rism_fft.f 2011-03-08 16:38:44.000000000 +0300 -@@ -205,19 +205,23 @@ - ! Normalizing while Forward FFT (KEY=1) * - !*********************************************************************** - subroutine rlft3i (data, ng3, key,n_local,plan) -+ use safemem - implicit none - integer :: ng3(3), key - integer :: n_local - integer*8,intent(in) :: plan -- _REAL_ :: data((ng3(1)+2)*ng3(2)*n_local) -- _REAL_ :: work((ng3(1)+2)*ng3(2)*n_local) -+! _REAL_ :: data((ng3(1)+2)*ng3(2)*n_local) -+! _REAL_ :: work((ng3(1)+2)*ng3(2)*n_local) -+ _REAL_ :: data(:) -+ _REAL_,pointer :: work(:) - integer :: ngr, ngr_local,ngk_local, ig, ierr - integer, parameter :: FFTW_TRANSPOSED_ORDER=1, FFTW_NORMAL_ORDER=0 - !....................... R-space data array size ....................... - # ifdef RISM_DEBUG -- write(6,*) "rlft3i",n_local -- call flush(6) -+ write(0,*) "rlft3i",n_local -+ call flush(0) - # endif /*RISM_DEBUG*/ -+ work=>reallocate_pointer(work,size(data)) - ngr = ng3(1)*ng3(2)*ng3(3) - ngr_local = ng3(1)*ng3(2)*n_local - ngk_local = (ng3(1)+2)*ng3(2)*n_local -@@ -230,6 +234,7 @@ - call rfftwnd_f77_mpi( plan,1,data,work,1, & - FFTW_TRANSPOSED_ORDER) - end if -+ ierr = safe_deallocate(work) - end subroutine rlft3i - - #else /*defined(MPI)*/ -diff -urN amber11.orig/AmberTools/src/sff/mm_options.l amber11/AmberTools/src/sff/mm_options.l ---- amber11.orig/AmberTools/src/sff/mm_options.l 2010-03-31 07:05:17.000000000 +0400 -+++ amber11/AmberTools/src/sff/mm_options.l 2011-03-08 16:38:44.000000000 +0300 -@@ -75,7 +75,7 @@ - dynamic_loops[=\ ][01] { ECHO; dynamic_loops = atoi( &yytext[14] ); } - static_arrays[=\ ][01] { ECHO; static_arrays = atoi( &yytext[14] ); } - blocksize[=\ ][0-9]+ { ECHO; blocksize = atoi( &yytext[10] ); } --gbsa[=\ ][0-5] { ECHO; gbsa = atoi( &yytext[5] ); } -+gbsa[=\ ][01] { ECHO; gbsa = atoi( &yytext[5] ); } - dim[=\ ][34] { ECHO; dim = atoi( &yytext[4] ); } - - rism[=\ ][01] { ECHO; rismData.rism = atoi( &yytext[5] ); } -diff -urN amber11.orig/AmberTools/src/sff/sff2.c amber11/AmberTools/src/sff/sff2.c ---- amber11.orig/AmberTools/src/sff/sff2.c 2010-03-31 07:05:17.000000000 +0400 -+++ amber11/AmberTools/src/sff/sff2.c 2011-03-08 16:38:44.000000000 +0300 -@@ -1384,6 +1384,7 @@ - e = ct2 * (ct2 * (ct2 * 32.0 - 48.0) + 18.0) - 1.0; - df = ct * (ct2 * (ct2 * 192.0 - 192.0) + 36.0); - ddf = ct2 * (ct2 * 960.0 - 576.0) + 36.0; -+ break; - - default: - fprintf(stderr, "bad periodicity: %d\n", iper); -@@ -4557,7 +4558,7 @@ - qi2h = 0.5 * qi * qi; - qid2h = qi2h * dielfac; - -- if ((gbsa == 1) || (gbsa == 4) || (gbsa == 5)) { -+ if ((gbsa == 4) || (gbsa == 5)) { - vdwdenom = 1.0 / (ri + rwater); - vdwterm = - alphanp * (prm->Gvdw[i]) * vdwdenom * vdwdenom * -diff -urN amber11.orig/AmberTools/src/sqm/qm2_load_params_and_allocate.f amber11/AmberTools/src/sqm/qm2_load_params_and_allocate.f ---- amber11.orig/AmberTools/src/sqm/qm2_load_params_and_allocate.f 2010-04-14 16:13:28.000000000 +0400 -+++ amber11/AmberTools/src/sqm/qm2_load_params_and_allocate.f 2011-03-08 16:38:44.000000000 +0300 -@@ -136,9 +136,12 @@ - n_atomic_orb=natomic_orbs(iqm_atomic) - if (n_atomic_orb>1) nheavy_atoms=nheavy_atoms+1 - ! Check we don't bust any static arrays -- if (n_atomic_orb > MAX_VALENCE_ORBITALS) then -- write (6,*) 'n_atomic_orb of ',n_atomic_orb,' exceeds max_valence_orbitals of MAX_VALENCE_ORBITALS' -- call sander_bomb('qm2_load_params.f','exceeded max','Check qmmm_module.f and parameters.h') -+ ! DFTB is independent of this and checks are done in qm2_dftb_load_params -+ if ( .not. qmmm_nml%qmtheory%DFTB ) then -+ if (n_atomic_orb > MAX_VALENCE_ORBITALS) then -+ write (6,*) 'n_atomic_orb of ',n_atomic_orb,' exceeds max_valence_orbitals of MAX_VALENCE_ORBITALS' -+ call sander_bomb('qm2_load_params.f','exceeded max','Check qmmm_module.f and parameters.h') -+ end if - end if - qm2_params%natomic_orbs(i)=n_atomic_orb - qm2_params%orb_loc(1,i)=qm2_struct%norbs+1 -diff -urN amber11.orig/AmberTools/src/sqm/qm2_scf.f amber11/AmberTools/src/sqm/qm2_scf.f ---- amber11.orig/AmberTools/src/sqm/qm2_scf.f 2010-03-31 07:05:17.000000000 +0400 -+++ amber11/AmberTools/src/sqm/qm2_scf.f 2011-03-08 16:38:44.000000000 +0300 -@@ -33,9 +33,9 @@ - qm_gb, qmmm_mpi, qmmm_scratch - use constants, only : EV_TO_KCAL, zero, two - -- use qm2_iterator_mod, only : scf_iterator_value -- use qm2_iterator_mod, only : diis_iterator_value -- use qm2_iterator_mod, only : remaining_diis_tokens -+ use qm2_iterator_mod, only : scf_iterator_value ! this is an integer function -+ use qm2_iterator_mod, only : diis_iterator_value ! this is an integer function -+ use qm2_iterator_mod, only : remaining_diis_tokens ! this is an integer function - - - implicit none -@@ -75,21 +75,24 @@ - !again. This is used to force the last few SCF steps to be full diagonalisations. - logical fock_predict_active !Set to true if we are attempting to predict the fock matrix on this QMMM call. - -- logical diis_is_off, errmat_is_converged - character(len=1) :: fock_extrap_flag -- logical dont_turn_off_diis - -+ ! DIIS -+ ! While DIIS will accelerate SCF convergence it will do so at a very high cost -+ ! since Fock matrix builds and diagonalizations for semiempirical methods are -+ ! cheaper than the overhead generated by the matrix multiplications required for DIIS -+ ! Thus switch DIIS only on if we have difficulty in converging the SCF -+ ! switch DIIS on after SCF step 100 if user turns on DIIS by setting ndiis_attempts > 0 -+ integer, parameter :: switch_on_diis = 100 ! don't set this to values lower than 3!!! -+ ! switch DIIS on as a last resort if SCF did not converge until iteration 800 -+ integer, parameter :: switch_on_diis_last_resort = 800 -+ logical diis_is_off, errmat_is_converged, errmat_is_on -+ logical dont_turn_off_diis - _REAL_ :: errval - --! scf_iterator_value is a function --! integer :: scf_iterator_value -- - ! current_scf_errval is a function - _REAL_ :: current_scf_errval - --! remaining_diis_tokens is a function --! integer :: remaining_diis_tokens -- - !qm2_Helect is a function - _REAL_ qm2_HELECT - -@@ -141,12 +144,13 @@ - ! i = remaining_diis_tokens( qmmm_nml%ndiis_attempts ) - i = remaining_diis_tokens( 0 ) - dont_turn_off_diis = .FALSE. -+ diis_is_off = qmmm_nml%ndiis_attempts < 1 .OR. qmmm_nml%ndiis_matrices < 2 -+ errmat_is_on = qmmm_nml%errconv < 1.0D-02 -+ errval = -1.0D0 ! initialize errval to unrealistic value - - fock_extrap_flag = " " - - -- -- - if (qmmm_nml%verbosity > 2 .and. qmmm_mpi%commqmmm_master) then - write(6,'("QMMM: ")') - write(6,'("QMMM: SCF Convergence Information")') -@@ -214,8 +218,18 @@ - energy_diff = scf_energy - eold - - if (qmmm_mpi%commqmmm_master) then -- CALL pack_diis(SIZE(fock_matrix),fock_matrix,den_matrix) -- errval = current_scf_errval() -+ ! do this only if we need it, this seriously affects performance -+ if ( .not. errmat_is_on ) then -+ ! check if we shall switch calculation of the error matrix on for diis -+ if ( ( ( .not. diis_is_off ) .and. (scf_iteration+qmmm_nml%ndiis_matrices >= switch_on_diis) ) & -+ .or. (scf_iteration+qmmm_nml%ndiis_matrices >= switch_on_diis_last_resort) ) then -+ errmat_is_on = .true. -+ end if -+ end if -+ if ( errmat_is_on ) then -+ CALL pack_diis(SIZE(fock_matrix),fock_matrix,den_matrix) -+ errval = current_scf_errval() -+ end if - end if - - -@@ -290,7 +304,7 @@ - ! IF THE USER REQUESTED US TO!! The default value of - ! qmmm_nml%ndiis_attempts is 0, so this requires a form - ! of human intervention -- if ( scf_iteration == 100 ) then -+ if ( scf_iteration == switch_on_diis ) then - i = remaining_diis_tokens( qmmm_nml%ndiis_attempts ) - dont_turn_off_diis = .TRUE. - -@@ -306,7 +320,7 @@ - ! turn the (default OFF) diis parameters on. - ! I guess we should turn diis ON for the user. - ! I mean, we're at iteration #800. What else can we do? -- if ( scf_iteration == 800 ) then -+ if ( scf_iteration == switch_on_diis_last_resort ) then - i = remaining_diis_tokens( 100 ) - dont_turn_off_diis = .TRUE. - -@@ -329,8 +343,8 @@ - ! end if - - -- diis_is_off = qmmm_nml%ndiis_attempts < 1 .OR. qmmm_nml%ndiis_matrices < 2 -- errmat_is_converged = errval < qmmm_nml%errconv !.OR. diis_is_off -+ ! Is the error matrix converged? Set to true if we don't check for the error matrix -+ errmat_is_converged = errval < qmmm_nml%errconv .OR. ( .not. errmat_is_on ) - - - if (abs(energy_diff) < qmmm_nml%scfconv .AND. & -@@ -379,7 +393,7 @@ - ! We have decided that we have not converged - ! We must diagonalize a fock matrix so that the next iteration can form a new guess - ! density matrix, provided a set of trial orbitals -- if (qmmm_mpi%commqmmm_master) then -+ if (qmmm_mpi%commqmmm_master .and. (.not. diis_is_off) .and. ( scf_iteration >= switch_on_diis ) ) then - CALL diis_extrap( qm2_struct%matsize, fock_matrix , fock_extrap_flag ) - end if - -@@ -1941,10 +1955,6 @@ - _REAL_,intent(out) :: pf(npf) ! packed fock matrix - character(len=1),intent(out) :: extrap_flag - --! integer :: scf_iterator_value --! integer :: diis_iterator_value --! integer :: diis_iterator_prev_value --! integer :: remaining_diis_tokens - _REAL_ :: current_scf_errval - - logical :: HAVE_DIIS_DATA -@@ -1975,7 +1985,6 @@ - ERR_IS_SMALL = current_scf_errval() < 0.5d0 - HAVE_DIIS_TOKENS = remaining_diis_tokens() > 0 - EXTRAPOLATE = HAVE_DIIS_DATA .AND. ERR_IS_SMALL .AND. HAVE_DIIS_TOKENS -- - IF ( .NOT. EXTRAPOLATE ) THEN - pf = qm2_struct%diis_fock( : , diis_idx ) - RETURN -diff -urN amber11.orig/AmberTools/src/sqm/qmmm_module.f amber11/AmberTools/src/sqm/qmmm_module.f ---- amber11.orig/AmberTools/src/sqm/qmmm_module.f 2010-04-14 16:13:28.000000000 +0400 -+++ amber11/AmberTools/src/sqm/qmmm_module.f 2011-03-08 16:38:44.000000000 +0300 -@@ -84,7 +84,7 @@ - !--------- SIZE / ARRAY LIMITATIONS ----------------------- - - ! Locks maximum valence orbitals at 4 = S,P (no D or F - code is not present) -- integer, parameter :: MAX_VALENCE_ORBITALS =4 -+ integer, parameter :: MAX_VALENCE_ORBITALS = 4 - integer, parameter :: MAX_VALENCE_DIMENSION = MAX_VALENCE_ORBITALS*(MAX_VALENCE_ORBITALS+1)/2 - - !---------------------------------------------------------- -diff -urN amber11.orig/AmberTools/src/sqm/sqm.f amber11/AmberTools/src/sqm/sqm.f ---- amber11.orig/AmberTools/src/sqm/sqm.f 2010-04-14 16:13:28.000000000 +0400 -+++ amber11/AmberTools/src/sqm/sqm.f 2011-03-08 16:38:44.000000000 +0300 -@@ -13,7 +13,7 @@ - - implicit none - -- _REAL_ x(3000), f(3000), escf, reff(1000), onereff(1000), work(18000), scf_mchg(1000) -+ _REAL_ x(3000), f(3000), escf, reff(1000), onereff(1000), work(18000) - character(len=8) atnam(1000) - _REAL_ born_radii(1000), one_born_radii(1000) - _REAL_ intdiel, extdiel, Arad -@@ -104,20 +104,23 @@ - call allocate_qmgb(qmmm_struct%nquant_nlink) - - allocate( qmmm_struct%dxyzqm(3, qmmm_struct%nquant_nlink), stat = ier ) -- REQUIRE(ier == 0) !Deallocated in deallocate qmmm -+ REQUIRE(ier == 0) -+ -+ allocate ( qm2_struct%scf_mchg(qmmm_struct%nquant_nlink), stat = ier ) -+ REQUIRE(ier == 0) - - if (maxcyc < 1) then - ! ------------------------ - ! Single point calculation - ! ------------------------ - call sqm_energy(natom, x, escf, born_radii, one_born_radii, & -- intdiel, extdiel, Arad, scf_mchg ) -+ intdiel, extdiel, Arad, qm2_struct%scf_mchg ) - else - ! --------------------- - ! Geometry optimization - ! --------------------- - call xmin(natom, x, f, escf, xmin_iter, maxcyc, born_radii, & -- one_born_radii, intdiel, extdiel, Arad, scf_mchg, grms_tol, ntpr) -+ one_born_radii, intdiel, extdiel, Arad, qm2_struct%scf_mchg, grms_tol, ntpr) - end if - - ! ---------------- -@@ -140,7 +143,7 @@ - - write(6,*) '' - call qm2_print_charges(1,qmmm_nml%dftb_chg,qmmm_struct%nquant_nlink, & -- scf_mchg,qmmm_struct%iqm_atomic_numbers) -+ qm2_struct%scf_mchg,qmmm_struct%iqm_atomic_numbers) - - write(6,*) '' - write(6,*) 'Final Structure' -@@ -150,6 +153,12 @@ - write(6,*) ' --------- Calculation Completed ----------' - write(6,*) - -+ deallocate( qmmm_struct%dxyzqm, stat = ier ) -+ REQUIRE(ier == 0) -+ -+ deallocate ( qm2_struct%scf_mchg, stat = ier ) -+ REQUIRE(ier == 0) -+ - call mexit(6,0) - - end program sqm -diff -urN amber11.orig/AmberTools/test/check_slko_files.x amber11/AmberTools/test/check_slko_files.x ---- amber11.orig/AmberTools/test/check_slko_files.x 1970-01-01 03:00:00.000000000 +0300 -+++ amber11/AmberTools/test/check_slko_files.x 2011-03-08 16:38:44.000000000 +0300 -@@ -0,0 +1,14 @@ -+#!/bin/csh -f -+#checks if cc.spl file exists - if it does then it -+#assumes that all slko files are installed. -+ -+if( -r $AMBERHOME/dat/slko/C-C.skf ) then -+ #Exists -+ exit(0) -+else -+ echo "DFTB SLKO files not found - Skipping DFTB tests..." -+ echo "" -+ exit(1) -+endif -+ -+ -diff -urN amber11.orig/AmberTools/test/nab/cuv.H1.4.dx.check amber11/AmberTools/test/nab/cuv.H1.4.dx.check ---- amber11.orig/AmberTools/test/nab/cuv.H1.4.dx.check 2010-04-07 16:55:55.000000000 +0400 -+++ amber11/AmberTools/test/nab/cuv.H1.4.dx.check 2011-03-08 16:38:44.000000000 +0300 -@@ -344,7 +344,7 @@ - 0.70282E-001 0.80739E-001 0.91198E-001 - 0.94417E-001 0.91703E-001 0.77197E-001 - 0.50502E-001 0.19853E-001 -0.36599E-003 -- 0.22738E-005 0.16691E-001 0.36195E-001 -+ 0.22736E-005 0.16691E-001 0.36195E-001 - 0.49401E-001 0.53981E-001 0.53966E-001 - 0.47335E-001 0.56527E-001 0.67703E-001 - 0.78860E-001 0.90368E-001 0.10008E+000 -diff -urN amber11.orig/AmberTools/test/nab/huv.H1.4.dx.check amber11/AmberTools/test/nab/huv.H1.4.dx.check ---- amber11.orig/AmberTools/test/nab/huv.H1.4.dx.check 2010-04-07 16:55:55.000000000 +0400 -+++ amber11/AmberTools/test/nab/huv.H1.4.dx.check 2011-03-08 16:38:44.000000000 +0300 -@@ -37,7 +37,7 @@ - -0.39322E-002 -0.18784E-002 -0.58137E-002 - 0.10207E-002 0.62249E-003 -0.98638E-003 - 0.37094E-003 -0.28752E-003 0.22042E-004 -- -0.99891E-004 0.15368E-003 -0.19634E-004 -+ -0.99891E-004 0.15368E-003 -0.19635E-004 - 0.35824E-003 -0.40488E-003 0.40397E-003 - 0.14213E-003 0.61945E-002 -0.76858E-002 - 0.81862E-002 -0.54091E-002 0.13352E-002 -@@ -58,7 +58,7 @@ - 0.22994E-002 -0.34751E-002 -0.37733E-001 - -0.16433E-001 -0.59317E-002 0.71093E-002 - -0.46373E-002 0.32238E-002 -0.25894E-002 -- 0.22145E-002 -0.65291E-004 -0.12695E-003 -+ 0.22145E-002 -0.65292E-004 -0.12695E-003 - -0.16873E-003 0.45506E-003 -0.14159E-002 - 0.16342E-002 -0.79582E-002 0.56556E-002 - -0.43786E-001 -0.46923E-002 -0.27685E-002 -@@ -96,11 +96,11 @@ - 0.34445E-003 0.33513E-002 0.63723E-003 - -0.45516E-003 0.16641E-004 -0.90223E-004 - 0.10300E-003 -0.99252E-004 0.15249E-004 -- -0.10662E-004 -0.19945E-004 -0.63404E-006 -+ -0.10662E-004 -0.19945E-004 -0.63406E-006 - 0.11124E-004 -0.28230E-004 -0.31534E-003 - -0.33642E-002 -0.57217E-003 -0.27793E-002 - -0.74846E-003 0.29526E-003 -0.94696E-004 -- 0.64217E-004 -0.66025E-004 -0.40449E-005 -+ 0.64216E-004 -0.66025E-004 -0.40449E-005 - -0.30799E-004 -0.16361E-004 -0.62269E-004 - -0.51020E-005 -0.16001E-003 0.92448E-004 - -0.57830E-003 -0.21012E-002 -0.69590E-003 -@@ -117,7 +117,7 @@ - -0.21378E-002 -0.44258E-003 -0.15111E-002 - -0.13934E-002 0.53131E-003 -0.22947E-003 - -0.74937E-005 -0.46655E-004 -0.61371E-004 -- 0.61593E-004 0.13955E-004 0.16010E-003 -+ 0.61594E-004 0.13955E-004 0.16010E-003 - -0.17966E-003 0.34275E-003 -0.36108E-003 - 0.76113E-003 0.23418E-002 0.29182E-003 - 0.19046E-002 0.12879E-002 -0.85274E-003 -@@ -131,7 +131,7 @@ - -0.24936E-003 0.43593E-003 -0.38975E-003 - 0.48502E-003 -0.28550E-003 0.94466E-003 - 0.27789E-002 0.71808E-003 0.38223E-002 -- -0.14124E-004 -0.13567E-002 0.12326E-002 -+ -0.14125E-004 -0.13567E-002 0.12326E-002 - -0.66934E-003 0.45864E-003 -0.28062E-003 - -0.43706E-003 0.34374E-003 -0.56160E-003 - 0.23427E-003 -0.19776E-003 -0.12917E-003 -@@ -182,7 +182,7 @@ - -0.11703E-002 0.14706E-002 -0.40144E-003 - 0.10286E-003 0.45475E-004 -0.49081E-004 - -0.47357E-004 0.54489E-006 -0.61082E-004 -- 0.65984E-004 -0.69587E-004 -0.10541E-003 -+ 0.65984E-004 -0.69588E-004 -0.10541E-003 - 0.64247E-003 0.25698E-002 0.28005E-002 - 0.27413E-002 0.12876E-002 -0.75471E-003 - 0.57492E-004 0.66448E-004 -0.42928E-004 -@@ -229,7 +229,7 @@ - -0.40783E-002 0.30972E-002 -0.35632E-002 - -0.14974E-004 0.13258E-002 -0.10864E-002 - 0.34485E-003 -0.16911E-003 -0.62126E-004 -- 0.72158E-004 -0.22208E-004 0.77266E-004 -+ 0.72158E-004 -0.22208E-004 0.77265E-004 - 0.24040E-003 -0.72533E-003 0.13593E-002 - -0.16119E-002 0.10078E-001 -0.20050E-001 - 0.72175E-002 -0.45419E-002 0.45478E-003 -@@ -292,7 +292,7 @@ - 0.33230E-003 -0.62327E-003 0.36713E-003 - -0.30819E-002 -0.32037E-003 -0.17162E-002 - -0.14580E-002 0.46999E-003 -0.97290E-004 -- -0.73333E-004 0.14729E-006 -0.11485E-003 -+ -0.73333E-004 0.14727E-006 -0.11485E-003 - -0.10058E-003 0.62528E-004 -0.17489E-003 - 0.15221E-003 -0.46879E-003 0.25396E-003 - -0.52915E-003 -0.27851E-002 0.22929E-002 -@@ -318,7 +318,7 @@ - -0.68610E-003 0.64051E-003 -0.81356E-003 - 0.24281E-003 -0.94464E-003 -0.31260E-002 - 0.48815E-002 -0.32512E-002 -0.12194E-002 -- 0.15282E-002 -0.10747E-002 0.37017E-003 -+ 0.15282E-002 -0.10747E-002 0.37016E-003 - -0.43401E-003 0.37194E-003 0.90390E-003 - -0.87376E-003 0.10045E-002 -0.10100E-002 - 0.89048E-003 -0.53634E-003 0.18096E-002 -@@ -355,14 +355,14 @@ - 0.26923E-003 -0.62333E-003 0.92867E-003 - -0.23947E-002 0.40142E-002 -0.86299E-002 - 0.45605E-002 -0.33767E-001 0.48411E-002 -- -0.86790E-002 0.13146E-002 -0.92538E-004 -+ -0.86790E-002 0.13146E-002 -0.92539E-004 - -0.33552E-003 -0.15197E-003 0.54828E-004 - -0.61954E-003 0.61334E-003 -0.71350E-003 - 0.88754E-003 -0.46185E-003 -0.11825E-002 - 0.49261E-002 -0.92336E-002 0.11674E-001 - -0.57510E-002 0.61122E-002 0.39077E-003 - -0.16127E-002 0.13002E-002 -0.76188E-003 -- 0.68127E-003 0.46393E-003 -0.60936E-003 -+ 0.68127E-003 0.46394E-003 -0.60936E-003 - 0.83803E-003 -0.13684E-002 0.18949E-002 - -0.20507E-002 0.86720E-003 0.55761E-002 - -0.38872E-002 0.87045E-002 0.57034E-003 -@@ -384,7 +384,7 @@ - 0.14459E-002 -0.36764E-002 -0.16466E-002 - 0.78190E-003 -0.21388E-003 -0.13391E-003 - -0.71292E-004 -0.25972E-004 0.81385E-005 -- -0.75784E-005 0.84210E-004 -0.57027E-004 -+ -0.75783E-005 0.84210E-004 -0.57027E-004 - 0.24646E-003 -0.15344E-004 0.44974E-003 - 0.29483E-002 -0.13186E-002 0.30172E-002 - 0.14066E-002 -0.51937E-003 0.13804E-003 -@@ -425,7 +425,7 @@ - 0.15873E-002 -0.26341E-002 0.28432E-002 - 0.49007E-003 0.10263E-001 -0.44098E-001 - 0.25985E-003 -0.50604E-002 0.20816E-002 -- -0.97801E-005 -0.13212E-003 -0.22909E-003 -+ -0.97796E-005 -0.13212E-003 -0.22909E-003 - 0.48134E-003 0.52250E-002 -0.61139E-002 - 0.74868E-002 -0.97022E-002 0.12736E-001 - -0.13924E-001 0.13569E-001 -0.16048E-001 -@@ -442,13 +442,13 @@ - -0.17468E-001 0.24222E-001 -0.13107E+000 - -0.65242E-001 0.19459E-001 -0.38769E-002 - -0.13998E-002 0.28896E-002 -0.44039E-002 -- 0.52052E-002 0.11744E-002 0.25963E-003 -+ 0.52052E-002 0.11744E-002 0.25964E-003 - -0.21866E-002 0.47172E-002 -0.81182E-002 - 0.10154E-001 -0.15684E-001 0.18417E-001 - -0.10597E+000 0.22097E-001 0.78443E-003 - -0.56097E-002 0.55039E-002 -0.44612E-002 - 0.32653E-002 -0.22953E-002 -0.13331E-002 -- 0.91243E-003 -0.94485E-004 -0.12826E-002 -+ 0.91243E-003 -0.94484E-004 -0.12826E-002 - 0.43961E-002 -0.78443E-002 0.13464E-001 - -0.13779E-002 0.40528E-001 -0.22036E-002 - 0.10425E-001 -0.96531E-003 -0.13430E-002 -@@ -512,13 +512,13 @@ - 0.11827E-001 -0.45014E-002 0.27467E-002 - -0.41543E-003 -0.71183E-003 0.52608E-003 - -0.64382E-003 0.45191E-003 0.50605E-003 -- -0.44980E-003 0.37809E-003 -0.38388E-004 -+ -0.44981E-003 0.37809E-003 -0.38389E-004 - -0.49061E-003 -0.81143E-003 0.86459E-002 - -0.45388E-002 -0.19539E-001 -0.35704E-002 -- -0.21204E-002 0.67039E-003 0.70119E-003 -+ -0.21204E-002 0.67038E-003 0.70119E-003 - -0.74427E-003 0.55233E-003 -0.45289E-003 - -0.11702E-002 0.10513E-002 -0.10446E-002 -- 0.48184E-003 -0.52832E-003 0.40688E-002 -+ 0.48184E-003 -0.52833E-003 0.40688E-002 - -0.13663E-001 -0.53287E-002 0.80893E-001 - 0.13554E-001 0.87640E-003 -0.12860E-002 - -0.94409E-003 0.13653E-002 -0.14728E-002 -@@ -570,12 +570,12 @@ - 0.55487E-003 0.57562E-002 -0.85141E-003 - 0.10230E-001 0.16214E-002 -0.31963E-002 - 0.16965E-002 -0.39151E-003 0.11883E-003 -- 0.27054E-005 -0.64436E-004 0.29371E-004 -+ 0.27053E-005 -0.64436E-004 0.29371E-004 - -0.24818E-003 0.15603E-003 -0.36597E-003 - -0.15165E-003 -0.30508E-003 -0.55843E-002 - 0.25615E-002 -0.87369E-002 -0.12896E-002 - 0.21029E-002 -0.12728E-002 0.23925E-003 -- -0.20980E-003 -0.40398E-004 -0.37869E-004 -+ -0.20980E-003 -0.40397E-004 -0.37869E-004 - -0.22762E-004 0.97304E-004 -0.13256E-003 - 0.76121E-004 0.46124E-003 -0.11364E-003 - 0.51685E-002 -0.25639E-002 0.77172E-002 -@@ -627,7 +627,7 @@ - -0.13873E-001 0.13771E-001 -0.15353E-001 - 0.19554E-001 -0.31206E-001 0.64687E-002 - 0.12878E+000 0.43115E+000 0.18311E+000 -- -0.42341E-001 0.49587E-002 0.50176E-002 -+ -0.42341E-001 0.49588E-002 0.50176E-002 - -0.10381E-001 0.12020E-001 -0.13237E-001 - -0.18428E-001 0.21596E-001 -0.25230E-001 - 0.33125E-001 -0.42929E-001 0.59353E-001 -@@ -693,12 +693,12 @@ - -0.13202E-001 -0.15081E-001 0.28654E-002 - 0.45947E-002 -0.39497E-002 0.16991E-002 - -0.85009E-003 0.46037E-003 -0.41389E-003 -- -0.11503E-004 -0.26360E-004 0.13328E-004 -+ -0.11503E-004 -0.26361E-004 0.13328E-004 - 0.44265E-003 -0.10259E-002 -0.89230E-003 - 0.43360E-002 0.12999E-001 0.67878E-002 - -0.14383E-001 -0.53637E-003 0.27114E-002 - -0.14313E-002 0.43554E-003 -0.55232E-004 -- 0.54550E-004 -0.19917E-002 0.19778E-002 -+ 0.54549E-004 -0.19917E-002 0.19778E-002 - -0.22171E-002 0.17858E-002 -0.28501E-002 - 0.81796E-002 -0.15748E-001 -0.97599E-002 - 0.11465E-001 0.41396E-001 -0.12368E-001 -@@ -737,7 +737,7 @@ - 0.33287E-001 -0.21712E-001 0.12598E-001 - -0.78119E-002 0.22442E-002 -0.20161E-001 - 0.21504E-001 -0.24273E-001 0.27271E-001 -- -0.28503E-001 0.16461E-001 -0.41419E-004 -+ -0.28503E-001 0.16461E-001 -0.41414E-004 - -0.12990E+000 0.75360E-001 -0.11560E+000 - -0.19544E-001 0.27969E-001 -0.25346E-001 - 0.21675E-001 -0.20092E-001 0.19462E-001 -@@ -766,7 +766,7 @@ - -0.47737E-003 -0.51835E-004 0.58766E-003 - -0.52596E-003 0.72315E-003 -0.11079E-001 - -0.25431E-001 -0.12595E-001 0.68054E-002 -- -0.18857E-002 0.60829E-004 0.13868E-003 -+ -0.18857E-002 0.60830E-004 0.13868E-003 - -0.55933E-003 0.34562E-003 -0.15041E-003 - 0.80074E-004 -0.32555E-003 0.67842E-003 - -0.15202E-002 0.14050E-002 -0.80795E-003 -@@ -798,7 +798,7 @@ - -0.27721E-002 0.29741E-002 -0.49061E-003 - -0.72566E-002 0.14443E-001 -0.11927E-001 - 0.82051E-001 0.95570E-002 0.10700E-002 -- -0.33922E-004 0.14627E-003 0.88681E-003 -+ -0.33919E-004 0.14627E-003 0.88681E-003 - -0.13081E-002 0.21604E-002 0.33550E-002 - -0.40840E-002 0.36977E-002 -0.35055E-002 - 0.41269E-003 0.67781E-002 0.27814E-002 -@@ -892,9 +892,9 @@ - 0.63672E-002 -0.57904E-002 0.46308E-002 - -0.36396E-002 -0.26400E-002 0.17391E-002 - -0.14131E-002 0.78246E-003 -0.61051E-003 -- 0.63366E-003 0.24693E-001 0.29656E-001 -+ 0.63365E-003 0.24693E-001 0.29656E-001 - 0.13438E+000 0.27901E-001 -0.22954E-001 -- 0.12869E-001 -0.76758E-002 0.58582E-002 -+ 0.12869E-001 -0.76757E-002 0.58582E-002 - -0.46806E-002 0.36183E-002 0.68827E-002 - -0.57133E-002 0.56860E-002 -0.66211E-002 - 0.99125E-002 -0.15797E-001 -0.52503E-002 -@@ -908,7 +908,7 @@ - -0.45900E-001 0.36916E-001 -0.30142E-001 - 0.26465E-001 0.50030E-001 -0.48827E-001 - 0.51561E-001 -0.58944E-001 0.74179E-001 -- -0.94716E-001 0.36687E-001 -0.46168E+000 -+ -0.94715E-001 0.36687E-001 -0.46168E+000 - -0.10000E+001 -0.17472E+000 0.15670E+000 - -0.98122E-001 0.78741E-001 -0.64288E-001 - 0.58448E-001 -0.52472E-001 0.59653E-001 -@@ -931,7 +931,7 @@ - -0.21260E-001 0.26058E-001 -0.35050E-001 - 0.44521E-001 -0.58930E-001 -0.46967E-002 - -0.62950E+000 -0.10000E+001 -0.58023E+000 -- 0.84660E-001 -0.20803E-001 -0.24936E-003 -+ 0.84661E-001 -0.20803E-001 -0.24937E-003 - -0.56711E-002 0.77515E-002 -0.12967E-001 - -0.33634E-001 0.36370E-001 -0.40813E-001 - 0.52730E-001 -0.69416E-001 0.11055E+000 -@@ -940,7 +940,7 @@ - -0.50993E-001 0.42341E-001 -0.35645E-001 - 0.34334E-001 0.13016E-002 -0.18908E-002 - 0.21484E-002 -0.35223E-002 0.43357E-002 -- -0.52692E-002 -0.30889E-001 -0.10458E+000 -+ -0.52692E-002 -0.30890E-001 -0.10458E+000 - 0.59570E-001 -0.10076E+000 -0.14057E-001 - 0.10367E-001 -0.60574E-002 0.13132E-002 - 0.10164E-003 -0.11144E-002 -0.80129E-003 -@@ -1070,7 +1070,7 @@ - -0.27848E-002 0.34661E-002 -0.63123E-002 - 0.10345E-001 -0.10633E-001 -0.26698E-001 - 0.37697E-001 -0.14235E-001 -0.27804E-003 -- -0.11597E-002 0.47695E-005 0.21900E-003 -+ -0.11597E-002 0.47700E-005 0.21900E-003 - -0.12610E-002 0.14246E-002 0.19513E-002 - -0.22230E-002 0.25913E-002 -0.34398E-002 - 0.62826E-002 -0.11033E-001 0.11857E-001 -@@ -1096,7 +1096,7 @@ - 0.17629E-001 -0.16578E-001 0.17704E-001 - -0.21181E-001 0.31547E-001 -0.44986E-001 - 0.53814E-001 0.61709E-001 0.41895E-001 -- -0.58391E-002 0.71644E-001 -0.50130E-001 -+ -0.58392E-002 0.71644E-001 -0.50130E-001 - 0.37052E-001 -0.27166E-001 0.23023E-001 - -0.18847E-001 -0.57070E-002 0.32394E-002 - -0.47133E-002 0.71203E-002 -0.17409E-001 -@@ -1107,7 +1107,7 @@ - 0.49908E-002 0.25980E-002 -0.10390E-001 - 0.32835E-001 -0.45644E-001 0.28388E-001 - 0.32651E+000 0.74550E+000 0.24253E-001 -- 0.23336E-001 -0.11200E-002 -0.67666E-003 -+ 0.23336E-001 -0.11200E-002 -0.67665E-003 - 0.71472E-002 -0.62491E-002 0.83474E-002 - 0.87319E-002 -0.53331E-002 -0.65393E-002 - 0.88129E-002 -0.14593E-001 -0.30915E-001 -@@ -1176,7 +1176,7 @@ - -0.12868E-002 0.13040E-002 -0.18307E-002 - 0.20870E-002 -0.20382E-002 -0.55964E-003 - 0.10698E-001 -0.18290E-001 -0.17347E-001 -- -0.20057E-001 0.63536E-002 0.17849E-002 -+ -0.20057E-001 0.63535E-002 0.17849E-002 - -0.22938E-002 0.16177E-002 -0.12481E-002 - 0.13489E-002 0.17604E-002 -0.20387E-002 - 0.25830E-002 -0.26311E-002 0.23498E-002 -@@ -1185,10 +1185,10 @@ - 0.18402E-003 0.20794E-002 -0.11926E-002 - 0.85856E-003 -0.15532E-002 -0.58085E-003 - 0.92325E-003 -0.15671E-002 0.13684E-002 -- -0.42686E-004 -0.63990E-002 0.22899E-001 -+ -0.42684E-004 -0.63990E-002 0.22899E-001 - -0.20083E-001 -0.31172E-001 -0.30073E-001 - 0.24308E-001 -0.79050E-002 0.21845E-002 -- -0.11634E-002 0.88798E-003 -0.46213E-005 -+ -0.11634E-002 0.88799E-003 -0.46216E-005 - -0.36939E-002 0.25957E-002 -0.19040E-002 - 0.22213E-002 -0.44518E-002 0.13471E-001 - -0.31065E-001 0.13930E-001 0.26443E-001 -@@ -1216,7 +1216,7 @@ - 0.12872E+000 -0.22970E+000 0.37029E-001 - -0.71820E-002 -0.61730E-002 0.60023E-002 - -0.62195E-002 0.33179E-002 0.35063E-002 -- -0.15743E-002 0.24932E-003 0.59944E-003 -+ -0.15743E-002 0.24932E-003 0.59943E-003 - 0.50805E-002 -0.22435E-001 0.78080E-001 - -0.11217E+000 0.27769E+000 0.13301E-001 - 0.48142E-001 -0.25712E-001 0.18216E-001 -@@ -1234,8 +1234,8 @@ - -0.37349E-002 0.40923E-002 0.33100E-003 - -0.73044E-003 0.14901E-002 -0.27451E-002 - 0.39569E-002 -0.39194E-002 -0.22396E-002 -- 0.69572E-002 0.15456E-001 0.68766E-003 -- -0.55836E-002 -0.59161E-004 0.28366E-003 -+ 0.69572E-002 0.15456E-001 0.68765E-003 -+ -0.55836E-002 -0.59162E-004 0.28366E-003 - 0.59373E-005 -0.29036E-003 -0.28278E-003 - -0.93105E-004 0.55976E-004 -0.22540E-003 - 0.63416E-003 -0.86325E-003 -0.56872E-003 -@@ -1259,13 +1259,13 @@ - -0.21463E-002 -0.95702E-003 0.16305E-002 - -0.48868E-003 0.37838E-003 -0.98649E-004 - 0.17415E-003 -0.39204E-003 0.40478E-003 -- -0.47636E-003 0.25159E-003 0.32794E-005 -+ -0.47636E-003 0.25159E-003 0.32795E-005 - -0.27191E-003 -0.25541E-002 0.80677E-002 - 0.23348E-001 0.22086E-002 0.10997E-002 - -0.16811E-002 0.61473E-003 -0.17759E-003 - -0.60773E-004 0.91723E-004 0.50744E-003 - -0.63597E-003 0.55533E-003 -0.33123E-003 -- -0.68908E-005 0.25682E-003 0.26735E-002 -+ -0.68909E-005 0.25682E-003 0.26735E-002 - -0.91015E-002 -0.22651E-001 -0.42938E-002 - -0.10604E-002 0.20136E-002 -0.89377E-003 - 0.20609E-003 0.28182E-004 -0.21460E-003 -@@ -1273,7 +1273,7 @@ - 0.63594E-004 0.46567E-003 -0.90712E-003 - -0.31638E-002 0.94292E-002 0.26064E-001 - 0.58926E-002 0.14824E-003 -0.26379E-002 -- 0.13364E-002 -0.27849E-003 0.67584E-007 -+ 0.13364E-002 -0.27849E-003 0.67664E-007 - 0.21329E-003 0.75173E-003 -0.70904E-003 - 0.24518E-003 -0.31473E-003 -0.44500E-003 - -0.26955E-003 0.56039E-002 -0.11484E-001 -@@ -1298,7 +1298,7 @@ - -0.74153E-002 0.51462E-002 -0.85486E-002 - 0.10486E-001 -0.12082E-001 0.13714E-001 - -0.11389E-001 0.19279E-002 0.36232E-001 -- -0.48818E-001 0.17388E+000 -0.35474E-002 -+ -0.48818E-001 0.17388E+000 -0.35475E-002 - -0.97685E-002 0.97677E-002 -0.64763E-002 - 0.62604E-002 -0.67795E-002 0.78175E-002 - 0.18823E-001 -0.16976E-001 0.13255E-001 -@@ -1310,7 +1310,7 @@ - -0.59406E-002 0.53394E-002 -0.13726E-002 - -0.50565E-002 0.17728E-001 0.83748E-001 - -0.37446E-001 0.12400E+000 -0.15472E-001 -- -0.38171E-003 0.54899E-002 -0.24982E-002 -+ -0.38172E-003 0.54899E-002 -0.24982E-002 - -0.85504E-004 0.30624E-002 0.30068E-002 - -0.46418E-002 0.65796E-002 -0.90030E-002 - 0.10723E-001 -0.66793E-002 -0.19808E-001 -@@ -1330,7 +1330,7 @@ - 0.99945E-003 -0.12217E-002 0.75822E-003 - -0.58237E-003 0.70553E-004 0.47287E-004 - -0.92834E-003 0.22845E-002 -0.35398E-003 -- -0.49955E-002 -0.32604E-001 0.29414E-003 -+ -0.49955E-002 -0.32604E-001 0.29415E-003 - 0.26270E-002 0.12013E-003 0.18530E-003 - -0.67394E-003 0.78294E-003 -0.77240E-003 - -0.39514E-003 0.36294E-003 -0.34122E-003 -@@ -1340,7 +1340,7 @@ - -0.43384E-003 0.62665E-003 -0.53140E-003 - 0.35037E-003 0.11598E-003 -0.33590E-004 - 0.77756E-004 -0.11361E-003 0.29272E-004 -- 0.53713E-003 0.24967E-002 -0.95835E-002 -+ 0.53714E-003 0.24967E-002 -0.95835E-002 - -0.23813E-001 -0.28729E-002 0.35840E-003 - 0.75277E-003 0.14870E-003 -0.18813E-003 - 0.13874E-003 0.53665E-005 -0.82118E-004 -@@ -1383,7 +1383,7 @@ - 0.14890E-002 -0.11973E-002 0.75295E-003 - -0.10473E-002 0.10737E-002 -0.99465E-003 - 0.10667E-002 0.18484E-003 -0.15909E-002 -- -0.44370E-003 0.65566E-002 0.16554E-001 -+ -0.44371E-003 0.65566E-002 0.16554E-001 - 0.15235E-001 -0.16429E-001 0.79078E-002 - -0.29231E-002 0.16543E-002 -0.11884E-002 - 0.10008E-002 0.22131E-002 -0.11833E-002 -@@ -1395,7 +1395,7 @@ - -0.34902E-002 0.51729E-002 -0.78836E-002 - 0.96755E-002 -0.80416E-002 -0.15180E-001 - 0.48776E-001 -0.11424E+000 0.12364E-001 -- 0.32693E-002 -0.19227E-002 -0.65699E-004 -+ 0.32693E-002 -0.19227E-002 -0.65698E-004 - 0.16871E-003 0.29036E-004 -0.95792E-003 - -0.31449E-002 0.21159E-002 -0.34442E-003 - 0.30292E-003 0.22482E-002 -0.56246E-002 -@@ -1476,10 +1476,10 @@ - -0.15578E-002 0.14449E-002 -0.13015E-002 - 0.35158E-002 0.18690E-001 0.71087E-002 - -0.33624E-002 -0.86947E-004 0.13615E-002 -- -0.25872E-003 -0.28246E-003 0.49430E-003 -+ -0.25873E-003 -0.28246E-003 0.49430E-003 - 0.20061E-002 -0.22055E-002 0.25174E-002 - -0.32849E-002 0.24711E-002 -0.12430E-002 -- 0.31615E-004 -0.16073E-002 -0.13936E-001 -+ 0.31616E-004 -0.16073E-002 -0.13936E-001 - -0.78198E-002 0.10677E-001 -0.53430E-002 - 0.19467E-002 -0.20078E-002 0.18727E-002 - -0.18399E-002 -0.24069E-002 0.18144E-002 -@@ -1523,13 +1523,13 @@ - -0.57937E-004 0.38925E-004 -0.25529E-003 - -0.80223E-004 0.62244E-003 -0.92409E-003 - -0.50111E-002 -0.15028E-001 -0.48849E-002 -- 0.10809E-002 0.94785E-003 -0.90578E-003 -+ 0.10809E-002 0.94785E-003 -0.90579E-003 - 0.21632E-003 0.48547E-004 -0.10362E-003 - 0.65746E-004 -0.57485E-004 -0.10330E-003 - 0.17296E-003 -0.10843E-003 -0.17317E-003 - 0.24191E-003 0.53215E-002 0.12629E-001 - 0.39700E-002 -0.84627E-004 -0.65947E-003 -- 0.46649E-003 -0.16035E-003 0.28558E-005 -+ 0.46649E-003 -0.16035E-003 0.28557E-005 - -0.74149E-004 -0.74431E-004 0.89221E-004 - 0.14291E-004 -0.10742E-003 0.75570E-004 - 0.32302E-003 -0.45917E-003 -0.47563E-002 -@@ -1555,7 +1555,7 @@ - -0.24567E-003 0.25650E-003 -0.22210E-003 - 0.35310E-003 -0.54501E-003 0.49667E-003 - 0.46922E-002 0.53681E-003 0.53276E-002 -- -0.25038E-004 -0.47621E-003 0.25061E-003 -+ -0.25039E-004 -0.47621E-003 0.25061E-003 - -0.14151E-003 0.25689E-003 -0.23625E-003 - -0.39925E-003 0.24288E-003 -0.45878E-003 - 0.19103E-003 -0.46845E-003 0.39169E-003 -@@ -1602,7 +1602,7 @@ - -0.42312E-002 0.26362E-002 0.71520E-003 - -0.20235E-003 -0.89467E-004 0.11620E-002 - -0.32420E-002 0.52388E-002 0.58477E-003 -- -0.67996E-002 0.56024E-005 0.55241E-003 -+ -0.67996E-002 0.56018E-005 0.55241E-003 - 0.13967E-001 -0.58142E-002 0.37372E-002 - -0.25763E-002 0.19323E-002 -0.10220E-002 - -0.13957E-003 0.89996E-004 -0.29649E-003 -@@ -1726,7 +1726,7 @@ - -0.65025E-004 0.20691E-004 0.20988E-004 - 0.29987E-003 -0.69971E-003 -0.25561E-002 - -0.47408E-002 -0.17716E-002 -0.10624E-002 -- 0.72365E-003 -0.12367E-003 0.91100E-004 -+ 0.72365E-003 -0.12367E-003 0.91099E-004 - -0.11286E-003 0.65700E-004 -0.38225E-004 - -0.18443E-004 -0.10315E-004 -0.41438E-004 - -0.23530E-004 -0.27346E-003 0.79396E-003 -diff -urN amber11.orig/AmberTools/test/nab/huv.O.4.dx.check amber11/AmberTools/test/nab/huv.O.4.dx.check ---- amber11.orig/AmberTools/test/nab/huv.O.4.dx.check 2010-04-07 16:55:55.000000000 +0400 -+++ amber11/AmberTools/test/nab/huv.O.4.dx.check 2011-03-08 16:38:44.000000000 +0300 -@@ -42,10 +42,10 @@ - -0.26664E-002 0.76462E-002 -0.65646E-002 - 0.65013E-002 -0.98756E-002 0.51997E-002 - -0.15412E-002 0.14894E-002 -0.58327E-003 -- 0.74208E-003 -0.46330E-005 0.26925E-003 -+ 0.74208E-003 -0.46331E-005 0.26925E-003 - -0.21081E-003 0.19041E-003 -0.70176E-003 - 0.40604E-002 -0.59967E-002 0.25324E-001 -- -0.58949E-001 0.48671E-001 -0.63192E-002 -+ -0.58949E-001 0.48671E-001 -0.63193E-002 - -0.14555E-002 0.17515E-002 -0.12653E-002 - 0.59124E-003 -0.44081E-004 -0.46024E-003 - -0.33221E-003 0.43262E-003 -0.73462E-003 -@@ -55,10 +55,10 @@ - 0.29042E-002 -0.18964E-002 0.77617E-003 - -0.18302E-003 0.26483E-004 0.13553E-002 - -0.75012E-003 0.17059E-002 -0.70949E-003 -- 0.15620E-001 0.67864E-002 -0.96628E-001 -+ 0.15620E-001 0.67863E-002 -0.96628E-001 - -0.15238E-001 -0.64540E-002 0.11108E-001 - -0.71349E-002 0.42594E-002 -0.24297E-002 -- 0.14742E-002 0.50969E-003 -0.14490E-003 -+ 0.14742E-002 0.50969E-003 -0.14489E-003 - -0.15852E-002 0.26525E-002 -0.54371E-002 - 0.63513E-002 -0.19991E-001 0.88607E-003 - -0.90619E-001 -0.26234E-001 0.54685E-002 -@@ -74,7 +74,7 @@ - -0.67192E-002 0.20436E-002 0.15087E-002 - -0.12351E-001 -0.10538E-001 0.30347E-002 - -0.24133E-002 0.57521E-003 -0.89346E-003 -- -0.19758E-003 0.85846E-004 0.21885E-003 -+ -0.19759E-003 0.85846E-004 0.21885E-003 - 0.59427E-004 0.40476E-003 -0.45294E-003 - 0.17127E-002 0.22700E-002 -0.36055E-002 - -0.94861E-002 -0.31257E-002 0.59927E-002 -@@ -89,13 +89,13 @@ - -0.21190E-003 0.38823E-003 -0.99192E-004 - 0.14844E-002 -0.48467E-002 -0.10472E-001 - -0.56834E-002 0.17312E-002 0.44869E-003 -- 0.59430E-004 -0.99269E-004 0.22702E-003 -+ 0.59429E-004 -0.99269E-004 0.22702E-003 - -0.46728E-004 -0.99733E-004 -0.59632E-005 - -0.15996E-003 0.21334E-003 -0.60938E-003 - 0.46539E-003 -0.16741E-002 0.53916E-002 - 0.73981E-002 0.59857E-002 -0.16663E-002 - 0.12223E-003 -0.48450E-003 0.17812E-003 -- -0.11241E-003 -0.53881E-005 0.24248E-003 -+ -0.11241E-003 -0.53882E-005 0.24248E-003 - -0.20069E-003 0.17999E-003 -0.24877E-003 - 0.30370E-003 -0.44718E-003 0.73307E-003 - -0.42363E-002 -0.80946E-002 -0.48617E-002 -@@ -172,7 +172,7 @@ - 0.18498E-002 -0.73133E-003 0.88568E-003 - -0.14499E-003 -0.13914E-004 -0.23519E-003 - 0.28978E-003 -0.69524E-003 0.99658E-003 -- -0.19354E-002 -0.38389E-003 -0.15309E-003 -+ -0.19354E-002 -0.38389E-003 -0.15308E-003 - 0.11672E-001 0.37757E-002 -0.51548E-002 - -0.91017E-003 0.87189E-003 -0.57806E-003 - 0.16146E-003 -0.22842E-003 0.37037E-004 -@@ -181,7 +181,7 @@ - -0.96518E-003 -0.13418E-001 -0.54575E-002 - 0.20411E-002 0.10281E-002 -0.33249E-003 - 0.17999E-003 0.19469E-003 0.23293E-004 -- -0.45970E-005 -0.10166E-003 0.26448E-004 -+ -0.45969E-005 -0.10166E-003 0.26448E-004 - -0.60871E-004 0.21195E-003 -0.53324E-003 - 0.48474E-003 0.57259E-003 0.14242E-001 - 0.41534E-002 -0.65370E-003 -0.53279E-003 -@@ -259,7 +259,7 @@ - 0.23319E-002 -0.18642E-002 0.17647E-002 - -0.49400E-003 0.48144E-003 0.46341E-002 - 0.17097E-001 0.13221E-001 0.13122E-001 -- 0.88689E-002 -0.14616E-002 0.73569E-004 -+ 0.88689E-002 -0.14616E-002 0.73570E-004 - 0.16176E-002 -0.17425E-002 0.23255E-002 - 0.10067E-002 -0.10794E-002 0.61036E-003 - -0.79346E-003 -0.18114E-003 0.10066E-002 -@@ -296,7 +296,7 @@ - -0.79564E-003 0.73627E-003 -0.10642E-002 - 0.89864E-003 -0.15015E-002 0.74366E-003 - -0.10995E-002 -0.91302E-003 -0.14389E-002 -- -0.62659E-002 0.16322E-003 0.39747E-003 -+ -0.62659E-002 0.16322E-003 0.39746E-003 - -0.93576E-003 0.27055E-003 -0.70408E-003 - 0.55227E-003 0.91932E-003 -0.80784E-003 - 0.10504E-002 -0.99128E-003 0.13799E-002 -@@ -333,7 +333,7 @@ - 0.11332E-002 -0.36329E-002 0.45738E-002 - -0.64277E-002 0.84257E-002 -0.10759E-001 - 0.10170E-001 -0.10632E-001 -0.65535E-002 -- 0.50679E-001 -0.70621E-001 0.91916E-002 -+ 0.50679E-001 -0.70621E-001 0.91917E-002 - 0.32587E-002 -0.38023E-002 0.34644E-002 - -0.32950E-002 0.30559E-002 -0.13480E-003 - 0.19650E-002 -0.34448E-002 0.59077E-002 -@@ -364,7 +364,7 @@ - 0.19684E-002 -0.10859E-002 0.12621E-002 - -0.43675E-003 0.74924E-003 -0.10527E-002 - 0.16471E-002 -0.24027E-002 0.31736E-002 -- -0.29570E-002 -0.47347E-004 -0.17740E-002 -+ -0.29570E-002 -0.47348E-004 -0.17740E-002 - 0.12840E-002 0.13132E-001 -0.86557E-002 - -0.65506E-003 0.21598E-002 -0.13016E-002 - 0.84158E-003 -0.68238E-003 -0.21792E-003 -@@ -387,7 +387,7 @@ - -0.60950E-003 0.93571E-003 -0.76457E-003 - 0.12784E-002 -0.70392E-003 0.15756E-002 - -0.13275E-003 0.45733E-002 0.69172E-002 -- -0.41320E-003 -0.14128E-004 0.54688E-003 -+ -0.41320E-003 -0.14127E-004 0.54688E-003 - -0.19076E-004 0.49968E-003 -0.38501E-003 - 0.43234E-003 -0.22011E-003 -0.83980E-005 - 0.30076E-003 -0.68470E-003 0.24934E-002 -@@ -507,13 +507,13 @@ - 0.78218E-002 -0.41701E-002 -0.79742E-003 - 0.32867E-002 -0.37463E-002 0.34769E-002 - -0.26528E-002 -0.24349E-002 0.21354E-002 -- -0.24623E-002 0.90930E-003 0.54718E-003 -+ -0.24623E-002 0.90930E-003 0.54717E-003 - -0.17165E-002 0.28721E-003 -0.10121E-001 - 0.35717E-001 -0.26042E-002 0.34331E-002 - -0.19519E-003 -0.26581E-002 0.27915E-002 - -0.33505E-002 0.24742E-002 0.26514E-002 - -0.19360E-002 0.14202E-002 -0.31884E-003 -- -0.74542E-003 -0.87196E-003 0.41982E-002 -+ -0.74541E-003 -0.87196E-003 0.41982E-002 - 0.13483E-001 -0.64738E-001 -0.11160E-001 - 0.55671E-003 -0.98428E-003 0.33064E-002 - -0.35116E-002 0.31262E-002 -0.26684E-002 -@@ -524,7 +524,7 @@ - -0.22229E-002 0.28090E-002 -0.29004E-002 - 0.20027E-002 -0.27248E-002 0.44242E-002 - -0.69761E-002 0.87857E-002 -0.91317E-002 -- 0.23035E-002 -0.51691E-002 0.21490E-001 -+ 0.23035E-002 -0.51692E-002 0.21490E-001 - -0.37282E-001 -0.18265E+000 0.58260E-001 - -0.16382E-001 0.57561E-002 -0.21236E-002 - 0.14273E-003 0.11916E-002 0.90109E-003 -@@ -556,7 +556,7 @@ - 0.12840E-001 -0.78465E-002 0.66047E-002 - -0.46569E-002 0.17062E-002 -0.20716E-002 - 0.25710E-002 -0.29188E-002 0.15776E-002 -- 0.10926E-002 -0.65054E-002 -0.64167E-004 -+ 0.10926E-002 -0.65054E-002 -0.64166E-004 - 0.42370E-002 0.33049E-001 -0.26709E-001 - 0.72769E-002 -0.60839E-004 -0.13599E-002 - 0.14205E-002 -0.14190E-002 -0.17898E-002 -@@ -589,7 +589,7 @@ - -0.11534E-002 -0.28262E-003 -0.41205E-003 - 0.12794E-002 -0.27790E-002 0.41709E-002 - -0.68711E-002 0.84175E-002 -0.75839E-002 -- -0.28437E-001 0.50508E-003 0.41340E-002 -+ -0.28437E-001 0.50507E-003 0.41340E-002 - -0.61449E-003 -0.18493E-002 0.12523E-002 - -0.11168E-002 0.69345E-003 -0.83917E-004 - 0.57404E-003 -0.17705E-002 0.28814E-002 -@@ -611,14 +611,14 @@ - -0.13675E-002 0.26363E-002 -0.43034E-002 - 0.41848E-002 0.12480E-002 -0.36641E-002 - -0.34640E-001 0.87778E-001 0.58409E-001 -- -0.21333E-001 0.74525E-002 -0.48739E-002 -+ -0.21333E-001 0.74524E-002 -0.48739E-002 - 0.30753E-002 -0.18387E-002 0.69893E-003 -- 0.71286E-003 0.44580E-003 -0.24335E-002 -- 0.43811E-002 -0.38330E-002 -0.13636E-002 -+ 0.71285E-003 0.44580E-003 -0.24335E-002 -+ 0.43812E-002 -0.38330E-002 -0.13635E-002 - -0.13480E-001 0.11325E+000 -0.29436E+000 - -0.10004E+000 0.41518E-001 -0.16200E-001 - 0.94931E-002 -0.61992E-002 0.43081E-002 -- -0.25405E-002 -0.34159E-002 0.55821E-003 -+ -0.25405E-002 -0.34159E-002 0.55820E-003 - 0.27477E-002 -0.42526E-002 0.30568E-002 - 0.47572E-002 0.23098E-001 -0.11741E+000 - 0.20977E+000 0.38183E+000 -0.15864E+000 -@@ -640,11 +640,11 @@ - -0.21429E+000 -0.70469E-001 0.64050E-001 - -0.48755E-001 0.39460E-001 -0.31552E-001 - 0.27718E-001 -0.23853E-001 -0.11746E-002 -- -0.76642E-004 0.19535E-002 -0.28967E-002 -+ -0.76641E-004 0.19535E-002 -0.28967E-002 - 0.23194E-002 0.14434E-001 -0.39994E-001 - 0.20057E+000 -0.14250E+000 0.15546E+000 - -0.10132E-001 -0.19003E-002 0.31489E-002 -- -0.13663E-003 -0.61045E-003 0.13419E-002 -+ -0.13663E-003 -0.61046E-003 0.13419E-002 - -0.56599E-002 0.65318E-002 -0.99441E-002 - 0.14290E-001 -0.21240E-001 0.25559E-001 - -0.26500E-001 -0.45351E-001 0.12464E+000 -@@ -654,7 +654,7 @@ - -0.67183E-003 -0.17567E-002 0.59214E-002 - -0.10795E-001 0.19998E-001 0.21432E-003 - -0.57072E-001 -0.26436E-001 0.40361E-001 -- -0.15950E-001 0.39954E-002 0.38634E-004 -+ -0.15950E-001 0.39954E-002 0.38633E-004 - -0.19542E-002 0.20302E-002 0.41282E-002 - -0.37590E-002 0.25828E-002 -0.18860E-002 - 0.84274E-003 0.59538E-003 -0.40063E-002 -@@ -695,7 +695,7 @@ - 0.36780E-002 -0.41785E-002 0.43203E-002 - 0.67542E-002 -0.67533E-002 0.79253E-002 - -0.75232E-002 0.71990E-002 -0.10331E-001 -- 0.88066E-002 0.69559E-002 0.27927E-001 -+ 0.88065E-002 0.69559E-002 0.27927E-001 - -0.45171E-001 0.11785E-001 -0.37993E-002 - 0.44794E-002 -0.60610E-002 0.70033E-002 - -0.62684E-002 -0.97638E-002 0.97810E-002 -@@ -730,7 +730,7 @@ - -0.28215E+000 0.56642E+000 0.92065E+000 - 0.10006E+001 -0.46958E+000 0.29382E+000 - -0.20618E+000 0.16462E+000 -0.13004E+000 -- 0.10753E+000 -0.15069E-002 0.65807E-003 -+ 0.10753E+000 -0.15069E-002 0.65808E-003 - -0.59134E-002 0.17916E-001 -0.43687E-001 - 0.85179E-001 -0.72107E-001 0.17888E+000 - 0.27398E+000 0.17046E+000 -0.12239E+000 -@@ -805,7 +805,7 @@ - -0.92333E-001 -0.73061E-001 -0.12402E+000 - 0.49643E-001 -0.24501E-001 0.12081E-001 - -0.77686E-002 0.65912E-002 -0.68733E-002 -- -0.52386E-001 0.55294E-001 -0.60917E-001 -+ -0.52386E-001 0.55294E-001 -0.60918E-001 - 0.72284E-001 -0.90668E-001 0.13640E+000 - -0.30725E+000 0.68114E+000 -0.63520E+000 - 0.69895E+000 -0.30705E+000 0.16706E+000 -@@ -815,7 +815,7 @@ - -0.16169E+000 0.42947E+000 -0.10000E+001 - -0.10000E+001 -0.10000E+001 0.34773E+000 - -0.16448E+000 0.95838E-001 -0.65437E-001 -- 0.53108E-001 -0.49594E-001 0.10228E-004 -+ 0.53108E-001 -0.49594E-001 0.10227E-004 - -0.83130E-002 0.19382E-001 -0.43694E-001 - 0.82990E-001 -0.15068E+000 0.19264E+000 - -0.10000E+001 -0.10000E+001 -0.10000E+001 -@@ -853,7 +853,7 @@ - -0.15840E+000 0.15063E+000 -0.97388E-001 - -0.22784E-002 0.85043E-002 -0.62997E-002 - 0.44880E-002 -0.39095E-002 0.45371E-002 -- 0.70889E-004 -0.68019E-003 0.59256E-003 -+ 0.70888E-004 -0.68019E-003 0.59256E-003 - -0.84557E-004 -0.36226E-002 0.15213E-001 - -0.31110E-001 0.13861E+000 -0.15051E+000 - 0.81020E-001 -0.11901E-001 0.36571E-002 -@@ -880,10 +880,10 @@ - -0.36432E+000 0.48476E-001 -0.13337E-001 - -0.85939E-003 0.62937E-002 -0.90302E-002 - 0.96864E-002 -0.10054E-001 -0.12074E-001 -- 0.12686E-001 -0.13788E-001 0.15535E-001 -+ 0.12686E-001 -0.13788E-001 0.15534E-001 - -0.12609E-001 0.43721E-002 0.38811E-001 - -0.54071E-002 0.36037E+000 -0.26901E-001 -- -0.91861E-004 0.75691E-002 -0.10423E-001 -+ -0.91871E-004 0.75691E-002 -0.10423E-001 - 0.13325E-001 -0.12466E-001 0.12184E-001 - 0.16486E-001 -0.16264E-001 0.18217E-001 - -0.18145E-001 0.15178E-001 -0.90728E-002 -@@ -943,7 +943,7 @@ - -0.29396E-001 -0.11815E-001 -0.23817E+000 - -0.18515E+000 -0.25452E+000 0.27722E-001 - 0.16855E-002 -0.72308E-002 0.20876E-002 -- 0.64586E-003 -0.38825E-002 0.21534E-002 -+ 0.64585E-003 -0.38825E-002 0.21535E-002 - 0.21199E-003 -0.19208E-002 0.42601E-002 - -0.22560E-002 -0.69878E-002 0.71728E-001 - 0.78877E-002 0.44965E+000 -0.21828E-001 -@@ -1064,7 +1064,7 @@ - 0.62403E-002 -0.60207E-002 0.73668E-002 - -0.70398E-002 0.11315E-001 -0.95645E-002 - -0.32328E-002 0.87432E-001 -0.15443E+000 -- 0.46011E-001 -0.18490E-003 -0.10438E-003 -+ 0.46011E-001 -0.18489E-003 -0.10438E-003 - 0.37293E-002 -0.27929E-002 0.52303E-002 - -0.50491E-002 -0.64016E-002 0.64120E-002 - -0.66729E-002 0.70889E-002 -0.10324E-001 -@@ -1089,7 +1089,7 @@ - -0.29061E-001 0.21213E-001 -0.17088E-001 - 0.15692E-001 -0.12454E-001 -0.16919E-001 - 0.14774E-001 -0.13566E-001 0.14799E-001 -- -0.20251E-001 0.21467E-001 0.51689E-002 -+ -0.20251E-001 0.21467E-001 0.51690E-002 - -0.17781E+000 0.16897E+000 -0.17823E-001 - -0.62278E-001 0.48487E-001 -0.35890E-001 - 0.27828E-001 -0.25327E-001 0.20069E-001 -@@ -1107,7 +1107,7 @@ - -0.22781E-001 0.41204E-001 -0.58124E-001 - 0.92982E-001 -0.99577E-001 0.51029E-001 - 0.38111E+000 0.12849E+001 -0.41711E-001 -- 0.46704E-001 -0.59395E-002 0.38283E-002 -+ 0.46704E-001 -0.59395E-002 0.38284E-002 - 0.24958E-002 0.34276E-002 -0.52601E-002 - -0.10267E-001 0.31273E-001 -0.64242E-001 - 0.80909E-001 -0.99093E-001 0.32420E-001 -@@ -1144,13 +1144,13 @@ - -0.40730E-002 0.49874E-002 -0.73690E-002 - 0.73535E-002 -0.95872E-002 0.77701E-002 - 0.63260E-002 -0.93757E-001 0.13558E+000 -- -0.89965E-001 0.17086E-001 -0.10569E-001 -+ -0.89964E-001 0.17086E-001 -0.10569E-001 - 0.42904E-002 -0.19884E-002 -0.52517E-003 - 0.16988E-002 0.51231E-002 -0.58474E-002 - 0.72663E-002 -0.82602E-002 0.11856E-001 - -0.10246E-001 -0.30199E-002 0.86203E-001 - -0.14974E+000 0.68805E-001 -0.10227E-001 -- 0.55756E-002 -0.95949E-004 -0.69091E-003 -+ 0.55756E-002 -0.95950E-004 -0.69091E-003 - 0.22362E-002 -0.35971E-002 -0.60713E-002 - 0.60472E-002 -0.79022E-002 0.78322E-002 - -0.12783E-001 0.10462E-001 0.31255E-002 -@@ -1260,7 +1260,7 @@ - 0.10679E-002 -0.90389E-003 0.16602E-002 - -0.11913E-002 -0.20977E-002 0.20942E-002 - -0.18004E-002 0.16284E-002 -0.18577E-002 -- 0.22835E-002 -0.67831E-002 0.25191E-004 -+ 0.22835E-002 -0.67831E-002 0.25192E-004 - 0.76945E-001 -0.45030E-002 -0.18644E-002 - -0.90606E-004 -0.93679E-003 0.16082E-002 - -0.17131E-002 0.17442E-002 0.26104E-002 -@@ -1381,7 +1381,7 @@ - 0.69183E-002 -0.44728E-001 -0.18229E-001 - 0.19727E-001 -0.83985E-002 0.19649E-002 - -0.81000E-003 0.18733E-002 -0.62522E-003 -- -0.12105E-002 -0.72607E-005 0.89095E-003 -+ -0.12105E-002 -0.72605E-005 0.89095E-003 - -0.15643E-002 0.48042E-002 -0.83264E-002 - 0.65796E-002 -0.21426E-001 0.49776E-001 - 0.39843E-002 -0.24431E-001 0.15999E-001 -@@ -1414,7 +1414,7 @@ - 0.23073E-001 -0.17327E-001 0.14432E-001 - -0.10868E-001 0.93471E-002 -0.68998E-002 - -0.26163E-002 0.31335E-002 -0.16844E-002 -- -0.29736E-003 0.27007E-002 -0.34378E-002 -+ -0.29736E-003 0.27007E-002 -0.34377E-002 - -0.10124E-001 0.16906E-001 -0.27972E-001 - -0.46722E-001 -0.99915E-002 0.74033E-002 - -0.49759E-002 0.33691E-002 -0.30633E-002 -@@ -1490,7 +1490,7 @@ - 0.56865E-003 -0.25998E-002 0.23230E-003 - -0.48411E-003 0.19935E-002 -0.43491E-002 - 0.86658E-002 -0.20913E-001 0.67877E-001 -- -0.12506E+000 0.30915E+000 -0.45000E-001 -+ -0.12506E+000 0.30915E+000 -0.45001E-001 - 0.79047E-002 -0.21891E-003 -0.32671E-003 - -0.91926E-003 0.50793E-003 0.11241E-003 - 0.15086E-001 -0.89428E-002 -0.35368E-003 -@@ -1507,7 +1507,7 @@ - -0.30669E-003 -0.89002E-003 -0.12172E-002 - 0.45842E-002 -0.33508E-002 -0.14322E-001 - 0.66905E-002 0.40619E-001 -0.51873E-001 -- -0.65372E-002 0.52189E-002 -0.46499E-002 -+ -0.65372E-002 0.52190E-002 -0.46499E-002 - 0.43349E-002 -0.38558E-002 0.59891E-003 - 0.34349E-003 -0.86951E-003 0.19112E-002 - -0.11810E-002 -0.18282E-002 0.31268E-002 -@@ -1524,7 +1524,7 @@ - 0.12391E-003 -0.17626E-003 0.37440E-002 - -0.73418E-002 -0.43798E-001 0.49519E-002 - 0.14953E-002 0.20774E-002 -0.22890E-002 -- 0.11235E-002 0.53678E-004 0.34160E-004 -+ 0.11235E-002 0.53679E-004 0.34160E-004 - -0.92654E-003 0.75587E-003 -0.15990E-002 - 0.13713E-002 -0.14112E-002 0.18715E-002 - -0.44715E-002 0.85039E-002 0.41635E-001 -@@ -1534,13 +1534,13 @@ - 0.11901E-002 -0.16300E-002 0.17072E-002 - -0.20384E-002 0.41606E-002 -0.83538E-002 - -0.36935E-001 -0.18397E-003 0.75164E-003 -- 0.32749E-004 -0.54313E-004 -0.55384E-003 -+ 0.32749E-004 -0.54314E-004 -0.55384E-003 - 0.59897E-003 -0.55366E-003 -0.85402E-003 - 0.60344E-003 -0.12434E-002 0.99286E-003 - -0.13524E-002 0.82954E-003 -0.21224E-002 - 0.41911E-002 0.38989E-001 -0.21565E-002 - 0.91862E-003 -0.97115E-003 0.27219E-003 -- 0.52312E-005 -0.71291E-003 0.34833E-003 -+ 0.52313E-005 -0.71291E-003 0.34833E-003 - -0.48047E-003 0.23123E-003 -0.44657E-003 - 0.33067E-003 -0.41250E-003 0.10632E-003 - -0.22842E-002 0.73852E-002 0.61030E-002 -@@ -1574,7 +1574,7 @@ - 0.99674E-002 -0.24989E-002 0.30342E-003 - -0.53277E-003 0.79955E-003 -0.21966E-003 - -0.59661E-003 0.35264E-003 -0.65872E-004 -- 0.11436E-002 0.38480E-003 -0.35781E-002 -+ 0.11436E-002 0.38479E-003 -0.35781E-002 - 0.36223E-002 -0.75229E-002 0.15451E-001 - 0.40636E-002 -0.14021E-001 0.68264E-002 - -0.25865E-002 0.28621E-002 -0.14937E-002 -@@ -1607,7 +1607,7 @@ - -0.72048E-002 0.52170E-002 -0.32634E-002 - -0.19081E-002 0.22332E-002 -0.24117E-002 - 0.23217E-002 0.50866E-003 -0.17204E-002 -- -0.75871E-002 0.73309E-002 0.25632E-005 -+ -0.75871E-002 0.73309E-002 0.25651E-005 - -0.21416E-001 -0.12367E-001 0.49953E-002 - -0.41626E-002 0.41883E-002 -0.30311E-002 - 0.19037E-002 0.31388E-003 -0.26396E-003 -@@ -1640,8 +1640,8 @@ - 0.33179E-003 -0.34087E-003 0.23211E-003 - -0.32071E-003 -0.56331E-004 0.14792E-003 - -0.41476E-003 -0.10262E-002 -0.21101E-001 -- -0.94099E-004 -0.10972E-002 0.73413E-003 -- -0.43772E-003 -0.10434E-003 0.72385E-004 -+ -0.94100E-004 -0.10972E-002 0.73413E-003 -+ -0.43772E-003 -0.10434E-003 0.72384E-004 - -0.27691E-003 -0.27499E-003 0.40064E-003 - -0.26074E-003 0.46773E-003 -0.13622E-003 - 0.20913E-003 -0.18338E-003 0.73660E-003 -@@ -1683,7 +1683,7 @@ - 0.38887E-003 -0.10225E-003 -0.35480E-003 - 0.21989E-002 -0.46306E-002 0.27804E-001 - -0.46260E-001 0.99268E-001 -0.12849E-001 -- 0.69339E-002 -0.28353E-002 0.32796E-002 -+ 0.69340E-002 -0.28353E-002 0.32796E-002 - -0.19358E-002 0.10950E-002 -0.18272E-003 - 0.56051E-002 -0.38298E-002 0.13655E-003 - 0.13715E-002 -0.54991E-002 0.85791E-002 -diff -urN amber11.orig/AmberTools/test/nab/Makefile amber11/AmberTools/test/nab/Makefile ---- amber11.orig/AmberTools/test/nab/Makefile 2010-04-01 08:14:34.000000000 +0400 -+++ amber11/AmberTools/test/nab/Makefile 2011-03-08 16:38:44.000000000 +0300 -@@ -12,7 +12,7 @@ - rattle_md_test rembed_test dhfrndpmtx_test asp_test \ - aspnb_test prm_test cif_test xmin_test \ - lmod_test nmode1_test nmode2_test nmode3_test ips_test \ -- pbsa_test rism_test rism_md_test rism_dist rism_hnc -+ pbsa_test rism_test rism_md_test rism_dist rism_hnc rism_ion - - duplex_test:: - @./Run.duplex -@@ -112,3 +112,6 @@ - - rism_dist:: - @./Run.rism_dist -+ -+rism_ion:: -+ @sh ./Run.rism_ion -diff -urN amber11.orig/AmberTools/test/nab/Na+.parm7 amber11/AmberTools/test/nab/Na+.parm7 ---- amber11.orig/AmberTools/test/nab/Na+.parm7 1970-01-01 03:00:00.000000000 +0300 -+++ amber11/AmberTools/test/nab/Na+.parm7 2011-03-08 16:38:44.000000000 +0300 -@@ -0,0 +1,124 @@ -+%VERSION VERSION_STAMP = V0001.000 DATE = 06/20/07 15:21:17 -+%FLAG TITLE -+%FORMAT(20a4) -+ -+%FLAG POINTERS -+%FORMAT(10I8) -+ 1 1 0 0 0 0 0 0 0 0 -+ 1 1 0 0 0 0 0 0 1 0 -+ 0 0 0 0 0 0 0 1 1 0 -+ 0 -+%FLAG ATOM_NAME -+%FORMAT(20a4) -+Na+ -+%FLAG CHARGE -+%FORMAT(5E16.8) -+ 1.82223000E+01 -+%FLAG MASS -+%FORMAT(5E16.8) -+ 2.29900000E+01 -+%FLAG ATOM_TYPE_INDEX -+%FORMAT(10I8) -+ 1 -+%FLAG NUMBER_EXCLUDED_ATOMS -+%FORMAT(10I8) -+ 1 -+%FLAG NONBONDED_PARM_INDEX -+%FORMAT(10I8) -+ 1 -+%FLAG RESIDUE_LABEL -+%FORMAT(20a4) -+Na+ -+%FLAG RESIDUE_POINTER -+%FORMAT(10I8) -+ 1 -+%FLAG BOND_FORCE_CONSTANT -+%FORMAT(5E16.8) -+ -+%FLAG BOND_EQUIL_VALUE -+%FORMAT(5E16.8) -+ -+%FLAG ANGLE_FORCE_CONSTANT -+%FORMAT(5E16.8) -+ -+%FLAG ANGLE_EQUIL_VALUE -+%FORMAT(5E16.8) -+ -+%FLAG DIHEDRAL_FORCE_CONSTANT -+%FORMAT(5E16.8) -+ -+%FLAG DIHEDRAL_PERIODICITY -+%FORMAT(5E16.8) -+ -+%FLAG DIHEDRAL_PHASE -+%FORMAT(5E16.8) -+ -+%FLAG SOLTY -+%FORMAT(5E16.8) -+ 0.00000000E+00 -+%FLAG LENNARD_JONES_ACOEF -+%FORMAT(5E16.8) -+ 2.04815198E+04 -+%FLAG LENNARD_JONES_BCOEF -+%FORMAT(5E16.8) -+ 1.50643699E+01 -+%FLAG BONDS_INC_HYDROGEN -+%FORMAT(10I8) -+ -+%FLAG BONDS_WITHOUT_HYDROGEN -+%FORMAT(10I8) -+ -+%FLAG ANGLES_INC_HYDROGEN -+%FORMAT(10I8) -+ -+%FLAG ANGLES_WITHOUT_HYDROGEN -+%FORMAT(10I8) -+ -+%FLAG DIHEDRALS_INC_HYDROGEN -+%FORMAT(10I8) -+ -+%FLAG DIHEDRALS_WITHOUT_HYDROGEN -+%FORMAT(10I8) -+ -+%FLAG EXCLUDED_ATOMS_LIST -+%FORMAT(10I8) -+ 0 -+%FLAG HBOND_ACOEF -+%FORMAT(5E16.8) -+ -+%FLAG HBOND_BCOEF -+%FORMAT(5E16.8) -+ -+%FLAG HBCUT -+%FORMAT(5E16.8) -+ -+%FLAG AMBER_ATOM_TYPE -+%FORMAT(20a4) -+IP -+%FLAG TREE_CHAIN_CLASSIFICATION -+%FORMAT(20a4) -+M -+%FLAG JOIN_ARRAY -+%FORMAT(10I8) -+ 0 -+%FLAG IROTAT -+%FORMAT(10I8) -+ 0 -+%FLAG SOLVENT_POINTERS -+%FORMAT(3I8) -+ 1 1 2 -+%FLAG ATOMS_PER_MOLECULE -+%FORMAT(10I8) -+ 1 -+%FLAG BOX_DIMENSIONS -+%FORMAT(5E16.8) -+ 9.00000000E+01 2.56000000E+01 2.56000000E+01 2.56000000E+01 -+%FLAG RADIUS_SET -+%FORMAT(1a80) -+modified Bondi radii (mbondi) -+%FLAG RADII -+%FORMAT(5E16.8) -+ 1.50000000E+00 -+%FLAG SCREEN -+%FORMAT(5E16.8) -+ 8.00000000E-01 -diff -urN amber11.orig/AmberTools/test/nab/Na+.pdb amber11/AmberTools/test/nab/Na+.pdb ---- amber11.orig/AmberTools/test/nab/Na+.pdb 1970-01-01 03:00:00.000000000 +0300 -+++ amber11/AmberTools/test/nab/Na+.pdb 2011-03-08 16:38:44.000000000 +0300 -@@ -0,0 +1,4 @@ -+REMARK -+ATOM 1 Na+ Na+ 1 0.000 0.000 0.000 1.00 0.00 N -+TER -+END -diff -urN amber11.orig/AmberTools/test/nab/rismion.nab amber11/AmberTools/test/nab/rismion.nab ---- amber11.orig/AmberTools/test/nab/rismion.nab 1970-01-01 03:00:00.000000000 +0300 -+++ amber11/AmberTools/test/nab/rismion.nab 2011-03-08 16:38:44.000000000 +0300 -@@ -0,0 +1,22 @@ -+molecule m; -+float m_xyz[dynamic], f_xyz[dynamic], v_xyz[dynamic]; -+float dgrad, fret; -+int ier, i; -+ -+m = getpdb("Na+.pdb"); -+readparm(m, "Na+.parm7"); -+allocate m_xyz[3*m.natoms]; -+allocate f_xyz[3*m.natoms]; -+allocate v_xyz[3*m.natoms]; -+mm_options( "e_debug=0, ntpr=1, ntpr_md=1, cut=999.0, dt=0.001, rattle=0, tempi=0, zerov=0"); -+mm_options( "rism=1, apply_rism_force=0"); -+mm_options( "buffer=12, solvcut=999"); -+mm_options( "progress=1, xvvfile=../rism1d/spc/spc-nacl.xvv.save"); -+mme_init( m, NULL, "::Z", m_xyz, NULL); -+ -+setxyz_from_mol( m, NULL, m_xyz ); -+ -+ier = md(3*m.natoms,0,m_xyz,f_xyz,v_xyz, mme ); -+ -+if(mytaskid==0) -+ printf( "md returns %d\n", ier ); -diff -urN amber11.orig/AmberTools/test/nab/rismion.out.check amber11/AmberTools/test/nab/rismion.out.check ---- amber11.orig/AmberTools/test/nab/rismion.out.check 1970-01-01 03:00:00.000000000 +0300 -+++ amber11/AmberTools/test/nab/rismion.out.check 2011-03-08 16:38:44.000000000 +0300 -@@ -0,0 +1,24 @@ -+Reading parm file (Na+.parm7) -+title: -+ -+ mm_options: e_debug=0 -+ mm_options: ntpr=1 -+ mm_options: ntpr_md=1 -+ mm_options: cut=999.0 -+ mm_options: dt=0.001 -+ mm_options: rattle=0 -+ mm_options: tempi=0 -+ mm_options: zerov=0 -+ mm_options: rism=1 -+ mm_options: apply_rism_force=0 -+ mm_options: buffer=12 -+ mm_options: solvcut=999 -+ mm_options: progress=1 -+ mm_options: xvvfile=../rism1d/spc/spc-nacl.xvv.save -+| New format PARM file being parsed. -+| Version = 0.001 Date = 04:06:10 Time = 16:41:39 -+ iter Total bad vdW elect nonpolar genBorn frms -+ nblist_box, number of atoms= 1 -+ nblist_box, number of pairs= 0 -+ff: 0 -73.97 0.00 0.00 0.00 0.00 -73.97 0.00e+00 -+md returns 0 -diff -urN amber11.orig/AmberTools/test/nab/Run.rism_ion amber11/AmberTools/test/nab/Run.rism_ion ---- amber11.orig/AmberTools/test/nab/Run.rism_ion 1970-01-01 03:00:00.000000000 +0300 -+++ amber11/AmberTools/test/nab/Run.rism_ion 2011-03-08 16:38:44.000000000 +0300 -@@ -0,0 +1,39 @@ -+#!/bin/sh -+ -+toomany() { -+ echo "${0}: This test requires 1, 2, 3, 4, 6, 8, 12 or 24 processes" -+ echo "for meaningful comparison." -+ exit 0 -+} -+ -+if [ -n "${DO_PARALLEL}" ] ; then -+ numprocs=`echo $DO_PARALLEL | awk -f ../numprocs.awk ` -+ if [ ! \( "$numprocs" -eq "12" -o "$numprocs" -eq "24"\ -+ -o "$numprocs" -eq "8" -o "$numprocs" -eq "6"\ -+ -o "$numprocs" -eq "3" -o "$numprocs" -eq "4"\ -+ -o "$numprocs" -eq "2" -o "$numprocs" -le "1" \) ]; then -+ echo " DO_PARALLEL set to $DO_PARALLEL" -+ toomany -+ elif [ -n "${MP_PROCS}" ]; then -+ if [ ! \( "$MP_PROCS" -eq "12" -o "$MP_PROCS" -eq "24"\ -+ -o "$MP_PROCS" -eq "8" -o "$MP_PROCS" -eq "6"\ -+ -o "$MP_PROCS" -eq "3" -o "$MP_PROCS" -eq "4"\ -+ -o "$MP_PROCS" -eq "2" -o "$MP_PROCS" -le "1" \) ]; then -+# --- For IBM AIX --- -+ echo " MP_PROCS set to "$MP_PROCS -+ toomany -+ fi -+ fi -+fi -+. ../program_error.sh -+ -+echo "Running test for ionic solvent and charge solute" -+echo "(this tests the 3D-RISM-KH implementation)" -+echo "" -+../../bin/nab -o sff rismion.nab || error -+$DO_PARALLEL ./sff > rismion.out || error -+ -+../dacdif rismion.out.check rismion.out -+ -+rm -f sff rismion.c -+exit 0 -diff -urN amber11.orig/AmberTools/test/sleap/glycam/n.pdb.save amber11/AmberTools/test/sleap/glycam/n.pdb.save ---- amber11.orig/AmberTools/test/sleap/glycam/n.pdb.save 2010-03-31 07:05:23.000000000 +0400 -+++ amber11/AmberTools/test/sleap/glycam/n.pdb.save 2011-03-08 16:38:44.000000000 +0300 -@@ -8,13 +8,13 @@ - ATOM 8 O4 6LB 1 5.435 3.303 2.147 1.00 0.00 - ATOM 9 H4O 6LB 1 5.122 4.155 1.839 1.00 0.00 - ATOM 10 C3 6LB 1 5.271 3.073 -0.262 1.00 0.00 --ATOM 11 H3 6LB 1 4.894 2.740 -1.242 1.00 0.00 --ATOM 12 O3 6LB 1 6.571 3.630 -0.399 1.00 0.00 --ATOM 13 H3O 6LB 1 7.188 2.917 -0.649 1.00 0.00 --ATOM 14 C2 6LB 1 4.314 4.119 0.310 1.00 0.00 --ATOM 15 H2 6LB 1 3.733 4.482 1.177 1.00 0.00 --ATOM 16 O2 6LB 1 5.419 4.938 -0.016 1.00 0.00 --ATOM 17 H2O 6LB 1 6.213 5.114 -0.520 1.00 0.00 -+ATOM 11 H3 6LB 1 5.706 2.518 -1.108 1.00 0.00 -+ATOM 12 O3 6LB 1 5.591 4.453 -0.363 1.00 0.00 -+ATOM 13 H3O 6LB 1 6.553 4.558 -0.232 1.00 0.00 -+ATOM 14 C2 6LB 1 3.753 2.890 -0.273 1.00 0.00 -+ATOM 15 H2 6LB 1 3.395 3.508 0.570 1.00 0.00 -+ATOM 16 O2 6LB 1 3.239 3.287 -1.528 1.00 0.00 -+ATOM 17 H2O 6LB 1 2.352 3.631 -1.425 1.00 0.00 - ATOM 18 C6 6LB 1 5.842 0.516 2.583 1.00 0.00 - ATOM 19 H61 6LB 1 6.928 0.603 2.654 1.00 0.00 - ATOM 20 H62 6LB 1 5.375 1.096 3.383 1.00 0.00 -@@ -37,7 +37,7 @@ - ATOM 37 C2 VLB 2 4.686 -2.097 4.639 1.00 0.00 - ATOM 38 H2 VLB 2 4.209 -2.878 4.019 1.00 0.00 - ATOM 39 O2 VLB 2 3.816 -1.039 4.992 1.00 0.00 --ATOM 40 H2O VLB 2 2.957 -1.387 4.762 1.00 0.00 -+ATOM 40 H2O VLB 2 4.332 -0.238 5.050 1.00 0.00 - ATOM 41 O3 VLB 2 4.014 -3.472 6.508 1.00 0.00 - ATOM 42 C1 VLB 3 2.893 -2.701 6.920 1.00 0.00 - ATOM 43 H1 VLB 3 3.071 -1.648 6.648 1.00 0.00 -@@ -57,7 +57,7 @@ - ATOM 57 C2 VLB 3 1.614 -3.056 6.171 1.00 0.00 - ATOM 58 H2 VLB 3 1.323 -4.090 6.432 1.00 0.00 - ATOM 59 O2 VLB 3 1.793 -2.849 4.782 1.00 0.00 --ATOM 60 H2O VLB 3 1.405 -3.634 4.401 1.00 0.00 -+ATOM 60 H2O VLB 3 2.476 -2.193 4.666 1.00 0.00 - ATOM 61 O3 VLB 3 -0.763 -2.638 6.079 1.00 0.00 - ATOM 62 C1 3GB 4 -0.905 -2.644 4.665 1.00 0.00 - ATOM 63 H1 3GB 4 0.044 -2.311 4.215 1.00 0.00 -@@ -68,7 +68,7 @@ - ATOM 68 H61 3GB 4 -3.380 -0.533 1.560 1.00 0.00 - ATOM 69 H62 3GB 4 -4.134 -1.031 3.099 1.00 0.00 - ATOM 70 O6 3GB 4 -2.909 0.649 3.114 1.00 0.00 --ATOM 71 H6O 3GB 4 -3.688 0.628 3.666 1.00 0.00 -+ATOM 71 H6O 3GB 4 -2.709 0.580 4.045 1.00 0.00 - ATOM 72 C4 3GB 4 -2.352 -2.990 2.187 1.00 0.00 - ATOM 73 H4 3GB 4 -3.330 -3.384 2.501 1.00 0.00 - ATOM 74 O4 3GB 4 -2.343 -2.789 0.771 1.00 0.00 -@@ -78,7 +78,7 @@ - ATOM 78 C2 3GB 4 -1.106 -4.042 4.090 1.00 0.00 - ATOM 79 H2 3GB 4 -2.075 -4.437 4.446 1.00 0.00 - ATOM 80 O2 3GB 4 -0.002 -4.864 4.416 1.00 0.00 --ATOM 81 H2O 3GB 4 0.874 -5.115 4.125 1.00 0.00 -+ATOM 81 H2O 3GB 4 -0.154 -5.298 5.256 1.00 0.00 - ATOM 82 O3 3GB 4 -1.600 -5.254 2.060 1.00 0.00 - ATOM 83 C1 0GB 5 -0.735 -6.360 2.282 1.00 0.00 - ATOM 84 H1 0GB 5 0.116 -6.024 2.897 1.00 0.00 -@@ -89,7 +89,7 @@ - ATOM 89 H61 0GB 5 1.836 -9.117 -0.171 1.00 0.00 - ATOM 90 H62 0GB 5 0.236 -8.623 -0.788 1.00 0.00 - ATOM 91 O6 0GB 5 1.789 -7.246 -0.898 1.00 0.00 --ATOM 92 H6O 0GB 5 1.142 -7.286 -1.600 1.00 0.00 -+ATOM 92 H6O 0GB 5 1.207 -6.488 -0.919 1.00 0.00 - ATOM 93 C4 0GB 5 0.134 -9.099 1.971 1.00 0.00 - ATOM 94 H4 0GB 5 -0.679 -9.576 1.404 1.00 0.00 - ATOM 95 O4 0GB 5 1.193 -10.038 2.180 1.00 0.00 -@@ -103,49 +103,49 @@ - ATOM 103 O2 0GB 5 -1.753 -6.949 4.385 1.00 0.00 - ATOM 104 H2O 0GB 5 -2.644 -6.603 4.344 1.00 0.00 - TER --ATOM 105 C1 3LB 6 10.501 -4.485 3.172 1.00 0.00 --ATOM 106 H1 3LB 6 10.220 -5.544 3.293 1.00 0.00 --ATOM 107 O5 3LB 6 11.709 -4.218 3.853 1.00 0.00 --ATOM 108 C5 3LB 6 12.798 -5.075 3.481 1.00 0.00 --ATOM 109 H5 3LB 6 12.529 -6.122 3.711 1.00 0.00 --ATOM 110 C6 3LB 6 13.974 -4.687 4.358 1.00 0.00 --ATOM 111 H61 3LB 6 14.831 -5.300 4.073 1.00 0.00 --ATOM 112 H62 3LB 6 14.206 -3.632 4.190 1.00 0.00 --ATOM 113 O6 3LB 6 13.745 -4.955 5.727 1.00 0.00 --ATOM 114 H6O 3LB 6 13.914 -4.037 5.928 1.00 0.00 --ATOM 115 C4 3LB 6 13.095 -4.959 1.987 1.00 0.00 --ATOM 116 H4 3LB 6 13.857 -5.698 1.700 1.00 0.00 --ATOM 117 O4 3LB 6 13.583 -3.638 1.737 1.00 0.00 --ATOM 118 H4O 3LB 6 13.207 -3.313 0.918 1.00 0.00 --ATOM 119 C3 3LB 6 11.834 -5.224 1.182 1.00 0.00 --ATOM 120 H3 3LB 6 11.550 -6.279 1.318 1.00 0.00 --ATOM 121 C2 3LB 6 10.690 -4.332 1.666 1.00 0.00 --ATOM 122 H2 3LB 6 11.034 -3.304 1.454 1.00 0.00 --ATOM 123 O2 3LB 6 9.498 -4.685 0.991 1.00 0.00 --ATOM 124 H2O 3LB 6 9.019 -5.430 0.628 1.00 0.00 --ATOM 125 O3 3LB 6 12.104 -4.961 -0.188 1.00 0.00 --ATOM 126 C1 0GB 7 11.081 -5.133 -1.159 1.00 0.00 --ATOM 127 H1 0GB 7 10.154 -5.434 -0.645 1.00 0.00 --ATOM 128 O5 0GB 7 11.461 -6.115 -2.101 1.00 0.00 --ATOM 129 C5 0GB 7 10.440 -6.444 -3.054 1.00 0.00 --ATOM 130 H5 0GB 7 9.559 -6.842 -2.518 1.00 0.00 --ATOM 131 C6 0GB 7 11.002 -7.552 -3.925 1.00 0.00 --ATOM 132 H61 0GB 7 10.258 -7.800 -4.686 1.00 0.00 --ATOM 133 H62 0GB 7 11.913 -7.191 -4.409 1.00 0.00 --ATOM 134 O6 0GB 7 11.234 -8.746 -3.207 1.00 0.00 --ATOM 135 H6O 0GB 7 12.148 -8.727 -3.483 1.00 0.00 --ATOM 136 C4 0GB 7 10.017 -5.207 -3.846 1.00 0.00 --ATOM 137 H4 0GB 7 10.852 -4.864 -4.475 1.00 0.00 --ATOM 138 O4 0GB 7 8.908 -5.572 -4.672 1.00 0.00 --ATOM 139 H4O 0GB 7 9.006 -5.159 -5.530 1.00 0.00 --ATOM 140 C3 0GB 7 9.603 -4.096 -2.897 1.00 0.00 --ATOM 141 H3 0GB 7 8.685 -4.408 -2.376 1.00 0.00 --ATOM 142 O3 0GB 7 9.362 -2.917 -3.653 1.00 0.00 --ATOM 143 H3O 0GB 7 8.751 -3.136 -4.381 1.00 0.00 --ATOM 144 C2 0GB 7 10.699 -3.835 -1.863 1.00 0.00 --ATOM 145 H2 0GB 7 11.561 -3.486 -2.459 1.00 0.00 --ATOM 146 O2 0GB 7 10.240 -2.889 -0.917 1.00 0.00 --ATOM 147 H2O 0GB 7 10.975 -2.374 -0.585 1.00 0.00 -+ATOM 105 C1 3LB 6 3.394 1.433 0.000 1.00 0.00 -+ATOM 106 H1 3LB 6 3.836 0.891 -0.851 1.00 0.00 -+ATOM 107 O5 3LB 6 3.973 0.998 1.212 1.00 0.00 -+ATOM 108 C5 3LB 6 5.405 1.087 1.247 1.00 0.00 -+ATOM 109 H5 3LB 6 5.826 0.451 0.448 1.00 0.00 -+ATOM 110 C6 3LB 6 5.842 0.516 2.583 1.00 0.00 -+ATOM 111 H61 3LB 6 6.928 0.603 2.654 1.00 0.00 -+ATOM 112 H62 3LB 6 5.375 1.096 3.383 1.00 0.00 -+ATOM 113 O6 3LB 6 5.555 -0.862 2.707 1.00 0.00 -+ATOM 114 H6O 3LB 6 4.615 -0.981 2.592 1.00 0.00 -+ATOM 115 C4 3LB 6 5.865 2.527 1.025 1.00 0.00 -+ATOM 116 H4 3LB 6 6.962 2.560 0.948 1.00 0.00 -+ATOM 117 O4 3LB 6 5.435 3.303 2.147 1.00 0.00 -+ATOM 118 H4O 3LB 6 5.122 4.155 1.839 1.00 0.00 -+ATOM 119 C3 3LB 6 5.271 3.073 -0.262 1.00 0.00 -+ATOM 120 H3 3LB 6 5.706 2.518 -1.108 1.00 0.00 -+ATOM 121 C2 3LB 6 3.753 2.890 -0.273 1.00 0.00 -+ATOM 122 H2 3LB 6 3.395 3.508 0.570 1.00 0.00 -+ATOM 123 O2 3LB 6 3.238 3.288 -1.530 1.00 0.00 -+ATOM 124 H2O 3LB 6 2.351 3.631 -1.427 1.00 0.00 -+ATOM 125 O3 3LB 6 5.591 4.453 -0.363 1.00 0.00 -+ATOM 126 C1 0GB 7 5.149 5.205 -1.484 1.00 0.00 -+ATOM 127 H1 0GB 7 4.548 4.549 -2.133 1.00 0.00 -+ATOM 128 O5 0GB 7 6.255 5.718 -2.197 1.00 0.00 -+ATOM 129 C5 0GB 7 5.911 6.393 -3.416 1.00 0.00 -+ATOM 130 H5 0GB 7 5.402 5.682 -4.091 1.00 0.00 -+ATOM 131 C6 0GB 7 7.218 6.805 -4.066 1.00 0.00 -+ATOM 132 H61 0GB 7 6.987 7.354 -4.981 1.00 0.00 -+ATOM 133 H62 0GB 7 7.764 7.455 -3.378 1.00 0.00 -+ATOM 134 O6 0GB 7 8.002 5.699 -4.466 1.00 0.00 -+ATOM 135 H6O 0GB 7 8.174 5.164 -3.694 1.00 0.00 -+ATOM 136 C4 0GB 7 4.976 7.569 -3.140 1.00 0.00 -+ATOM 137 H4 0GB 7 5.507 8.340 -2.562 1.00 0.00 -+ATOM 138 O4 0GB 7 4.562 8.106 -4.399 1.00 0.00 -+ATOM 139 H4O 0GB 7 4.551 9.062 -4.345 1.00 0.00 -+ATOM 140 C3 0GB 7 3.759 7.096 -2.362 1.00 0.00 -+ATOM 141 H3 0GB 7 3.169 6.430 -3.010 1.00 0.00 -+ATOM 142 O3 0GB 7 2.987 8.230 -1.991 1.00 0.00 -+ATOM 143 H3O 0GB 7 2.828 8.771 -2.788 1.00 0.00 -+ATOM 144 C2 0GB 7 4.185 6.326 -1.112 1.00 0.00 -+ATOM 145 H2 0GB 7 4.726 7.072 -0.501 1.00 0.00 -+ATOM 146 O2 0GB 7 3.042 5.790 -0.474 1.00 0.00 -+ATOM 147 H2O 0GB 7 3.187 5.738 0.470 1.00 0.00 - CONECT 1 2 3 14 - CONECT 2 1 - CONECT 3 1 4 -@@ -173,7 +173,7 @@ - CONECT 25 24 26 27 31 - CONECT 26 25 - CONECT 27 25 28 29 30 --CONECT 28 27 105 -+CONECT 28 27 - CONECT 29 27 - CONECT 30 27 - CONECT 31 25 32 33 35 -@@ -250,7 +250,7 @@ - CONECT 102 101 - CONECT 103 101 104 - CONECT 104 103 --CONECT 105 28 106 107 121 -+CONECT 105 106 107 121 - CONECT 106 105 - CONECT 107 105 108 - CONECT 108 107 109 110 115 -diff -urN amber11.orig/AmberTools/test/sleap/oldleap/ff91/all_amino91.lib.save amber11/AmberTools/test/sleap/oldleap/ff91/all_amino91.lib.save ---- amber11.orig/AmberTools/test/sleap/oldleap/ff91/all_amino91.lib.save 2010-03-31 07:05:23.000000000 +0400 -+++ amber11/AmberTools/test/sleap/oldleap/ff91/all_amino91.lib.save 2011-03-08 16:38:44.000000000 +0300 -@@ -256,7 +256,7 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.230747 4.925147 1.196914 -- 4.828085 5.500165 0.713033 -+ 3.983296 5.433818 1.972557 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.SER.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -368,7 +368,7 @@ - 1.784422 4.436955 2.124895 - 1.764698 4.397850 0.345787 - 3.971494 2.947416 2.411212 -- 4.374397 3.770738 2.696536 -+ 3.724043 3.456087 3.186855 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.THR.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -500,15 +500,15 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.857033 4.748192 2.579338 -- 5.821217 4.249596 2.480083 -- 4.990360 5.695010 3.102655 -- 4.176711 4.112860 3.146449 -- 5.226485 5.898474 0.401698 -- 5.794506 5.938748 1.331123 -- 5.883342 6.134649 -0.435476 -- 4.414018 6.624028 0.441300 -+ 5.354265 4.863179 1.185791 -+ 3.853427 5.762894 -0.062862 -+ 2.773446 5.910110 -0.054565 -+ 4.351509 6.732051 -0.090207 -+ 4.134162 5.185701 -0.943848 -+ 3.881095 5.817649 2.426715 -+ 4.181612 5.279606 3.325770 -+ 4.379188 6.786828 2.400358 -+ 2.801124 5.964886 2.435947 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.LEU.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -648,12 +648,12 @@ - 3.671552 3.399212 3.380613 - 3.485641 1.869279 2.490736 - 4.230199 4.986696 1.245167 -- 3.258221 5.469711 1.345449 -- 4.638709 4.784431 2.235272 -- 5.178160 5.906245 0.482655 -- 5.735477 5.933935 1.418994 -- 5.840562 6.170139 -0.341774 -- 4.354989 6.619215 0.529171 -+ 5.312304 4.855747 1.245167 -+ 3.931816 5.541027 0.355344 -+ 3.812283 5.761636 2.490333 -+ 4.110763 5.208108 3.380624 -+ 4.296680 6.738088 2.490828 -+ 2.730275 5.893388 2.490801 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.ILE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -781,9 +781,9 @@ - 3.716963 3.477633 3.370556 - 3.499621 1.931327 2.516833 - 4.274181 5.009604 1.194574 -- 4.690774 4.823320 2.184447 -- 4.954792 5.645336 0.628258 -- 3.310286 5.508600 1.294624 -+ 3.973778 5.548459 0.295968 -+ 3.993550 5.587589 2.075074 -+ 5.354265 4.863179 1.185791 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.VAL.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -897,10 +897,10 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.253694 5.017114 1.232141 -- 3.666601 5.213107 2.293908 -- 5.062354 5.920372 0.673198 -- 5.699537 6.377296 0.036552 -- 4.754312 6.389897 1.512695 -+ 5.005295 5.340406 0.315070 -+ 3.984875 5.817912 2.265912 -+ 4.408006 6.733705 2.314738 -+ 3.359598 5.504301 2.994456 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.ASN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1024,13 +1024,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.220277 5.927344 0.433563 -- 4.913588 6.591689 1.420998 -- 6.050965 6.373808 -0.511346 -- 5.971268 7.107959 0.177690 -- 6.636748 6.497679 -1.324743 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.906966 5.848446 2.410297 -+ 3.138947 5.408353 3.262885 -+ 4.458847 7.061526 2.488328 -+ 4.248421 7.659050 3.274958 -+ 5.084275 7.376210 1.760376 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.GLN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1185,20 +1185,20 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.226485 5.898474 0.401698 -- 4.414018 6.624028 0.441300 -- 5.794506 5.938748 1.331123 -- 6.125319 6.253797 -0.719124 -- 6.688164 6.300372 -1.556463 -- 6.117846 7.301883 0.099632 -- 5.907135 8.163840 1.090353 -- 5.292210 7.913283 1.851398 -- 6.363014 9.065005 1.077109 -- 6.926823 7.627695 -0.904511 -- 7.501836 7.713669 -1.730386 -- 6.873063 8.384728 -0.238094 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.881095 5.817649 2.426715 -+ 2.801124 5.964886 2.435947 -+ 4.181612 5.279606 3.325770 -+ 4.540311 7.142726 2.424478 -+ 5.151800 7.375491 1.655062 -+ 4.364270 8.040994 3.389374 -+ 3.575005 7.807613 4.434120 -+ 3.088928 6.925430 4.508833 -+ 3.465343 8.513638 5.147984 -+ 5.006244 9.201290 3.286985 -+ 5.604850 9.375324 2.492326 -+ 4.892201 9.903050 4.004360 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.ARG.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1333,13 +1333,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 4.722990 6.580423 1.708019 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 3.339711 5.691917 3.169798 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.HID.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1467,13 +1467,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 6.629203 7.441424 -0.586231 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.896295 7.605082 0.676854 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.HIE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1605,14 +1605,14 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 4.722990 6.580423 1.708019 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 6.629203 7.441424 -0.586231 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 3.339711 5.691917 3.169798 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.896295 7.605082 0.676854 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.HIP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1770,20 +1770,20 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 4.941957 6.093161 0.993054 -- 4.555798 6.518222 1.919501 -- 5.833674 6.587638 -0.009560 -- 5.727864 7.297382 0.701192 -- 6.577083 6.691104 -1.083216 -- 6.699953 7.881667 -0.356949 -- 7.350710 8.089828 -1.206234 -- 6.471604 8.773711 0.684306 -- 7.153163 9.167983 -0.069436 -- 6.163215 9.539474 1.752484 -- 6.850900 10.076243 1.098979 -- 5.726463 10.185215 2.927374 -- 6.404130 10.841773 2.381664 -- 5.125146 10.546906 4.138818 -+ 4.023443 5.931088 2.293236 -+ 3.368827 5.705470 3.135064 -+ 4.811936 7.073557 1.949805 -+ 4.882911 7.922013 2.493114 -+ 5.427345 6.842058 0.816764 -+ 6.297161 7.689048 0.119607 -+ 6.531228 8.676646 0.517052 -+ 6.814097 7.187003 -1.069017 -+ 7.498083 7.791848 -1.664355 -+ 6.482667 5.953109 -1.505090 -+ 6.897672 5.575635 -2.439640 -+ 5.604046 5.117349 -0.785625 -+ 5.358725 4.126563 -1.168065 -+ 5.083391 5.623006 0.411551 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.TRP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1930,16 +1930,16 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.021223 6.053049 0.839188 -- 4.662984 6.521610 1.755820 -- 5.904492 6.742286 -0.000329 -- 5.724114 7.440373 0.817130 -- 6.758713 7.099630 -1.050381 -- 6.738282 7.947511 -0.365705 -- 7.536653 7.157250 -2.212917 -- 7.655187 8.096815 -1.673224 -- 8.214242 6.953605 -3.420974 -- 8.451251 7.942064 -3.027432 -+ 3.911603 5.857254 2.409885 -+ 3.236109 5.513847 3.193390 -+ 4.490005 7.129516 2.492349 -+ 4.264839 7.776656 3.340058 -+ 5.357612 7.570590 1.486013 -+ 5.807939 8.561136 1.550217 -+ 5.646816 6.739401 0.397212 -+ 6.322310 7.082808 -0.386292 -+ 5.068414 5.467139 0.314748 -+ 5.293580 4.820000 -0.532961 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.PHE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2086,17 +2086,17 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.267323 4.996269 1.194944 -- 5.102503 5.984523 0.660315 -- 4.777863 6.502414 1.562811 -- 5.985574 6.611197 -0.227077 -- 5.846174 7.352316 0.559949 -- 6.824378 6.891857 -1.312267 -- 6.854321 7.991157 -0.512116 -- 6.305234 7.900783 0.270147 -- 7.573657 6.866032 -2.494602 -- 7.737299 7.827553 -2.007982 -- 8.211756 6.577405 -3.706841 -- 8.492629 7.576371 -3.373257 -+ 4.059917 5.918914 2.227275 -+ 3.400094 5.668222 3.057870 -+ 4.699989 7.163550 2.192787 -+ 4.538509 7.881896 2.996531 -+ 5.547468 7.485540 1.125968 -+ 6.169252 8.694615 1.092466 -+ 5.956320 9.246984 1.848209 -+ 5.754874 6.562895 0.093637 -+ 6.414696 6.813587 -0.736958 -+ 5.114801 5.318259 0.128125 -+ 5.276282 4.599913 -0.675619 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.TYR.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2219,11 +2219,11 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.267323 4.996269 1.194944 -- 3.302423 5.493308 1.295046 -- 4.682911 4.808028 2.184869 -- 5.220383 5.890117 0.404729 -- 6.306867 5.987364 1.035359 -- 4.568248 6.850423 -0.085305 -+ 5.347407 4.849844 1.186161 -+ 3.966920 5.535124 0.296338 -+ 3.873721 5.805373 2.428701 -+ 4.594575 5.679017 3.454373 -+ 2.855955 6.542075 2.333709 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.GLU.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2328,8 +2328,8 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.275095 5.011382 1.194525 -- 5.214909 5.080371 2.030940 -- 3.476290 5.943429 0.910275 -+ 3.669104 5.954940 0.620005 -+ 5.407723 5.091882 1.740669 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.ASP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2471,18 +2471,18 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.226485 5.898474 0.401698 -- 4.414018 6.624028 0.441300 -- 5.794506 5.938748 1.331123 -- 6.145332 6.228186 -0.769897 -- 7.203874 5.974714 -0.827698 -- 5.823386 6.659994 -1.717522 -- 5.933539 7.203239 0.309601 -- 6.482814 7.265694 1.154880 -- 6.528435 7.362078 -0.491005 -- 5.203409 7.900796 0.330212 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.881095 5.817649 2.426715 -+ 2.801124 5.964886 2.435947 -+ 4.181612 5.279606 3.325770 -+ 4.578316 7.173413 2.389148 -+ 5.658401 7.026988 2.380365 -+ 4.277913 7.712268 1.490542 -+ 4.199407 7.952315 3.576852 -+ 4.478064 7.453372 4.409622 -+ 4.661173 8.850231 3.551971 -+ 3.198660 8.088474 3.584954 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.LYS.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2600,11 +2600,11 @@ - 4.419995 0.019280 -0.902255 - 3.955884 -0.274036 0.790585 - 5.547124 1.172442 0.544698 -- 6.078592 2.122578 0.598404 -- 6.005141 0.543154 -0.218399 -- 5.532142 0.472642 1.882665 -- 6.368845 0.104645 1.288859 -- 5.876555 1.272377 2.538335 -+ 6.413547 0.741633 0.042886 -+ 5.652946 1.047940 1.622381 -+ 5.369090 2.628183 0.185221 -+ 5.690639 3.251042 1.019939 -+ 5.969291 2.861853 -0.694128 - 3.933608 2.871277 -0.104508 - 3.932642 3.351380 0.874062 - 2.872953 3.958248 -0.204456 -@@ -2714,9 +2714,9 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.309567 5.303525 1.366033 -- 5.145787 5.839753 0.481671 -- 4.563172 5.041444 1.938780 -- 3.657120 5.491212 1.354764 -+ 3.725381 5.622023 2.517634 -+ 4.051868 5.551722 0.788945 -+ 4.957920 5.101954 1.372960 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.CYS.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2819,8 +2819,8 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.309567 5.303525 1.366033 -- 4.563172 5.041444 1.938780 -- 3.657120 5.491212 1.354764 -+ 4.051868 5.551722 0.788945 -+ 4.957920 5.101954 1.372960 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.CYX.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2950,15 +2950,15 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.402881 6.076526 0.265157 -- 5.724538 5.972445 0.854008 -- 4.818486 6.422214 0.269993 -- 6.377314 6.105674 -1.224148 -- 6.034578 6.467191 -2.193651 -- 6.303017 6.908485 -0.490613 -- 7.415066 5.781911 -1.303828 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.817297 5.981271 2.651702 -+ 4.055297 5.545795 3.115122 -+ 3.149245 5.995564 2.531107 -+ 4.753204 7.463130 2.340945 -+ 4.433578 7.904044 1.396734 -+ 4.585895 8.175303 3.148978 -+ 5.814065 7.218764 2.286557 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.MET.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -diff -urN amber11.orig/AmberTools/test/sleap/oldleap/ff91/all_aminoct91.lib.save amber11/AmberTools/test/sleap/oldleap/ff91/all_aminoct91.lib.save ---- amber11.orig/AmberTools/test/sleap/oldleap/ff91/all_aminoct91.lib.save 2010-03-31 07:05:23.000000000 +0400 -+++ amber11/AmberTools/test/sleap/oldleap/ff91/all_aminoct91.lib.save 2011-03-08 16:38:44.000000000 +0300 -@@ -272,7 +272,7 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.230747 4.925147 1.196914 -- 4.828085 5.500165 0.713033 -+ 3.983296 5.433818 1.972557 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -390,7 +390,7 @@ - 1.784422 4.436955 2.124895 - 1.764698 4.397850 0.345787 - 3.971494 2.947416 2.411212 -- 4.374397 3.770738 2.696536 -+ 3.724043 3.456087 3.186855 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -528,15 +528,15 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.857033 4.748192 2.579338 -- 5.821217 4.249596 2.480083 -- 4.990360 5.695010 3.102655 -- 4.176711 4.112860 3.146449 -- 5.226485 5.898474 0.401698 -- 5.794506 5.938748 1.331123 -- 5.883342 6.134649 -0.435476 -- 4.414018 6.624028 0.441300 -+ 5.354265 4.863179 1.185791 -+ 3.853427 5.762894 -0.062862 -+ 2.773446 5.910110 -0.054565 -+ 4.351509 6.732051 -0.090207 -+ 4.134162 5.185701 -0.943848 -+ 3.881095 5.817649 2.426715 -+ 4.181612 5.279606 3.325770 -+ 4.379188 6.786828 2.400358 -+ 2.801124 5.964886 2.435947 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -682,12 +682,12 @@ - 3.671552 3.399212 3.380613 - 3.485641 1.869279 2.490736 - 4.230199 4.986696 1.245167 -- 3.258221 5.469711 1.345449 -- 4.638709 4.784431 2.235272 -- 5.178160 5.906245 0.482655 -- 5.735477 5.933935 1.418994 -- 5.840562 6.170139 -0.341774 -- 4.354989 6.619215 0.529171 -+ 5.312304 4.855747 1.245167 -+ 3.931816 5.541027 0.355344 -+ 3.812283 5.761636 2.490333 -+ 4.110763 5.208108 3.380624 -+ 4.296680 6.738088 2.490828 -+ 2.730275 5.893388 2.490801 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -821,9 +821,9 @@ - 3.716963 3.477633 3.370556 - 3.499621 1.931327 2.516833 - 4.274181 5.009604 1.194574 -- 4.690774 4.823320 2.184447 -- 4.954792 5.645336 0.628258 -- 3.310286 5.508600 1.294624 -+ 3.973778 5.548459 0.295968 -+ 3.993550 5.587589 2.075074 -+ 5.354265 4.863179 1.185791 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -943,10 +943,10 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.253694 5.017114 1.232141 -- 3.666601 5.213107 2.293908 -- 5.062354 5.920372 0.673198 -- 5.699537 6.377296 0.036552 -- 4.754312 6.389897 1.512695 -+ 5.005295 5.340406 0.315070 -+ 3.984875 5.817912 2.265912 -+ 4.408006 6.733705 2.314738 -+ 3.359598 5.504301 2.994456 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -1076,13 +1076,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.220277 5.927344 0.433563 -- 4.913588 6.591689 1.420998 -- 6.050965 6.373808 -0.511346 -- 5.971268 7.107959 0.177690 -- 6.636748 6.497679 -1.324743 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.906966 5.848446 2.410297 -+ 3.138947 5.408353 3.262885 -+ 4.458847 7.061526 2.488328 -+ 4.248421 7.659050 3.274958 -+ 5.084275 7.376210 1.760376 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -1243,20 +1243,20 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.226485 5.898474 0.401698 -- 4.414018 6.624028 0.441300 -- 5.794506 5.938748 1.331123 -- 6.125319 6.253797 -0.719124 -- 6.688164 6.300372 -1.556463 -- 6.117846 7.301883 0.099632 -- 5.907135 8.163840 1.090353 -- 5.292210 7.913283 1.851398 -- 6.363014 9.065005 1.077109 -- 6.926823 7.627695 -0.904511 -- 7.501836 7.713669 -1.730386 -- 6.873063 8.384728 -0.238094 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.881095 5.817649 2.426715 -+ 2.801124 5.964886 2.435947 -+ 4.181612 5.279606 3.325770 -+ 4.540311 7.142726 2.424478 -+ 5.151800 7.375491 1.655062 -+ 4.364270 8.040994 3.389374 -+ 3.575005 7.807613 4.434120 -+ 3.088928 6.925430 4.508833 -+ 3.465343 8.513638 5.147984 -+ 5.006244 9.201290 3.286985 -+ 5.604850 9.375324 2.492326 -+ 4.892201 9.903050 4.004360 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -1397,13 +1397,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 4.722990 6.580423 1.708019 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 3.339711 5.691917 3.169798 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -1537,13 +1537,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 6.629203 7.441424 -0.586231 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.896295 7.605082 0.676854 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -1681,14 +1681,14 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 4.722990 6.580423 1.708019 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 6.629203 7.441424 -0.586231 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 3.339711 5.691917 3.169798 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.896295 7.605082 0.676854 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -1852,20 +1852,20 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 4.941957 6.093161 0.993054 -- 4.555798 6.518222 1.919501 -- 5.833674 6.587638 -0.009560 -- 5.727864 7.297382 0.701192 -- 6.577083 6.691104 -1.083216 -- 6.699953 7.881667 -0.356949 -- 7.350710 8.089828 -1.206234 -- 6.471604 8.773711 0.684306 -- 7.153163 9.167983 -0.069436 -- 6.163215 9.539474 1.752484 -- 6.850900 10.076243 1.098979 -- 5.726463 10.185215 2.927374 -- 6.404130 10.841773 2.381664 -- 5.125146 10.546906 4.138818 -+ 4.023443 5.931088 2.293236 -+ 3.368827 5.705470 3.135064 -+ 4.811936 7.073557 1.949805 -+ 4.882911 7.922013 2.493114 -+ 5.427345 6.842058 0.816764 -+ 6.297161 7.689048 0.119607 -+ 6.531228 8.676646 0.517052 -+ 6.814097 7.187003 -1.069017 -+ 7.498083 7.791848 -1.664355 -+ 6.482667 5.953109 -1.505090 -+ 6.897672 5.575635 -2.439640 -+ 5.604046 5.117349 -0.785625 -+ 5.358725 4.126563 -1.168065 -+ 5.083391 5.623006 0.411551 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -2018,16 +2018,16 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.021223 6.053049 0.839188 -- 4.662984 6.521610 1.755820 -- 5.904492 6.742286 -0.000329 -- 5.724114 7.440373 0.817130 -- 6.758713 7.099630 -1.050381 -- 6.738282 7.947511 -0.365705 -- 7.536653 7.157250 -2.212917 -- 7.655187 8.096815 -1.673224 -- 8.214242 6.953605 -3.420974 -- 8.451251 7.942064 -3.027432 -+ 3.911603 5.857254 2.409885 -+ 3.236109 5.513847 3.193390 -+ 4.490005 7.129516 2.492349 -+ 4.264839 7.776656 3.340058 -+ 5.357612 7.570590 1.486013 -+ 5.807939 8.561136 1.550217 -+ 5.646816 6.739401 0.397212 -+ 6.322310 7.082808 -0.386292 -+ 5.068414 5.467139 0.314748 -+ 5.293580 4.820000 -0.532961 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -2180,17 +2180,17 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.267323 4.996269 1.194944 -- 5.102503 5.984523 0.660315 -- 4.777863 6.502414 1.562811 -- 5.985574 6.611197 -0.227077 -- 5.846174 7.352316 0.559949 -- 6.824378 6.891857 -1.312267 -- 6.854321 7.991157 -0.512116 -- 6.305234 7.900783 0.270147 -- 7.573657 6.866032 -2.494602 -- 7.737299 7.827553 -2.007982 -- 8.211756 6.577405 -3.706841 -- 8.492629 7.576371 -3.373257 -+ 4.059917 5.918914 2.227275 -+ 3.400094 5.668222 3.057870 -+ 4.699989 7.163550 2.192787 -+ 4.538509 7.881896 2.996531 -+ 5.547468 7.485540 1.125968 -+ 6.169252 8.694615 1.092466 -+ 5.956320 9.246984 1.848209 -+ 5.754874 6.562895 0.093637 -+ 6.414696 6.813587 -0.736958 -+ 5.114801 5.318259 0.128125 -+ 5.276282 4.599913 -0.675619 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -2319,11 +2319,11 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.267323 4.996269 1.194944 -- 3.302423 5.493308 1.295046 -- 4.682911 4.808028 2.184869 -- 5.220383 5.890117 0.404729 -- 6.306867 5.987364 1.035359 -- 4.568248 6.850423 -0.085305 -+ 5.347407 4.849844 1.186161 -+ 3.966920 5.535124 0.296338 -+ 3.873721 5.805373 2.428701 -+ 4.594575 5.679017 3.454373 -+ 2.855955 6.542075 2.333709 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -2434,8 +2434,8 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.275095 5.011382 1.194525 -- 5.214909 5.080371 2.030940 -- 3.476290 5.943429 0.910275 -+ 3.669104 5.954940 0.620005 -+ 5.407723 5.091882 1.740669 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -2583,18 +2583,18 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.226485 5.898474 0.401698 -- 4.414018 6.624028 0.441300 -- 5.794506 5.938748 1.331123 -- 6.145332 6.228186 -0.769897 -- 7.203874 5.974714 -0.827698 -- 5.823386 6.659994 -1.717522 -- 5.933539 7.203239 0.309601 -- 6.482814 7.265694 1.154880 -- 6.528435 7.362078 -0.491005 -- 5.203409 7.900796 0.330212 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.881095 5.817649 2.426715 -+ 2.801124 5.964886 2.435947 -+ 4.181612 5.279606 3.325770 -+ 4.578316 7.173413 2.389148 -+ 5.658401 7.026988 2.380365 -+ 4.277913 7.712268 1.490542 -+ 4.199407 7.952315 3.576852 -+ 4.478064 7.453372 4.409622 -+ 4.661173 8.850231 3.551971 -+ 3.198660 8.088474 3.584954 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -2718,11 +2718,11 @@ - 4.419995 0.019280 -0.902255 - 3.955884 -0.274036 0.790585 - 5.547124 1.172442 0.544698 -- 6.078592 2.122578 0.598404 -- 6.005141 0.543154 -0.218399 -- 5.532142 0.472642 1.882665 -- 6.368845 0.104645 1.288859 -- 5.876555 1.272377 2.538335 -+ 6.413547 0.741633 0.042886 -+ 5.652946 1.047940 1.622381 -+ 5.369090 2.628183 0.185221 -+ 5.690639 3.251042 1.019939 -+ 5.969291 2.861853 -0.694128 - 3.933608 2.871277 -0.104508 - 3.932642 3.351380 0.874062 - 2.872953 3.958248 -0.204456 -@@ -2838,9 +2838,9 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.309567 5.303525 1.366033 -- 5.145787 5.839753 0.481671 -- 4.563172 5.041444 1.938780 -- 3.657120 5.491212 1.354764 -+ 3.725381 5.622023 2.517634 -+ 4.051868 5.551722 0.788945 -+ 4.957920 5.101954 1.372960 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -2949,8 +2949,8 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.309567 5.303525 1.366033 -- 4.563172 5.041444 1.938780 -- 3.657120 5.491212 1.354764 -+ 4.051868 5.551722 0.788945 -+ 4.957920 5.101954 1.372960 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -3086,15 +3086,15 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.402881 6.076526 0.265157 -- 5.724538 5.972445 0.854008 -- 4.818486 6.422214 0.269993 -- 6.377314 6.105674 -1.224148 -- 6.034578 6.467191 -2.193651 -- 6.303017 6.908485 -0.490613 -- 7.415066 5.781911 -1.303828 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.817297 5.981271 2.651702 -+ 4.055297 5.545795 3.115122 -+ 3.149245 5.995564 2.531107 -+ 4.753204 7.463130 2.340945 -+ 4.433578 7.904044 1.396734 -+ 4.585895 8.175303 3.148978 -+ 5.814065 7.218764 2.286557 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -diff -urN amber11.orig/AmberTools/test/sleap/oldleap/ff91/all_aminont91.lib.save amber11/AmberTools/test/sleap/oldleap/ff91/all_aminont91.lib.save ---- amber11.orig/AmberTools/test/sleap/oldleap/ff91/all_aminont91.lib.save 2010-03-31 07:05:23.000000000 +0400 -+++ amber11/AmberTools/test/sleap/oldleap/ff91/all_aminont91.lib.save 2011-03-08 16:38:44.000000000 +0300 -@@ -290,7 +290,7 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.230747 4.925147 1.196914 -- 4.828085 5.500165 0.713033 -+ 3.983296 5.433818 1.972557 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NSER.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -414,7 +414,7 @@ - 1.784422 4.436955 2.124895 - 1.764698 4.397850 0.345787 - 3.971494 2.947416 2.411212 -- 4.374397 3.770738 2.696536 -+ 3.724043 3.456087 3.186855 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NTHR.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -558,15 +558,15 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.857033 4.748192 2.579338 -- 5.821217 4.249596 2.480083 -- 4.990360 5.695010 3.102655 -- 4.176711 4.112860 3.146449 -- 5.226485 5.898474 0.401698 -- 5.794506 5.938748 1.331123 -- 5.883342 6.134649 -0.435476 -- 4.414018 6.624028 0.441300 -+ 5.354265 4.863179 1.185791 -+ 3.853427 5.762894 -0.062862 -+ 2.773446 5.910110 -0.054565 -+ 4.351509 6.732051 -0.090207 -+ 4.134162 5.185701 -0.943848 -+ 3.881095 5.817649 2.426715 -+ 4.181612 5.279606 3.325770 -+ 4.379188 6.786828 2.400358 -+ 2.801124 5.964886 2.435947 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NLEU.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -718,12 +718,12 @@ - 3.671552 3.399212 3.380613 - 3.485641 1.869279 2.490736 - 4.230199 4.986696 1.245167 -- 4.638709 4.784431 2.235272 -- 3.258221 5.469711 1.345449 -- 5.178160 5.906245 0.482655 -- 5.735477 5.933935 1.418994 -- 5.840562 6.170139 -0.341774 -- 4.354989 6.619215 0.529171 -+ 3.931816 5.541027 0.355344 -+ 5.312304 4.855747 1.245167 -+ 3.812283 5.761636 2.490333 -+ 4.110763 5.208108 3.380624 -+ 4.296680 6.738088 2.490828 -+ 2.730275 5.893388 2.490801 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NILE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -863,9 +863,9 @@ - 3.716963 3.477633 3.370556 - 3.499621 1.931327 2.516833 - 4.274181 5.009604 1.194574 -- 4.690774 4.823320 2.184447 -- 4.954792 5.645336 0.628258 -- 3.310286 5.508600 1.294624 -+ 3.973778 5.548459 0.295968 -+ 3.993550 5.587589 2.075074 -+ 5.354265 4.863179 1.185791 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NVAL.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -991,10 +991,10 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.253694 5.017114 1.232141 -- 3.666601 5.213107 2.293908 -- 5.062354 5.920372 0.673198 -- 5.699537 6.377296 0.036552 -- 4.754312 6.389897 1.512695 -+ 5.005295 5.340406 0.315070 -+ 3.984875 5.817912 2.265912 -+ 4.408006 6.733705 2.314738 -+ 3.359598 5.504301 2.994456 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NASN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1130,13 +1130,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.220277 5.927344 0.433563 -- 4.913588 6.591689 1.420998 -- 6.050965 6.373808 -0.511346 -- 5.971268 7.107959 0.177690 -- 6.636748 6.497679 -1.324743 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.906966 5.848446 2.410297 -+ 3.138947 5.408353 3.262885 -+ 4.458847 7.061526 2.488328 -+ 4.248421 7.659050 3.274958 -+ 5.084275 7.376210 1.760376 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NGLN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1303,20 +1303,20 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.226485 5.898474 0.401698 -- 4.414018 6.624028 0.441300 -- 5.794506 5.938748 1.331123 -- 6.125319 6.253797 -0.719124 -- 6.688164 6.300372 -1.556463 -- 6.117846 7.301883 0.099632 -- 5.907135 8.163840 1.090353 -- 5.292210 7.913283 1.851398 -- 6.363014 9.065005 1.077109 -- 6.926823 7.627695 -0.904511 -- 7.501836 7.713669 -1.730386 -- 6.873063 8.384728 -0.238094 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.881095 5.817649 2.426715 -+ 2.801124 5.964886 2.435947 -+ 4.181612 5.279606 3.325770 -+ 4.540311 7.142726 2.424478 -+ 5.151800 7.375491 1.655062 -+ 4.364270 8.040994 3.389374 -+ 3.575005 7.807613 4.434120 -+ 3.088928 6.925430 4.508833 -+ 3.465343 8.513638 5.147984 -+ 5.006244 9.201290 3.286985 -+ 5.604850 9.375324 2.492326 -+ 4.892201 9.903050 4.004360 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NARG.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1463,13 +1463,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 4.722990 6.580423 1.708019 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 3.339711 5.691917 3.169798 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NHID.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1609,13 +1609,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 6.629203 7.441424 -0.586231 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.896295 7.605082 0.676854 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NHIE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1759,14 +1759,14 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 4.722990 6.580423 1.708019 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 6.629203 7.441424 -0.586231 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 3.339711 5.691917 3.169798 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.896295 7.605082 0.676854 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NHIP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1936,20 +1936,20 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 4.941957 6.093161 0.993054 -- 4.555798 6.518222 1.919501 -- 5.833674 6.587638 -0.009560 -- 5.727864 7.297382 0.701192 -- 6.577083 6.691104 -1.083216 -- 6.699953 7.881667 -0.356949 -- 7.350710 8.089828 -1.206234 -- 6.471604 8.773711 0.684306 -- 7.153163 9.167983 -0.069436 -- 6.163215 9.539474 1.752484 -- 6.850900 10.076243 1.098979 -- 5.726463 10.185215 2.927374 -- 6.404130 10.841773 2.381664 -- 5.125146 10.546906 4.138818 -+ 4.023443 5.931088 2.293236 -+ 3.368827 5.705470 3.135064 -+ 4.811936 7.073557 1.949805 -+ 4.882911 7.922013 2.493114 -+ 5.427345 6.842058 0.816764 -+ 6.297161 7.689048 0.119607 -+ 6.531228 8.676646 0.517052 -+ 6.814097 7.187003 -1.069017 -+ 7.498083 7.791848 -1.664355 -+ 6.482667 5.953109 -1.505090 -+ 6.897672 5.575635 -2.439640 -+ 5.604046 5.117349 -0.785625 -+ 5.358725 4.126563 -1.168065 -+ 5.083391 5.623006 0.411551 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NTRP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2108,16 +2108,16 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.021223 6.053049 0.839188 -- 4.662984 6.521610 1.755820 -- 5.904492 6.742286 -0.000329 -- 5.724114 7.440373 0.817130 -- 6.758713 7.099630 -1.050381 -- 6.738282 7.947511 -0.365705 -- 7.536653 7.157250 -2.212917 -- 7.655187 8.096815 -1.673224 -- 8.214242 6.953605 -3.420974 -- 8.451251 7.942064 -3.027432 -+ 3.911603 5.857254 2.409885 -+ 3.236109 5.513847 3.193390 -+ 4.490005 7.129516 2.492349 -+ 4.264839 7.776656 3.340058 -+ 5.357612 7.570590 1.486013 -+ 5.807939 8.561136 1.550217 -+ 5.646816 6.739401 0.397212 -+ 6.322310 7.082808 -0.386292 -+ 5.068414 5.467139 0.314748 -+ 5.293580 4.820000 -0.532961 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NPHE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2276,17 +2276,17 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.267323 4.996269 1.194944 -- 5.102503 5.984523 0.660315 -- 4.777863 6.502414 1.562811 -- 5.985574 6.611197 -0.227077 -- 5.846174 7.352316 0.559949 -- 6.824378 6.891857 -1.312267 -- 6.854321 7.991157 -0.512116 -- 6.305234 7.900783 0.270147 -- 7.573657 6.866032 -2.494602 -- 7.737299 7.827553 -2.007982 -- 8.211756 6.577405 -3.706841 -- 8.492629 7.576371 -3.373257 -+ 4.059917 5.918914 2.227275 -+ 3.400094 5.668222 3.057870 -+ 4.699989 7.163550 2.192787 -+ 4.538509 7.881896 2.996531 -+ 5.547468 7.485540 1.125968 -+ 6.169252 8.694615 1.092466 -+ 5.956320 9.246984 1.848209 -+ 5.754874 6.562895 0.093637 -+ 6.414696 6.813587 -0.736958 -+ 5.114801 5.318259 0.128125 -+ 5.276282 4.599913 -0.675619 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NTYR.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2421,11 +2421,11 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.267323 4.996269 1.194944 -- 3.302423 5.493308 1.295046 -- 4.682911 4.808028 2.184869 -- 5.220383 5.890117 0.404729 -- 6.306867 5.987364 1.035359 -- 4.568248 6.850423 -0.085305 -+ 5.347407 4.849844 1.186161 -+ 3.966920 5.535124 0.296338 -+ 3.873721 5.805373 2.428701 -+ 4.594575 5.679017 3.454373 -+ 2.855955 6.542075 2.333709 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NGLU.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2542,8 +2542,8 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.275095 5.011382 1.194525 -- 5.214909 5.080371 2.030940 -- 3.476290 5.943429 0.910275 -+ 3.669104 5.954940 0.620005 -+ 5.407723 5.091882 1.740669 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NASP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2697,18 +2697,18 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.226485 5.898474 0.401698 -- 4.414018 6.624028 0.441300 -- 5.794506 5.938748 1.331123 -- 6.145332 6.228186 -0.769897 -- 7.203874 5.974714 -0.827698 -- 5.823386 6.659994 -1.717522 -- 5.933539 7.203239 0.309601 -- 6.482814 7.265694 1.154880 -- 6.528435 7.362078 -0.491005 -- 5.203409 7.900796 0.330212 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.881095 5.817649 2.426715 -+ 2.801124 5.964886 2.435947 -+ 4.181612 5.279606 3.325770 -+ 4.578316 7.173413 2.389148 -+ 5.658401 7.026988 2.380365 -+ 4.277913 7.712268 1.490542 -+ 4.199407 7.952315 3.576852 -+ 4.478064 7.453372 4.409622 -+ 4.661173 8.850231 3.551971 -+ 3.198660 8.088474 3.584954 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NLYS.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2838,11 +2838,11 @@ - 4.408167 0.002206 -0.902255 - 3.942020 -0.287863 0.790585 - 5.543318 1.147472 0.544698 -- 6.081407 2.093874 0.598404 -- 5.996931 0.515001 -0.218399 -- 5.523452 0.447794 1.882665 -- 6.357566 0.073964 1.288859 -- 5.873440 1.245104 2.538335 -+ 6.406713 0.710625 0.042886 -+ 5.648269 1.022234 1.622381 -+ 5.375452 2.604420 0.185221 -+ 5.701342 3.225018 1.019939 -+ 5.977270 2.833894 -0.694128 - 3.941702 2.857530 -0.104508 - 3.944087 3.337627 0.874062 - 2.888662 3.951879 -0.204456 -@@ -2964,9 +2964,9 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.309567 5.303525 1.366033 -- 5.145787 5.839753 0.481671 -- 4.563172 5.041444 1.938780 -- 3.657120 5.491212 1.354764 -+ 3.725381 5.622023 2.517634 -+ 4.051868 5.551722 0.788945 -+ 4.957920 5.101954 1.372960 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NCYS.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -3081,8 +3081,8 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.309567 5.303525 1.366033 -- 4.563172 5.041444 1.938780 -- 3.657120 5.491212 1.354764 -+ 4.051868 5.551722 0.788945 -+ 4.957920 5.101954 1.372960 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NCYX.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -3224,15 +3224,15 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.402881 6.076526 0.265157 -- 5.724538 5.972445 0.854008 -- 4.818486 6.422214 0.269993 -- 6.377314 6.105674 -1.224148 -- 6.034578 6.467191 -2.193651 -- 6.303017 6.908485 -0.490613 -- 7.415066 5.781911 -1.303828 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.817297 5.981271 2.651702 -+ 4.055297 5.545795 3.115122 -+ 3.149245 5.995564 2.531107 -+ 4.753204 7.463130 2.340945 -+ 4.433578 7.904044 1.396734 -+ 4.585895 8.175303 3.148978 -+ 5.814065 7.218764 2.286557 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NMET.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -diff -urN amber11.orig/AmberTools/test/sleap/oldleap/ff91/all_nucleic91.lib.save amber11/AmberTools/test/sleap/oldleap/ff91/all_nucleic91.lib.save ---- amber11.orig/AmberTools/test/sleap/oldleap/ff91/all_nucleic91.lib.save 2010-03-31 07:05:23.000000000 +0400 -+++ amber11/AmberTools/test/sleap/oldleap/ff91/all_nucleic91.lib.save 2011-03-08 16:38:44.000000000 +0300 -@@ -162,27 +162,27 @@ - 3.710733 0.830490 -3.744234 - 1.911850 1.246480 -4.585645 - 1.227112 2.479938 -4.747250 -- 1.435744 3.548600 -4.696894 -- 1.460583 2.154521 -6.213536 -- 0.611235 3.180043 -6.535735 -- -0.465186 3.098120 -6.567442 -- 1.349267 3.870896 -7.353068 -- -0.036082 3.758044 -7.339885 -- 0.351402 4.533174 -8.439444 -- -0.960336 4.612555 -8.701439 -- -1.624968 4.152050 -8.096212 -- -1.284404 5.132893 -9.504140 -- 1.216752 5.151275 -9.254748 -- -0.058580 5.292957 -9.604538 -- 0.617022 5.800159 -10.277374 -- -1.311694 5.457396 -9.985412 -- -2.648827 5.295295 -9.894316 -+ 1.476326 2.910069 -5.717291 -+ -0.266632 2.222549 -4.860734 -+ -1.220065 2.003738 -3.901574 -+ -0.944101 1.997212 -2.857447 -+ -2.424721 1.879538 -4.374202 -+ -2.264060 2.025899 -5.747107 -+ -3.171716 1.996442 -6.812608 -+ -4.488141 1.800018 -6.657550 -+ -4.872966 1.663197 -5.733813 -+ -5.095547 1.788787 -7.464416 -+ -2.681111 2.175962 -8.046577 -+ -1.373728 2.370469 -8.194275 -+ -0.957583 2.517234 -9.180015 -+ -0.428694 2.418225 -7.273933 -+ -0.949520 2.234705 -6.042040 - 2.953825 2.805883 -3.147902 - 2.001837 3.312549 -3.306355 - 1.598529 3.379160 -3.566738 - 1.132115 3.871151 -2.713214 - 1.786595 4.328794 -4.619224 -- 1.990348 5.218376 -4.321352 -+ 0.918045 4.664210 -4.853138 - 3.951586 3.479347 -3.901109 - !entry.RADE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x - 1 30 0 0 0 0 -@@ -367,25 +367,25 @@ - 3.710733 0.830490 -3.744234 - 1.911850 1.246480 -4.585645 - 1.227112 2.479938 -4.747250 -- 1.435744 3.548600 -4.696894 -- 1.485202 2.137699 -6.174261 -- 0.655381 3.211408 -6.264512 -- -0.423435 3.161813 -6.254680 -- 1.273874 3.921103 -7.246041 -- 2.001469 4.404856 -7.897723 -- -0.138537 4.008754 -7.451742 -- 0.496986 4.687819 -8.388428 -- 1.506269 4.703628 -8.353806 -- -0.021913 5.169907 -9.108453 -- -1.467764 3.981289 -7.487821 -- -2.803489 3.801409 -7.305937 -- -2.649940 4.509819 -8.312007 -+ 1.476326 2.910069 -5.717291 -+ -0.230375 2.189658 -4.854806 -+ -0.988446 1.979043 -3.745496 -+ -0.535467 2.020843 -2.765974 -+ -2.318623 1.714239 -3.846032 -+ -2.910767 1.548015 -2.946124 -+ -2.871582 1.669472 -5.164035 -+ -4.156011 1.417550 -5.334852 -+ -4.717568 1.261374 -4.510012 -+ -4.549259 1.385324 -6.264593 -+ -2.122766 1.876681 -6.243498 -+ -0.794090 2.140091 -6.121697 -+ -0.063349 2.338641 -7.103631 - 2.953825 2.805883 -3.147902 - 3.277337 2.955353 -2.117806 - 1.598529 3.379160 -3.566738 - 1.132115 3.871151 -2.713214 - 1.786595 4.328794 -4.619224 -- 1.990348 5.218376 -4.321352 -+ 0.918045 4.664210 -4.853138 - 3.951586 3.479347 -3.901109 - !entry.RCYT.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x - 1 28 0 0 0 0 -@@ -581,28 +581,28 @@ - 3.710733 0.830490 -3.744234 - 1.911850 1.246480 -4.585645 - 1.227112 2.479938 -4.747250 -- 1.435744 3.548600 -4.696894 -- 1.485985 2.137078 -6.173971 -- 0.630205 3.182508 -6.455250 -- -0.447083 3.109089 -6.476705 -- 1.375610 3.824568 -7.320253 -- -0.009195 3.704817 -7.311681 -- 0.430021 4.484569 -8.414167 -- -0.743299 4.619666 -8.757634 -- 1.449094 5.077582 -9.169036 -- 2.230864 5.470422 -9.653301 -- 0.193424 5.321243 -9.687036 -- 1.134074 5.907027 -10.440452 -- 2.131730 5.897532 -10.283319 -- 0.809583 6.430577 -11.240890 -- -1.093830 5.428430 -10.003875 -- -2.446615 5.292973 -9.968886 -+ 1.476326 2.910069 -5.717291 -+ -0.230179 2.188641 -4.854706 -+ -1.148250 1.950412 -3.852312 -+ -0.834533 1.961464 -2.818939 -+ -2.363371 1.722968 -4.285727 -+ -2.247746 1.815662 -5.667805 -+ -3.226774 1.665775 -6.685370 -+ -4.425333 1.414365 -6.570704 -+ -2.671302 1.843175 -7.958154 -+ -3.284184 1.755160 -8.743412 -+ -1.346177 2.129674 -8.215759 -+ -1.013622 2.261923 -9.507083 -+ -1.624549 2.163147 -10.305276 -+ -0.043809 2.463028 -9.704869 -+ -0.430928 2.271846 -7.261291 -+ -0.954757 2.102421 -6.017708 - 2.953825 2.805883 -3.147902 - 3.277337 2.955353 -2.117806 - 1.598529 3.379160 -3.566738 - 1.132115 3.871151 -2.713214 - 1.786595 4.328794 -4.619224 -- 1.990348 5.218376 -4.321352 -+ 0.918045 4.664210 -4.853138 - 3.951586 3.479347 -3.901109 - !entry.RGUA.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x - 1 31 0 0 0 0 -@@ -876,24 +876,24 @@ - 3.710733 0.830490 -3.744234 - 1.911850 1.246480 -4.585645 - 1.227112 2.479938 -4.747250 -- 1.435744 3.548600 -4.696894 -- 1.462119 2.152380 -6.223183 -- 0.621409 3.225476 -6.359458 -- -0.457084 3.168437 -6.359671 -- 1.227187 3.969404 -7.294982 -- 1.951054 4.453936 -7.950226 -- -0.178556 4.113730 -7.571852 -- 0.321873 4.770160 -8.483756 -- -1.548942 3.990804 -7.465412 -- -1.150751 4.582332 -8.289814 -- -2.922393 3.884686 -7.383122 -- -2.754887 4.581962 -8.370112 -+ 1.476326 2.910069 -5.717291 -+ -0.276459 2.220856 -4.861481 -+ -1.084733 2.020834 -3.773554 -+ -0.665763 2.042111 -2.778360 -+ -2.406530 1.849990 -3.912354 -+ -3.030993 1.692292 -3.032992 -+ -3.019582 1.871650 -5.215158 -+ -4.219997 1.724488 -5.439315 -+ -2.132048 2.078389 -6.251470 -+ -2.549647 2.102845 -7.258005 -+ -0.768247 2.257235 -6.139841 -+ -0.062611 2.434266 -7.119196 - 2.953825 2.805883 -3.147902 - 3.102654 2.968023 -2.080353 - 1.598529 3.379160 -3.566738 - 1.132115 3.871151 -2.713214 - 1.786595 4.328794 -4.619224 -- 1.990348 5.218376 -4.321352 -+ 0.918045 4.664210 -4.853138 - 3.951586 3.479347 -3.901109 - !entry.RURA.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x - 1 27 0 0 0 0 -@@ -1080,21 +1080,21 @@ - 3.710733 0.830490 -3.744234 - 1.911850 1.246480 -4.585645 - 1.227112 2.479938 -4.747250 -- 1.435744 3.548600 -4.696894 -- 1.460583 2.154521 -6.213536 -- 0.611235 3.180043 -6.535735 -- -0.465186 3.098120 -6.567442 -- 1.349267 3.870896 -7.353068 -- -0.036082 3.758044 -7.339885 -- 0.351402 4.533174 -8.439444 -- -0.960336 4.612555 -8.701439 -- -1.624968 4.152050 -8.096212 -- -1.284404 5.132893 -9.504140 -- 1.216752 5.151275 -9.254748 -- -0.058580 5.292957 -9.604538 -- 0.617022 5.800159 -10.277374 -- -1.311694 5.457396 -9.985412 -- -2.648827 5.295295 -9.894316 -+ 1.476326 2.910069 -5.717291 -+ -0.266632 2.222549 -4.860734 -+ -1.220065 2.003738 -3.901574 -+ -0.944101 1.997212 -2.857447 -+ -2.424721 1.879538 -4.374202 -+ -2.264060 2.025899 -5.747107 -+ -3.171716 1.996442 -6.812608 -+ -4.488141 1.800018 -6.657550 -+ -4.872966 1.663197 -5.733813 -+ -5.095547 1.788787 -7.464416 -+ -2.681111 2.175962 -8.046577 -+ -1.373728 2.370469 -8.194275 -+ -0.957583 2.517234 -9.180015 -+ -0.428694 2.418225 -7.273933 -+ -0.949520 2.234705 -6.042040 - 2.953825 2.805883 -3.147902 - 3.102654 2.968023 -2.080353 - 1.598529 3.379160 -3.566738 -@@ -1279,19 +1279,19 @@ - 3.710733 0.830490 -3.744234 - 1.911850 1.246480 -4.585645 - 1.227112 2.479938 -4.747250 -- 1.435744 3.548600 -4.696894 -- 1.485202 2.137699 -6.174261 -- 0.655381 3.211408 -6.264512 -- -0.423435 3.161813 -6.254680 -- 1.273874 3.921103 -7.246041 -- 2.001469 4.404856 -7.897723 -- -0.138537 4.008754 -7.451742 -- 0.496986 4.687819 -8.388428 -- 1.506269 4.703628 -8.353806 -- -0.021913 5.169907 -9.108453 -- -1.467764 3.981289 -7.487821 -- -2.803489 3.801409 -7.305937 -- -2.649940 4.509819 -8.312007 -+ 1.476326 2.910069 -5.717291 -+ -0.230375 2.189658 -4.854806 -+ -0.988446 1.979043 -3.745496 -+ -0.535467 2.020843 -2.765974 -+ -2.318623 1.714239 -3.846032 -+ -2.910767 1.548015 -2.946124 -+ -2.871582 1.669472 -5.164035 -+ -4.156011 1.417550 -5.334852 -+ -4.717568 1.261374 -4.510012 -+ -4.549259 1.385324 -6.264593 -+ -2.122766 1.876681 -6.243498 -+ -0.794090 2.140091 -6.121697 -+ -0.063349 2.338641 -7.103631 - 2.953825 2.805883 -3.147902 - 3.277337 2.955353 -2.117806 - 1.598529 3.379160 -3.566738 -@@ -1487,22 +1487,22 @@ - 3.710733 0.830490 -3.744234 - 1.911850 1.246480 -4.585645 - 1.227112 2.479938 -4.747250 -- 1.435744 3.548600 -4.696894 -- 1.485985 2.137078 -6.173971 -- 0.630205 3.182508 -6.455250 -- -0.447083 3.109089 -6.476705 -- 1.375610 3.824568 -7.320253 -- -0.009195 3.704817 -7.311681 -- 0.430021 4.484569 -8.414167 -- -0.743299 4.619666 -8.757634 -- 1.449094 5.077582 -9.169036 -- 2.230864 5.470422 -9.653301 -- 0.193424 5.321243 -9.687036 -- 1.134074 5.907027 -10.440452 -- 2.131730 5.897532 -10.283319 -- 0.809583 6.430577 -11.240890 -- -1.093830 5.428430 -10.003875 -- -2.446615 5.292973 -9.968886 -+ 1.476326 2.910069 -5.717291 -+ -0.230179 2.188641 -4.854706 -+ -1.148250 1.950412 -3.852312 -+ -0.834533 1.961464 -2.818939 -+ -2.363371 1.722968 -4.285727 -+ -2.247746 1.815662 -5.667805 -+ -3.226774 1.665775 -6.685370 -+ -4.425333 1.414365 -6.570704 -+ -2.671302 1.843175 -7.958154 -+ -3.284184 1.755160 -8.743412 -+ -1.346177 2.129674 -8.215759 -+ -1.013622 2.261923 -9.507083 -+ -1.624549 2.163147 -10.305276 -+ -0.043809 2.463028 -9.704869 -+ -0.430928 2.271846 -7.261291 -+ -0.954757 2.102421 -6.017708 - 2.953825 2.805883 -3.147902 - 3.277337 2.955353 -2.117806 - 1.598529 3.379160 -3.566738 -@@ -1788,21 +1788,21 @@ - 3.710733 0.830490 -3.744234 - 1.911850 1.246480 -4.585645 - 1.227112 2.479938 -4.747250 -- 1.435744 3.548600 -4.696894 -- 1.462119 2.152380 -6.223183 -- 0.621409 3.225476 -6.359458 -- -0.457084 3.168437 -6.359671 -- 1.227187 3.969404 -7.294982 -- 2.191055 4.651430 -8.220076 -- 2.843927 3.908200 -8.677753 -- 1.638142 5.177191 -8.998511 -- 2.792502 5.365208 -7.657153 -- -0.178556 4.113730 -7.571852 -- 0.321873 4.770160 -8.483756 -- -1.548942 3.990804 -7.465412 -- -1.150751 4.582332 -8.289814 -- -2.922393 3.884686 -7.383122 -- -2.754887 4.581962 -8.370112 -+ 1.476326 2.910069 -5.717291 -+ -0.276459 2.220856 -4.861481 -+ -1.084733 2.020834 -3.773554 -+ -0.665763 2.042111 -2.778360 -+ -2.406530 1.849990 -3.912354 -+ -3.300021 1.630344 -2.727690 -+ -3.231144 2.486293 -2.056343 -+ -4.330132 1.515881 -3.065138 -+ -2.988981 0.729023 -2.199511 -+ -3.019582 1.871650 -5.215158 -+ -4.219997 1.724488 -5.439315 -+ -2.132048 2.078389 -6.251470 -+ -2.549647 2.102845 -7.258005 -+ -0.768247 2.257235 -6.139841 -+ -0.062611 2.434266 -7.119196 - 2.953825 2.805883 -3.147902 - 3.102654 2.968023 -2.080353 - 1.598529 3.379160 -3.566738 -diff -urN amber11.orig/AmberTools/test/sleap/oldleap/ff94/all_amino94.lib.save amber11/AmberTools/test/sleap/oldleap/ff94/all_amino94.lib.save ---- amber11.orig/AmberTools/test/sleap/oldleap/ff94/all_amino94.lib.save 2010-03-31 07:05:23.000000000 +0400 -+++ amber11/AmberTools/test/sleap/oldleap/ff94/all_amino94.lib.save 2011-03-08 16:38:44.000000000 +0300 -@@ -260,7 +260,7 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.230747 4.925147 1.196914 -- 4.828085 5.500165 0.713033 -+ 3.983296 5.433818 1.972557 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.SER.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -372,7 +372,7 @@ - 1.784422 4.436955 2.124895 - 1.764698 4.397850 0.345787 - 3.971494 2.947416 2.411212 -- 4.374397 3.770738 2.696536 -+ 3.724043 3.456087 3.186855 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.THR.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -504,15 +504,15 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.857033 4.748192 2.579338 -- 5.821217 4.249596 2.480083 -- 4.990360 5.695010 3.102655 -- 4.176711 4.112860 3.146449 -- 5.226485 5.898474 0.401698 -- 5.794506 5.938748 1.331123 -- 5.883342 6.134649 -0.435476 -- 4.414018 6.624028 0.441300 -+ 5.354265 4.863179 1.185791 -+ 3.853427 5.762894 -0.062862 -+ 2.773446 5.910110 -0.054565 -+ 4.351509 6.732051 -0.090207 -+ 4.134162 5.185701 -0.943848 -+ 3.881095 5.817649 2.426715 -+ 4.181612 5.279606 3.325770 -+ 4.379188 6.786828 2.400358 -+ 2.801124 5.964886 2.435947 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.LEU.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -652,12 +652,12 @@ - 3.671552 3.399212 3.380613 - 3.485641 1.869279 2.490736 - 4.230199 4.986696 1.245167 -- 3.258221 5.469711 1.345449 -- 4.638709 4.784431 2.235272 -- 5.178160 5.906245 0.482655 -- 5.735477 5.933935 1.418994 -- 5.840562 6.170139 -0.341774 -- 4.354989 6.619215 0.529171 -+ 5.312304 4.855747 1.245167 -+ 3.931816 5.541027 0.355344 -+ 3.812283 5.761636 2.490333 -+ 4.110763 5.208108 3.380624 -+ 4.296680 6.738088 2.490828 -+ 2.730275 5.893388 2.490801 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.ILE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -785,9 +785,9 @@ - 3.716963 3.477633 3.370556 - 3.499621 1.931327 2.516833 - 4.274181 5.009604 1.194574 -- 4.690774 4.823320 2.184447 -- 4.954792 5.645336 0.628258 -- 3.310286 5.508600 1.294624 -+ 3.973778 5.548459 0.295968 -+ 3.993550 5.587589 2.075074 -+ 5.354265 4.863179 1.185791 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.VAL.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -901,10 +901,10 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.253694 5.017114 1.232141 -- 3.666601 5.213107 2.293908 -- 5.062354 5.920372 0.673198 -- 5.699537 6.377296 0.036552 -- 4.754312 6.389897 1.512695 -+ 5.005295 5.340406 0.315070 -+ 3.984875 5.817912 2.265912 -+ 4.408006 6.733705 2.314738 -+ 3.359598 5.504301 2.994456 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.ASN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1028,13 +1028,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.220277 5.927344 0.433563 -- 4.913588 6.591689 1.420998 -- 6.050965 6.373808 -0.511346 -- 5.971268 7.107959 0.177690 -- 6.636748 6.497679 -1.324743 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.906966 5.848446 2.410297 -+ 3.138947 5.408353 3.262885 -+ 4.458847 7.061526 2.488328 -+ 4.248421 7.659050 3.274958 -+ 5.084275 7.376210 1.760376 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.GLN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1189,20 +1189,20 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.226485 5.898474 0.401698 -- 4.414018 6.624028 0.441300 -- 5.794506 5.938748 1.331123 -- 6.125319 6.253797 -0.719124 -- 6.688164 6.300372 -1.556463 -- 6.117846 7.301883 0.099632 -- 5.907135 8.163840 1.090353 -- 5.292210 7.913283 1.851398 -- 6.363014 9.065005 1.077109 -- 6.926823 7.627695 -0.904511 -- 7.501836 7.713669 -1.730386 -- 6.873063 8.384728 -0.238094 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.881095 5.817649 2.426715 -+ 2.801124 5.964886 2.435947 -+ 4.181612 5.279606 3.325770 -+ 4.540311 7.142726 2.424478 -+ 5.151800 7.375491 1.655062 -+ 4.364270 8.040994 3.389374 -+ 3.575005 7.807613 4.434120 -+ 3.088928 6.925430 4.508833 -+ 3.465343 8.513638 5.147984 -+ 5.006244 9.201290 3.286985 -+ 5.604850 9.375324 2.492326 -+ 4.892201 9.903050 4.004360 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.ARG.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1337,13 +1337,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 4.722990 6.580423 1.708019 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 3.339711 5.691917 3.169798 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.HID.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1471,13 +1471,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 6.629203 7.441424 -0.586231 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.896295 7.605082 0.676854 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.HIE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1609,14 +1609,14 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 4.722990 6.580423 1.708019 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 6.629203 7.441424 -0.586231 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 3.339711 5.691917 3.169798 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.896295 7.605082 0.676854 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.HIP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1774,20 +1774,20 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 4.941957 6.093161 0.993054 -- 4.555798 6.518222 1.919501 -- 5.833674 6.587638 -0.009560 -- 5.727864 7.297382 0.701192 -- 6.577083 6.691104 -1.083216 -- 6.699953 7.881667 -0.356949 -- 7.350710 8.089828 -1.206234 -- 6.471604 8.773711 0.684306 -- 7.153163 9.167983 -0.069436 -- 6.163215 9.539474 1.752484 -- 6.850900 10.076243 1.098979 -- 5.726463 10.185215 2.927374 -- 6.404130 10.841773 2.381664 -- 5.125146 10.546906 4.138818 -+ 4.023443 5.931088 2.293236 -+ 3.368827 5.705470 3.135064 -+ 4.811936 7.073557 1.949805 -+ 4.882911 7.922013 2.493114 -+ 5.427345 6.842058 0.816764 -+ 6.297161 7.689048 0.119607 -+ 6.531228 8.676646 0.517052 -+ 6.814097 7.187003 -1.069017 -+ 7.498083 7.791848 -1.664355 -+ 6.482667 5.953109 -1.505090 -+ 6.897672 5.575635 -2.439640 -+ 5.604046 5.117349 -0.785625 -+ 5.358725 4.126563 -1.168065 -+ 5.083391 5.623006 0.411551 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.TRP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1934,16 +1934,16 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.021223 6.053049 0.839188 -- 4.662984 6.521610 1.755820 -- 5.904492 6.742286 -0.000329 -- 5.724114 7.440373 0.817130 -- 6.758713 7.099630 -1.050381 -- 6.738282 7.947511 -0.365705 -- 7.536653 7.157250 -2.212917 -- 7.655187 8.096815 -1.673224 -- 8.214242 6.953605 -3.420974 -- 8.451251 7.942064 -3.027432 -+ 3.911603 5.857254 2.409885 -+ 3.236109 5.513847 3.193390 -+ 4.490005 7.129516 2.492349 -+ 4.264839 7.776656 3.340058 -+ 5.357612 7.570590 1.486013 -+ 5.807939 8.561136 1.550217 -+ 5.646816 6.739401 0.397212 -+ 6.322310 7.082808 -0.386292 -+ 5.068414 5.467139 0.314748 -+ 5.293580 4.820000 -0.532961 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.PHE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2090,17 +2090,17 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.267323 4.996269 1.194944 -- 5.102503 5.984523 0.660315 -- 4.777863 6.502414 1.562811 -- 5.985574 6.611197 -0.227077 -- 5.846174 7.352316 0.559949 -- 6.824378 6.891857 -1.312267 -- 6.854321 7.991157 -0.512116 -- 6.305234 7.900783 0.270147 -- 7.573657 6.866032 -2.494602 -- 7.737299 7.827553 -2.007982 -- 8.211756 6.577405 -3.706841 -- 8.492629 7.576371 -3.373257 -+ 4.059917 5.918914 2.227275 -+ 3.400094 5.668222 3.057870 -+ 4.699989 7.163550 2.192787 -+ 4.538509 7.881896 2.996531 -+ 5.547468 7.485540 1.125968 -+ 6.169252 8.694615 1.092466 -+ 5.956320 9.246984 1.848209 -+ 5.754874 6.562895 0.093637 -+ 6.414696 6.813587 -0.736958 -+ 5.114801 5.318259 0.128125 -+ 5.276282 4.599913 -0.675619 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.TYR.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2223,11 +2223,11 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.267323 4.996269 1.194944 -- 3.302423 5.493308 1.295046 -- 4.682911 4.808028 2.184869 -- 5.220383 5.890117 0.404729 -- 6.306867 5.987364 1.035359 -- 4.568248 6.850423 -0.085305 -+ 5.347407 4.849844 1.186161 -+ 3.966920 5.535124 0.296338 -+ 3.873721 5.805373 2.428701 -+ 4.594575 5.679017 3.454373 -+ 2.855955 6.542075 2.333709 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.GLU.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2332,8 +2332,8 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.275095 5.011382 1.194525 -- 5.214909 5.080371 2.030940 -- 3.476290 5.943429 0.910275 -+ 3.669104 5.954940 0.620005 -+ 5.407723 5.091882 1.740669 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.ASP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2475,18 +2475,18 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.226485 5.898474 0.401698 -- 4.414018 6.624028 0.441300 -- 5.794506 5.938748 1.331123 -- 6.145332 6.228186 -0.769897 -- 7.203874 5.974714 -0.827698 -- 5.823386 6.659994 -1.717522 -- 5.933539 7.203239 0.309601 -- 6.482814 7.265694 1.154880 -- 6.528435 7.362078 -0.491005 -- 5.203409 7.900796 0.330212 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.881095 5.817649 2.426715 -+ 2.801124 5.964886 2.435947 -+ 4.181612 5.279606 3.325770 -+ 4.578316 7.173413 2.389148 -+ 5.658401 7.026988 2.380365 -+ 4.277913 7.712268 1.490542 -+ 4.199407 7.952315 3.576852 -+ 4.478064 7.453372 4.409622 -+ 4.661173 8.850231 3.551971 -+ 3.198660 8.088474 3.584954 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.LYS.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2634,17 +2634,17 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.226485 5.898474 0.401698 -- 4.414018 6.624028 0.441300 -- 5.794506 5.938748 1.331123 -- 6.145332 6.228186 -0.769897 -- 7.203874 5.974714 -0.827698 -- 5.823386 6.659994 -1.717522 -- 5.933539 7.203239 0.309601 -- 6.528435 7.362078 -0.491005 -- 5.203409 7.900796 0.330212 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.881095 5.817649 2.426715 -+ 2.801124 5.964886 2.435947 -+ 4.181612 5.279606 3.325770 -+ 4.578316 7.173413 2.389148 -+ 5.658401 7.026988 2.380365 -+ 4.277913 7.712268 1.490542 -+ 4.199407 7.952315 3.576852 -+ 4.661173 8.850231 3.551971 -+ 3.198660 8.088474 3.584954 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.LYN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2761,11 +2761,11 @@ - 4.419995 0.019280 -0.902255 - 3.955884 -0.274036 0.790585 - 5.547124 1.172442 0.544698 -- 6.078592 2.122578 0.598404 -- 6.005141 0.543154 -0.218399 -- 5.532142 0.472642 1.882665 -- 5.876555 1.272377 2.538335 -- 6.368845 0.104645 1.288859 -+ 6.413547 0.741633 0.042886 -+ 5.652946 1.047940 1.622381 -+ 5.369090 2.628183 0.185221 -+ 5.969291 2.861853 -0.694128 -+ 5.690639 3.251042 1.019939 - 3.933608 2.871277 -0.104508 - 3.611466 3.488572 0.734105 - 3.505165 3.526388 -1.409786 -@@ -2867,7 +2867,7 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.309567 5.303525 1.366033 -- 5.145787 5.839753 0.481671 -+ 3.725381 5.622023 2.517634 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.CYS.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -3079,13 +3079,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.402881 6.076526 0.265157 -- 6.377314 6.105674 -1.224148 -- 6.034578 6.467191 -2.193651 -- 6.303017 6.908485 -0.490613 -- 7.415066 5.781911 -1.303828 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.817297 5.981271 2.651702 -+ 4.753204 7.463130 2.340945 -+ 4.433578 7.904044 1.396734 -+ 4.585895 8.175303 3.148978 -+ 5.814065 7.218764 2.286557 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.MET.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -3196,9 +3196,9 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.275095 5.011382 1.194525 -- 5.214909 5.080371 2.030940 -- 3.476290 5.943429 0.910275 -- 4.245574 6.470767 0.682862 -+ 3.669104 5.954940 0.620005 -+ 5.407723 5.091882 1.740669 -+ 5.742895 5.987180 1.652921 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.ASH.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -3317,12 +3317,12 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.267323 4.996269 1.194944 -- 3.302423 5.493308 1.295046 -- 4.682911 4.808028 2.184869 -- 5.220383 5.890117 0.404729 -- 6.306867 5.987364 1.035359 -- 4.568248 6.850423 -0.085305 -- 5.508873 7.035106 -0.033194 -+ 5.347407 4.849844 1.186161 -+ 3.966920 5.535124 0.296338 -+ 3.873721 5.805373 2.428701 -+ 4.594575 5.679017 3.454373 -+ 2.855955 6.542075 2.333709 -+ 2.710512 6.996629 3.166671 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.GLH.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -diff -urN amber11.orig/AmberTools/test/sleap/oldleap/ff94/all_aminoct94.lib.save amber11/AmberTools/test/sleap/oldleap/ff94/all_aminoct94.lib.save ---- amber11.orig/AmberTools/test/sleap/oldleap/ff94/all_aminoct94.lib.save 2010-03-31 07:05:23.000000000 +0400 -+++ amber11/AmberTools/test/sleap/oldleap/ff94/all_aminoct94.lib.save 2011-03-08 16:38:44.000000000 +0300 -@@ -272,7 +272,7 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.230747 4.925147 1.196914 -- 4.828085 5.500165 0.713033 -+ 3.983296 5.433818 1.972557 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -390,7 +390,7 @@ - 1.784422 4.436955 2.124895 - 1.764698 4.397850 0.345787 - 3.971494 2.947416 2.411212 -- 4.374397 3.770738 2.696536 -+ 3.724043 3.456087 3.186855 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -528,15 +528,15 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.857033 4.748192 2.579338 -- 5.821217 4.249596 2.480083 -- 4.990360 5.695010 3.102655 -- 4.176711 4.112860 3.146449 -- 5.226485 5.898474 0.401698 -- 5.794506 5.938748 1.331123 -- 5.883342 6.134649 -0.435476 -- 4.414018 6.624028 0.441300 -+ 5.354265 4.863179 1.185791 -+ 3.853427 5.762894 -0.062862 -+ 2.773446 5.910110 -0.054565 -+ 4.351509 6.732051 -0.090207 -+ 4.134162 5.185701 -0.943848 -+ 3.881095 5.817649 2.426715 -+ 4.181612 5.279606 3.325770 -+ 4.379188 6.786828 2.400358 -+ 2.801124 5.964886 2.435947 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -682,12 +682,12 @@ - 3.671552 3.399212 3.380613 - 3.485641 1.869279 2.490736 - 4.230199 4.986696 1.245167 -- 3.258221 5.469711 1.345449 -- 4.638709 4.784431 2.235272 -- 5.178160 5.906245 0.482655 -- 5.735477 5.933935 1.418994 -- 5.840562 6.170139 -0.341774 -- 4.354989 6.619215 0.529171 -+ 5.312304 4.855747 1.245167 -+ 3.931816 5.541027 0.355344 -+ 3.812283 5.761636 2.490333 -+ 4.110763 5.208108 3.380624 -+ 4.296680 6.738088 2.490828 -+ 2.730275 5.893388 2.490801 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -821,9 +821,9 @@ - 3.716963 3.477633 3.370556 - 3.499621 1.931327 2.516833 - 4.274181 5.009604 1.194574 -- 4.690774 4.823320 2.184447 -- 4.954792 5.645336 0.628258 -- 3.310286 5.508600 1.294624 -+ 3.973778 5.548459 0.295968 -+ 3.993550 5.587589 2.075074 -+ 5.354265 4.863179 1.185791 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -943,10 +943,10 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.253694 5.017114 1.232141 -- 3.666601 5.213107 2.293908 -- 5.062354 5.920372 0.673198 -- 5.699537 6.377296 0.036552 -- 4.754312 6.389897 1.512695 -+ 5.005295 5.340406 0.315070 -+ 3.984875 5.817912 2.265912 -+ 4.408006 6.733705 2.314738 -+ 3.359598 5.504301 2.994456 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -1076,13 +1076,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.220277 5.927344 0.433563 -- 4.913588 6.591689 1.420998 -- 6.050965 6.373808 -0.511346 -- 5.971268 7.107959 0.177690 -- 6.636748 6.497679 -1.324743 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.906966 5.848446 2.410297 -+ 3.138947 5.408353 3.262885 -+ 4.458847 7.061526 2.488328 -+ 4.248421 7.659050 3.274958 -+ 5.084275 7.376210 1.760376 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -1243,20 +1243,20 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.226485 5.898474 0.401698 -- 4.414018 6.624028 0.441300 -- 5.794506 5.938748 1.331123 -- 6.125319 6.253797 -0.719124 -- 6.688164 6.300372 -1.556463 -- 6.117846 7.301883 0.099632 -- 5.907135 8.163840 1.090353 -- 5.292210 7.913283 1.851398 -- 6.363014 9.065005 1.077109 -- 6.926823 7.627695 -0.904511 -- 7.501836 7.713669 -1.730386 -- 6.873063 8.384728 -0.238094 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.881095 5.817649 2.426715 -+ 2.801124 5.964886 2.435947 -+ 4.181612 5.279606 3.325770 -+ 4.540311 7.142726 2.424478 -+ 5.151800 7.375491 1.655062 -+ 4.364270 8.040994 3.389374 -+ 3.575005 7.807613 4.434120 -+ 3.088928 6.925430 4.508833 -+ 3.465343 8.513638 5.147984 -+ 5.006244 9.201290 3.286985 -+ 5.604850 9.375324 2.492326 -+ 4.892201 9.903050 4.004360 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -1397,13 +1397,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 4.722990 6.580423 1.708019 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 3.339711 5.691917 3.169798 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -1537,13 +1537,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 6.629203 7.441424 -0.586231 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.896295 7.605082 0.676854 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -1681,14 +1681,14 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 4.722990 6.580423 1.708019 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 6.629203 7.441424 -0.586231 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 3.339711 5.691917 3.169798 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.896295 7.605082 0.676854 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -1852,20 +1852,20 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 4.941957 6.093161 0.993054 -- 4.555798 6.518222 1.919501 -- 5.833674 6.587638 -0.009560 -- 5.727864 7.297382 0.701192 -- 6.577083 6.691104 -1.083216 -- 6.699953 7.881667 -0.356949 -- 7.350710 8.089828 -1.206234 -- 6.471604 8.773711 0.684306 -- 7.153163 9.167983 -0.069436 -- 6.163215 9.539474 1.752484 -- 6.850900 10.076243 1.098979 -- 5.726463 10.185215 2.927374 -- 6.404130 10.841773 2.381664 -- 5.125146 10.546906 4.138818 -+ 4.023443 5.931088 2.293236 -+ 3.368827 5.705470 3.135064 -+ 4.811936 7.073557 1.949805 -+ 4.882911 7.922013 2.493114 -+ 5.427345 6.842058 0.816764 -+ 6.297161 7.689048 0.119607 -+ 6.531228 8.676646 0.517052 -+ 6.814097 7.187003 -1.069017 -+ 7.498083 7.791848 -1.664355 -+ 6.482667 5.953109 -1.505090 -+ 6.897672 5.575635 -2.439640 -+ 5.604046 5.117349 -0.785625 -+ 5.358725 4.126563 -1.168065 -+ 5.083391 5.623006 0.411551 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -2018,16 +2018,16 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.021223 6.053049 0.839188 -- 4.662984 6.521610 1.755820 -- 5.904492 6.742286 -0.000329 -- 5.724114 7.440373 0.817130 -- 6.758713 7.099630 -1.050381 -- 6.738282 7.947511 -0.365705 -- 7.536653 7.157250 -2.212917 -- 7.655187 8.096815 -1.673224 -- 8.214242 6.953605 -3.420974 -- 8.451251 7.942064 -3.027432 -+ 3.911603 5.857254 2.409885 -+ 3.236109 5.513847 3.193390 -+ 4.490005 7.129516 2.492349 -+ 4.264839 7.776656 3.340058 -+ 5.357612 7.570590 1.486013 -+ 5.807939 8.561136 1.550217 -+ 5.646816 6.739401 0.397212 -+ 6.322310 7.082808 -0.386292 -+ 5.068414 5.467139 0.314748 -+ 5.293580 4.820000 -0.532961 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -2180,17 +2180,17 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.267323 4.996269 1.194944 -- 5.102503 5.984523 0.660315 -- 4.777863 6.502414 1.562811 -- 5.985574 6.611197 -0.227077 -- 5.846174 7.352316 0.559949 -- 6.824378 6.891857 -1.312267 -- 6.854321 7.991157 -0.512116 -- 6.305234 7.900783 0.270147 -- 7.573657 6.866032 -2.494602 -- 7.737299 7.827553 -2.007982 -- 8.211756 6.577405 -3.706841 -- 8.492629 7.576371 -3.373257 -+ 4.059917 5.918914 2.227275 -+ 3.400094 5.668222 3.057870 -+ 4.699989 7.163550 2.192787 -+ 4.538509 7.881896 2.996531 -+ 5.547468 7.485540 1.125968 -+ 6.169252 8.694615 1.092466 -+ 5.956320 9.246984 1.848209 -+ 5.754874 6.562895 0.093637 -+ 6.414696 6.813587 -0.736958 -+ 5.114801 5.318259 0.128125 -+ 5.276282 4.599913 -0.675619 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -2319,11 +2319,11 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.267323 4.996269 1.194944 -- 3.302423 5.493308 1.295046 -- 4.682911 4.808028 2.184869 -- 5.220383 5.890117 0.404729 -- 6.306867 5.987364 1.035359 -- 4.568248 6.850423 -0.085305 -+ 5.347407 4.849844 1.186161 -+ 3.966920 5.535124 0.296338 -+ 3.873721 5.805373 2.428701 -+ 4.594575 5.679017 3.454373 -+ 2.855955 6.542075 2.333709 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -2434,8 +2434,8 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.275095 5.011382 1.194525 -- 5.214909 5.080371 2.030940 -- 3.476290 5.943429 0.910275 -+ 3.669104 5.954940 0.620005 -+ 5.407723 5.091882 1.740669 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -2583,18 +2583,18 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.226485 5.898474 0.401698 -- 4.414018 6.624028 0.441300 -- 5.794506 5.938748 1.331123 -- 6.145332 6.228186 -0.769897 -- 7.203874 5.974714 -0.827698 -- 5.823386 6.659994 -1.717522 -- 5.933539 7.203239 0.309601 -- 6.482814 7.265694 1.154880 -- 6.528435 7.362078 -0.491005 -- 5.203409 7.900796 0.330212 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.881095 5.817649 2.426715 -+ 2.801124 5.964886 2.435947 -+ 4.181612 5.279606 3.325770 -+ 4.578316 7.173413 2.389148 -+ 5.658401 7.026988 2.380365 -+ 4.277913 7.712268 1.490542 -+ 4.199407 7.952315 3.576852 -+ 4.478064 7.453372 4.409622 -+ 4.661173 8.850231 3.551971 -+ 3.198660 8.088474 3.584954 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -2718,11 +2718,11 @@ - 4.419995 0.019280 -0.902255 - 3.955884 -0.274036 0.790585 - 5.547124 1.172442 0.544698 -- 6.078592 2.122578 0.598404 -- 6.005141 0.543154 -0.218399 -- 5.532142 0.472642 1.882665 -- 5.876555 1.272377 2.538335 -- 6.368845 0.104645 1.288859 -+ 6.413547 0.741633 0.042886 -+ 5.652946 1.047940 1.622381 -+ 5.369090 2.628183 0.185221 -+ 5.969291 2.861853 -0.694128 -+ 5.690639 3.251042 1.019939 - 3.933608 2.871277 -0.104508 - 3.611466 3.488572 0.734105 - 3.505165 3.526388 -1.409786 -@@ -2830,7 +2830,7 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.309567 5.303525 1.366033 -- 5.145787 5.839753 0.481671 -+ 3.725381 5.622023 2.517634 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -@@ -3054,13 +3054,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.402881 6.076526 0.265157 -- 6.377314 6.105674 -1.224148 -- 6.034578 6.467191 -2.193651 -- 6.303017 6.908485 -0.490613 -- 7.415066 5.781911 -1.303828 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.817297 5.981271 2.651702 -+ 4.753204 7.463130 2.340945 -+ 4.433578 7.904044 1.396734 -+ 4.585895 8.175303 3.148978 -+ 5.814065 7.218764 2.286557 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - 6.204451 3.702005 0.000000 -diff -urN amber11.orig/AmberTools/test/sleap/oldleap/ff94/all_aminont94.lib.save amber11/AmberTools/test/sleap/oldleap/ff94/all_aminont94.lib.save ---- amber11.orig/AmberTools/test/sleap/oldleap/ff94/all_aminont94.lib.save 2010-03-31 07:05:23.000000000 +0400 -+++ amber11/AmberTools/test/sleap/oldleap/ff94/all_aminont94.lib.save 2011-03-08 16:38:44.000000000 +0300 -@@ -290,7 +290,7 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.230747 4.925147 1.196914 -- 4.828085 5.500165 0.713033 -+ 3.983296 5.433818 1.972557 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NSER.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -414,7 +414,7 @@ - 1.784422 4.436955 2.124895 - 1.764698 4.397850 0.345787 - 3.971494 2.947416 2.411212 -- 4.374397 3.770738 2.696536 -+ 3.724043 3.456087 3.186855 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NTHR.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -558,15 +558,15 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.857033 4.748192 2.579338 -- 5.821217 4.249596 2.480083 -- 4.990360 5.695010 3.102655 -- 4.176711 4.112860 3.146449 -- 5.226485 5.898474 0.401698 -- 5.794506 5.938748 1.331123 -- 5.883342 6.134649 -0.435476 -- 4.414018 6.624028 0.441300 -+ 5.354265 4.863179 1.185791 -+ 3.853427 5.762894 -0.062862 -+ 2.773446 5.910110 -0.054565 -+ 4.351509 6.732051 -0.090207 -+ 4.134162 5.185701 -0.943848 -+ 3.881095 5.817649 2.426715 -+ 4.181612 5.279606 3.325770 -+ 4.379188 6.786828 2.400358 -+ 2.801124 5.964886 2.435947 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NLEU.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -718,12 +718,12 @@ - 3.671552 3.399212 3.380613 - 3.485641 1.869279 2.490736 - 4.230199 4.986696 1.245167 -- 4.638709 4.784431 2.235272 -- 3.258221 5.469711 1.345449 -- 5.178160 5.906245 0.482655 -- 5.735477 5.933935 1.418994 -- 5.840562 6.170139 -0.341774 -- 4.354989 6.619215 0.529171 -+ 3.931816 5.541027 0.355344 -+ 5.312304 4.855747 1.245167 -+ 3.812283 5.761636 2.490333 -+ 4.110763 5.208108 3.380624 -+ 4.296680 6.738088 2.490828 -+ 2.730275 5.893388 2.490801 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NILE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -863,9 +863,9 @@ - 3.716963 3.477633 3.370556 - 3.499621 1.931327 2.516833 - 4.274181 5.009604 1.194574 -- 4.690774 4.823320 2.184447 -- 4.954792 5.645336 0.628258 -- 3.310286 5.508600 1.294624 -+ 3.973778 5.548459 0.295968 -+ 3.993550 5.587589 2.075074 -+ 5.354265 4.863179 1.185791 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NVAL.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -991,10 +991,10 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.253694 5.017114 1.232141 -- 3.666601 5.213107 2.293908 -- 5.062354 5.920372 0.673198 -- 5.699537 6.377296 0.036552 -- 4.754312 6.389897 1.512695 -+ 5.005295 5.340406 0.315070 -+ 3.984875 5.817912 2.265912 -+ 4.408006 6.733705 2.314738 -+ 3.359598 5.504301 2.994456 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NASN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1130,13 +1130,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.220277 5.927344 0.433563 -- 4.913588 6.591689 1.420998 -- 6.050965 6.373808 -0.511346 -- 5.971268 7.107959 0.177690 -- 6.636748 6.497679 -1.324743 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.906966 5.848446 2.410297 -+ 3.138947 5.408353 3.262885 -+ 4.458847 7.061526 2.488328 -+ 4.248421 7.659050 3.274958 -+ 5.084275 7.376210 1.760376 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NGLN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1303,20 +1303,20 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.226485 5.898474 0.401698 -- 4.414018 6.624028 0.441300 -- 5.794506 5.938748 1.331123 -- 6.125319 6.253797 -0.719124 -- 6.688164 6.300372 -1.556463 -- 6.117846 7.301883 0.099632 -- 5.907135 8.163840 1.090353 -- 5.292210 7.913283 1.851398 -- 6.363014 9.065005 1.077109 -- 6.926823 7.627695 -0.904511 -- 7.501836 7.713669 -1.730386 -- 6.873063 8.384728 -0.238094 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.881095 5.817649 2.426715 -+ 2.801124 5.964886 2.435947 -+ 4.181612 5.279606 3.325770 -+ 4.540311 7.142726 2.424478 -+ 5.151800 7.375491 1.655062 -+ 4.364270 8.040994 3.389374 -+ 3.575005 7.807613 4.434120 -+ 3.088928 6.925430 4.508833 -+ 3.465343 8.513638 5.147984 -+ 5.006244 9.201290 3.286985 -+ 5.604850 9.375324 2.492326 -+ 4.892201 9.903050 4.004360 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NARG.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1463,13 +1463,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 4.722990 6.580423 1.708019 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 3.339711 5.691917 3.169798 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NHID.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1609,13 +1609,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 6.629203 7.441424 -0.586231 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.896295 7.605082 0.676854 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NHIE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1759,14 +1759,14 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.003504 6.072258 0.881472 -- 4.722990 6.580423 1.708019 -- 5.824163 6.508104 -0.056055 -- 5.654216 7.217462 0.753902 -- 6.562760 6.595751 -1.134430 -- 6.629203 7.441424 -0.586231 -- 7.210678 6.375009 -2.309622 -- 7.387392 7.342143 -1.838959 -+ 3.942772 5.885090 2.382967 -+ 3.339711 5.691917 3.169798 -+ 4.624266 6.997644 2.182496 -+ 4.563036 7.811879 2.904557 -+ 5.294008 6.891449 1.061662 -+ 5.896295 7.605082 0.676854 -+ 5.058971 5.678865 0.492455 -+ 5.537740 5.417840 -0.451339 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NHIP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -1936,20 +1936,20 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 4.941957 6.093161 0.993054 -- 4.555798 6.518222 1.919501 -- 5.833674 6.587638 -0.009560 -- 5.727864 7.297382 0.701192 -- 6.577083 6.691104 -1.083216 -- 6.699953 7.881667 -0.356949 -- 7.350710 8.089828 -1.206234 -- 6.471604 8.773711 0.684306 -- 7.153163 9.167983 -0.069436 -- 6.163215 9.539474 1.752484 -- 6.850900 10.076243 1.098979 -- 5.726463 10.185215 2.927374 -- 6.404130 10.841773 2.381664 -- 5.125146 10.546906 4.138818 -+ 4.023443 5.931088 2.293236 -+ 3.368827 5.705470 3.135064 -+ 4.811936 7.073557 1.949805 -+ 4.882911 7.922013 2.493114 -+ 5.427345 6.842058 0.816764 -+ 6.297161 7.689048 0.119607 -+ 6.531228 8.676646 0.517052 -+ 6.814097 7.187003 -1.069017 -+ 7.498083 7.791848 -1.664355 -+ 6.482667 5.953109 -1.505090 -+ 6.897672 5.575635 -2.439640 -+ 5.604046 5.117349 -0.785625 -+ 5.358725 4.126563 -1.168065 -+ 5.083391 5.623006 0.411551 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NTRP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2108,16 +2108,16 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.200807 5.026066 1.321085 -- 5.021223 6.053049 0.839188 -- 4.662984 6.521610 1.755820 -- 5.904492 6.742286 -0.000329 -- 5.724114 7.440373 0.817130 -- 6.758713 7.099630 -1.050381 -- 6.738282 7.947511 -0.365705 -- 7.536653 7.157250 -2.212917 -- 7.655187 8.096815 -1.673224 -- 8.214242 6.953605 -3.420974 -- 8.451251 7.942064 -3.027432 -+ 3.911603 5.857254 2.409885 -+ 3.236109 5.513847 3.193390 -+ 4.490005 7.129516 2.492349 -+ 4.264839 7.776656 3.340058 -+ 5.357612 7.570590 1.486013 -+ 5.807939 8.561136 1.550217 -+ 5.646816 6.739401 0.397212 -+ 6.322310 7.082808 -0.386292 -+ 5.068414 5.467139 0.314748 -+ 5.293580 4.820000 -0.532961 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NPHE.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2276,17 +2276,17 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.267323 4.996269 1.194944 -- 5.102503 5.984523 0.660315 -- 4.777863 6.502414 1.562811 -- 5.985574 6.611197 -0.227077 -- 5.846174 7.352316 0.559949 -- 6.824378 6.891857 -1.312267 -- 6.854321 7.991157 -0.512116 -- 6.305234 7.900783 0.270147 -- 7.573657 6.866032 -2.494602 -- 7.737299 7.827553 -2.007982 -- 8.211756 6.577405 -3.706841 -- 8.492629 7.576371 -3.373257 -+ 4.059917 5.918914 2.227275 -+ 3.400094 5.668222 3.057870 -+ 4.699989 7.163550 2.192787 -+ 4.538509 7.881896 2.996531 -+ 5.547468 7.485540 1.125968 -+ 6.169252 8.694615 1.092466 -+ 5.956320 9.246984 1.848209 -+ 5.754874 6.562895 0.093637 -+ 6.414696 6.813587 -0.736958 -+ 5.114801 5.318259 0.128125 -+ 5.276282 4.599913 -0.675619 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NTYR.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2421,11 +2421,11 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.267323 4.996269 1.194944 -- 3.302423 5.493308 1.295046 -- 4.682911 4.808028 2.184869 -- 5.220383 5.890117 0.404729 -- 6.306867 5.987364 1.035359 -- 4.568248 6.850423 -0.085305 -+ 5.347407 4.849844 1.186161 -+ 3.966920 5.535124 0.296338 -+ 3.873721 5.805373 2.428701 -+ 4.594575 5.679017 3.454373 -+ 2.855955 6.542075 2.333709 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NGLU.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2542,8 +2542,8 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.275095 5.011382 1.194525 -- 5.214909 5.080371 2.030940 -- 3.476290 5.943429 0.910275 -+ 3.669104 5.954940 0.620005 -+ 5.407723 5.091882 1.740669 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NASP.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2697,18 +2697,18 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.226485 5.898474 0.401698 -- 4.414018 6.624028 0.441300 -- 5.794506 5.938748 1.331123 -- 6.145332 6.228186 -0.769897 -- 7.203874 5.974714 -0.827698 -- 5.823386 6.659994 -1.717522 -- 5.933539 7.203239 0.309601 -- 6.482814 7.265694 1.154880 -- 6.528435 7.362078 -0.491005 -- 5.203409 7.900796 0.330212 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.881095 5.817649 2.426715 -+ 2.801124 5.964886 2.435947 -+ 4.181612 5.279606 3.325770 -+ 4.578316 7.173413 2.389148 -+ 5.658401 7.026988 2.380365 -+ 4.277913 7.712268 1.490542 -+ 4.199407 7.952315 3.576852 -+ 4.478064 7.453372 4.409622 -+ 4.661173 8.850231 3.551971 -+ 3.198660 8.088474 3.584954 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NLYS.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -2838,11 +2838,11 @@ - 4.408167 0.002206 -0.902255 - 3.942020 -0.287863 0.790585 - 5.543318 1.147472 0.544698 -- 6.081407 2.093874 0.598404 -- 5.996931 0.515001 -0.218399 -- 5.523452 0.447794 1.882665 -- 5.873440 1.245104 2.538335 -- 6.357566 0.073964 1.288859 -+ 6.406713 0.710625 0.042886 -+ 5.648269 1.022234 1.622381 -+ 5.375452 2.604420 0.185221 -+ 5.977270 2.833894 -0.694128 -+ 5.701342 3.225018 1.019939 - 3.941702 2.857530 -0.104508 - 3.623877 3.477058 0.734105 - 3.517843 3.515616 -1.409786 -@@ -2956,7 +2956,7 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.309567 5.303525 1.366033 -- 5.145787 5.839753 0.481671 -+ 3.725381 5.622023 2.517634 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NCYS.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -3192,13 +3192,13 @@ - 2.496989 3.801078 1.241373 - 3.877477 3.115798 2.131196 - 4.274181 5.009604 1.194574 -- 3.310286 5.508600 1.294624 -- 4.690774 4.823320 2.184447 -- 5.402881 6.076526 0.265157 -- 6.377314 6.105674 -1.224148 -- 6.034578 6.467191 -2.193651 -- 6.303017 6.908485 -0.490613 -- 7.415066 5.781911 -1.303828 -+ 5.354265 4.863179 1.185791 -+ 3.973778 5.548459 0.295968 -+ 3.817297 5.981271 2.651702 -+ 4.753204 7.463130 2.340945 -+ 4.433578 7.904044 1.396734 -+ 4.585895 8.175303 3.148978 -+ 5.814065 7.218764 2.286557 - 5.485538 2.705208 0.000000 - 6.008821 1.593175 0.000000 - !entry.NMET.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -diff -urN amber11.orig/AmberTools/test/sleap/oldleap/ff94/all_nucleic94.lib.save amber11/AmberTools/test/sleap/oldleap/ff94/all_nucleic94.lib.save ---- amber11.orig/AmberTools/test/sleap/oldleap/ff94/all_nucleic94.lib.save 2010-03-31 07:05:23.000000000 +0400 -+++ amber11/AmberTools/test/sleap/oldleap/ff94/all_nucleic94.lib.save 2011-03-08 16:38:44.000000000 +0300 -@@ -181,21 +181,21 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.825854 0.331961 5.463505 -- 2.973744 -0.351218 5.767666 -- 3.198298 -1.353172 5.432908 -- 3.262456 0.147686 6.932887 -- 3.554407 -1.123002 6.450998 -- 3.970615 -1.030384 7.784487 -- 4.371751 -2.299375 7.628436 -- 4.806122 -2.789852 8.397106 -- 4.239728 -2.765377 6.742145 -- 4.154910 -0.430195 8.968298 -- 4.588103 -1.686764 8.920565 -- 4.748481 -1.226887 9.884511 -- 5.030638 -2.930357 8.914329 -- 5.276823 -4.138026 8.363485 -+ 2.623224 0.684847 5.224690 -+ 2.631874 -0.707517 3.706295 -+ 2.874735 -1.252950 2.473241 -+ 2.981754 -0.611820 1.610746 -+ 3.015083 -2.545282 2.486669 -+ 2.854431 -2.887097 3.824373 -+ 2.890057 -4.114829 4.496241 -+ 3.109804 -5.286605 3.884480 -+ 3.124371 -6.141804 4.421623 -+ 3.260868 -5.314611 2.886234 -+ 2.691903 -4.099290 5.821417 -+ 2.474287 -2.933307 6.423105 -+ 2.312232 -2.898303 7.490303 -+ 2.418509 -1.722706 5.899909 -+ 2.621151 -1.767164 4.565946 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 -@@ -394,21 +394,21 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.821628 0.329290 5.472166 -- 3.045980 -0.266556 5.623252 -- 3.300321 -1.253530 5.266050 -- 3.400654 0.078938 6.868419 -- 3.596750 0.739775 8.200650 -- 2.627095 1.008594 8.619702 -- 4.106045 0.052544 8.876247 -- 4.199810 1.639079 8.075463 -- 3.886987 -1.267611 6.713863 -- 4.193797 -1.026107 7.880244 -- 4.182336 -2.491705 6.149271 -- 4.473391 -2.322796 7.186024 -- 4.489928 -3.724276 5.610241 -- 4.916436 -3.803915 6.750481 -+ 2.623224 0.684847 5.224690 -+ 2.632951 -0.717026 3.703395 -+ 2.875701 -1.078946 2.404555 -+ 2.959028 -0.321296 1.639425 -+ 3.067013 -2.361001 2.064944 -+ 3.333430 -2.767543 0.645879 -+ 4.242250 -2.280529 0.292378 -+ 3.457938 -3.849191 0.594530 -+ 2.493973 -2.468751 0.018077 -+ 3.022943 -3.401289 3.059659 -+ 3.186167 -4.600916 2.842510 -+ 2.773364 -2.946913 4.338586 -+ 2.730574 -3.698393 5.126967 -+ 2.572586 -1.635482 4.718372 -+ 2.357489 -1.330164 5.879800 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 -@@ -612,22 +612,22 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.809468 0.366314 5.430851 -- 2.985443 -0.303283 5.701265 -- 3.220128 -1.300453 5.359250 -- 3.217392 0.174542 6.898755 -- 3.501851 -1.098776 6.419335 -- 3.907092 -0.959542 7.773142 -- 4.306119 -2.122793 7.750193 -- 4.034999 -0.202628 8.943920 -- 4.092163 0.401223 9.738965 -- 4.527564 -1.484195 9.083085 -- 4.671337 -0.799117 10.225713 -- 4.406357 0.160408 10.396586 -- 5.109266 -1.288479 10.993073 -- 4.937775 -2.746085 8.992209 -- 5.203174 -3.983662 8.494648 -+ 2.623224 0.684847 5.224690 -+ 2.590680 -0.679098 3.703090 -+ 2.813126 -1.180187 2.436667 -+ 2.923918 -0.505423 1.600713 -+ 2.866567 -2.487992 2.382906 -+ 2.666616 -2.884782 3.699977 -+ 2.618169 -4.183246 4.272728 -+ 2.745111 -5.274676 3.719947 -+ 2.392358 -4.124071 5.653129 -+ 2.340242 -4.991533 6.147896 -+ 2.235991 -2.964895 6.385427 -+ 2.027971 -3.123388 7.699660 -+ 1.962797 -3.996113 8.203846 -+ 1.903765 -2.280234 8.241661 -+ 2.283795 -1.749407 5.847650 -+ 2.502701 -1.789347 4.505978 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 -@@ -819,19 +819,19 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.810222 0.365622 5.431037 -- 3.040503 -0.202936 5.543946 -- 3.303784 -1.184927 5.179558 -- 3.350889 0.129864 6.825549 -- 3.478253 0.640008 7.780343 -- 3.798907 -1.207335 6.588738 -- 4.083865 -0.848420 7.826630 -- 4.553596 -1.522140 8.414470 -- 3.834435 0.071716 8.160148 -- 4.146081 -2.428628 6.192742 -- 4.391834 -3.604440 5.555033 -- 4.829292 -3.701644 6.711226 -+ 2.623224 0.684847 5.224690 -+ 2.591673 -0.679108 3.703398 -+ 2.814053 -0.989708 2.398148 -+ 2.904088 -0.203069 1.663647 -+ 2.926420 -2.283840 1.995414 -+ 3.104659 -2.514231 0.945056 -+ 2.799915 -3.288854 3.004791 -+ 2.898410 -4.565463 2.683902 -+ 2.803322 -5.244627 3.425383 -+ 3.063325 -4.838262 1.725527 -+ 2.582464 -2.976080 4.279070 -+ 2.473124 -1.675585 4.661638 -+ 2.270623 -1.344205 5.839254 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 -@@ -1043,21 +1043,21 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.398936 0.755791 5.236576 -- 5.570721 0.053476 5.133763 -- 5.651435 -0.952100 4.748143 -- 6.248368 0.547472 6.127122 -- 6.337852 -0.727929 5.581736 -- 7.186443 -0.642297 6.691944 -- 7.489983 -1.917831 6.415398 -- 8.153280 -2.415516 6.991980 -- 7.055473 -2.381556 5.630375 -- 7.773936 -0.045280 7.737899 -- 8.144838 -1.308931 7.552106 -- 8.632452 -0.851805 8.400438 -- 8.538915 -2.559764 7.402037 -- 8.562807 -3.771388 6.807145 -+ 5.071990 1.095268 4.737463 -+ 4.538874 -0.297045 3.315659 -+ 4.336740 -0.846471 2.077041 -+ 4.152394 -0.207224 1.226289 -+ 4.452852 -2.140973 2.049069 -+ 4.754050 -2.480049 3.362997 -+ 4.997986 -3.708205 3.989198 -+ 4.976769 -4.883498 3.345899 -+ 5.160704 -5.738821 3.850568 -+ 4.776841 -4.914031 2.356355 -+ 5.265289 -3.689348 5.302131 -+ 5.284973 -2.519883 5.935270 -+ 5.498266 -2.482169 6.993326 -+ 5.072682 -1.308518 5.455764 -+ 4.806134 -1.356364 4.133205 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 -@@ -1274,21 +1274,21 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.397885 0.753191 5.246175 -- 5.590532 0.136915 4.972869 -- 5.691792 -0.854182 4.555888 -- 6.355081 0.476418 6.019675 -- 7.005380 1.133878 7.200716 -- 6.241886 1.418905 7.924551 -- 7.704141 0.438210 7.665344 -- 7.543334 2.022951 6.871696 -- 6.737960 -0.878090 5.715845 -- 7.428954 -0.641760 6.705579 -- 6.803084 -2.106960 5.091315 -- 7.433797 -1.942952 5.965044 -- 6.888321 -3.344512 4.486667 -- 7.677782 -3.431286 5.412745 -+ 5.071990 1.095268 4.737463 -+ 4.538744 -0.306572 3.312620 -+ 4.316895 -0.672508 2.011169 -+ 4.145425 0.083640 1.259346 -+ 4.360306 -1.957588 1.633963 -+ 4.118872 -2.368537 0.211701 -+ 4.859526 -1.896818 -0.434064 -+ 4.201263 -3.452119 0.127068 -+ 3.120134 -2.055722 -0.092882 -+ 4.642734 -2.996992 2.589722 -+ 4.702936 -4.199185 2.336724 -+ 4.852811 -2.538498 3.874265 -+ 5.070419 -3.289156 4.634040 -+ 4.814710 -1.223887 4.292292 -+ 5.014652 -0.915008 5.455485 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 -@@ -1510,22 +1510,22 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.372913 0.790414 5.211298 -- 5.559757 0.101208 5.067090 -- 5.647583 -0.899755 4.671160 -- 6.194776 0.575080 6.110305 -- 6.278024 -0.702826 5.569817 -- 7.123995 -0.570401 6.702600 -- 7.472741 -1.740173 6.551245 -- 7.656517 0.184264 7.754694 -- 7.991655 0.787072 8.478783 -- 8.146732 -1.105376 7.724367 -- 8.683403 -0.422802 8.744993 -- 8.507987 0.541027 8.990678 -- 9.349613 -0.919433 9.319121 -- 8.481202 -2.373962 7.505920 -- 8.540900 -3.615812 6.954699 -+ 5.071990 1.095268 4.737463 -+ 4.499521 -0.267941 3.326572 -+ 4.267491 -0.772686 2.063324 -+ 4.096298 -0.099873 1.236030 -+ 4.278725 -2.081203 2.002024 -+ 4.535077 -2.474587 3.310318 -+ 4.665007 -3.772057 3.872536 -+ 4.578030 -4.865461 3.315935 -+ 4.925900 -3.709107 5.246571 -+ 5.032497 -4.575574 5.734292 -+ 5.047695 -2.547474 5.981536 -+ 5.299246 -2.702459 7.288556 -+ 5.396714 -3.573970 7.789625 -+ 5.381197 -1.857343 7.835514 -+ 4.927816 -1.332957 5.452878 -+ 4.673984 -1.376560 4.117488 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 -@@ -1735,19 +1735,19 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.373674 0.789709 5.211219 -- 5.559264 0.200618 4.899855 -- 5.666544 -0.785646 4.473035 -- 6.294463 0.528171 5.996117 -- 6.748720 1.036110 6.846852 -- 6.613356 -0.816346 5.628040 -- 7.310127 -0.462256 6.691775 -- 7.941913 -1.143751 7.087389 -- 7.204329 0.461930 7.085204 -- 6.784882 -2.043285 5.144201 -- 6.779159 -3.223049 4.467648 -- 7.584089 -3.327568 5.405072 -+ 5.071990 1.095268 4.737463 -+ 4.500559 -0.267967 3.326521 -+ 4.258187 -0.582249 2.025720 -+ 4.103951 0.202771 1.300217 -+ 4.205645 -1.878082 1.616262 -+ 4.010240 -2.111427 0.569617 -+ 4.416190 -2.880836 2.613787 -+ 4.378882 -4.158916 2.285883 -+ 4.532450 -4.836391 3.019057 -+ 4.201751 -4.434440 1.330472 -+ 4.652634 -2.564463 3.883788 -+ 4.701224 -1.262318 4.273223 -+ 4.918947 -0.927591 5.447171 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 -@@ -1953,27 +1953,27 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.825854 0.331961 5.463505 -- 2.973744 -0.351218 5.767666 -- 3.198298 -1.353172 5.432908 -- 3.262456 0.147686 6.932887 -- 3.554407 -1.123002 6.450998 -- 3.970615 -1.030384 7.784487 -- 4.371751 -2.299375 7.628436 -- 4.806122 -2.789852 8.397106 -- 4.239728 -2.765377 6.742145 -- 4.154910 -0.430195 8.968298 -- 4.588103 -1.686764 8.920565 -- 4.748481 -1.226887 9.884511 -- 5.030638 -2.930357 8.914329 -- 5.276823 -4.138026 8.363485 -+ 2.623224 0.684847 5.224690 -+ 2.631874 -0.707517 3.706295 -+ 2.874735 -1.252950 2.473241 -+ 2.981754 -0.611820 1.610746 -+ 3.015083 -2.545282 2.486669 -+ 2.854431 -2.887097 3.824373 -+ 2.890057 -4.114829 4.496241 -+ 3.109804 -5.286605 3.884480 -+ 3.124371 -6.141804 4.421623 -+ 3.260868 -5.314611 2.886234 -+ 2.691903 -4.099290 5.821417 -+ 2.474287 -2.933307 6.423105 -+ 2.312232 -2.898303 7.490303 -+ 2.418509 -1.722706 5.899909 -+ 2.621151 -1.767164 4.565946 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 - 4.177807 1.697081 2.650726 - 4.070872 1.663908 4.714248 -- 4.904136 2.139152 4.751846 -+ 4.591405 0.857803 4.743234 - 2.785622 3.721368 4.515694 - !entry.RA5.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x - 1 31 0 0 0 0 -@@ -2160,24 +2160,24 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.821628 0.329290 5.472166 -- 3.045980 -0.266556 5.623252 -- 3.300321 -1.253530 5.266050 -- 3.400654 0.078938 6.868419 -- 3.529160 0.584527 7.825480 -- 3.886987 -1.267611 6.713863 -- 4.193797 -1.026107 7.880244 -- 4.182336 -2.491705 6.149271 -- 4.473391 -2.322796 7.186024 -- 4.489928 -3.724276 5.610241 -- 4.916436 -3.803915 6.750481 -+ 2.623224 0.684847 5.224690 -+ 2.632951 -0.717026 3.703395 -+ 2.875701 -1.078946 2.404555 -+ 2.959028 -0.321296 1.639425 -+ 3.067013 -2.361001 2.064944 -+ 3.258724 -2.626638 1.025337 -+ 3.022943 -3.401289 3.059659 -+ 3.186167 -4.600916 2.842510 -+ 2.773364 -2.946913 4.338586 -+ 2.730574 -3.698393 5.126967 -+ 2.572586 -1.635482 4.718372 -+ 2.357489 -1.330164 5.879800 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 - 4.177807 1.697081 2.650726 - 4.070872 1.663908 4.714248 -- 4.904136 2.139152 4.751846 -+ 4.591405 0.857803 4.743234 - 2.785622 3.721368 4.515694 - !entry.RU5.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x - 1 28 0 0 0 0 -@@ -2378,28 +2378,28 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.809468 0.366314 5.430851 -- 2.985443 -0.303283 5.701265 -- 3.220128 -1.300453 5.359250 -- 3.217392 0.174542 6.898755 -- 3.501851 -1.098776 6.419335 -- 3.907092 -0.959542 7.773142 -- 4.306119 -2.122793 7.750193 -- 4.034999 -0.202628 8.943920 -- 4.092163 0.401223 9.738965 -- 4.527564 -1.484195 9.083085 -- 4.671337 -0.799117 10.225713 -- 4.406357 0.160408 10.396586 -- 5.109266 -1.288479 10.993073 -- 4.937775 -2.746085 8.992209 -- 5.203174 -3.983662 8.494648 -+ 2.623224 0.684847 5.224690 -+ 2.590680 -0.679098 3.703090 -+ 2.813126 -1.180187 2.436667 -+ 2.923918 -0.505423 1.600713 -+ 2.866567 -2.487992 2.382906 -+ 2.666616 -2.884782 3.699977 -+ 2.618169 -4.183246 4.272728 -+ 2.745111 -5.274676 3.719947 -+ 2.392358 -4.124071 5.653129 -+ 2.340242 -4.991533 6.147896 -+ 2.235991 -2.964895 6.385427 -+ 2.027971 -3.123388 7.699660 -+ 1.962797 -3.996113 8.203846 -+ 1.903765 -2.280234 8.241661 -+ 2.283795 -1.749407 5.847650 -+ 2.502701 -1.789347 4.505978 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 - 4.177807 1.697081 2.650726 - 4.070872 1.663908 4.714248 -- 4.904136 2.139152 4.751846 -+ 4.591405 0.857803 4.743234 - 2.785622 3.721368 4.515694 - !entry.RG5.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x - 1 32 0 0 0 0 -@@ -2591,25 +2591,25 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.810222 0.365622 5.431037 -- 3.040503 -0.202936 5.543946 -- 3.303784 -1.184927 5.179558 -- 3.350889 0.129864 6.825549 -- 3.478253 0.640008 7.780343 -- 3.798907 -1.207335 6.588738 -- 4.083865 -0.848420 7.826630 -- 4.553596 -1.522140 8.414470 -- 3.834435 0.071716 8.160148 -- 4.146081 -2.428628 6.192742 -- 4.391834 -3.604440 5.555033 -- 4.829292 -3.701644 6.711226 -+ 2.623224 0.684847 5.224690 -+ 2.591673 -0.679108 3.703398 -+ 2.814053 -0.989708 2.398148 -+ 2.904088 -0.203069 1.663647 -+ 2.926420 -2.283840 1.995414 -+ 3.104659 -2.514231 0.945056 -+ 2.799915 -3.288854 3.004791 -+ 2.898410 -4.565463 2.683902 -+ 2.803322 -5.244627 3.425383 -+ 3.063325 -4.838262 1.725527 -+ 2.582464 -2.976080 4.279070 -+ 2.473124 -1.675585 4.661638 -+ 2.270623 -1.344205 5.839254 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 - 4.177807 1.697081 2.650726 - 4.070872 1.663908 4.714248 -- 4.904136 2.139152 4.751846 -+ 4.591405 0.857803 4.743234 - 2.785622 3.721368 4.515694 - !entry.RC5.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x - 1 29 0 0 0 0 -@@ -2821,27 +2821,27 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.398936 0.755791 5.236576 -- 5.570721 0.053476 5.133763 -- 5.651435 -0.952100 4.748143 -- 6.248368 0.547472 6.127122 -- 6.337852 -0.727929 5.581736 -- 7.186443 -0.642297 6.691944 -- 7.489983 -1.917831 6.415398 -- 8.153280 -2.415516 6.991980 -- 7.055473 -2.381556 5.630375 -- 7.773936 -0.045280 7.737899 -- 8.144838 -1.308931 7.552106 -- 8.632452 -0.851805 8.400438 -- 8.538915 -2.559764 7.402037 -- 8.562807 -3.771388 6.807145 -+ 5.071990 1.095268 4.737463 -+ 4.538874 -0.297045 3.315659 -+ 4.336740 -0.846471 2.077041 -+ 4.152394 -0.207224 1.226289 -+ 4.452852 -2.140973 2.049069 -+ 4.754050 -2.480049 3.362997 -+ 4.997986 -3.708205 3.989198 -+ 4.976769 -4.883498 3.345899 -+ 5.160704 -5.738821 3.850568 -+ 4.776841 -4.914031 2.356355 -+ 5.265289 -3.689348 5.302131 -+ 5.284973 -2.519883 5.935270 -+ 5.498266 -2.482169 6.993326 -+ 5.072682 -1.308518 5.455764 -+ 4.806134 -1.356364 4.133205 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 - 5.668203 2.081314 1.781304 - 6.272975 2.049937 3.757138 -- 7.076220 2.511153 3.504793 -+ 6.759270 1.235224 3.610988 - 5.029888 4.128641 3.998289 - 5.911975 4.450154 3.797910 - !entry.RA3.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -3046,24 +3046,24 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.397885 0.753191 5.246175 -- 5.590532 0.136915 4.972869 -- 5.691792 -0.854182 4.555888 -- 6.355081 0.476418 6.019675 -- 6.811115 0.979784 6.872175 -- 6.737960 -0.878090 5.715845 -- 7.428954 -0.641760 6.705579 -- 6.803084 -2.106960 5.091315 -- 7.433797 -1.942952 5.965044 -- 6.888321 -3.344512 4.486667 -- 7.677782 -3.431286 5.412745 -+ 5.071990 1.095268 4.737463 -+ 4.538744 -0.306572 3.312620 -+ 4.316895 -0.672508 2.011169 -+ 4.145425 0.083640 1.259346 -+ 4.360306 -1.957588 1.633963 -+ 4.180681 -2.226400 0.593014 -+ 4.642734 -2.996992 2.589722 -+ 4.702936 -4.199185 2.336724 -+ 4.852811 -2.538498 3.874265 -+ 5.070419 -3.289156 4.634040 -+ 4.814710 -1.223887 4.292292 -+ 5.014652 -0.915008 5.455485 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 - 5.668203 2.081314 1.781304 - 6.272975 2.049937 3.757138 -- 7.076220 2.511153 3.504793 -+ 6.759270 1.235224 3.610988 - 5.029888 4.128641 3.998289 - 5.911975 4.450154 3.797910 - !entry.RU3.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -3282,28 +3282,28 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.372913 0.790414 5.211298 -- 5.559757 0.101208 5.067090 -- 5.647583 -0.899755 4.671160 -- 6.194776 0.575080 6.110305 -- 6.278024 -0.702826 5.569817 -- 7.123995 -0.570401 6.702600 -- 7.472741 -1.740173 6.551245 -- 7.656517 0.184264 7.754694 -- 7.991655 0.787072 8.478783 -- 8.146732 -1.105376 7.724367 -- 8.683403 -0.422802 8.744993 -- 8.507987 0.541027 8.990678 -- 9.349613 -0.919433 9.319121 -- 8.481202 -2.373962 7.505920 -- 8.540900 -3.615812 6.954699 -+ 5.071990 1.095268 4.737463 -+ 4.499521 -0.267941 3.326572 -+ 4.267491 -0.772686 2.063324 -+ 4.096298 -0.099873 1.236030 -+ 4.278725 -2.081203 2.002024 -+ 4.535077 -2.474587 3.310318 -+ 4.665007 -3.772057 3.872536 -+ 4.578030 -4.865461 3.315935 -+ 4.925900 -3.709107 5.246571 -+ 5.032497 -4.575574 5.734292 -+ 5.047695 -2.547474 5.981536 -+ 5.299246 -2.702459 7.288556 -+ 5.396714 -3.573970 7.789625 -+ 5.381197 -1.857343 7.835514 -+ 4.927816 -1.332957 5.452878 -+ 4.673984 -1.376560 4.117488 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 - 5.668203 2.081314 1.781304 - 6.272975 2.049937 3.757138 -- 7.076220 2.511153 3.504793 -+ 6.759270 1.235224 3.610988 - 5.029888 4.128641 3.998289 - 5.911975 4.450154 3.797910 - !entry.RG3.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -3513,25 +3513,25 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.373674 0.789709 5.211219 -- 5.559264 0.200618 4.899855 -- 5.666544 -0.785646 4.473035 -- 6.294463 0.528171 5.996117 -- 6.748720 1.036110 6.846852 -- 6.613356 -0.816346 5.628040 -- 7.310127 -0.462256 6.691775 -- 7.941913 -1.143751 7.087389 -- 7.204329 0.461930 7.085204 -- 6.784882 -2.043285 5.144201 -- 6.779159 -3.223049 4.467648 -- 7.584089 -3.327568 5.405072 -+ 5.071990 1.095268 4.737463 -+ 4.500559 -0.267967 3.326521 -+ 4.258187 -0.582249 2.025720 -+ 4.103951 0.202771 1.300217 -+ 4.205645 -1.878082 1.616262 -+ 4.010240 -2.111427 0.569617 -+ 4.416190 -2.880836 2.613787 -+ 4.378882 -4.158916 2.285883 -+ 4.532450 -4.836391 3.019057 -+ 4.201751 -4.434440 1.330472 -+ 4.652634 -2.564463 3.883788 -+ 4.701224 -1.262318 4.273223 -+ 4.918947 -0.927591 5.447171 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 - 5.668203 2.081314 1.781304 - 6.272975 2.049937 3.757138 -- 7.076220 2.511153 3.504793 -+ 6.759270 1.235224 3.610988 - 5.029888 4.128641 3.998289 - 5.911975 4.450154 3.797910 - !entry.RC3.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -3739,21 +3739,21 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.398936 0.755791 5.236576 -- 5.570721 0.053476 5.133763 -- 5.651435 -0.952100 4.748143 -- 6.248368 0.547472 6.127122 -- 6.337852 -0.727929 5.581736 -- 7.186443 -0.642297 6.691944 -- 7.489983 -1.917831 6.415398 -- 8.153280 -2.415516 6.991980 -- 7.055473 -2.381556 5.630375 -- 7.773936 -0.045280 7.737899 -- 8.144838 -1.308931 7.552106 -- 8.632452 -0.851805 8.400438 -- 8.538915 -2.559764 7.402037 -- 8.562807 -3.771388 6.807145 -+ 5.071990 1.095268 4.737463 -+ 4.538874 -0.297045 3.315659 -+ 4.336740 -0.846471 2.077041 -+ 4.152394 -0.207224 1.226289 -+ 4.452852 -2.140973 2.049069 -+ 4.754050 -2.480049 3.362997 -+ 4.997986 -3.708205 3.989198 -+ 4.976769 -4.883498 3.345899 -+ 5.160704 -5.738821 3.850568 -+ 4.776841 -4.914031 2.356355 -+ 5.265289 -3.689348 5.302131 -+ 5.284973 -2.519883 5.935270 -+ 5.498266 -2.482169 6.993326 -+ 5.072682 -1.308518 5.455764 -+ 4.806134 -1.356364 4.133205 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 -@@ -3964,21 +3964,21 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.397885 0.753191 5.246175 -- 5.590532 0.136915 4.972869 -- 5.691792 -0.854182 4.555888 -- 6.355081 0.476418 6.019675 -- 7.005380 1.133878 7.200716 -- 6.241886 1.418905 7.924551 -- 7.704141 0.438210 7.665344 -- 7.543334 2.022951 6.871696 -- 6.737960 -0.878090 5.715845 -- 7.428954 -0.641760 6.705579 -- 6.803084 -2.106960 5.091315 -- 7.433797 -1.942952 5.965044 -- 6.888321 -3.344512 4.486667 -- 7.677782 -3.431286 5.412745 -+ 5.071990 1.095268 4.737463 -+ 4.538744 -0.306572 3.312620 -+ 4.316895 -0.672508 2.011169 -+ 4.145425 0.083640 1.259346 -+ 4.360306 -1.957588 1.633963 -+ 4.118872 -2.368537 0.211701 -+ 4.859526 -1.896818 -0.434064 -+ 4.201263 -3.452119 0.127068 -+ 3.120134 -2.055722 -0.092882 -+ 4.642734 -2.996992 2.589722 -+ 4.702936 -4.199185 2.336724 -+ 4.852811 -2.538498 3.874265 -+ 5.070419 -3.289156 4.634040 -+ 4.814710 -1.223887 4.292292 -+ 5.014652 -0.915008 5.455485 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 -@@ -4194,22 +4194,22 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.372913 0.790414 5.211298 -- 5.559757 0.101208 5.067090 -- 5.647583 -0.899755 4.671160 -- 6.194776 0.575080 6.110305 -- 6.278024 -0.702826 5.569817 -- 7.123995 -0.570401 6.702600 -- 7.472741 -1.740173 6.551245 -- 7.656517 0.184264 7.754694 -- 7.991655 0.787072 8.478783 -- 8.146732 -1.105376 7.724367 -- 8.683403 -0.422802 8.744993 -- 8.507987 0.541027 8.990678 -- 9.349613 -0.919433 9.319121 -- 8.481202 -2.373962 7.505920 -- 8.540900 -3.615812 6.954699 -+ 5.071990 1.095268 4.737463 -+ 4.499521 -0.267941 3.326572 -+ 4.267491 -0.772686 2.063324 -+ 4.096298 -0.099873 1.236030 -+ 4.278725 -2.081203 2.002024 -+ 4.535077 -2.474587 3.310318 -+ 4.665007 -3.772057 3.872536 -+ 4.578030 -4.865461 3.315935 -+ 4.925900 -3.709107 5.246571 -+ 5.032497 -4.575574 5.734292 -+ 5.047695 -2.547474 5.981536 -+ 5.299246 -2.702459 7.288556 -+ 5.396714 -3.573970 7.789625 -+ 5.381197 -1.857343 7.835514 -+ 4.927816 -1.332957 5.452878 -+ 4.673984 -1.376560 4.117488 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 -@@ -4413,19 +4413,19 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.373674 0.789709 5.211219 -- 5.559264 0.200618 4.899855 -- 5.666544 -0.785646 4.473035 -- 6.294463 0.528171 5.996117 -- 6.748720 1.036110 6.846852 -- 6.613356 -0.816346 5.628040 -- 7.310127 -0.462256 6.691775 -- 7.941913 -1.143751 7.087389 -- 7.204329 0.461930 7.085204 -- 6.784882 -2.043285 5.144201 -- 6.779159 -3.223049 4.467648 -- 7.584089 -3.327568 5.405072 -+ 5.071990 1.095268 4.737463 -+ 4.500559 -0.267967 3.326521 -+ 4.258187 -0.582249 2.025720 -+ 4.103951 0.202771 1.300217 -+ 4.205645 -1.878082 1.616262 -+ 4.010240 -2.111427 0.569617 -+ 4.416190 -2.880836 2.613787 -+ 4.378882 -4.158916 2.285883 -+ 4.532450 -4.836391 3.019057 -+ 4.201751 -4.434440 1.330472 -+ 4.652634 -2.564463 3.883788 -+ 4.701224 -1.262318 4.273223 -+ 4.918947 -0.927591 5.447171 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 -@@ -4639,27 +4639,27 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.398936 0.755791 5.236576 -- 5.570721 0.053476 5.133763 -- 5.651435 -0.952100 4.748143 -- 6.248368 0.547472 6.127122 -- 6.337852 -0.727929 5.581736 -- 7.186443 -0.642297 6.691944 -- 7.489983 -1.917831 6.415398 -- 8.153280 -2.415516 6.991980 -- 7.055473 -2.381556 5.630375 -- 7.773936 -0.045280 7.737899 -- 8.144838 -1.308931 7.552106 -- 8.632452 -0.851805 8.400438 -- 8.538915 -2.559764 7.402037 -- 8.562807 -3.771388 6.807145 -+ 5.071990 1.095268 4.737463 -+ 4.538874 -0.297045 3.315659 -+ 4.336740 -0.846471 2.077041 -+ 4.152394 -0.207224 1.226289 -+ 4.452852 -2.140973 2.049069 -+ 4.754050 -2.480049 3.362997 -+ 4.997986 -3.708205 3.989198 -+ 4.976769 -4.883498 3.345899 -+ 5.160704 -5.738821 3.850568 -+ 4.776841 -4.914031 2.356355 -+ 5.265289 -3.689348 5.302131 -+ 5.284973 -2.519883 5.935270 -+ 5.498266 -2.482169 6.993326 -+ 5.072682 -1.308518 5.455764 -+ 4.806134 -1.356364 4.133205 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 - 5.668203 2.081314 1.781304 - 6.272975 2.049937 3.757138 -- 7.076220 2.511153 3.504793 -+ 6.759270 1.235224 3.610988 - 5.029888 4.128641 3.998289 - !entry.RA.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x - 1 33 0 0 0 0 -@@ -4858,24 +4858,24 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.397885 0.753191 5.246175 -- 5.590532 0.136915 4.972869 -- 5.691792 -0.854182 4.555888 -- 6.355081 0.476418 6.019675 -- 6.811115 0.979784 6.872175 -- 6.737960 -0.878090 5.715845 -- 7.428954 -0.641760 6.705579 -- 6.803084 -2.106960 5.091315 -- 7.433797 -1.942952 5.965044 -- 6.888321 -3.344512 4.486667 -- 7.677782 -3.431286 5.412745 -+ 5.071990 1.095268 4.737463 -+ 4.538744 -0.306572 3.312620 -+ 4.316895 -0.672508 2.011169 -+ 4.145425 0.083640 1.259346 -+ 4.360306 -1.957588 1.633963 -+ 4.180681 -2.226400 0.593014 -+ 4.642734 -2.996992 2.589722 -+ 4.702936 -4.199185 2.336724 -+ 4.852811 -2.538498 3.874265 -+ 5.070419 -3.289156 4.634040 -+ 4.814710 -1.223887 4.292292 -+ 5.014652 -0.915008 5.455485 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 - 5.668203 2.081314 1.781304 - 6.272975 2.049937 3.757138 -- 7.076220 2.511153 3.504793 -+ 6.759270 1.235224 3.610988 - 5.029888 4.128641 3.998289 - !entry.RU.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x - 1 30 0 0 0 0 -@@ -5088,28 +5088,28 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.372913 0.790414 5.211298 -- 5.559757 0.101208 5.067090 -- 5.647583 -0.899755 4.671160 -- 6.194776 0.575080 6.110305 -- 6.278024 -0.702826 5.569817 -- 7.123995 -0.570401 6.702600 -- 7.472741 -1.740173 6.551245 -- 7.656517 0.184264 7.754694 -- 7.991655 0.787072 8.478783 -- 8.146732 -1.105376 7.724367 -- 8.683403 -0.422802 8.744993 -- 8.507987 0.541027 8.990678 -- 9.349613 -0.919433 9.319121 -- 8.481202 -2.373962 7.505920 -- 8.540900 -3.615812 6.954699 -+ 5.071990 1.095268 4.737463 -+ 4.499521 -0.267941 3.326572 -+ 4.267491 -0.772686 2.063324 -+ 4.096298 -0.099873 1.236030 -+ 4.278725 -2.081203 2.002024 -+ 4.535077 -2.474587 3.310318 -+ 4.665007 -3.772057 3.872536 -+ 4.578030 -4.865461 3.315935 -+ 4.925900 -3.709107 5.246571 -+ 5.032497 -4.575574 5.734292 -+ 5.047695 -2.547474 5.981536 -+ 5.299246 -2.702459 7.288556 -+ 5.396714 -3.573970 7.789625 -+ 5.381197 -1.857343 7.835514 -+ 4.927816 -1.332957 5.452878 -+ 4.673984 -1.376560 4.117488 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 - 5.668203 2.081314 1.781304 - 6.272975 2.049937 3.757138 -- 7.076220 2.511153 3.504793 -+ 6.759270 1.235224 3.610988 - 5.029888 4.128641 3.998289 - !entry.RG.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x - 1 34 0 0 0 0 -@@ -5313,25 +5313,25 @@ - 2.447108 3.477366 3.933855 - 3.228110 1.605160 3.977232 - 4.558604 1.150942 3.777549 -- 5.569373 1.557427 3.742678 -- 4.373674 0.789709 5.211219 -- 5.559264 0.200618 4.899855 -- 5.666544 -0.785646 4.473035 -- 6.294463 0.528171 5.996117 -- 6.748720 1.036110 6.846852 -- 6.613356 -0.816346 5.628040 -- 7.310127 -0.462256 6.691775 -- 7.941913 -1.143751 7.087389 -- 7.204329 0.461930 7.085204 -- 6.784882 -2.043285 5.144201 -- 6.779159 -3.223049 4.467648 -- 7.584089 -3.327568 5.405072 -+ 5.071990 1.095268 4.737463 -+ 4.500559 -0.267967 3.326521 -+ 4.258187 -0.582249 2.025720 -+ 4.103951 0.202771 1.300217 -+ 4.205645 -1.878082 1.616262 -+ 4.010240 -2.111427 0.569617 -+ 4.416190 -2.880836 2.613787 -+ 4.378882 -4.158916 2.285883 -+ 4.532450 -4.836391 3.019057 -+ 4.201751 -4.434440 1.330472 -+ 4.652634 -2.564463 3.883788 -+ 4.701224 -1.262318 4.273223 -+ 4.918947 -0.927591 5.447171 - 4.415598 3.377823 2.961313 - 4.412064 3.941488 2.028377 - 5.230436 2.095693 2.779428 - 5.668203 2.081314 1.781304 - 6.272975 2.049937 3.757138 -- 7.076220 2.511153 3.504793 -+ 6.759270 1.235224 3.610988 - 5.029888 4.128641 3.998289 - !entry.RC.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x - 1 31 0 0 0 0 -@@ -5531,21 +5531,21 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.825854 0.331961 5.463505 -- 2.973744 -0.351218 5.767666 -- 3.198298 -1.353172 5.432908 -- 3.262456 0.147686 6.932887 -- 3.554407 -1.123002 6.450998 -- 3.970615 -1.030384 7.784487 -- 4.371751 -2.299375 7.628436 -- 4.806122 -2.789852 8.397106 -- 4.239728 -2.765377 6.742145 -- 4.154910 -0.430195 8.968298 -- 4.588103 -1.686764 8.920565 -- 4.748481 -1.226887 9.884511 -- 5.030638 -2.930357 8.914329 -- 5.276823 -4.138026 8.363485 -+ 2.623224 0.684847 5.224690 -+ 2.631874 -0.707517 3.706295 -+ 2.874735 -1.252950 2.473241 -+ 2.981754 -0.611820 1.610746 -+ 3.015083 -2.545282 2.486669 -+ 2.854431 -2.887097 3.824373 -+ 2.890057 -4.114829 4.496241 -+ 3.109804 -5.286605 3.884480 -+ 3.124371 -6.141804 4.421623 -+ 3.260868 -5.314611 2.886234 -+ 2.691903 -4.099290 5.821417 -+ 2.474287 -2.933307 6.423105 -+ 2.312232 -2.898303 7.490303 -+ 2.418509 -1.722706 5.899909 -+ 2.621151 -1.767164 4.565946 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 -@@ -5750,21 +5750,21 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.821628 0.329290 5.472166 -- 3.045980 -0.266556 5.623252 -- 3.300321 -1.253530 5.266050 -- 3.400654 0.078938 6.868419 -- 3.596750 0.739775 8.200650 -- 2.627095 1.008594 8.619702 -- 4.106045 0.052544 8.876247 -- 4.199810 1.639079 8.075463 -- 3.886987 -1.267611 6.713863 -- 4.193797 -1.026107 7.880244 -- 4.182336 -2.491705 6.149271 -- 4.473391 -2.322796 7.186024 -- 4.489928 -3.724276 5.610241 -- 4.916436 -3.803915 6.750481 -+ 2.623224 0.684847 5.224690 -+ 2.632951 -0.717026 3.703395 -+ 2.875701 -1.078946 2.404555 -+ 2.959028 -0.321296 1.639425 -+ 3.067013 -2.361001 2.064944 -+ 3.333430 -2.767543 0.645879 -+ 4.242250 -2.280529 0.292378 -+ 3.457938 -3.849191 0.594530 -+ 2.493973 -2.468751 0.018077 -+ 3.022943 -3.401289 3.059659 -+ 3.186167 -4.600916 2.842510 -+ 2.773364 -2.946913 4.338586 -+ 2.730574 -3.698393 5.126967 -+ 2.572586 -1.635482 4.718372 -+ 2.357489 -1.330164 5.879800 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 -@@ -5974,22 +5974,22 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.809468 0.366314 5.430851 -- 2.985443 -0.303283 5.701265 -- 3.220128 -1.300453 5.359250 -- 3.217392 0.174542 6.898755 -- 3.501851 -1.098776 6.419335 -- 3.907092 -0.959542 7.773142 -- 4.306119 -2.122793 7.750193 -- 4.034999 -0.202628 8.943920 -- 4.092163 0.401223 9.738965 -- 4.527564 -1.484195 9.083085 -- 4.671337 -0.799117 10.225713 -- 4.406357 0.160408 10.396586 -- 5.109266 -1.288479 10.993073 -- 4.937775 -2.746085 8.992209 -- 5.203174 -3.983662 8.494648 -+ 2.623224 0.684847 5.224690 -+ 2.590680 -0.679098 3.703090 -+ 2.813126 -1.180187 2.436667 -+ 2.923918 -0.505423 1.600713 -+ 2.866567 -2.487992 2.382906 -+ 2.666616 -2.884782 3.699977 -+ 2.618169 -4.183246 4.272728 -+ 2.745111 -5.274676 3.719947 -+ 2.392358 -4.124071 5.653129 -+ 2.340242 -4.991533 6.147896 -+ 2.235991 -2.964895 6.385427 -+ 2.027971 -3.123388 7.699660 -+ 1.962797 -3.996113 8.203846 -+ 1.903765 -2.280234 8.241661 -+ 2.283795 -1.749407 5.847650 -+ 2.502701 -1.789347 4.505978 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 -@@ -6187,19 +6187,19 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.810222 0.365622 5.431037 -- 3.040503 -0.202936 5.543946 -- 3.303784 -1.184927 5.179558 -- 3.350889 0.129864 6.825549 -- 3.478253 0.640008 7.780343 -- 3.798907 -1.207335 6.588738 -- 4.083865 -0.848420 7.826630 -- 4.553596 -1.522140 8.414470 -- 3.834435 0.071716 8.160148 -- 4.146081 -2.428628 6.192742 -- 4.391834 -3.604440 5.555033 -- 4.829292 -3.701644 6.711226 -+ 2.623224 0.684847 5.224690 -+ 2.591673 -0.679108 3.703398 -+ 2.814053 -0.989708 2.398148 -+ 2.904088 -0.203069 1.663647 -+ 2.926420 -2.283840 1.995414 -+ 3.104659 -2.514231 0.945056 -+ 2.799915 -3.288854 3.004791 -+ 2.898410 -4.565463 2.683902 -+ 2.803322 -5.244627 3.425383 -+ 3.063325 -4.838262 1.725527 -+ 2.582464 -2.976080 4.279070 -+ 2.473124 -1.675585 4.661638 -+ 2.270623 -1.344205 5.839254 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 -@@ -6407,27 +6407,27 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.825854 0.331961 5.463505 -- 2.973744 -0.351218 5.767666 -- 3.198298 -1.353172 5.432908 -- 3.262456 0.147686 6.932887 -- 3.554407 -1.123002 6.450998 -- 3.970615 -1.030384 7.784487 -- 4.371751 -2.299375 7.628436 -- 4.806122 -2.789852 8.397106 -- 4.239728 -2.765377 6.742145 -- 4.154910 -0.430195 8.968298 -- 4.588103 -1.686764 8.920565 -- 4.748481 -1.226887 9.884511 -- 5.030638 -2.930357 8.914329 -- 5.276823 -4.138026 8.363485 -+ 2.623224 0.684847 5.224690 -+ 2.631874 -0.707517 3.706295 -+ 2.874735 -1.252950 2.473241 -+ 2.981754 -0.611820 1.610746 -+ 3.015083 -2.545282 2.486669 -+ 2.854431 -2.887097 3.824373 -+ 2.890057 -4.114829 4.496241 -+ 3.109804 -5.286605 3.884480 -+ 3.124371 -6.141804 4.421623 -+ 3.260868 -5.314611 2.886234 -+ 2.691903 -4.099290 5.821417 -+ 2.474287 -2.933307 6.423105 -+ 2.312232 -2.898303 7.490303 -+ 2.418509 -1.722706 5.899909 -+ 2.621151 -1.767164 4.565946 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 - 4.177807 1.697081 2.650726 - 4.070872 1.663908 4.714248 -- 4.904136 2.139152 4.751846 -+ 4.591405 0.857803 4.743234 - 2.785622 3.721368 4.515694 - 3.677533 4.057871 4.629091 - !entry.RAN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -6620,24 +6620,24 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.821628 0.329290 5.472166 -- 3.045980 -0.266556 5.623252 -- 3.300321 -1.253530 5.266050 -- 3.400654 0.078938 6.868419 -- 3.529160 0.584527 7.825480 -- 3.886987 -1.267611 6.713863 -- 4.193797 -1.026107 7.880244 -- 4.182336 -2.491705 6.149271 -- 4.473391 -2.322796 7.186024 -- 4.489928 -3.724276 5.610241 -- 4.916436 -3.803915 6.750481 -+ 2.623224 0.684847 5.224690 -+ 2.632951 -0.717026 3.703395 -+ 2.875701 -1.078946 2.404555 -+ 2.959028 -0.321296 1.639425 -+ 3.067013 -2.361001 2.064944 -+ 3.258724 -2.626638 1.025337 -+ 3.022943 -3.401289 3.059659 -+ 3.186167 -4.600916 2.842510 -+ 2.773364 -2.946913 4.338586 -+ 2.730574 -3.698393 5.126967 -+ 2.572586 -1.635482 4.718372 -+ 2.357489 -1.330164 5.879800 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 - 4.177807 1.697081 2.650726 - 4.070872 1.663908 4.714248 -- 4.904136 2.139152 4.751846 -+ 4.591405 0.857803 4.743234 - 2.785622 3.721368 4.515694 - 3.677533 4.057871 4.629091 - !entry.RUN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -6844,28 +6844,28 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.809468 0.366314 5.430851 -- 2.985443 -0.303283 5.701265 -- 3.220128 -1.300453 5.359250 -- 3.217392 0.174542 6.898755 -- 3.501851 -1.098776 6.419335 -- 3.907092 -0.959542 7.773142 -- 4.306119 -2.122793 7.750193 -- 4.034999 -0.202628 8.943920 -- 4.092163 0.401223 9.738965 -- 4.527564 -1.484195 9.083085 -- 4.671337 -0.799117 10.225713 -- 4.406357 0.160408 10.396586 -- 5.109266 -1.288479 10.993073 -- 4.937775 -2.746085 8.992209 -- 5.203174 -3.983662 8.494648 -+ 2.623224 0.684847 5.224690 -+ 2.590680 -0.679098 3.703090 -+ 2.813126 -1.180187 2.436667 -+ 2.923918 -0.505423 1.600713 -+ 2.866567 -2.487992 2.382906 -+ 2.666616 -2.884782 3.699977 -+ 2.618169 -4.183246 4.272728 -+ 2.745111 -5.274676 3.719947 -+ 2.392358 -4.124071 5.653129 -+ 2.340242 -4.991533 6.147896 -+ 2.235991 -2.964895 6.385427 -+ 2.027971 -3.123388 7.699660 -+ 1.962797 -3.996113 8.203846 -+ 1.903765 -2.280234 8.241661 -+ 2.283795 -1.749407 5.847650 -+ 2.502701 -1.789347 4.505978 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 - 4.177807 1.697081 2.650726 - 4.070872 1.663908 4.714248 -- 4.904136 2.139152 4.751846 -+ 4.591405 0.857803 4.743234 - 2.785622 3.721368 4.515694 - 3.677533 4.057871 4.629091 - !entry.RGN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -@@ -7063,25 +7063,25 @@ - 0.391890 3.029890 3.571783 - 1.142222 1.169994 3.879663 - 2.468198 0.737932 4.147078 -- 3.422991 1.160472 4.460013 -- 1.810222 0.365622 5.431037 -- 3.040503 -0.202936 5.543946 -- 3.303784 -1.184927 5.179558 -- 3.350889 0.129864 6.825549 -- 3.478253 0.640008 7.780343 -- 3.798907 -1.207335 6.588738 -- 4.083865 -0.848420 7.826630 -- 4.553596 -1.522140 8.414470 -- 3.834435 0.071716 8.160148 -- 4.146081 -2.428628 6.192742 -- 4.391834 -3.604440 5.555033 -- 4.829292 -3.701644 6.711226 -+ 2.623224 0.684847 5.224690 -+ 2.591673 -0.679108 3.703398 -+ 2.814053 -0.989708 2.398148 -+ 2.904088 -0.203069 1.663647 -+ 2.926420 -2.283840 1.995414 -+ 3.104659 -2.514231 0.945056 -+ 2.799915 -3.288854 3.004791 -+ 2.898410 -4.565463 2.683902 -+ 2.803322 -5.244627 3.425383 -+ 3.063325 -4.838262 1.725527 -+ 2.582464 -2.976080 4.279070 -+ 2.473124 -1.675585 4.661638 -+ 2.270623 -1.344205 5.839254 - 2.575655 2.966926 3.331156 - 2.881929 3.535802 2.453274 - 3.424925 1.698847 3.438931 - 4.177807 1.697081 2.650726 - 4.070872 1.663908 4.714248 -- 4.904136 2.139152 4.751846 -+ 4.591405 0.857803 4.743234 - 2.785622 3.721368 4.515694 - 3.677533 4.057871 4.629091 - !entry.RCN.unit.residueconnect table int c1x int c2x int c3x int c4x int c5x int c6x -diff -urN amber11.orig/AmberTools/test/sqm/nma/nma.dftb.go.in amber11/AmberTools/test/sqm/nma/nma.dftb.go.in ---- amber11.orig/AmberTools/test/sqm/nma/nma.dftb.go.in 1970-01-01 03:00:00.000000000 +0300 -+++ amber11/AmberTools/test/sqm/nma/nma.dftb.go.in 2011-03-08 16:38:44.000000000 +0300 -@@ -0,0 +1,30 @@ -+Run DFTB geometry optimization for NMA -+ &qmmm -+ qm_theory = 'DFTB', -+ qmcharge = 0, -+ ! SCF settings -+ scfconv = 1.0d-10, ! kcal/mol -+ errconv = 1.d-06, ! au -+ tight_p_conv = 0, -+ diag_routine = 1, -+ itrmax = 100, -+ ! Geometry optimization settings -+ maxcyc = 100, -+ grms_tol = 0.001, ! kcal/(mol*A) -+ ! Output -+ ntpr = 101, -+ verbosity = 0, -+ / -+ 6 C -0.767000 3.380000 4.245000 -+ 6 C -1.809707 2.570219 4.710852 -+ 7 N -2.661673 2.646098 3.869189 -+ 6 C -3.662846 1.855199 3.619926 -+ 8 O -1.634379 2.116691 5.584678 -+ 1 H 0.218271 3.164467 4.684075 -+ 1 H -0.578839 3.210298 3.174581 -+ 1 H -1.024346 4.421330 4.488732 -+ 1 H -2.569216 3.204198 3.074324 -+ 1 H -3.347225 0.824359 3.812610 -+ 1 H -4.529359 1.998602 4.311686 -+ 1 H -4.036138 1.906340 2.552627 -+ -diff -urN amber11.orig/AmberTools/test/sqm/nma/nma.dftb.go.out.save amber11/AmberTools/test/sqm/nma/nma.dftb.go.out.save ---- amber11.orig/AmberTools/test/sqm/nma/nma.dftb.go.out.save 1970-01-01 03:00:00.000000000 +0300 -+++ amber11/AmberTools/test/sqm/nma/nma.dftb.go.out.save 2011-03-08 16:38:44.000000000 +0300 -@@ -0,0 +1,81 @@ -+ -------------------------------------------------------- -+ AMBER SQM VERSION 1.4 -+ -+ By -+ Ross C. Walker, Michael F. Crowley, Scott Brozell, -+ Tim Giese, Andreas W. Goetz and David A. Case -+ -+ -------------------------------------------------------- -+ -+ -+-------------------------------------------------------------------------------- -+ QM CALCULATION INFO -+-------------------------------------------------------------------------------- -+ -+| QMMM: Citation for AMBER QMMM Run: -+| QMMM: R.C. Walker, M.F. Crowley and D.A. Case, J. COMP. CHEM. 29:1019, 2008 -+ -+| QMMM: DFTB Calculation - Additional citation for AMBER DFTB QMMM Run: -+| QMMM: Seabra, G.M., Walker, R.C. et al., J. PHYS. CHEM. A., 111, 5655, (2007) -+ -+ -+QMMM: SINGLET STATE CALCULATION -+QMMM: RHF CALCULATION, NO. OF DOUBLY OCCUPIED LEVELS = 15 -+ -+| QMMM: *** SCF convergence criteria *** -+| QMMM: Energy change : 0.1D-09 kcal/mol -+| QMMM: Error matrix |FP-PF| : 0.1D-05 au -+| QMMM: Density matrix change : 0.5D-06 -+| QMMM: Maximum number of SCF cycles : 100 -+ DFTB: Number of atom types = 4 -+ -+ Parameter files: -+ TYP (AT) TYP (AT) SK integral FILE -+| 1 1 (C ) 1 (C ) /Users/andi/sources/amber/dat/slko/C-C.skf -+| 2 1 (C ) 2 (N ) /Users/andi/sources/amber/dat/slko/C-N.skf -+| 3 1 (C ) 3 (O ) /Users/andi/sources/amber/dat/slko/C-O.skf -+| 4 1 (C ) 4 (H ) /Users/andi/sources/amber/dat/slko/C-H.skf -+| 5 2 (N ) 1 (C ) /Users/andi/sources/amber/dat/slko/N-C.skf -+| 6 2 (N ) 2 (N ) /Users/andi/sources/amber/dat/slko/N-N.skf -+| 7 2 (N ) 3 (O ) /Users/andi/sources/amber/dat/slko/N-O.skf -+| 8 2 (N ) 4 (H ) /Users/andi/sources/amber/dat/slko/N-H.skf -+| 9 3 (O ) 1 (C ) /Users/andi/sources/amber/dat/slko/O-C.skf -+| 10 3 (O ) 2 (N ) /Users/andi/sources/amber/dat/slko/O-N.skf -+| 11 3 (O ) 3 (O ) /Users/andi/sources/amber/dat/slko/O-O.skf -+| 12 3 (O ) 4 (H ) /Users/andi/sources/amber/dat/slko/O-H.skf -+| 13 4 (H ) 1 (C ) /Users/andi/sources/amber/dat/slko/H-C.skf -+| 14 4 (H ) 2 (N ) /Users/andi/sources/amber/dat/slko/H-N.skf -+| 15 4 (H ) 3 (O ) /Users/andi/sources/amber/dat/slko/H-O.skf -+| 16 4 (H ) 4 (H ) /Users/andi/sources/amber/dat/slko/H-H.skf -+ -+-------------------------------------------------------------------------------- -+ RESULTS -+-------------------------------------------------------------------------------- -+ -+ ... geometry converged ! -+ -+ Heat of formation = -1220.84132946 kcal/mol ( -52.93965264 eV) -+ Total SCF energy = -8463.39103876 kcal/mol ( -367.00017513 eV) -+ -+ Atomic Charges for Step 1 : -+ Atom Element Mulliken Charge -+ 1 C -0.279 -+ 2 C 0.493 -+ 3 N -0.250 -+ 4 C -0.073 -+ 5 O -0.507 -+ 6 H 0.096 -+ 7 H 0.073 -+ 8 H 0.073 -+ 9 H 0.186 -+ 10 H 0.097 -+ 11 H 0.045 -+ 12 H 0.045 -+ Total Mulliken Charge = 0.000 -+ -+ -+ Final Structure -+ -+ -+ --------- Calculation Completed ---------- -+ -diff -urN amber11.orig/AmberTools/test/sqm/nma/nma.dftb.sp.in amber11/AmberTools/test/sqm/nma/nma.dftb.sp.in ---- amber11.orig/AmberTools/test/sqm/nma/nma.dftb.sp.in 1970-01-01 03:00:00.000000000 +0300 -+++ amber11/AmberTools/test/sqm/nma/nma.dftb.sp.in 2011-03-08 16:38:44.000000000 +0300 -@@ -0,0 +1,30 @@ -+Run PM3 single point calculation for NMA -+ &qmmm -+ qm_theory = 'DFTB', -+ qmcharge = 0, -+ ! SCF settings -+ scfconv = 1.0d-10, ! kcal/mol -+ errconv = 1.d-06, ! au -+ tight_p_conv = 0, -+ diag_routine = 1, -+ itrmax = 100, -+ ! Geometry optimization settings -+ maxcyc = 0, -+ grms_tol = 0.02, ! kcal/(mol*A) -+ ! Output -+ ntpr = 10, -+ verbosity = 0, -+ / -+ 6 C -0.767000 3.380000 4.245000 -+ 6 C -1.809707 2.570219 4.710852 -+ 7 N -2.661673 2.646098 3.869189 -+ 6 C -3.662846 1.855199 3.619926 -+ 8 O -1.634379 2.116691 5.584678 -+ 1 H 0.218271 3.164467 4.684075 -+ 1 H -0.578839 3.210298 3.174581 -+ 1 H -1.024346 4.421330 4.488732 -+ 1 H -2.569216 3.204198 3.074324 -+ 1 H -3.347225 0.824359 3.812610 -+ 1 H -4.529359 1.998602 4.311686 -+ 1 H -4.036138 1.906340 2.552627 -+ -diff -urN amber11.orig/AmberTools/test/sqm/nma/nma.dftb.sp.out.save amber11/AmberTools/test/sqm/nma/nma.dftb.sp.out.save ---- amber11.orig/AmberTools/test/sqm/nma/nma.dftb.sp.out.save 1970-01-01 03:00:00.000000000 +0300 -+++ amber11/AmberTools/test/sqm/nma/nma.dftb.sp.out.save 2011-03-08 16:38:44.000000000 +0300 -@@ -0,0 +1,111 @@ -+ -------------------------------------------------------- -+ AMBER SQM VERSION 1.4 -+ -+ By -+ Ross C. Walker, Michael F. Crowley, Scott Brozell, -+ Tim Giese, Andreas W. Goetz and David A. Case -+ -+ -------------------------------------------------------- -+ -+ -+-------------------------------------------------------------------------------- -+ QM CALCULATION INFO -+-------------------------------------------------------------------------------- -+ -+| QMMM: Citation for AMBER QMMM Run: -+| QMMM: R.C. Walker, M.F. Crowley and D.A. Case, J. COMP. CHEM. 29:1019, 2008 -+ -+| QMMM: DFTB Calculation - Additional citation for AMBER DFTB QMMM Run: -+| QMMM: Seabra, G.M., Walker, R.C. et al., J. PHYS. CHEM. A., 111, 5655, (2007) -+ -+ -+QMMM: SINGLET STATE CALCULATION -+QMMM: RHF CALCULATION, NO. OF DOUBLY OCCUPIED LEVELS = 15 -+ -+| QMMM: *** SCF convergence criteria *** -+| QMMM: Energy change : 0.1D-09 kcal/mol -+| QMMM: Error matrix |FP-PF| : 0.1D-05 au -+| QMMM: Density matrix change : 0.5D-06 -+| QMMM: Maximum number of SCF cycles : 100 -+ DFTB: Number of atom types = 4 -+ -+ Parameter files: -+ TYP (AT) TYP (AT) SK integral FILE -+| 1 1 (C ) 1 (C ) /Users/andi/sources/amber/dat/slko/C-C.skf -+| 2 1 (C ) 2 (N ) /Users/andi/sources/amber/dat/slko/C-N.skf -+| 3 1 (C ) 3 (O ) /Users/andi/sources/amber/dat/slko/C-O.skf -+| 4 1 (C ) 4 (H ) /Users/andi/sources/amber/dat/slko/C-H.skf -+| 5 2 (N ) 1 (C ) /Users/andi/sources/amber/dat/slko/N-C.skf -+| 6 2 (N ) 2 (N ) /Users/andi/sources/amber/dat/slko/N-N.skf -+| 7 2 (N ) 3 (O ) /Users/andi/sources/amber/dat/slko/N-O.skf -+| 8 2 (N ) 4 (H ) /Users/andi/sources/amber/dat/slko/N-H.skf -+| 9 3 (O ) 1 (C ) /Users/andi/sources/amber/dat/slko/O-C.skf -+| 10 3 (O ) 2 (N ) /Users/andi/sources/amber/dat/slko/O-N.skf -+| 11 3 (O ) 3 (O ) /Users/andi/sources/amber/dat/slko/O-O.skf -+| 12 3 (O ) 4 (H ) /Users/andi/sources/amber/dat/slko/O-H.skf -+| 13 4 (H ) 1 (C ) /Users/andi/sources/amber/dat/slko/H-C.skf -+| 14 4 (H ) 2 (N ) /Users/andi/sources/amber/dat/slko/H-N.skf -+| 15 4 (H ) 3 (O ) /Users/andi/sources/amber/dat/slko/H-O.skf -+| 16 4 (H ) 4 (H ) /Users/andi/sources/amber/dat/slko/H-H.skf -+ -+ QMMM: QM Region Cartesian Coordinates (*=link atom) -+ QMMM: QM_NO. MM_NO. ATOM X Y Z -+ QMMM: 1 1 C -0.7670 3.3800 4.2450 -+ QMMM: 2 2 C -1.8097 2.5702 4.7109 -+ QMMM: 3 3 N -2.6617 2.6461 3.8692 -+ QMMM: 4 4 C -3.6628 1.8552 3.6199 -+ QMMM: 5 5 O -1.6344 2.1167 5.5847 -+ QMMM: 6 6 H 0.2183 3.1645 4.6841 -+ QMMM: 7 7 H -0.5788 3.2103 3.1746 -+ QMMM: 8 8 H -1.0243 4.4213 4.4887 -+ QMMM: 9 9 H -2.5692 3.2042 3.0743 -+ QMMM: 10 10 H -3.3472 0.8244 3.8126 -+ QMMM: 11 11 H -4.5294 1.9986 4.3117 -+ QMMM: 12 12 H -4.0361 1.9063 2.5526 -+ -+-------------------------------------------------------------------------------- -+ RESULTS -+-------------------------------------------------------------------------------- -+ -+ -+ Heat of formation = -1039.27301701 kcal/mol ( -45.06625979 eV) -+ Total SCF energy = -8281.82272631 kcal/mol ( -359.12678229 eV) -+ Electronic energy = -8895.69306749 kcal/mol ( -385.74619780 eV) -+ Core-core repulsion = 613.87034117 kcal/mol ( 26.61941551 eV) -+ -+ Atomic Charges for Step 1 : -+ Atom Element Mulliken Charge -+ 1 C -0.347 -+ 2 C 0.560 -+ 3 N -0.202 -+ 4 C -0.066 -+ 5 O -0.439 -+ 6 H 0.077 -+ 7 H 0.048 -+ 8 H 0.072 -+ 9 H 0.187 -+ 10 H 0.044 -+ 11 H 0.029 -+ 12 H 0.037 -+ Total Mulliken Charge = 0.000 -+ -+ -+ Final Structure -+ -+ QMMM: QM Region Cartesian Coordinates (*=link atom) -+ QMMM: QM_NO. MM_NO. ATOM X Y Z -+ QMMM: 1 1 C -0.7670 3.3800 4.2450 -+ QMMM: 2 2 C -1.8097 2.5702 4.7109 -+ QMMM: 3 3 N -2.6617 2.6461 3.8692 -+ QMMM: 4 4 C -3.6628 1.8552 3.6199 -+ QMMM: 5 5 O -1.6344 2.1167 5.5847 -+ QMMM: 6 6 H 0.2183 3.1645 4.6841 -+ QMMM: 7 7 H -0.5788 3.2103 3.1746 -+ QMMM: 8 8 H -1.0243 4.4213 4.4887 -+ QMMM: 9 9 H -2.5692 3.2042 3.0743 -+ QMMM: 10 10 H -3.3472 0.8244 3.8126 -+ QMMM: 11 11 H -4.5294 1.9986 4.3117 -+ QMMM: 12 12 H -4.0361 1.9063 2.5526 -+ -+ --------- Calculation Completed ---------- -+ -diff -urN amber11.orig/AmberTools/test/sqm/nma/Run amber11/AmberTools/test/sqm/nma/Run ---- amber11.orig/AmberTools/test/sqm/nma/Run 2010-04-14 17:26:17.000000000 +0400 -+++ amber11/AmberTools/test/sqm/nma/Run 2011-03-08 16:38:44.000000000 +0300 -@@ -3,8 +3,19 @@ - set SQM = ../../../exe/sqm - set SPDIFF = ../../dacdif - set GODIFF = "../../dacdif -a 0.01" --set SPTESTS = (nma.pm3.sp nma.pm6.sp) --set GOTESTS = (nma.pm3.go nma.pm6.go) -+ -+# check if slko files for DFTB are installed -+../../check_slko_files.x -+if( $status > 0) then -+ # no slko files - do not run DFTB tests -+ set SPTESTS = (nma.pm3.sp nma.pm6.sp) -+ set GOTESTS = (nma.pm3.go nma.pm6.go) -+else -+ # slko files present - run DFTB tests -+ set SPTESTS = (nma.pm3.sp nma.pm6.sp nma.dftb.sp) -+ set GOTESTS = (nma.pm3.go nma.pm6.go nma.dftb.go) -+endif -+ - - # single point tests - foreach i ($SPTESTS) -diff -urN amber11.orig/dat/leap/lib/amoeba_aminoct.off amber11/dat/leap/lib/amoeba_aminoct.off ---- amber11.orig/dat/leap/lib/amoeba_aminoct.off 2010-03-31 07:05:27.000000000 +0400 -+++ amber11/dat/leap/lib/amoeba_aminoct.off 2011-03-08 16:38:44.000000000 +0300 -@@ -638,24 +638,24 @@ - !entry.CCYX.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg str - "N" "7" 0 1 131072 1 7 -0.382100 - "H" "10" 0 1 131072 2 1 0.268100 -- "CA" "8" 0 1 131072 3 6 -0.131800 -+ "CA" "44" 0 1 131072 3 6 -0.131800 - "HA" "12" 0 1 131072 4 1 0.093800 -- "CB" "" 0 1 131072 5 6 -0.194300 -- "HB2" "" 0 1 131072 6 1 0.122800 -- "HB3" "" 0 1 131072 7 1 0.122800 -- "SG" "" 0 1 131072 8 16 -0.052900 -+ "CB" "45" 0 1 131072 5 6 -0.194300 -+ "HB2" "46" 0 1 131072 6 1 0.122800 -+ "HB3" "46" 0 1 131072 7 1 0.122800 -+ "SG" "49" 0 1 131072 8 16 -0.052900 - "C" "192" 0 1 131072 9 6 0.761800 - "O" "193" 0 1 131072 10 8 -0.804100 - "OXT" "193" 0 1 131072 11 8 -0.804100 - !entry.CCYX.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg - "N" "7" 0 -1 0.0 - "H" "10" 0 -1 0.0 -- "CA" "8" 0 -1 0.0 -+ "CA" "44" 0 -1 0.0 - "HA" "12" 0 -1 0.0 -- "CB" "" 0 -1 0.0 -- "HB2" "" 0 -1 0.0 -- "HB3" "" 0 -1 0.0 -- "SG" "" 0 -1 0.0 -+ "CB" "45" 0 -1 0.0 -+ "HB2" "46" 0 -1 0.0 -+ "HB3" "46" 0 -1 0.0 -+ "SG" "49" 0 -1 0.0 - "C" "192" 0 -1 0.0 - "O" "193" 0 -1 0.0 - "OXT" "193" 0 -1 0.0 -diff -urN amber11.orig/dat/leap/lib/amoeba_aminont.off amber11/dat/leap/lib/amoeba_aminont.off ---- amber11.orig/dat/leap/lib/amoeba_aminont.off 2010-03-31 07:05:27.000000000 +0400 -+++ amber11/dat/leap/lib/amoeba_aminont.off 2011-03-08 16:38:44.000000000 +0300 -@@ -736,12 +736,12 @@ - "H1" "191" 0 1 131072 2 1 0.181500 - "H2" "191" 0 1 131072 3 1 0.181500 - "H3" "191" 0 1 131072 4 1 0.181500 -- "CA" "8" 0 1 131072 5 6 0.105500 -+ "CA" "44" 0 1 131072 5 6 0.105500 - "HA" "12" 0 1 131072 6 1 0.092200 -- "CB" "" 0 1 131072 7 6 -0.027700 -- "HB2" "" 0 1 131072 8 1 0.068000 -- "HB3" "" 0 1 131072 9 1 0.068000 -- "SG" "" 0 1 131072 10 16 -0.098400 -+ "CB" "45" 0 1 131072 7 6 -0.027700 -+ "HB2" "46" 0 1 131072 8 1 0.068000 -+ "HB3" "46" 0 1 131072 9 1 0.068000 -+ "SG" "49" 0 1 131072 10 16 -0.098400 - "C" "9" 0 1 131072 11 6 0.612300 - "O" "11" 0 1 131072 12 8 -0.571300 - !entry.NCYX.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg -diff -urN amber11.orig/dat/leap/lib/amoeba_amino.off amber11/dat/leap/lib/amoeba_amino.off ---- amber11.orig/dat/leap/lib/amoeba_amino.off 2010-03-31 07:05:27.000000000 +0400 -+++ amber11/dat/leap/lib/amoeba_amino.off 2011-03-08 16:38:44.000000000 +0300 -@@ -880,23 +880,23 @@ - !entry.CYX.unit.atoms table str name str type int typex int resx int flags int seq int elmnt dbl chg str - "N" "7" 0 1 131072 1 7 -0.435921 - "H" "10" 0 1 131072 2 1 0.290077 -- "CA" "8" 0 1 131072 3 6 -0.030547 -+ "CA" "44" 0 1 131072 3 6 -0.030547 - "HA" "12" 0 1 131072 4 1 0.132146 -- "CB" "" 0 1 131072 5 6 -0.033006 -- "HB2" "" 0 1 131072 6 1 0.078951 -- "HB3" "" 0 1 131072 7 1 0.078951 -- "SG" "" 0 1 131072 8 16 -0.132272 -+ "CB" "45" 0 1 131072 5 6 -0.033006 -+ "HB2" "46" 0 1 131072 6 1 0.078951 -+ "HB3" "46" 0 1 131072 7 1 0.078951 -+ "SG" "49" 0 1 131072 8 16 -0.132272 - "C" "9" 0 1 131072 9 6 0.624788 - "O" "11" 0 1 131072 10 8 -0.573167 - !entry.CYX.unit.atomspertinfo table str pname str ptype int ptypex int pelmnt dbl pchg - "N" "7" 0 -1 0.0 - "H" "10" 0 -1 0.0 -- "CA" "8" 0 -1 0.0 -+ "CA" "44" 0 -1 0.0 - "HA" "12" 0 -1 0.0 -- "CB" "" 0 -1 0.0 -- "HB2" "" 0 -1 0.0 -- "HB3" "" 0 -1 0.0 -- "SG" "" 0 -1 0.0 -+ "CB" "45" 0 -1 0.0 -+ "HB2" "46" 0 -1 0.0 -+ "HB3" "46" 0 -1 0.0 -+ "SG" "49" 0 -1 0.0 - "C" "9" 0 -1 0.0 - "O" "11" 0 -1 0.0 - !entry.CYX.unit.boundbox array dbl -@@ -990,16 +990,16 @@ - "H" "10" 0 -1 0.0 - "CA" "8" 0 -1 0.0 - "HA" "12" 0 -1 0.0 -- "CB" "" 0 -1 0.0 -- "HB2" "" 0 -1 0.0 -- "HB3" "" 0 -1 0.0 -- "CG" "" 0 -1 0.0 -- "HG2" "" 0 -1 0.0 -- "HG3" "" 0 -1 0.0 -- "CD" "" 0 -1 0.0 -- "OE1" "" 0 -1 0.0 -- "OE2" "" 0 -1 0.0 -- "HE2" "" 0 -1 0.0 -+ "CB" "144" 0 -1 0.0 -+ "HB2" "145" 0 -1 0.0 -+ "HB3" "145" 0 -1 0.0 -+ "CG" "146" 0 -1 0.0 -+ "HG2" "147" 0 -1 0.0 -+ "HG3" "147" 0 -1 0.0 -+ "CD" "148" 0 -1 0.0 -+ "OE1" "149" 0 -1 0.0 -+ "OE2" "149" 0 -1 0.0 -+ "HE2" "10" 0 -1 0.0 - "C" "9" 0 -1 0.0 - "O" "11" 0 -1 0.0 - !entry.GLH.unit.boundbox array dbl -@@ -2147,21 +2147,21 @@ - "H" "10" 0 -1 0.0 - "CA" "8" 0 -1 0.0 - "HA" "12" 0 -1 0.0 -- "CB" "" 0 -1 0.0 -- "HB2" "" 0 -1 0.0 -- "HB3" "" 0 -1 0.0 -- "CG" "" 0 -1 0.0 -- "HG2" "" 0 -1 0.0 -- "HG3" "" 0 -1 0.0 -- "CD" "" 0 -1 0.0 -- "HD2" "" 0 -1 0.0 -- "HD3" "" 0 -1 0.0 -- "CE" "" 0 -1 0.0 -- "HE2" "" 0 -1 0.0 -- "HE3" "" 0 -1 0.0 -- "NZ" "" 0 -1 0.0 -- "HZ2" "" 0 -1 0.0 -- "HZ3" "" 0 -1 0.0 -+ "CB" "159" 0 -1 0.0 -+ "HB2" "160" 0 -1 0.0 -+ "HB3" "160" 0 -1 0.0 -+ "CG" "161" 0 -1 0.0 -+ "HG2" "162" 0 -1 0.0 -+ "HG3" "162" 0 -1 0.0 -+ "CD" "163" 0 -1 0.0 -+ "HD2" "164" 0 -1 0.0 -+ "HD3" "164" 0 -1 0.0 -+ "CE" "165" 0 -1 0.0 -+ "HE2" "166" 0 -1 0.0 -+ "HE3" "166" 0 -1 0.0 -+ "NZ" "167" 0 -1 0.0 -+ "HZ2" "168" 0 -1 0.0 -+ "HZ3" "168" 0 -1 0.0 - "C" "9" 0 -1 0.0 - "O" "11" 0 -1 0.0 - !entry.LYN.unit.boundbox array dbl -diff -urN amber11.orig/dat/leap/parm/gaff.dat amber11/dat/leap/parm/gaff.dat ---- amber11.orig/dat/leap/parm/gaff.dat 2010-03-31 07:05:27.000000000 +0400 -+++ amber11/dat/leap/parm/gaff.dat 2011-03-08 16:38:44.000000000 +0300 -@@ -16,6 +16,7 @@ - cy 12.01 0.360 Sp3 carbons in square systems - cu 12.01 0.360 Sp2 carbons in triangle systems - cv 12.01 0.360 Sp2 carbons in square systems -+cz 12.01 0.360 Sp2 carbon in guanidine group - h1 1.008 0.135 H bonded to aliphatic carbon with 1 electrwd. group - h2 1.008 0.135 H bonded to aliphatic carbon with 2 electrwd. group - h3 1.008 0.135 H bonded to aliphatic carbon with 3 electrwd. group -@@ -852,11 +853,6 @@ - s6-ss 139.6 2.1180 SOURCE3 5 0.0209 - sh-sh 158.9 2.0580 SOURCE2 1 0.0000 - sh-ss 155.8 2.0670 SOURCE3 3 0.0029 --Si-c3 189.8 1.8928 SOURCE4 77 0.0061 --Si-ca 191.1 1.8898 SOURCE4 11 0.0028 --Si-ha 186.3 1.4887 SOURCE4 6 0.0040 --Si-oh 267.6 1.6792 SOURCE4 6 0.0035 --Si-os 287.7 1.6524 SOURCE4 22 0.0057 - s -s 169.0 2.0300 SOURCE3 1 0.0000 - s -s2 229.2 1.8970 SOURCE1 5 0.0000 - s -s4 152.8 2.0760 SOURCE3 4 0.0345 -@@ -1091,7 +1087,6 @@ - hc-c2-s6 54.150 115.450 SOURCE3 1 - hc-c2-sh 53.550 115.630 SOURCE3 1 - hc-c2-ss 54.900 115.620 SOURCE3 1 --hn-c2-n4 0.000 112.740 SOURCE3 1 - hx-c2-n4 48.420 113.030 SOURCE3 3 0.3873 - i -c2-i 60.960 117.940 SOURCE3 1 0.0000 - n1-c2-n1 73.610 124.150 HF/6-31G* 1 -@@ -1464,9 +1459,6 @@ - s6-c3-s6 102.050 111.750 SOURCE3 1 0.0000 - sh-c3-sh 97.420 116.260 SOURCE3 1 0.0000 - sh-c3-ss 99.850 110.730 SOURCE3 1 --Si-c3-c3 74.610 114.340 SOURCE4 26 1.1613 --Si-c3-h1 51.040 110.900 SOURCE4 17 1.0270 --Si-c3-hc 50.960 111.210 SOURCE4 222 0.4865 - s -c3-s 93.400 123.350 SOURCE3 1 0.0000 - ss-c3-ss 99.950 110.570 SOURCE4 15 1.4311 - br-ca-br 67.310 117.600 SOURCE3 1 -@@ -1500,7 +1492,6 @@ - ca-ca-i 58.590 118.470 SOURCE3 10 0.6181 - ca-ca-n1 68.920 118.500 HF/6-31G* 1 - ca-ca-n2 70.950 119.570 SOURCE3 1 --ca-ca-n3 0.000 121.190 SOURCE3 1 - ca-ca-n4 67.280 118.410 SOURCE3 6 0.1691 - ca-ca-n 67.970 119.890 SOURCE3 18 0.2095 - ca-ca-na 70.210 118.340 SOURCE3 54 3.6168 -@@ -1540,7 +1531,6 @@ - cf-ca-nb 68.080 118.140 SOURCE4 12 1.1775 - cg-ca-cp 65.330 121.530 SOURCE4 12 0.1831 - c -ca-ha 46.510 115.900 SOURCE3 1 --c -ca-hc 0.000 120.000 SOURCE3 1 - cl-ca-cl 62.630 118.720 SOURCE3 1 - cl-ca-cp 62.600 120.310 SOURCE4 18 0.5607 - cl-ca-nb 65.810 116.150 SOURCE4 50 0.6047 -@@ -1606,7 +1596,6 @@ - s4-ca-s4 104.060 105.810 SOURCE3 1 - s6-ca-s6 105.770 105.810 SOURCE3 1 - sh-ca-sh 98.150 120.240 SOURCE3 1 --Si-ca-ca 73.850 121.430 SOURCE4 19 0.4235 - s -ca-s 98.380 125.140 SOURCE3 1 - ss-ca-ss 100.760 115.150 SOURCE3 1 - br-c -br 66.910 113.100 SOURCE3 1 -@@ -1636,7 +1625,6 @@ - c3-c -n 67.860 115.150 SOURCE3 153 2.7443 - c3-c -ne 68.090 111.390 SOURCE4 11 2.1430 - c3-c -nf 67.430 113.380 SOURCE3 1 same_as_c3-c-ne --c3-c -nh 0.000 113.580 SOURCE3 1 - c3-c -o 68.030 123.110 SOURCE3 267 3.0977 - c3-c -oh 69.840 112.200 SOURCE3 14 1.8324 - c3-c -os 69.260 111.960 SOURCE3 15 2.3072 -@@ -1832,7 +1820,6 @@ - ha-cc-os 52.490 110.860 SOURCE3 7 1.3846 - ha-cc-pd 42.350 121.760 SOURCE3 84 same_as_ha-cd-pc - ha-cc-ss 53.490 121.640 SOURCE2 5 1.3276 --c -c -hc 0.000 117.080 SOURCE3 1 - ch-c -ch 65.440 115.380 SOURCE3 1 same_as_cg-c-cg - ch-c -ha 47.800 113.900 SOURCE2 1 same_as_cg-c-ha - ch-c -o 70.210 122.310 SOURCE3 2 same_as_cg-c-o -@@ -2183,7 +2170,6 @@ - c -cf-n 66.600 116.790 SOURCE4 8 0.8255 - c -cf-nh 65.940 122.760 SOURCE3 1 same_as_c-ce-nh - f -c -f 72.220 107.350 SOURCE2 2 0.2500 --f -c -h 0.000 109.900 SOURCE2 1 0.0000 - h4-cf-n2 52.210 122.140 SOURCE4 11 0.9297 - h4-cf-ne 52.280 120.210 SOURCE4 6 0.8104 - ha-cf-n1 52.480 115.960 SOURCE3 2 3.5425 -@@ -2239,34 +2225,20 @@ - cf-ch-cg 57.400 177.900 SOURCE4 8 0.4883 - cf-ch-n1 59.370 178.120 SOURCE4 22 1.5200 - cg-ch-ch 58.680 179.670 SOURCE4 7 0.1439 --hc-c -hc 0.000 115.680 SOURCE3 1 --hc-c -n 0.000 120.000 SOURCE3 1 --hc-c -nh 0.000 112.700 SOURCE3 1 --hc-c -o 0.000 120.000 SOURCE3 1 --hc-c -oh 0.000 113.700 SOURCE3 1 --hc-c -os 0.000 113.580 SOURCE3 1 - n1-ch-nf 64.660 176.170 SOURCE2 3 same_as_n1-cg-ne --h -c -o 0.000 127.300 SOURCE2 1 0.0000 - i -c -i 59.790 116.450 SOURCE3 1 0.0000 - i -c -o 55.510 122.020 SOURCE3 4 1.2961 - f -cl-f 50.000 87.500 SOURCE2 1 estimated_force_constant - n2-c -n2 71.830 110.310 SOURCE3 1 --n2-c -na 0.000 118.600 SOURCE3 1 - n2-c -o 73.020 122.500 SOURCE3 1 --n3-c -n3 0.000 112.980 SOURCE3 1 --n3-c -o 0.000 122.260 SOURCE3 1 - n4-c -n4 64.710 114.640 SOURCE3 1 0.0000 - n4-c -o 69.580 118.830 SOURCE3 4 3.8516 --na-c -na 0.000 115.400 SOURCE3 1 --na-c -o 0.000 122.850 SOURCE3 1 - nc-c -o 74.050 123.980 SOURCE4 66 0.9502 - nd-c -o 73.720 121.760 SOURCE4 55 1.1138 - ne-c -ne 73.220 110.310 SOURCE3 1 0.0000 - ne-c -o 72.940 126.030 SOURCE4 39 0.9885 - nf-c -nf 73.070 110.310 SOURCE3 1 same_as_ne-c-ne - nf-c -o 73.320 124.390 SOURCE3 3 same_as_ne-c-o --nh-c -nh 0.000 110.980 SOURCE3 1 --nh-c -o 0.000 124.620 SOURCE3 1 - n -c -n 74.800 113.380 SOURCE4 635 1.4358 - n -c -nc 72.690 117.050 SOURCE4 54 0.7020 - n -c -nd 71.900 117.060 SOURCE4 23 0.9856 -@@ -2318,10 +2290,10 @@ - py-c -py 57.520 123.800 SOURCE3 1 0.0000 - ca-cq-ca 67.000 118.240 SOURCE4 5 0.2181 - ca-cq-cq 64.220 120.410 SOURCE4 12 1.4029 --ca-cq-nb 0.000 122.970 SOURCE3 2 0.0000 -+ca-cq-nb 69.270 121.650 SOURCE4 63 same as ca-cp-nb - cp-cq-cq 62.640 124.470 SOURCE4 5 1.0864 - cq-cq-cq 72.200 90.000 SOURCE3 4 0.0000 --cq-cq-nb 0.000 116.430 SOURCE3 2 0.0000 -+cq-cq-nb 68.050 116.600 SOURCE4 88 same as cp-cp-nb - s4-c -s4 98.110 108.810 SOURCE3 1 - s6-c -s6 95.130 115.750 SOURCE3 1 - sh-c -sh 100.060 115.330 SOURCE3 1 0.0000 -@@ -2454,9 +2426,6 @@ - n -cy-s6 82.570 103.450 SOURCE4 6 0.7197 - n -cy-ss 82.030 105.120 SOURCE4 69 0.3987 - nh-cz-nh 72.970 120.170 SOURCE4 26 0.3964 --ca-i -cl 0.000 90.210 SOURCE3 2 estimated_force_constant --ca-i -o 0.000 97.080 SOURCE3 5 0.2233,estimated_force_constant --cl-i -cl 0.000 179.580 SOURCE3 1 estimated_force_constant - br-n1-c1 51.100 180.000 HF/6-31G* 1 - c1-n1-c1 64.910 179.920 HF/6-31G* 1 - c1-n1-c2 60.250 177.730 HF/6-31G* 1 -@@ -2729,7 +2698,6 @@ - c2-n3-c2 66.220 124.680 SOURCE3 1 - c2-n3-hn 49.110 119.380 SOURCE3 1 - c3-n3-c3 64.010 110.900 SOURCE3 40 2.3048 --c3-n3-ca 0.000 116.390 SOURCE3 1 - c3-n3-cl 62.170 107.230 SOURCE3 3 0.3673 - c3-n3-cx 62.450 116.320 SOURCE4 24 0.5119 - c3-n3-cy 61.690 118.260 SOURCE4 14 0.8788 -@@ -2753,7 +2721,6 @@ - c3-n3-sh 78.550 112.700 SOURCE3 1 0.0000 - c3-n3-ss 77.950 116.010 SOURCE3 3 1.1944 - c3-n3-sy 79.010 115.270 SOURCE4 108 1.7647 --c -n3-c 0.000 127.170 SOURCE3 1 - cl-n3-cl 61.850 108.280 SOURCE3 1 0.0000 - cl-n3-hn 42.590 104.390 SOURCE3 2 0.0000 - cl-n3-n3 63.750 107.650 SOURCE3 1 0.0000 -@@ -2824,7 +2791,6 @@ - c1-n4-hn 48.620 110.190 SOURCE3 7 1.0847 - c2-n4-c2 63.010 112.580 SOURCE3 1 0.0000 - c2-n4-c3 63.100 110.960 SOURCE4 13 2.4632 --c2-n4-h4 0.000 112.460 SOURCE3 1 - c2-n4-hn 46.430 111.360 SOURCE3 13 1.2672 - c3-n4-c3 62.840 110.640 SOURCE3 13 1.3060 - c3-n4-ca 63.610 110.400 SOURCE4 46 1.4643 -@@ -3002,10 +2968,6 @@ - ca-na-s 75.010 125.640 SOURCE3 1 - ca-na-sh 76.630 125.440 SOURCE3 1 - ca-na-ss 74.880 129.910 SOURCE4 8 0.1449 --c -na-c 0.000 126.400 SOURCE3 1 --c -na-c2 0.000 125.090 SOURCE3 1 --c -na-c3 0.000 117.600 SOURCE3 1 --c -na-ca 0.000 125.200 SOURCE3 1 - cc-na-cc 68.940 109.900 SOURCE3 109 1.5547 - cc-na-cd 63.880 128.010 SOURCE3 1 0.0000 - cc-na-ce 63.050 126.610 SOURCE4 8 0.5158 -@@ -3058,7 +3020,6 @@ - cd-na-s 74.800 125.660 SOURCE3 8 0.1880 - cd-na-sh 76.830 123.960 SOURCE3 10 0.3424 - cd-na-ss 77.930 119.180 SOURCE3 36 5.0538 --c -na-hn 0.000 118.000 SOURCE3 1 - cl-na-cl 56.330 122.800 SOURCE3 1 - cl-na-nc 59.890 119.360 SOURCE3 4 1.7128 - cl-na-nd 59.890 119.360 SOURCE3 4 same_as_cl-na-nc -@@ -3067,7 +3028,6 @@ - cl-na-pc 58.780 120.510 SOURCE3 3 2.1985 - cl-na-pd 58.780 120.510 SOURCE3 3 same_as_cl-na-pc - cl-na-ss 77.180 111.910 SOURCE3 1 0.0000 --c -na-n 0.000 124.660 SOURCE3 1 - f -na-f 62.220 120.200 SOURCE3 1 - f -na-nc 66.640 118.050 SOURCE3 4 1.7931 - f -na-nd 66.640 118.050 SOURCE3 4 same_as_f-na-nc -@@ -3231,7 +3191,7 @@ - sy-na-sy 96.930 123.200 SOURCE3 1 - ca-nb-ca 68.590 115.860 SOURCE3 46 1.1645 - ca-nb-cp 68.010 118.040 SOURCE4 58 0.7819 --ca-nb-cq 0.000 117.040 SOURCE3 2 0.0000 -+ca-nb-cq 68.010 118.040 SOURCE4 58 same as ca-nb-cp - ca-nb-nb 69.370 118.890 SOURCE3 10 0.6031 - cp-nb-nb 68.790 121.110 SOURCE4 12 0.4315 - nb-nb-nb 70.440 121.040 SOURCE3 1 0.0000 -@@ -3597,8 +3557,6 @@ - ca-nh-sh 78.190 121.410 SOURCE3 1 0.0000 - ca-nh-ss 78.160 121.500 SOURCE3 3 2.6255 - ca-nh-sy 76.750 125.260 SOURCE4 41 1.7517 --c -nh-c 0.000 119.570 SOURCE3 1 --c -nh-ca 0.000 123.570 SOURCE3 1 - cc-nh-cx 63.320 122.820 SOURCE4 42 1.1841 - cc-nh-hn 48.860 117.160 SOURCE3 11 2.6137 - cc-nh-n2 68.230 119.660 SOURCE4 5 1.3903 -@@ -3610,10 +3568,8 @@ - ce-nh-sy 80.450 112.970 SOURCE4 7 1.0636 - cf-nh-hn 48.620 115.620 SOURCE4 16 1.3549 - cf-nh-o 67.070 129.430 SOURCE3 1 same_as_ce-nh-o --c -nh-hn 0.000 115.730 SOURCE3 1 - cl-nh-cl 62.930 106.600 SOURCE3 1 - cl-nh-hn 43.080 104.140 SOURCE3 1 0.0000 --c -nh-n4 0.000 111.350 SOURCE3 1 - cx-nh-cx 86.530 62.020 SOURCE4 45 0.6189 - cx-nh-hn 45.790 118.890 SOURCE4 8 0.1391 - cz-nh-hn 48.790 121.240 SOURCE4 40 0.5682 -@@ -3783,7 +3739,6 @@ - ho-oh-sh 54.390 106.240 SOURCE3 2 0.0661 - ho-oh-ss 54.540 107.060 SOURCE3 4 0.9967 - ho-oh-sy 55.940 106.410 SOURCE4 33 0.3729 --Si-oh-ho 52.570 115.710 SOURCE4 5 0.1738 - br-os-br 65.080 110.630 SOURCE3 1 0.0000 - c1-os-c1 66.990 115.020 SOURCE3 1 0.0000 - c1-os-c3 64.470 113.390 SOURCE3 1 0.0000 -@@ -3892,7 +3847,6 @@ - s4-os-s4 99.450 111.630 SOURCE3 1 0.0000 - s6-os-s6 103.740 119.070 SOURCE3 2 0.4318 - sh-os-sh 97.950 118.950 SOURCE3 1 0.0000 --Si-os-c3 74.830 124.640 SOURCE4 9 0.2879 - s -os-s 91.270 118.080 SOURCE3 1 0.0000 - ss-os-ss 97.420 115.640 SOURCE3 1 0.0000 - br-p2-br 65.020 108.600 SOURCE3 1 -@@ -4615,7 +4569,6 @@ - f -s4-f 43.790 92.710 SOURCE2 3 0.1490 - f -s4-o 43.870 106.810 SOURCE2 2 0.0100 - f -s4-s 47.340 107.500 SOURCE2 1 0.0000 --hn-s4-hs 0.000 86.990 SOURCE3 1 - hs-s4-hs 23.650 87.000 SOURCE3 2 0.0202 - hs-s4-n1 32.050 90.510 HF/6-31G* 1 - hs-s4-o 31.160 110.270 SOURCE3 5 0.1908 -@@ -4789,12 +4742,6 @@ - hs-sh-s6 33.980 93.830 SOURCE3 3 1.2561 - hs-sh-sh 33.890 99.070 SOURCE3 2 0.0000 - hs-sh-ss 33.730 99.170 SOURCE3 3 0.2457 --c3-Si-c3 34.810 109.820 SOURCE4 88 0.5569 --c3-Si-ca 34.800 110.090 SOURCE4 26 0.7331 --c3-Si-oh 38.160 107.440 SOURCE4 8 1.5150 --c3-Si-os 38.140 108.750 SOURCE4 38 0.7301 --ha-Si-ha 19.530 108.770 SOURCE4 5 0.5372 --os-Si-os 42.630 108.350 SOURCE4 15 1.7995 - br-ss-br 41.920 102.920 SOURCE3 1 0.0000 - br-ss-c3 39.460 99.030 SOURCE3 1 0.0000 - c1-ss-c1 41.480 98.300 SOURCE2 1 0.0000 -@@ -4813,7 +4760,6 @@ - c3-ss-cl 37.940 99.400 SOURCE2 1 0.0000 - c3-ss-cy 38.750 94.320 SOURCE4 62 0.3646 - c3-ss-f 39.670 97.490 SOURCE3 1 0.0000 --c3-ss-ha 0.000 96.500 SOURCE2 1 0.0000 - c3-ss-i 35.060 100.000 SOURCE3 1 0.0000 - c3-ss-n1 41.250 98.440 HF/6-31G* 1 - c3-ss-n2 41.260 96.420 SOURCE3 5 1.3604 -@@ -5883,7 +5829,7 @@ - were replaced with those newly generated. Here are the numbers: - - Bond length: 59 low quality parameters were replaced and 56 new parameters --were introduced. $j -+were introduced. - - Bond angle: 437 low quality parameters were replaced and 618 new - parameters were introduced. diff --git a/sci-chemistry/ambertools/files/ambertools-1.5-bugfix_1-3.patch b/sci-chemistry/ambertools/files/ambertools-1.5-bugfix_1-3.patch deleted file mode 100644 index 1aebcabce..000000000 --- a/sci-chemistry/ambertools/files/ambertools-1.5-bugfix_1-3.patch +++ /dev/null @@ -1,3831 +0,0 @@ -diff -urN amber11//AmberTools/src/cpptraj/src/Action_Center.cpp amber11.new//AmberTools/src/cpptraj/src/Action_Center.cpp ---- amber11//AmberTools/src/cpptraj/src/Action_Center.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/Action_Center.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/Action_Closest.cpp amber11.new//AmberTools/src/cpptraj/src/Action_Closest.cpp ---- amber11//AmberTools/src/cpptraj/src/Action_Closest.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/Action_Closest.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/Action_Distance.cpp amber11.new//AmberTools/src/cpptraj/src/Action_Distance.cpp ---- amber11//AmberTools/src/cpptraj/src/Action_Distance.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/Action_Distance.cpp 2011-05-19 18:35:57.000000000 +0300 -@@ -68,6 +68,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,8 +94,8 @@ - // 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); - } - } -diff -urN amber11//AmberTools/src/cpptraj/src/Action_Image.cpp amber11.new//AmberTools/src/cpptraj/src/Action_Image.cpp ---- amber11//AmberTools/src/cpptraj/src/Action_Image.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/Action_Image.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/Action_Outtraj.cpp amber11.new//AmberTools/src/cpptraj/src/Action_Outtraj.cpp ---- amber11//AmberTools/src/cpptraj/src/Action_Outtraj.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/Action_Outtraj.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/Action_Outtraj.h amber11.new//AmberTools/src/cpptraj/src/Action_Outtraj.h ---- amber11//AmberTools/src/cpptraj/src/Action_Outtraj.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/Action_Outtraj.h 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/Action_Rms2d.cpp amber11.new//AmberTools/src/cpptraj/src/Action_Rms2d.cpp ---- amber11//AmberTools/src/cpptraj/src/Action_Rms2d.cpp 1970-01-01 03:00:00.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/Action_Rms2d.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/Action_Rms2d.h amber11.new//AmberTools/src/cpptraj/src/Action_Rms2d.h ---- amber11//AmberTools/src/cpptraj/src/Action_Rms2d.h 1970-01-01 03:00:00.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/Action_Rms2d.h 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/AmberNetcdf.cpp amber11.new//AmberTools/src/cpptraj/src/AmberNetcdf.cpp ---- amber11//AmberTools/src/cpptraj/src/AmberNetcdf.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/AmberNetcdf.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/AmberParm.cpp amber11.new//AmberTools/src/cpptraj/src/AmberParm.cpp ---- amber11//AmberTools/src/cpptraj/src/AmberParm.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/AmberParm.cpp 2011-05-19 18:35:57.000000000 +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 - // ============================================================= -@@ -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//AmberTools/src/cpptraj/src/AmberParm.h amber11.new//AmberTools/src/cpptraj/src/AmberParm.h ---- amber11//AmberTools/src/cpptraj/src/AmberParm.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/AmberParm.h 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/AmberRestart.cpp amber11.new//AmberTools/src/cpptraj/src/AmberRestart.cpp ---- amber11//AmberTools/src/cpptraj/src/AmberRestart.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/AmberRestart.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/AmberRestart.h amber11.new//AmberTools/src/cpptraj/src/AmberRestart.h ---- amber11//AmberTools/src/cpptraj/src/AmberRestart.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/AmberRestart.h 2011-05-19 18:35:57.000000000 +0300 -@@ -14,6 +14,7 @@ - - int SetupRead(); - int SetupWrite(); -+ void getBoxType(char *, int); - - public: - -diff -urN amber11//AmberTools/src/cpptraj/src/AmberRestartNC.cpp amber11.new//AmberTools/src/cpptraj/src/AmberRestartNC.cpp ---- amber11//AmberTools/src/cpptraj/src/AmberRestartNC.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/AmberRestartNC.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/AmberTraj.cpp amber11.new//AmberTools/src/cpptraj/src/AmberTraj.cpp ---- amber11//AmberTools/src/cpptraj/src/AmberTraj.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/AmberTraj.cpp 2011-05-19 18:35:57.000000000 +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; - } - -@@ -165,6 +169,7 @@ - int frame_lines; - int lineSize; - long long int file_size, frame_size; -+ double box[6]; // For checking box coordinates - - // Attempt to open the file. open() sets the title and titleSize - if (open()) return 1; -@@ -219,7 +224,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,21 +233,22 @@ - */ - 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; -+ // 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 -+ BoxType = P->BoxType; - // Reallocate frame buffer accordingly -+ frameSize+=lineSize; - 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; -- } else { -- isBox = P->ifbox; -- } - } - } - -@@ -315,7 +321,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//AmberTools/src/cpptraj/src/ArgList.cpp amber11.new//AmberTools/src/cpptraj/src/ArgList.cpp ---- amber11//AmberTools/src/cpptraj/src/ArgList.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/ArgList.cpp 2011-05-19 18:35:57.000000000 +0300 -@@ -147,6 +147,16 @@ - } - - /* -+ * 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//AmberTools/src/cpptraj/src/ArgList.h amber11.new//AmberTools/src/cpptraj/src/ArgList.h ---- amber11//AmberTools/src/cpptraj/src/ArgList.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/ArgList.h 2011-05-19 18:35:57.000000000 +0300 -@@ -15,6 +15,7 @@ - void Add(char *); - void print(); - char *ArgLine(); -+ char *Arg(int); - - char *Command(); - int CommandIs(const char *); -diff -urN amber11//AmberTools/src/cpptraj/src/AtomMap.cpp amber11.new//AmberTools/src/cpptraj/src/AtomMap.cpp ---- amber11//AmberTools/src/cpptraj/src/AtomMap.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/AtomMap.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/cpptrajdepend amber11.new//AmberTools/src/cpptraj/src/cpptrajdepend ---- amber11//AmberTools/src/cpptraj/src/cpptrajdepend 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/cpptrajdepend 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/DataFile.cpp amber11.new//AmberTools/src/cpptraj/src/DataFile.cpp ---- amber11//AmberTools/src/cpptraj/src/DataFile.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/DataFile.cpp 2011-05-19 18:35:57.000000000 +0300 -@@ -66,6 +66,49 @@ - } - - /* -+ * 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 - */ -diff -urN amber11//AmberTools/src/cpptraj/src/DataFile.h amber11.new//AmberTools/src/cpptraj/src/DataFile.h ---- amber11//AmberTools/src/cpptraj/src/DataFile.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/DataFile.h 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/DataSet.cpp amber11.new//AmberTools/src/cpptraj/src/DataSet.cpp ---- amber11//AmberTools/src/cpptraj/src/DataSet.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/DataSet.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/DataSet.h amber11.new//AmberTools/src/cpptraj/src/DataSet.h ---- amber11//AmberTools/src/cpptraj/src/DataSet.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/DataSet.h 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/Frame.cpp amber11.new//AmberTools/src/cpptraj/src/Frame.cpp ---- amber11//AmberTools/src/cpptraj/src/Frame.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/Frame.cpp 2011-05-19 18:35:57.000000000 +0300 -@@ -61,6 +61,40 @@ - } - - /* -+ * 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 - */ -@@ -423,21 +457,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 +479,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 +496,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//AmberTools/src/cpptraj/src/Frame.h amber11.new//AmberTools/src/cpptraj/src/Frame.h ---- amber11//AmberTools/src/cpptraj/src/Frame.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/Frame.h 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/FrameList.cpp amber11.new//AmberTools/src/cpptraj/src/FrameList.cpp ---- amber11//AmberTools/src/cpptraj/src/FrameList.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/FrameList.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/FrameList.h amber11.new//AmberTools/src/cpptraj/src/FrameList.h ---- amber11//AmberTools/src/cpptraj/src/FrameList.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/FrameList.h 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/intDataSet.cpp amber11.new//AmberTools/src/cpptraj/src/intDataSet.cpp ---- amber11//AmberTools/src/cpptraj/src/intDataSet.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/intDataSet.cpp 2011-05-19 18:35:57.000000000 +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 -@@ -34,6 +42,21 @@ - } - - /* -+ * 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) { -@@ -52,17 +75,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//AmberTools/src/cpptraj/src/intDataSet.h amber11.new//AmberTools/src/cpptraj/src/intDataSet.h ---- amber11//AmberTools/src/cpptraj/src/intDataSet.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/intDataSet.h 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/main.cpp amber11.new//AmberTools/src/cpptraj/src/main.cpp ---- amber11//AmberTools/src/cpptraj/src/main.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/main.cpp 2011-05-19 18:35:57.000000000 +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.0.8" - #endif - - void Usage(char *programName) { -diff -urN amber11//AmberTools/src/cpptraj/src/Makefile amber11.new//AmberTools/src/cpptraj/src/Makefile ---- amber11//AmberTools/src/cpptraj/src/Makefile 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/Makefile 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/Makefile_at amber11.new//AmberTools/src/cpptraj/src/Makefile_at ---- amber11//AmberTools/src/cpptraj/src/Makefile_at 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/Makefile_at 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/mapDataSet.cpp amber11.new//AmberTools/src/cpptraj/src/mapDataSet.cpp ---- amber11//AmberTools/src/cpptraj/src/mapDataSet.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/mapDataSet.cpp 2011-05-19 18:35:57.000000000 +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 -@@ -35,6 +43,23 @@ - } - - /* -+ * 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) { -@@ -53,17 +78,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//AmberTools/src/cpptraj/src/mapDataSet.h amber11.new//AmberTools/src/cpptraj/src/mapDataSet.h ---- amber11//AmberTools/src/cpptraj/src/mapDataSet.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/mapDataSet.h 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/Mol2File.cpp amber11.new//AmberTools/src/cpptraj/src/Mol2File.cpp ---- amber11//AmberTools/src/cpptraj/src/Mol2File.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/Mol2File.cpp 2011-05-19 18:35:57.000000000 +0300 -@@ -239,6 +239,8 @@ - if (writeMode==2) - File->IO->Close(); - -+ currentFrame++; -+ - return 0; - } - -diff -urN amber11//AmberTools/src/cpptraj/src/PDBfile.cpp amber11.new//AmberTools/src/cpptraj/src/PDBfile.cpp ---- amber11//AmberTools/src/cpptraj/src/PDBfile.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/PDBfile.cpp 2011-05-19 18:35:57.000000000 +0300 -@@ -207,6 +207,9 @@ - } else if (writeMode==1) { - File->IO->Printf("ENDMDL\n"); - } -+ -+ currentFrame++; -+ - return 0; - } - -diff -urN amber11//AmberTools/src/cpptraj/src/PtrajActionList.cpp amber11.new//AmberTools/src/cpptraj/src/PtrajActionList.cpp ---- amber11//AmberTools/src/cpptraj/src/PtrajActionList.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/PtrajActionList.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/PtrajFile.cpp amber11.new//AmberTools/src/cpptraj/src/PtrajFile.cpp ---- amber11//AmberTools/src/cpptraj/src/PtrajFile.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/PtrajFile.cpp 2011-05-19 18:35:57.000000000 +0300 -@@ -113,6 +113,7 @@ - void PtrajFile::CloseFile() { - if (isOpen) { - IO->Close(); -+ if (debug>0) rprintf("Closed %s.\n",filename); - isOpen=0; - } - } -diff -urN amber11//AmberTools/src/cpptraj/src/PtrajMpi.c amber11.new//AmberTools/src/cpptraj/src/PtrajMpi.c ---- amber11//AmberTools/src/cpptraj/src/PtrajMpi.c 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/PtrajMpi.c 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/PtrajState.cpp amber11.new//AmberTools/src/cpptraj/src/PtrajState.cpp ---- amber11//AmberTools/src/cpptraj/src/PtrajState.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/PtrajState.cpp 2011-05-19 18:35:57.000000000 +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(); -diff -urN amber11//AmberTools/src/cpptraj/src/PtrajState.h amber11.new//AmberTools/src/cpptraj/src/PtrajState.h ---- amber11//AmberTools/src/cpptraj/src/PtrajState.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/PtrajState.h 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/ReferenceList.cpp amber11.new//AmberTools/src/cpptraj/src/ReferenceList.cpp ---- amber11//AmberTools/src/cpptraj/src/ReferenceList.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/ReferenceList.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/ReferenceList.h amber11.new//AmberTools/src/cpptraj/src/ReferenceList.h ---- amber11//AmberTools/src/cpptraj/src/ReferenceList.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/ReferenceList.h 2011-05-19 18:35:57.000000000 +0300 -@@ -5,7 +5,7 @@ - #include "FrameList.h" - - class ReferenceList : public CoordFileList { -- -+ std::vector<bool> Average; - public: - - ReferenceList(); -diff -urN amber11//AmberTools/src/cpptraj/src/RemdTraj.cpp amber11.new//AmberTools/src/cpptraj/src/RemdTraj.cpp ---- amber11//AmberTools/src/cpptraj/src/RemdTraj.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/RemdTraj.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/stringDataSet.cpp amber11.new//AmberTools/src/cpptraj/src/stringDataSet.cpp ---- amber11//AmberTools/src/cpptraj/src/stringDataSet.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/stringDataSet.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/stringDataSet.h amber11.new//AmberTools/src/cpptraj/src/stringDataSet.h ---- amber11//AmberTools/src/cpptraj/src/stringDataSet.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/stringDataSet.h 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/TrajFile.cpp amber11.new//AmberTools/src/cpptraj/src/TrajFile.cpp ---- amber11//AmberTools/src/cpptraj/src/TrajFile.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/TrajFile.cpp 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/TrajFile.h amber11.new//AmberTools/src/cpptraj/src/TrajFile.h ---- amber11//AmberTools/src/cpptraj/src/TrajFile.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/TrajFile.h 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/TrajinList.cpp amber11.new//AmberTools/src/cpptraj/src/TrajinList.cpp ---- amber11//AmberTools/src/cpptraj/src/TrajinList.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/TrajinList.cpp 2011-05-19 18:35:57.000000000 +0300 -@@ -70,7 +70,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 +78,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//AmberTools/src/cpptraj/src/TrajinList.h amber11.new//AmberTools/src/cpptraj/src/TrajinList.h ---- amber11//AmberTools/src/cpptraj/src/TrajinList.h 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/TrajinList.h 2011-05-19 18:35:57.000000000 +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//AmberTools/src/cpptraj/src/TrajoutList.cpp amber11.new//AmberTools/src/cpptraj/src/TrajoutList.cpp ---- amber11//AmberTools/src/cpptraj/src/TrajoutList.cpp 2011-04-14 15:30:16.000000000 +0300 -+++ amber11.new//AmberTools/src/cpptraj/src/TrajoutList.cpp 2011-05-19 18:35:57.000000000 +0300 -@@ -20,7 +20,6 @@ - */ - int TrajoutList::Add(ArgList *A, ParmFileList *parmFileList, int worldsize) { - TrajFile *T; -- int boxInfo; - FileFormat writeFormat; - FileType writeType; - char *onlyframes; -@@ -29,7 +28,6 @@ - if (this->ProcessArgList(A,parmFileList)) return 1; - - // Init variables -- boxInfo=0; - writeFormat=AMBERTRAJ; - writeType=UNKNOWN_TYPE; - -@@ -56,10 +54,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 +84,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//AmberTools/src/leap/src/leap/amber.c amber11.new//AmberTools/src/leap/src/leap/amber.c ---- amber11//AmberTools/src/leap/src/leap/amber.c 2011-03-10 20:12:06.000000000 +0200 -+++ amber11.new//AmberTools/src/leap/src/leap/amber.c 2011-05-19 18:35:57.000000000 +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//AmberTools/src/leap/src/leap/build.c amber11.new//AmberTools/src/leap/src/leap/build.c ---- amber11//AmberTools/src/leap/src/leap/build.c 2011-03-10 20:12:06.000000000 +0200 -+++ amber11.new//AmberTools/src/leap/src/leap/build.c 2011-05-19 18:35:57.000000000 +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//AmberTools/src/leap/src/leap/model.c amber11.new//AmberTools/src/leap/src/leap/model.c ---- amber11//AmberTools/src/leap/src/leap/model.c 2011-04-14 15:30:17.000000000 +0300 -+++ amber11.new//AmberTools/src/leap/src/leap/model.c 2011-05-19 18:35:57.000000000 +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//AmberTools/src/leap/src/leap/parmSet.c amber11.new//AmberTools/src/leap/src/leap/parmSet.c ---- amber11//AmberTools/src/leap/src/leap/parmSet.c 2011-03-10 20:12:06.000000000 +0200 -+++ amber11.new//AmberTools/src/leap/src/leap/parmSet.c 2011-05-19 18:35:57.000000000 +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//AmberTools/src/leap/src/leap/parmSet.h amber11.new//AmberTools/src/leap/src/leap/parmSet.h ---- amber11//AmberTools/src/leap/src/leap/parmSet.h 2011-03-10 20:12:06.000000000 +0200 -+++ amber11.new//AmberTools/src/leap/src/leap/parmSet.h 2011-05-19 18:35:57.000000000 +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//AmberTools/src/leap/src/leap/unitio.c amber11.new//AmberTools/src/leap/src/leap/unitio.c ---- amber11//AmberTools/src/leap/src/leap/unitio.c 2011-03-10 20:12:06.000000000 +0200 -+++ amber11.new//AmberTools/src/leap/src/leap/unitio.c 2011-05-19 18:35:57.000000000 +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//AmberTools/src/leap/src/leap/xaImproperParmTable.c amber11.new//AmberTools/src/leap/src/leap/xaImproperParmTable.c ---- amber11//AmberTools/src/leap/src/leap/xaImproperParmTable.c 2011-03-10 20:12:06.000000000 +0200 -+++ amber11.new//AmberTools/src/leap/src/leap/xaImproperParmTable.c 2011-05-19 18:35:57.000000000 +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//AmberTools/src/leap/src/leap/xaTorsionParmTable.c amber11.new//AmberTools/src/leap/src/leap/xaTorsionParmTable.c ---- amber11//AmberTools/src/leap/src/leap/xaTorsionParmTable.c 2011-03-10 20:12:06.000000000 +0200 -+++ amber11.new//AmberTools/src/leap/src/leap/xaTorsionParmTable.c 2011-05-19 18:35:57.000000000 +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//AmberTools/src/mmpbsa_py/MMPBSA_mods/alamdcrd.py amber11.new//AmberTools/src/mmpbsa_py/MMPBSA_mods/alamdcrd.py ---- amber11//AmberTools/src/mmpbsa_py/MMPBSA_mods/alamdcrd.py 2011-04-14 15:30:17.000000000 +0300 -+++ amber11.new//AmberTools/src/mmpbsa_py/MMPBSA_mods/alamdcrd.py 2011-05-19 18:35:57.000000000 +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//AmberTools/src/mmpbsa_py/setup.sh amber11.new//AmberTools/src/mmpbsa_py/setup.sh ---- amber11//AmberTools/src/mmpbsa_py/setup.sh 2011-04-14 15:30:18.000000000 +0300 -+++ amber11.new//AmberTools/src/mmpbsa_py/setup.sh 2011-05-19 18:35:57.000000000 +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//AmberTools/test/nab/Run.prm amber11.new//AmberTools/test/nab/Run.prm ---- amber11//AmberTools/test/nab/Run.prm 2011-04-14 15:30:23.000000000 +0300 -+++ amber11.new//AmberTools/test/nab/Run.prm 2011-05-19 18:35:57.000000000 +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//AmberTools/test/nab/tprmtop.check amber11.new//AmberTools/test/nab/tprmtop.check ---- amber11//AmberTools/test/nab/tprmtop.check 2011-03-10 20:12:18.000000000 +0200 -+++ amber11.new//AmberTools/test/nab/tprmtop.check 2011-05-19 18:35:57.000000000 +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 |