From 6cfc8f688a784c05c199031410618f16afca1528 Mon Sep 17 00:00:00 2001 From: "Daniel R. Roe" Date: Fri, 21 Jul 2023 09:23:40 -0400 Subject: [PATCH 01/13] Update for precision --- test/Test_Emin/omm.tz2.ene.dat.save | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/Test_Emin/omm.tz2.ene.dat.save b/test/Test_Emin/omm.tz2.ene.dat.save index 21c3caa957..6833814f3c 100644 --- a/test/Test_Emin/omm.tz2.ene.dat.save +++ b/test/Test_Emin/omm.tz2.ene.dat.save @@ -96,6 +96,6 @@ 95 1.7459E-01 6.0644E-01 96 -8.7477E-03 9.3974E-01 97 -1.2831E-02 1.5901E+00 -98 -7.8873E-02 1.7921E+00 -99 3.9163E-02 2.4143E+00 +98 -7.8874E-02 1.7921E+00 +99 3.9162E-02 2.4143E+00 100 -5.6835E-01 6.1102E-01 From 199ed01bbc120bb6a2691197dd5b278c3ea01b5f Mon Sep 17 00:00:00 2001 From: "Daniel R. Roe" Date: Fri, 21 Jul 2023 09:25:52 -0400 Subject: [PATCH 02/13] Add openmm keyword to energy action, but keep it hidden for now --- src/Action_Energy.cpp | 134 ++++++++++++++++++++++++----------- src/Action_Energy.h | 4 ++ src/PotentialFunction.cpp | 10 +++ src/PotentialFunction.h | 2 + src/PotentialTerm.h | 2 + src/PotentialTerm_OpenMM.cpp | 30 +++++++- src/PotentialTerm_OpenMM.h | 3 + src/cpptrajdepend | 2 +- 8 files changed, 142 insertions(+), 45 deletions(-) diff --git a/src/Action_Energy.cpp b/src/Action_Energy.cpp index d24f7038b1..7931706cd9 100644 --- a/src/Action_Energy.cpp +++ b/src/Action_Energy.cpp @@ -2,6 +2,8 @@ #include "CpptrajStdio.h" #include "Ewald_Regular.h" #include "Ewald_ParticleMesh.h" +#include "PotentialFunction.h" +#include "MdOpts.h" /// CONSTRUCTOR Action_Energy::Action_Energy() : @@ -11,6 +13,8 @@ Action_Energy::Action_Energy() : npoints_(0), debug_(0), EW_(0), + potential_(0), + use_openmm_(false), dt_(0), need_lj_params_(false), needs_exclList_(false), @@ -20,6 +24,7 @@ Action_Energy::Action_Energy() : /// DESTRUCTOR Action_Energy::~Action_Energy() { if (EW_ != 0) delete EW_; + if (potential_ != 0) delete potential_; } void Action_Energy::Help() const { @@ -75,24 +80,40 @@ Action::RetType Action_Energy::Init(ArgList& actionArgs, ActionInit& init, int d debug_ = debugIn; ENE_.SetDebug( debug_ ); DataFile* outfile = init.DFL().AddDataFile( actionArgs.GetStringKey("out"), actionArgs ); + // TODO integrate this better + use_openmm_ = false; + if (actionArgs.hasKey("openmm")) { +# ifdef HAS_OPENMM + potential_ = new PotentialFunction(); + use_openmm_ = true; +# else + mprinterr("Error: 'openmm' requires compilation with -DHAS_OPENMM.\n"); + return Action::ERR; +# endif /* HAS_OPENMM */ + } // Determine which energy terms are active std::vector termEnabled((int)TOTAL+1, false); - termEnabled[BOND] = actionArgs.hasKey("bond"); - termEnabled[ANGLE] = actionArgs.hasKey("angle"); - termEnabled[DIHEDRAL] = actionArgs.hasKey("dihedral"); - termEnabled[V14] = actionArgs.hasKey("v14"); - termEnabled[Q14] = actionArgs.hasKey("e14"); - termEnabled[VDW] = actionArgs.hasKey("vdw"); - termEnabled[ELEC] = actionArgs.hasKey("elec"); - if (actionArgs.hasKey("nb14")) { - termEnabled[V14] = true; - termEnabled[Q14] = true; - } - if (actionArgs.hasKey("nonbond")) { - termEnabled[VDW] = true; - termEnabled[ELEC] = true; + if (use_openmm_) { + // Only total allowed + termEnabled[TOTAL] = true; + } else { + termEnabled[BOND] = actionArgs.hasKey("bond"); + termEnabled[ANGLE] = actionArgs.hasKey("angle"); + termEnabled[DIHEDRAL] = actionArgs.hasKey("dihedral"); + termEnabled[V14] = actionArgs.hasKey("v14"); + termEnabled[Q14] = actionArgs.hasKey("e14"); + termEnabled[VDW] = actionArgs.hasKey("vdw"); + termEnabled[ELEC] = actionArgs.hasKey("elec"); + if (actionArgs.hasKey("nb14")) { + termEnabled[V14] = true; + termEnabled[Q14] = true; + } + if (actionArgs.hasKey("nonbond")) { + termEnabled[VDW] = true; + termEnabled[ELEC] = true; + } + termEnabled[KE] = actionArgs.hasKey("kinetic"); } - termEnabled[KE] = actionArgs.hasKey("kinetic"); int nactive = 0; for (std::vector::const_iterator it = termEnabled.begin(); it != termEnabled.end(); ++it) if (*it) ++nactive; @@ -228,6 +249,15 @@ Action::RetType Action_Energy::Init(ArgList& actionArgs, ActionInit& init, int d // Get Masks if (Mask1_.SetMaskString( actionArgs.GetMaskNext() )) return Action::ERR; + // Get options for potential function + if (potential_ != 0) { + MdOpts opts; + if (opts.GetOptsFromArgs(actionArgs)) return Action::ERR; + opts.PrintOpts(); // TODO move down + if (use_openmm_) + potential_->AddTerm( PotentialTerm::OPENMM, opts ); + } + // DataSet setname_ = actionArgs.GetStringNext(); if (setname_.empty()) @@ -246,31 +276,35 @@ Action::RetType Action_Energy::Init(ArgList& actionArgs, ActionInit& init, int d for (int i = 0; i != (int)TOTAL+1; i++) if (termEnabled[i]) mprintf(" '%s'", EtypeStr[i]); mprintf("\n"); - if (termEnabled[BOND] && !bondsToH_) - mprintf("\tNot calculating energy of bonds to hydrogen.\n"); - if (elecType_ != NO_ELE) - mprintf("\tElectrostatics method: %s\n", ElecStr[elecType_]); - if (elecType_ == DIRECTSUM) { - if (npoints_ < 0) - mprintf("\tDirect sum energy for up to %i unit cells in each direction will be calculated.\n", - -npoints_); - else - mprintf("\tDirect sum energy for %i unit cells in each direction will be calculated.\n", - npoints_); - } else if (elecType_ == EWALD || elecType_ == PME) { - ewaldOpts_.PrintOptions(); - } - if (KEtype_ != KE_NONE) { - if (KEtype_ == KE_AUTO) - mprintf("\tIf forces and velocities present KE will be calculated assuming\n" - "\tvelocities are a half step ahead of forces; if only velocities\n" - "\tpresent KE will be calculated assuming velocities are on-step.\n"); - else if (KEtype_ == KE_VV) - mprintf("\tKE will be calculated assuming velocities are a half step ahead of forces.\n"); - else if (KEtype_ == KE_VEL) - mprintf("\tKE will be calculated assuming velocities are on-step.\n"); - if (KEtype_ != KE_VEL) - mprintf("\tTime step for KE calculation if forces present: %g ps\n", dt_); + if (use_openmm_) { + mprintf("\tUsing OpenMM to calculate total energy.\n"); + } else { + if (termEnabled[BOND] && !bondsToH_) + mprintf("\tNot calculating energy of bonds to hydrogen.\n"); + if (elecType_ != NO_ELE) + mprintf("\tElectrostatics method: %s\n", ElecStr[elecType_]); + if (elecType_ == DIRECTSUM) { + if (npoints_ < 0) + mprintf("\tDirect sum energy for up to %i unit cells in each direction will be calculated.\n", + -npoints_); + else + mprintf("\tDirect sum energy for %i unit cells in each direction will be calculated.\n", + npoints_); + } else if (elecType_ == EWALD || elecType_ == PME) { + ewaldOpts_.PrintOptions(); + } + if (KEtype_ != KE_NONE) { + if (KEtype_ == KE_AUTO) + mprintf("\tIf forces and velocities present KE will be calculated assuming\n" + "\tvelocities are a half step ahead of forces; if only velocities\n" + "\tpresent KE will be calculated assuming velocities are on-step.\n"); + else if (KEtype_ == KE_VV) + mprintf("\tKE will be calculated assuming velocities are a half step ahead of forces.\n"); + else if (KEtype_ == KE_VEL) + mprintf("\tKE will be calculated assuming velocities are on-step.\n"); + if (KEtype_ != KE_VEL) + mprintf("\tTime step for KE calculation if forces present: %g ps\n", dt_); + } } return Action::OK; } @@ -279,12 +313,25 @@ Action::RetType Action_Energy::Init(ArgList& actionArgs, ActionInit& init, int d /** Set angle up for this parmtop. Get masks etc. */ Action::RetType Action_Energy::Setup(ActionSetup& setup) { + currentParm_ = setup.TopAddress(); + // Set up mask if (setup.Top().SetupCharMask(Mask1_)) return Action::ERR; if (Mask1_.None()) { mprintf("Warning: Mask '%s' selects no atoms.\n", Mask1_.MaskString()); return Action::SKIP; } Mask1_.MaskInfo(); + + // OpenMM + if (use_openmm_) { + if (potential_->SetupPotential( setup.Top(), setup.CoordInfo().TrajBox(), Mask1_ )) { + mprinterr("Error: Could not set up potential function.\n"); + return Action::ERR; + } + potential_->FnInfo(); + return Action::OK; + } + Imask_ = AtomMask(Mask1_.ConvertToIntMask(), Mask1_.Natom()); // Check for LJ terms if (need_lj_params_ && !setup.Top().Nonbond().HasNonbond()) @@ -327,7 +374,6 @@ Action::RetType Action_Energy::Setup(ActionSetup& setup) { } } - currentParm_ = setup.TopAddress(); return Action::OK; } @@ -352,6 +398,12 @@ Action::RetType Action_Energy::DoAction(int frameNum, ActionFrame& frm) { time_total_.Start(); double Etot = 0.0, ene, ene2; int err = 0; + + if (use_openmm_) { + if (potential_->CalculateEnergy( frm.Frm() )) return Action::ERR; + Etot = potential_->Energy().Ene( EnergyArray::E_OPENMM ); + } + for (calc_it calc = Ecalcs_.begin(); calc != Ecalcs_.end(); ++calc) { switch (*calc) { diff --git a/src/Action_Energy.h b/src/Action_Energy.h index 99eb861c0e..f2b7f92933 100644 --- a/src/Action_Energy.h +++ b/src/Action_Energy.h @@ -7,6 +7,7 @@ #include "ExclusionArray.h" #include "EwaldOptions.h" class Ewald; +class PotentialFunction; /// Calculate energy class Action_Energy: public Action { public: @@ -51,6 +52,9 @@ class Action_Energy: public Action { Ewald* EW_; ///< Ewald energy class. EwaldOptions ewaldOpts_; ///< Ewald options + PotentialFunction* potential_; ///< TODO currently just for openmm, use for everything + bool use_openmm_; ///< If true use openmm for calculating total E + double dt_; ///< Time step for estimating kinetic energy (leapfrog) bool need_lj_params_; ///< True if LJ parameters needed. bool needs_exclList_; ///< True if Excluded_ needs to be set up. diff --git a/src/PotentialFunction.cpp b/src/PotentialFunction.cpp index dda0200ebd..acb1ff5e9b 100644 --- a/src/PotentialFunction.cpp +++ b/src/PotentialFunction.cpp @@ -112,6 +112,16 @@ int PotentialFunction::CalculateForce(Frame& frameIn) { return 0; } +/** Calculate energy only for each term. */ +int PotentialFunction::CalculateEnergy(Frame const& frameIn) { + earray_.zero(); + for (Parray::const_iterator it = terms_.begin(); it != terms_.end(); ++it) + { + (*it)->CalcEnergy( frameIn, mask_ ); + } + return 0; +} + /** Print information about potential function. */ void PotentialFunction::FnInfo() const { mprintf("\t%zu terms:", terms_.size()); diff --git a/src/PotentialFunction.h b/src/PotentialFunction.h index d5157624f7..57b406e909 100644 --- a/src/PotentialFunction.h +++ b/src/PotentialFunction.h @@ -26,6 +26,8 @@ class PotentialFunction { int CalculateForce(Frame&); + int CalculateEnergy(Frame const&); + void FnInfo() const; EnergyArray const& Energy() const { return earray_; } diff --git a/src/PotentialTerm.h b/src/PotentialTerm.h index 89193b8416..d944b54947 100644 --- a/src/PotentialTerm.h +++ b/src/PotentialTerm.h @@ -18,6 +18,8 @@ class PotentialTerm { virtual int InitTerm(MdOpts const&) { return 0; } // TODO pure virtual? virtual int SetupTerm(Topology const&, Box const&, CharMask const&, EnergyArray&) = 0; virtual void CalcForce(Frame&, CharMask const&) const = 0; + // FIXME make pure virtual + virtual void CalcEnergy(Frame const&, CharMask const&) const {} /// # deg. of removed by this term virtual int RemovedDegreesOfFreedom() const { return 0; } // TODO pure virtual? diff --git a/src/PotentialTerm_OpenMM.cpp b/src/PotentialTerm_OpenMM.cpp index 29e8f1e266..a81a9e0764 100644 --- a/src/PotentialTerm_OpenMM.cpp +++ b/src/PotentialTerm_OpenMM.cpp @@ -162,10 +162,11 @@ int PotentialTerm_OpenMM::SetupTerm(Topology const& topIn, Box const& boxIn, return err; } -/** Calculate force from OpenMM */ -void PotentialTerm_OpenMM::CalcForce(Frame& frameIn, CharMask const& maskIn) const +#ifdef HAS_OPENMM +/** Update unit cell information, set positions in nm. */ +void PotentialTerm_OpenMM::set_from_frame(Frame const& frameIn, CharMask const& maskIn) +const { -# ifdef HAS_OPENMM // Update box if (frameIn.BoxCrd().HasBox()) { Matrix_3x3 ucell = frameIn.BoxCrd().UnitCell() * OpenMM::NmPerAngstrom; @@ -186,6 +187,29 @@ void PotentialTerm_OpenMM::CalcForce(Frame& frameIn, CharMask const& maskIn) con } } context_->setPositions(posInNm); +} +#endif + +/** Calculate energy from OpenMM */ +void PotentialTerm_OpenMM::CalcEnergy(Frame const& frameIn, CharMask const& maskIn) const +{ +# ifdef HAS_OPENMM + // Update box, set positions + set_from_frame(frameIn, maskIn); + // Do a single minimization step, get results + const OpenMM::State state = context_->getState(OpenMM::State::Energy, true); + // Convert to kcal/mol from kJ/mol + *ene_ = state.getPotentialEnergy() * Constants::J_TO_CAL; +# endif + return; +} + +/** Calculate force from OpenMM */ +void PotentialTerm_OpenMM::CalcForce(Frame& frameIn, CharMask const& maskIn) const +{ +# ifdef HAS_OPENMM + // Update box, set positions + set_from_frame(frameIn, maskIn); // Do a single minimization step //OpenMM::LocalEnergyMinimizer min; //min.minimize(*context_, 10.0, 1); diff --git a/src/PotentialTerm_OpenMM.h b/src/PotentialTerm_OpenMM.h index f8da477ae7..9508c70cff 100644 --- a/src/PotentialTerm_OpenMM.h +++ b/src/PotentialTerm_OpenMM.h @@ -17,11 +17,14 @@ class PotentialTerm_OpenMM : public PotentialTerm { int InitTerm(MdOpts const&); int SetupTerm(Topology const&, Box const&, CharMask const&, EnergyArray&); void CalcForce(Frame&, CharMask const&) const; + void CalcEnergy(Frame const&, CharMask const&) const; int RemovedDegreesOfFreedom() const { return n_removed_dof_; } private: # ifdef HAS_OPENMM int OpenMM_setup(Topology const&, Box const&, CharMask const&, EnergyArray&); + void set_from_frame(Frame const&, CharMask const&) const; + OpenMM::System* system_; OpenMM::Context* context_; # endif diff --git a/src/cpptrajdepend b/src/cpptrajdepend index 3942eed979..fc2b98a05b 100644 --- a/src/cpptrajdepend +++ b/src/cpptrajdepend @@ -30,7 +30,7 @@ Action_DihedralRMS.o : Action_DihedralRMS.cpp Action.h ActionState.h Action_Dihe Action_Dipole.o : Action_Dipole.cpp Action.h ActionState.h Action_Dipole.h ArgList.h ArrayIterator.h AssociatedData.h Atom.h AtomMask.h AtomType.h BaseIOtype.h Box.h CharMask.h Constants.h CoordinateInfo.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h DataSet_3D.h DataSet_Coords.h DataSet_Coords_REF.h DataSet_GridFlt.h Dimension.h DispatchObject.h FileIO.h FileName.h FileTypes.h Frame.h Grid.h GridAction.h GridBin.h MaskToken.h Matrix_3x3.h MetaData.h Molecule.h NameType.h Parallel.h ParameterHolders.h ParameterSet.h ParameterTypes.h Range.h ReferenceFrame.h ReplicaDimArray.h Residue.h Segment.h SymbolExporting.h TextFormat.h Timer.h Topology.h TypeNameHolder.h Unit.h Vec3.h Action_DistRmsd.o : Action_DistRmsd.cpp Action.h ActionState.h Action_DistRmsd.h ArgList.h AssociatedData.h Atom.h AtomMask.h AtomType.h BaseIOtype.h Box.h Constants.h CoordinateInfo.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h DataSet_Coords.h DataSet_Coords_REF.h Dimension.h DispatchObject.h FileIO.h FileName.h FileTypes.h Frame.h MaskToken.h Matrix_3x3.h MetaData.h Molecule.h NameType.h Parallel.h ParameterHolders.h ParameterSet.h ParameterTypes.h Range.h ReferenceAction.h ReferenceFrame.h ReplicaDimArray.h Residue.h Segment.h SymbolExporting.h TextFormat.h Timer.h Topology.h TypeNameHolder.h Unit.h Vec3.h Action_Distance.o : Action_Distance.cpp Action.h ActionState.h Action_Distance.h ArgList.h AssociatedData.h Atom.h AtomMask.h AtomType.h BaseIOtype.h Box.h Constants.h CoordinateInfo.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h DataSet_Coords.h DataSet_Coords_REF.h Dimension.h DispatchObject.h DistRoutines.h FileIO.h FileName.h FileTypes.h Frame.h ImageOption.h MaskToken.h Matrix_3x3.h MetaData.h Molecule.h NameType.h Parallel.h ParameterHolders.h ParameterSet.h ParameterTypes.h Range.h ReferenceFrame.h ReplicaDimArray.h Residue.h Segment.h SymbolExporting.h TextFormat.h Timer.h Topology.h TypeNameHolder.h Unit.h Vec3.h -Action_Energy.o : Action_Energy.cpp Action.h ActionState.h Action_Energy.h ArgList.h AssociatedData.h Atom.h AtomMask.h AtomType.h BaseIOtype.h Box.h CharMask.h Constants.h CoordinateInfo.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h DataSet_Coords.h DataSet_Coords_REF.h Dimension.h DispatchObject.h Energy.h Ewald.h EwaldOptions.h Ewald_ParticleMesh.h Ewald_Regular.h ExclusionArray.h FileIO.h FileName.h FileTypes.h Frame.h MaskToken.h Matrix_3x3.h MetaData.h Molecule.h NameType.h PairList.h Parallel.h ParameterHolders.h ParameterSet.h ParameterTypes.h Range.h ReferenceFrame.h ReplicaDimArray.h Residue.h Segment.h SplineFxnTable.h SymbolExporting.h TextFormat.h Timer.h Topology.h TypeNameHolder.h Unit.h Vec3.h helpme_standalone.h +Action_Energy.o : Action_Energy.cpp Action.h ActionState.h Action_Energy.h ArgList.h AssociatedData.h Atom.h AtomMask.h AtomType.h BaseIOtype.h Box.h CharMask.h Constants.h Constraints.h CoordinateInfo.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h DataSet_Coords.h DataSet_Coords_REF.h Dimension.h DispatchObject.h Energy.h EnergyArray.h Ewald.h EwaldOptions.h Ewald_ParticleMesh.h Ewald_Regular.h ExclusionArray.h FileIO.h FileName.h FileTypes.h Frame.h MaskToken.h Matrix_3x3.h MdOpts.h MetaData.h Molecule.h NameType.h PairList.h Parallel.h ParameterHolders.h ParameterSet.h ParameterTypes.h PotentialFunction.h PotentialTerm.h Range.h ReferenceFrame.h ReplicaDimArray.h Residue.h Segment.h SplineFxnTable.h SymbolExporting.h TextFormat.h Timer.h Topology.h TypeNameHolder.h Unit.h Vec3.h helpme_standalone.h Action_Esander.o : Action_Esander.cpp Action.h ActionState.h Action_Esander.h ArgList.h AssociatedData.h Atom.h AtomMask.h AtomType.h BaseIOtype.h Box.h Constants.h CoordinateInfo.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h DataSet_Coords.h DataSet_Coords_REF.h Dimension.h DispatchObject.h Energy_Sander.h FileIO.h FileName.h FileTypes.h Frame.h MaskToken.h Matrix_3x3.h MetaData.h Molecule.h NameType.h Parallel.h ParameterHolders.h ParameterSet.h ParameterTypes.h Range.h ReferenceFrame.h ReplicaDimArray.h Residue.h Segment.h SymbolExporting.h TextFormat.h Timer.h Topology.h TypeNameHolder.h Unit.h Vec3.h Action_FilterByData.o : Action_FilterByData.cpp Action.h ActionState.h Action_FilterByData.h ArgList.h AssociatedData.h Atom.h AtomMask.h AtomType.h BaseIOtype.h Box.h Constants.h CoordinateInfo.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataFilter.h DataSet.h DataSetList.h DataSet_Coords.h DataSet_Coords_REF.h Dimension.h DispatchObject.h FileIO.h FileName.h FileTypes.h Frame.h MaskToken.h Matrix_3x3.h MetaData.h Molecule.h NameType.h Parallel.h ParameterHolders.h ParameterSet.h ParameterTypes.h Range.h ReferenceFrame.h ReplicaDimArray.h Residue.h Segment.h SymbolExporting.h TextFormat.h Timer.h Topology.h TypeNameHolder.h Unit.h Vec3.h Action_FixAtomOrder.o : Action_FixAtomOrder.cpp Action.h ActionState.h ActionTopWriter.h Action_FixAtomOrder.h ArgList.h AssociatedData.h Atom.h AtomMask.h AtomTopType.h AtomType.h BaseIOtype.h Box.h CharMask.h Constants.h CoordinateInfo.h CpptrajFile.h CpptrajStdio.h DataFile.h DataFileList.h DataSet.h DataSetList.h DataSet_Coords.h DataSet_Coords_REF.h Dimension.h DispatchObject.h FileIO.h FileName.h FileTypes.h Frame.h MaskToken.h Matrix_3x3.h MetaData.h Molecule.h NameType.h Parallel.h ParameterHolders.h ParameterSet.h ParameterTypes.h Range.h ReferenceFrame.h ReplicaDimArray.h Residue.h Segment.h SymbolExporting.h TextFormat.h Timer.h Topology.h TypeNameHolder.h Unit.h Vec3.h From 8c9c83c9549952746a8d77c5b1e45b0c9ecbd1fc Mon Sep 17 00:00:00 2001 From: "Daniel R. Roe" Date: Fri, 21 Jul 2023 10:14:00 -0400 Subject: [PATCH 03/13] Reorder the terms in esander output so they match energy output for easier comparisons --- src/Energy_Sander.cpp | 5 +- src/Energy_Sander.h | 9 +- test/Test_Esander/Edpdp.dat.save | 202 ++++++++++++++--------------- test/Test_Esander/Esander.dat.save | 22 ++-- test/Test_Esander/NoWat.dat.save | 22 ++-- 5 files changed, 131 insertions(+), 129 deletions(-) diff --git a/src/Energy_Sander.cpp b/src/Energy_Sander.cpp index e86733ed15..e885768445 100644 --- a/src/Energy_Sander.cpp +++ b/src/Energy_Sander.cpp @@ -24,9 +24,10 @@ Energy_Sander::~Energy_Sander() { } const char* Energy_Sander::Estring_[] = { - "Total", "VDW", "Elec", "GB", "Bond", "Angle", "Dihedral", "VDW14", "Elec14", + "Bond", "Angle", "Dih", "VDW14", "Elec14", "VDW", "Elec", "GB", "Constraint", "Polar", "Hbond", "Surf", "Cavity", "SCF", "Dispersion", "DVDL", "Angle_UB", - "Improper", "CMap", "EMap", "LES", "NOE", "PB", "RISM", "CT", "aMD_Boost", 0 + "Improper", "CMap", "EMap", "LES", "NOE", "PB", "RISM", "CT", "aMD_Boost", "Total", + 0 }; // Energy_Sander::Easpect() diff --git a/src/Energy_Sander.h b/src/Energy_Sander.h index 64f260a114..669beae902 100644 --- a/src/Energy_Sander.h +++ b/src/Energy_Sander.h @@ -23,10 +23,11 @@ class Energy_Sander { int CalcEnergy(Frame&); /// Calculate energy for given Frame, save forces int CalcEnergyForces(Frame&); - /// Enumerate different types of energy calcd via libsander - enum Etype { TOTAL = 0, VDW, ELEC, GB, BOND, ANGLE, DIHEDRAL, VDW14, ELEC14, + /// Enumerate different types of energy calcd via libsander. Linked to Estring_ + enum Etype { BOND = 0, ANGLE, DIHEDRAL, VDW14, ELEC14, VDW, ELEC, GB, CONSTRAINT, POLAR, HBOND, SURF, CAVITY, SCF, DISP, DVDL, ANGLE_UB, - IMP, CMAP, EMAP, LES, NOE, PB, RISM, CT, AMD_BOOST, N_ENERGYTYPES }; + IMP, CMAP, EMAP, LES, NOE, PB, RISM, CT, AMD_BOOST, TOTAL, + N_ENERGYTYPES }; /// \return Value of specified energy term. double Energy(Etype) const; /// \return Pointer to specified energy term. @@ -45,7 +46,7 @@ class Energy_Sander { void SetDefaultInput(); int WriteTop(Topology const&); int CommonInit(Topology const& topIn, Frame& fIn); - + /// Strings corresponding to Etype static const char* Estring_[]; static const char* supportedNamelist_; sander_input input_; ///< Sander input options diff --git a/test/Test_Esander/Edpdp.dat.save b/test/Test_Esander/Edpdp.dat.save index 105a758534..fb247284ed 100644 --- a/test/Test_Esander/Edpdp.dat.save +++ b/test/Test_Esander/Edpdp.dat.save @@ -1,101 +1,101 @@ -#Frame DPDP[total] DPDP[vdw] DPDP[elec] DPDP[gb] DPDP[bond] DPDP[angle] DPDP[dihedral] DPDP[vdw14] DPDP[elec14] DPDP[surf] - 1 -362.4643 -115.9750 -1411.3160 -287.5523 65.3607 131.8731 137.8161 65.0756 1044.0345 8.2191 - 2 -354.7133 -120.2763 -1395.6827 -291.9428 57.7708 157.4151 132.2196 64.1154 1033.1675 8.5001 - 3 -370.7565 -125.1295 -1400.7943 -300.7252 65.6276 138.9934 132.4764 63.6082 1046.7778 8.4092 - 4 -376.7324 -117.7838 -1423.3411 -290.1824 54.0259 147.7710 128.0771 65.6641 1050.8066 8.2300 - 5 -375.7554 -124.8303 -1392.5554 -307.0641 49.4597 139.9179 129.8075 70.3971 1050.8492 8.2632 - 6 -386.0375 -118.8866 -1400.8651 -295.0492 49.2628 142.8182 138.1374 61.6022 1028.5830 8.3598 - 7 -356.8886 -117.6782 -1388.2306 -303.4668 61.8618 150.0429 127.6294 66.5359 1038.1030 8.3141 - 8 -363.6296 -125.5548 -1387.9611 -293.7736 53.1676 155.3169 137.1281 63.5159 1026.4366 8.0948 - 9 -371.4302 -120.7442 -1403.4900 -293.0892 62.9546 134.8385 133.8371 63.1068 1043.1964 7.9598 - 10 -376.8531 -126.2939 -1384.7891 -287.9323 53.8934 142.4284 138.3462 63.0387 1016.3050 8.1505 - 11 -376.3221 -121.0978 -1407.5259 -293.8726 55.3054 129.9546 127.5286 71.7840 1053.1556 8.4462 - 12 -354.6716 -114.6492 -1386.1169 -299.0632 53.4129 153.6630 134.3733 56.8265 1038.4127 8.4692 - 13 -363.8540 -124.1634 -1392.0693 -300.1360 56.2882 148.1127 133.3699 69.4499 1037.1483 8.1457 - 14 -383.0943 -130.3721 -1412.1513 -293.6105 55.8638 138.2717 130.8474 63.3417 1056.7785 7.9364 - 15 -373.0024 -127.3972 -1405.9664 -301.0056 56.0693 142.7686 129.0879 65.9910 1059.3338 8.1161 - 16 -372.2255 -121.9517 -1385.2350 -303.2308 61.3072 133.6336 136.9613 63.5579 1034.4417 8.2903 - 17 -390.8298 -126.5692 -1406.3273 -306.9232 57.0179 134.0674 131.8413 60.0611 1058.2101 7.7921 - 18 -388.4135 -129.0991 -1402.6265 -304.2855 55.1195 133.6977 128.8725 68.0979 1054.0128 7.7974 - 19 -382.3478 -126.7821 -1391.4464 -307.6631 48.6427 145.8739 136.5354 60.0096 1044.3992 8.0830 - 20 -377.9898 -123.1587 -1419.6001 -290.6263 55.8712 130.1390 145.0579 64.7638 1051.5065 8.0568 - 21 -366.9266 -126.0537 -1408.3946 -295.6529 54.6986 150.5643 135.5579 65.0243 1049.4507 7.8789 - 22 -370.3183 -126.4980 -1428.5837 -293.2419 50.9631 145.3701 135.3746 69.0404 1069.2887 7.9684 - 23 -378.2025 -117.9406 -1433.1884 -261.5259 45.6743 151.0320 129.4612 66.5696 1033.2969 8.4184 - 24 -374.9478 -124.9557 -1441.5793 -259.8646 53.7975 157.4404 128.4965 63.5865 1039.6832 8.4479 - 25 -358.4672 -130.1868 -1416.4437 -271.2092 53.6699 161.2282 135.4090 62.9472 1037.7845 8.3336 - 26 -376.0564 -121.5649 -1414.4782 -273.9034 56.8596 138.6478 123.8937 67.5998 1038.4554 8.4339 - 27 -380.6136 -115.1863 -1432.7357 -262.1217 48.1485 148.4915 120.2825 66.4896 1037.4989 8.5190 - 28 -379.3036 -117.4515 -1439.8451 -269.8482 53.4295 142.6836 123.6364 70.5412 1049.4299 8.1205 - 29 -366.0312 -121.7265 -1437.9017 -262.1843 55.5181 159.9433 130.4472 65.3908 1036.0575 8.4245 - 30 -363.4711 -114.1851 -1428.8274 -268.0293 56.9507 148.2727 136.9640 64.5306 1032.2292 8.6235 - 31 -370.3763 -118.3613 -1407.1001 -291.2862 55.2426 152.7345 129.6734 61.4624 1038.9035 8.3549 - 32 -364.5201 -119.2168 -1407.0315 -286.0545 68.8036 139.0309 135.8712 60.5774 1035.1132 8.3865 - 33 -370.2562 -107.2154 -1447.7751 -256.9025 55.0902 157.2314 128.2379 63.1669 1029.2673 8.6432 - 34 -367.0764 -123.2517 -1421.7993 -268.3559 60.3024 145.9796 128.7138 62.6577 1040.1395 8.5376 - 35 -376.4465 -117.3351 -1428.1273 -263.3880 64.4013 137.0067 131.2024 64.1728 1027.2545 8.3662 - 36 -378.5088 -114.9366 -1409.9118 -287.7266 57.5792 139.0553 121.2059 64.5424 1043.3918 8.2918 - 37 -362.1689 -120.7328 -1411.9065 -275.9779 43.2342 163.2659 129.3471 66.9988 1035.3904 8.2119 - 38 -394.0615 -117.5483 -1417.8981 -271.5389 56.3010 136.3248 125.5547 61.3369 1025.0299 8.3765 - 39 -368.3368 -117.2665 -1432.1797 -259.4943 54.6186 146.0676 133.9473 68.1487 1029.6384 8.1830 - 40 -370.9152 -111.1429 -1447.2186 -264.9556 51.5722 148.2079 123.7549 66.5018 1054.1245 8.2407 - 41 -387.0502 -117.3817 -1416.4135 -275.2917 50.6889 129.3059 130.2035 67.1367 1036.6142 8.0876 - 42 -393.4039 -122.7493 -1434.6676 -265.1529 52.6693 136.8790 125.7700 61.3937 1044.4173 8.0366 - 43 -375.3078 -121.4760 -1423.8903 -271.5170 59.3284 141.0120 127.7331 64.0905 1041.2125 8.1990 - 44 -378.4484 -116.5651 -1413.1831 -278.9913 64.1477 132.7412 123.9140 60.6160 1040.2589 8.6132 - 45 -373.9150 -119.1632 -1433.7433 -260.3203 62.9612 145.2352 127.9352 63.8549 1031.1785 8.1467 - 46 -368.7802 -114.2412 -1413.6225 -267.5115 50.8784 148.1046 131.7764 68.9012 1018.4316 8.5029 - 47 -378.1142 -113.9798 -1406.9894 -273.1535 48.9750 140.1283 135.6558 66.3180 1016.3728 8.5585 - 48 -372.0898 -106.8784 -1416.3356 -273.8235 55.7936 146.5386 126.8880 65.4379 1022.0638 8.2258 - 49 -382.4588 -117.5285 -1431.2281 -270.2789 52.1743 148.1726 119.9993 63.9993 1043.7726 8.4587 - 50 -374.3804 -123.7341 -1418.3191 -273.0608 50.8669 145.3822 130.6027 70.6206 1034.9376 8.3235 - 51 -382.2494 -124.1527 -1439.5630 -264.0175 50.7098 148.7767 131.4128 65.1048 1041.4194 8.0603 - 52 -376.1025 -116.9890 -1426.8094 -262.9400 48.9503 141.1495 126.8933 70.1105 1035.5437 7.9886 - 53 -380.0230 -118.2068 -1421.9356 -271.1504 66.0352 135.9233 126.4001 62.1707 1032.3043 8.4362 - 54 -377.2588 -116.1368 -1450.8169 -257.3253 58.2409 140.4208 123.6185 63.4404 1052.7573 8.5423 - 55 -389.5909 -114.5950 -1422.0678 -258.0208 45.7256 133.9326 124.8075 63.3846 1028.8358 8.4066 - 56 -373.0907 -116.2242 -1409.4890 -268.7254 45.0232 152.7312 132.2321 61.7975 1021.1887 8.3752 - 57 -385.5173 -116.3758 -1410.9071 -273.1435 61.5508 128.6400 129.2220 60.6586 1026.4236 8.4140 - 58 -371.9563 -117.4617 -1415.7348 -282.0899 51.5881 148.8700 131.3776 65.5367 1038.1315 7.8262 - 59 -355.0733 -112.4652 -1448.5702 -256.2883 52.1066 145.8017 129.3593 75.7320 1051.0321 8.2188 - 60 -391.1765 -125.0242 -1458.3839 -253.6395 47.0066 146.5450 130.8925 67.0668 1046.3681 7.9921 - 61 -368.0869 -123.1316 -1464.0444 -252.2451 52.8233 153.9279 131.7322 72.8346 1052.1832 7.8330 - 62 -368.3626 -123.7191 -1455.7643 -248.6275 62.8354 148.7573 130.2542 68.3631 1041.4865 8.0518 - 63 -380.1849 -115.9329 -1472.2848 -257.1716 51.3219 138.1288 140.7623 66.9722 1060.0673 7.9519 - 64 -363.6933 -122.5901 -1453.1786 -257.3609 59.8338 161.8989 129.0898 67.2989 1043.0931 8.2217 - 65 -368.4548 -115.3097 -1416.5832 -267.0532 60.8597 132.6889 138.9629 62.9829 1026.5155 8.4812 - 66 -352.0178 -113.6297 -1402.5460 -280.2801 58.1670 161.1825 132.5889 62.2109 1021.8496 8.4393 - 67 -363.2221 -122.9298 -1441.3248 -270.4562 61.8273 152.2172 129.6724 67.4160 1051.9976 8.3580 - 68 -367.5860 -121.0232 -1454.7442 -262.6632 51.4962 154.6757 133.5684 70.3259 1052.4616 8.3168 - 69 -357.8827 -121.9480 -1410.4928 -271.5078 57.7934 155.7785 128.4284 66.8225 1028.8313 8.4117 - 70 -367.8356 -109.5185 -1421.5308 -272.5254 52.8359 155.8594 129.5950 63.6450 1025.2439 8.5599 - 71 -366.0618 -118.9269 -1439.8751 -261.0163 55.4747 155.6609 133.4205 67.2478 1033.7277 8.2249 - 72 -389.4186 -117.7716 -1464.0601 -261.1231 49.8372 140.3799 133.5556 70.0932 1051.7516 7.9187 - 73 -363.8590 -113.0715 -1463.5413 -253.7205 54.5397 165.1839 134.3611 67.7878 1036.6233 7.9785 - 74 -374.6770 -114.9592 -1452.8439 -256.3253 54.8214 141.0952 136.9512 71.7555 1036.5729 8.2552 - 75 -367.2931 -111.1491 -1415.5370 -264.8998 51.5715 140.0358 140.0528 61.8973 1022.1398 8.5956 - 76 -367.3162 -118.7760 -1415.7138 -274.7721 54.3608 149.2484 133.7374 61.4951 1034.5136 8.5903 - 77 -358.7523 -118.9986 -1402.6975 -270.8033 54.3523 149.7298 132.1509 69.2076 1019.4421 8.8644 - 78 -377.0844 -110.4151 -1438.5668 -273.1425 58.5123 127.5527 128.4062 67.3295 1054.4361 8.8033 - 79 -355.6102 -116.0379 -1401.2530 -283.4225 54.3895 150.9465 128.6645 66.6828 1035.5120 8.9079 - 80 -361.7800 -121.9232 -1420.3024 -269.7711 59.6984 139.0770 128.1482 71.4438 1043.1037 8.7455 - 81 -370.6686 -119.5903 -1469.9454 -248.3223 45.5449 151.0672 141.1353 70.0242 1051.4878 7.9300 - 82 -372.5900 -117.4761 -1470.8420 -247.4308 53.9646 148.9218 137.5275 63.9726 1050.8411 7.9313 - 83 -380.4700 -117.8260 -1466.0470 -255.9645 53.5226 142.6006 128.7139 67.1750 1059.6078 7.7476 - 84 -377.9793 -120.0374 -1469.8117 -249.9507 60.0146 141.6374 135.9863 64.9176 1051.4315 7.8332 - 85 -367.1218 -117.0585 -1429.4364 -267.7536 55.8165 133.8010 128.1641 72.1625 1048.6404 8.5422 - 86 -380.0461 -122.4332 -1423.4387 -277.1170 53.9440 134.6349 125.4270 66.8982 1054.1378 7.9008 - 87 -370.5684 -118.4841 -1429.4130 -264.9334 55.1776 152.8731 130.1709 61.6216 1033.9393 8.4795 - 88 -381.2341 -121.6610 -1435.7617 -272.5491 45.1885 141.0867 133.1488 62.9821 1057.9098 8.4217 - 89 -371.3474 -121.5331 -1432.4442 -260.8950 61.9128 148.1307 126.5855 65.9900 1032.6615 8.2444 - 90 -363.0489 -124.5014 -1446.9778 -265.4388 58.5486 143.4168 137.8979 63.0533 1062.6902 8.2623 - 91 -373.6656 -120.8279 -1419.8704 -289.8998 56.7858 137.8859 142.2930 66.6924 1044.8802 8.3952 - 92 -360.7605 -111.8257 -1420.3826 -282.0560 52.8064 155.7915 139.1678 61.8681 1035.3877 8.4822 - 93 -379.0545 -122.0914 -1455.7467 -264.3086 46.5512 150.4214 130.0005 66.5813 1061.4933 8.0445 - 94 -370.7147 -120.2698 -1434.5957 -265.1000 66.7132 142.4756 125.9836 61.8797 1043.9843 8.2144 - 95 -382.0758 -119.3685 -1442.8550 -262.4411 50.3559 143.6346 135.3945 65.0683 1039.7894 8.3461 - 96 -369.5503 -116.6821 -1451.2536 -262.5810 58.0142 138.3254 135.6859 69.4420 1051.1832 8.3156 - 97 -380.6129 -117.9805 -1452.5876 -271.3628 49.1514 139.9584 133.2247 69.3901 1061.3456 8.2479 - 98 -378.5077 -116.2311 -1448.1226 -262.5902 46.4559 145.6981 132.6970 66.3574 1049.0884 8.1394 - 99 -381.9224 -107.6384 -1418.5997 -284.4703 63.7698 129.1249 126.9622 60.8390 1040.0153 8.0748 - 100 -383.6505 -115.2943 -1436.1385 -274.2312 57.1866 132.5138 128.6483 65.1466 1050.2714 8.2469 +#Frame DPDP[bond] DPDP[angle] DPDP[dih] DPDP[vdw14] DPDP[elec14] DPDP[vdw] DPDP[elec] DPDP[gb] DPDP[surf] DPDP[total] + 1 65.3607 131.8731 137.8161 65.0756 1044.0345 -115.9750 -1411.3160 -287.5523 8.2191 -362.4643 + 2 57.7708 157.4151 132.2196 64.1154 1033.1675 -120.2763 -1395.6827 -291.9428 8.5001 -354.7133 + 3 65.6276 138.9934 132.4764 63.6082 1046.7778 -125.1295 -1400.7943 -300.7252 8.4092 -370.7565 + 4 54.0259 147.7710 128.0771 65.6641 1050.8066 -117.7838 -1423.3411 -290.1824 8.2300 -376.7324 + 5 49.4597 139.9179 129.8075 70.3971 1050.8492 -124.8303 -1392.5554 -307.0641 8.2632 -375.7554 + 6 49.2628 142.8182 138.1374 61.6022 1028.5830 -118.8866 -1400.8651 -295.0492 8.3598 -386.0375 + 7 61.8618 150.0429 127.6294 66.5359 1038.1030 -117.6782 -1388.2306 -303.4668 8.3141 -356.8886 + 8 53.1676 155.3169 137.1281 63.5159 1026.4366 -125.5548 -1387.9611 -293.7736 8.0948 -363.6296 + 9 62.9546 134.8385 133.8371 63.1068 1043.1964 -120.7442 -1403.4900 -293.0892 7.9598 -371.4302 + 10 53.8934 142.4284 138.3462 63.0387 1016.3050 -126.2939 -1384.7891 -287.9323 8.1505 -376.8531 + 11 55.3054 129.9546 127.5286 71.7840 1053.1556 -121.0978 -1407.5259 -293.8726 8.4462 -376.3221 + 12 53.4129 153.6630 134.3733 56.8265 1038.4127 -114.6492 -1386.1169 -299.0632 8.4692 -354.6716 + 13 56.2882 148.1127 133.3699 69.4499 1037.1483 -124.1634 -1392.0693 -300.1360 8.1457 -363.8540 + 14 55.8638 138.2717 130.8474 63.3417 1056.7785 -130.3721 -1412.1513 -293.6105 7.9364 -383.0943 + 15 56.0693 142.7686 129.0879 65.9910 1059.3338 -127.3972 -1405.9664 -301.0056 8.1161 -373.0024 + 16 61.3072 133.6336 136.9613 63.5579 1034.4417 -121.9517 -1385.2350 -303.2308 8.2903 -372.2255 + 17 57.0179 134.0674 131.8413 60.0611 1058.2101 -126.5692 -1406.3273 -306.9232 7.7921 -390.8298 + 18 55.1195 133.6977 128.8725 68.0979 1054.0128 -129.0991 -1402.6265 -304.2855 7.7974 -388.4135 + 19 48.6427 145.8739 136.5354 60.0096 1044.3992 -126.7821 -1391.4464 -307.6631 8.0830 -382.3478 + 20 55.8712 130.1390 145.0579 64.7638 1051.5065 -123.1587 -1419.6001 -290.6263 8.0568 -377.9898 + 21 54.6986 150.5643 135.5579 65.0243 1049.4507 -126.0537 -1408.3946 -295.6529 7.8789 -366.9266 + 22 50.9631 145.3701 135.3746 69.0404 1069.2887 -126.4980 -1428.5837 -293.2419 7.9684 -370.3183 + 23 45.6743 151.0320 129.4612 66.5696 1033.2969 -117.9406 -1433.1884 -261.5259 8.4184 -378.2025 + 24 53.7975 157.4404 128.4965 63.5865 1039.6832 -124.9557 -1441.5793 -259.8646 8.4479 -374.9478 + 25 53.6699 161.2282 135.4090 62.9472 1037.7845 -130.1868 -1416.4437 -271.2092 8.3336 -358.4672 + 26 56.8596 138.6478 123.8937 67.5998 1038.4554 -121.5649 -1414.4782 -273.9034 8.4339 -376.0564 + 27 48.1485 148.4915 120.2825 66.4896 1037.4989 -115.1863 -1432.7357 -262.1217 8.5190 -380.6136 + 28 53.4295 142.6836 123.6364 70.5412 1049.4299 -117.4515 -1439.8451 -269.8482 8.1205 -379.3036 + 29 55.5181 159.9433 130.4472 65.3908 1036.0575 -121.7265 -1437.9017 -262.1843 8.4245 -366.0312 + 30 56.9507 148.2727 136.9640 64.5306 1032.2292 -114.1851 -1428.8274 -268.0293 8.6235 -363.4711 + 31 55.2426 152.7345 129.6734 61.4624 1038.9035 -118.3613 -1407.1001 -291.2862 8.3549 -370.3763 + 32 68.8036 139.0309 135.8712 60.5774 1035.1132 -119.2168 -1407.0315 -286.0545 8.3865 -364.5201 + 33 55.0902 157.2314 128.2379 63.1669 1029.2673 -107.2154 -1447.7751 -256.9025 8.6432 -370.2562 + 34 60.3024 145.9796 128.7138 62.6577 1040.1395 -123.2517 -1421.7993 -268.3559 8.5376 -367.0764 + 35 64.4013 137.0067 131.2024 64.1728 1027.2545 -117.3351 -1428.1273 -263.3880 8.3662 -376.4465 + 36 57.5792 139.0553 121.2059 64.5424 1043.3918 -114.9366 -1409.9118 -287.7266 8.2918 -378.5088 + 37 43.2342 163.2659 129.3471 66.9988 1035.3904 -120.7328 -1411.9065 -275.9779 8.2119 -362.1689 + 38 56.3010 136.3248 125.5547 61.3369 1025.0299 -117.5483 -1417.8981 -271.5389 8.3765 -394.0615 + 39 54.6186 146.0676 133.9473 68.1487 1029.6384 -117.2665 -1432.1797 -259.4943 8.1830 -368.3368 + 40 51.5722 148.2079 123.7549 66.5018 1054.1245 -111.1429 -1447.2186 -264.9556 8.2407 -370.9152 + 41 50.6889 129.3059 130.2035 67.1367 1036.6142 -117.3817 -1416.4135 -275.2917 8.0876 -387.0502 + 42 52.6693 136.8790 125.7700 61.3937 1044.4173 -122.7493 -1434.6676 -265.1529 8.0366 -393.4039 + 43 59.3284 141.0120 127.7331 64.0905 1041.2125 -121.4760 -1423.8903 -271.5170 8.1990 -375.3078 + 44 64.1477 132.7412 123.9140 60.6160 1040.2589 -116.5651 -1413.1831 -278.9913 8.6132 -378.4484 + 45 62.9612 145.2352 127.9352 63.8549 1031.1785 -119.1632 -1433.7433 -260.3203 8.1467 -373.9150 + 46 50.8784 148.1046 131.7764 68.9012 1018.4316 -114.2412 -1413.6225 -267.5115 8.5029 -368.7802 + 47 48.9750 140.1283 135.6558 66.3180 1016.3728 -113.9798 -1406.9894 -273.1535 8.5585 -378.1142 + 48 55.7936 146.5386 126.8880 65.4379 1022.0638 -106.8784 -1416.3356 -273.8235 8.2258 -372.0898 + 49 52.1743 148.1726 119.9993 63.9993 1043.7726 -117.5285 -1431.2281 -270.2789 8.4587 -382.4588 + 50 50.8669 145.3822 130.6027 70.6206 1034.9376 -123.7341 -1418.3191 -273.0608 8.3235 -374.3804 + 51 50.7098 148.7767 131.4128 65.1048 1041.4194 -124.1527 -1439.5630 -264.0175 8.0603 -382.2494 + 52 48.9503 141.1495 126.8933 70.1105 1035.5437 -116.9890 -1426.8094 -262.9400 7.9886 -376.1025 + 53 66.0352 135.9233 126.4001 62.1707 1032.3043 -118.2068 -1421.9356 -271.1504 8.4362 -380.0230 + 54 58.2409 140.4208 123.6185 63.4404 1052.7573 -116.1368 -1450.8169 -257.3253 8.5423 -377.2588 + 55 45.7256 133.9326 124.8075 63.3846 1028.8358 -114.5950 -1422.0678 -258.0208 8.4066 -389.5909 + 56 45.0232 152.7312 132.2321 61.7975 1021.1887 -116.2242 -1409.4890 -268.7254 8.3752 -373.0907 + 57 61.5508 128.6400 129.2220 60.6586 1026.4236 -116.3758 -1410.9071 -273.1435 8.4140 -385.5173 + 58 51.5881 148.8700 131.3776 65.5367 1038.1315 -117.4617 -1415.7348 -282.0899 7.8262 -371.9563 + 59 52.1066 145.8017 129.3593 75.7320 1051.0321 -112.4652 -1448.5702 -256.2883 8.2188 -355.0733 + 60 47.0066 146.5450 130.8925 67.0668 1046.3681 -125.0242 -1458.3839 -253.6395 7.9921 -391.1765 + 61 52.8233 153.9279 131.7322 72.8346 1052.1832 -123.1316 -1464.0444 -252.2451 7.8330 -368.0869 + 62 62.8354 148.7573 130.2542 68.3631 1041.4865 -123.7191 -1455.7643 -248.6275 8.0518 -368.3626 + 63 51.3219 138.1288 140.7623 66.9722 1060.0673 -115.9329 -1472.2848 -257.1716 7.9519 -380.1849 + 64 59.8338 161.8989 129.0898 67.2989 1043.0931 -122.5901 -1453.1786 -257.3609 8.2217 -363.6933 + 65 60.8597 132.6889 138.9629 62.9829 1026.5155 -115.3097 -1416.5832 -267.0532 8.4812 -368.4548 + 66 58.1670 161.1825 132.5889 62.2109 1021.8496 -113.6297 -1402.5460 -280.2801 8.4393 -352.0178 + 67 61.8273 152.2172 129.6724 67.4160 1051.9976 -122.9298 -1441.3248 -270.4562 8.3580 -363.2221 + 68 51.4962 154.6757 133.5684 70.3259 1052.4616 -121.0232 -1454.7442 -262.6632 8.3168 -367.5860 + 69 57.7934 155.7785 128.4284 66.8225 1028.8313 -121.9480 -1410.4928 -271.5078 8.4117 -357.8827 + 70 52.8359 155.8594 129.5950 63.6450 1025.2439 -109.5185 -1421.5308 -272.5254 8.5599 -367.8356 + 71 55.4747 155.6609 133.4205 67.2478 1033.7277 -118.9269 -1439.8751 -261.0163 8.2249 -366.0618 + 72 49.8372 140.3799 133.5556 70.0932 1051.7516 -117.7716 -1464.0601 -261.1231 7.9187 -389.4186 + 73 54.5397 165.1839 134.3611 67.7878 1036.6233 -113.0715 -1463.5413 -253.7205 7.9785 -363.8590 + 74 54.8214 141.0952 136.9512 71.7555 1036.5729 -114.9592 -1452.8439 -256.3253 8.2552 -374.6770 + 75 51.5715 140.0358 140.0528 61.8973 1022.1398 -111.1491 -1415.5370 -264.8998 8.5956 -367.2931 + 76 54.3608 149.2484 133.7374 61.4951 1034.5136 -118.7760 -1415.7138 -274.7721 8.5903 -367.3162 + 77 54.3523 149.7298 132.1509 69.2076 1019.4421 -118.9986 -1402.6975 -270.8033 8.8644 -358.7523 + 78 58.5123 127.5527 128.4062 67.3295 1054.4361 -110.4151 -1438.5668 -273.1425 8.8033 -377.0844 + 79 54.3895 150.9465 128.6645 66.6828 1035.5120 -116.0379 -1401.2530 -283.4225 8.9079 -355.6102 + 80 59.6984 139.0770 128.1482 71.4438 1043.1037 -121.9232 -1420.3024 -269.7711 8.7455 -361.7800 + 81 45.5449 151.0672 141.1353 70.0242 1051.4878 -119.5903 -1469.9454 -248.3223 7.9300 -370.6686 + 82 53.9646 148.9218 137.5275 63.9726 1050.8411 -117.4761 -1470.8420 -247.4308 7.9313 -372.5900 + 83 53.5226 142.6006 128.7139 67.1750 1059.6078 -117.8260 -1466.0470 -255.9645 7.7476 -380.4700 + 84 60.0146 141.6374 135.9863 64.9176 1051.4315 -120.0374 -1469.8117 -249.9507 7.8332 -377.9793 + 85 55.8165 133.8010 128.1641 72.1625 1048.6404 -117.0585 -1429.4364 -267.7536 8.5422 -367.1218 + 86 53.9440 134.6349 125.4270 66.8982 1054.1378 -122.4332 -1423.4387 -277.1170 7.9008 -380.0461 + 87 55.1776 152.8731 130.1709 61.6216 1033.9393 -118.4841 -1429.4130 -264.9334 8.4795 -370.5684 + 88 45.1885 141.0867 133.1488 62.9821 1057.9098 -121.6610 -1435.7617 -272.5491 8.4217 -381.2341 + 89 61.9128 148.1307 126.5855 65.9900 1032.6615 -121.5331 -1432.4442 -260.8950 8.2444 -371.3474 + 90 58.5486 143.4168 137.8979 63.0533 1062.6902 -124.5014 -1446.9778 -265.4388 8.2623 -363.0489 + 91 56.7858 137.8859 142.2930 66.6924 1044.8802 -120.8279 -1419.8704 -289.8998 8.3952 -373.6656 + 92 52.8064 155.7915 139.1678 61.8681 1035.3877 -111.8257 -1420.3826 -282.0560 8.4822 -360.7605 + 93 46.5512 150.4214 130.0005 66.5813 1061.4933 -122.0914 -1455.7467 -264.3086 8.0445 -379.0545 + 94 66.7132 142.4756 125.9836 61.8797 1043.9843 -120.2698 -1434.5957 -265.1000 8.2144 -370.7147 + 95 50.3559 143.6346 135.3945 65.0683 1039.7894 -119.3685 -1442.8550 -262.4411 8.3461 -382.0758 + 96 58.0142 138.3254 135.6859 69.4420 1051.1832 -116.6821 -1451.2536 -262.5810 8.3156 -369.5503 + 97 49.1514 139.9584 133.2247 69.3901 1061.3456 -117.9805 -1452.5876 -271.3628 8.2479 -380.6129 + 98 46.4559 145.6981 132.6970 66.3574 1049.0884 -116.2311 -1448.1226 -262.5902 8.1394 -378.5077 + 99 63.7698 129.1249 126.9622 60.8390 1040.0153 -107.6384 -1418.5997 -284.4703 8.0748 -381.9224 + 100 57.1866 132.5138 128.6483 65.1466 1050.2714 -115.2943 -1436.1385 -274.2312 8.2469 -383.6505 diff --git a/test/Test_Esander/Esander.dat.save b/test/Test_Esander/Esander.dat.save index 1489386b9e..83575c206b 100644 --- a/test/Test_Esander/Esander.dat.save +++ b/test/Test_Esander/Esander.dat.save @@ -1,11 +1,11 @@ -#Frame S[total] S[vdw] S[elec] S[bond] S[angle] S[dihedral] S[vdw14] S[elec14] - 1 -18095.5918 2502.5936 -21563.5670 35.4705 93.3672 123.6395 46.9354 665.9690 - 2 -18032.9144 2455.6270 -21457.2687 47.5936 101.2947 125.3715 38.6891 655.7783 - 3 -18096.0464 2518.4931 -21591.4285 41.2026 111.4593 137.7342 43.2846 643.2083 - 4 -18111.8468 2526.1098 -21606.9431 44.1614 96.1412 128.5231 45.6698 654.4909 - 5 -18123.5386 2570.6484 -21667.5373 41.4961 105.7385 123.7398 44.6249 657.7510 - 6 -18159.2879 2533.3752 -21652.2187 37.8556 97.2202 126.4595 44.7027 653.3176 - 7 -18218.3013 2572.0340 -21749.7182 45.6627 101.9210 119.0334 41.7585 651.0073 - 8 -18176.6228 2561.9607 -21684.0738 35.2119 97.3884 121.5698 45.7198 645.6003 - 9 -18193.0210 2456.2484 -21601.3183 41.3678 80.6073 123.6050 45.8977 660.5711 - 10 -18142.4598 2491.7149 -21622.6568 43.8534 114.4428 127.4284 44.5121 658.2454 +#Frame S[bond] S[angle] S[dih] S[vdw14] S[elec14] S[vdw] S[elec] S[total] + 1 35.4705 93.3672 123.6395 46.9354 665.9690 2502.5936 -21563.5670 -18095.5918 + 2 47.5936 101.2947 125.3715 38.6891 655.7783 2455.6270 -21457.2687 -18032.9144 + 3 41.2026 111.4593 137.7342 43.2846 643.2083 2518.4931 -21591.4285 -18096.0464 + 4 44.1614 96.1412 128.5231 45.6698 654.4909 2526.1098 -21606.9431 -18111.8468 + 5 41.4961 105.7385 123.7398 44.6249 657.7510 2570.6484 -21667.5373 -18123.5386 + 6 37.8556 97.2202 126.4595 44.7027 653.3176 2533.3752 -21652.2187 -18159.2879 + 7 45.6627 101.9210 119.0334 41.7585 651.0073 2572.0340 -21749.7182 -18218.3013 + 8 35.2119 97.3884 121.5698 45.7198 645.6003 2561.9607 -21684.0738 -18176.6228 + 9 41.3678 80.6073 123.6050 45.8977 660.5711 2456.2484 -21601.3183 -18193.0210 + 10 43.8534 114.4428 127.4284 44.5121 658.2454 2491.7149 -21622.6568 -18142.4598 diff --git a/test/Test_Esander/NoWat.dat.save b/test/Test_Esander/NoWat.dat.save index ba1ef6ebe3..88fd377ff5 100644 --- a/test/Test_Esander/NoWat.dat.save +++ b/test/Test_Esander/NoWat.dat.save @@ -1,11 +1,11 @@ -#Frame NoWat[total] NoWat[vdw] NoWat[elec] NoWat[bond] NoWat[angle] NoWat[dihedral] NoWat[vdw14] NoWat[elec14] - 1 -33.9779 -79.8200 -919.5394 35.4705 93.3672 123.6395 46.9354 665.9690 - 2 -51.8034 -77.8711 -942.6597 47.5936 101.2947 125.3715 38.6891 655.7783 - 3 -22.2898 -82.0099 -917.1689 41.2026 111.4593 137.7342 43.2846 643.2083 - 4 -26.5052 -75.2261 -920.2656 44.1614 96.1412 128.5231 45.6698 654.4909 - 5 -27.7860 -76.6299 -924.5064 41.4961 105.7385 123.7398 44.6249 657.7510 - 6 -33.3532 -72.6688 -920.2399 37.8556 97.2202 126.4595 44.7027 653.3176 - 7 -44.5074 -74.0024 -929.8879 45.6627 101.9210 119.0334 41.7585 651.0073 - 8 -37.3249 -77.5298 -905.2854 35.2119 97.3884 121.5698 45.7198 645.6003 - 9 -59.8131 -78.5001 -933.3620 41.3678 80.6073 123.6050 45.8977 660.5711 - 10 -22.9459 -72.4914 -938.9367 43.8534 114.4428 127.4284 44.5121 658.2454 +#Frame NoWat[bond] NoWat[angle] NoWat[dih] NoWat[vdw14] NoWat[elec14] NoWat[vdw] NoWat[elec] NoWat[total] + 1 35.4705 93.3672 123.6395 46.9354 665.9690 -79.8200 -919.5394 -33.9779 + 2 47.5936 101.2947 125.3715 38.6891 655.7783 -77.8711 -942.6597 -51.8034 + 3 41.2026 111.4593 137.7342 43.2846 643.2083 -82.0099 -917.1689 -22.2898 + 4 44.1614 96.1412 128.5231 45.6698 654.4909 -75.2261 -920.2656 -26.5052 + 5 41.4961 105.7385 123.7398 44.6249 657.7510 -76.6299 -924.5064 -27.7860 + 6 37.8556 97.2202 126.4595 44.7027 653.3176 -72.6688 -920.2399 -33.3532 + 7 45.6627 101.9210 119.0334 41.7585 651.0073 -74.0024 -929.8879 -44.5074 + 8 35.2119 97.3884 121.5698 45.7198 645.6003 -77.5298 -905.2854 -37.3249 + 9 41.3678 80.6073 123.6050 45.8977 660.5711 -78.5001 -933.3620 -59.8131 + 10 43.8534 114.4428 127.4284 44.5121 658.2454 -72.4914 -938.9367 -22.9459 From dea7dc671433807992a0c3bc4b6fee600f63568a Mon Sep 17 00:00:00 2001 From: "Daniel R. Roe" Date: Fri, 21 Jul 2023 11:05:59 -0400 Subject: [PATCH 04/13] Put the new esander term ordering behind CPPTRAJ_ESANDER_ENERGY_ORDER define for better backwards compatibility. --- src/Energy_Sander.cpp | 10 + src/Energy_Sander.h | 8 + test/Test_Esander/Edpdp.dat.save | 202 ++++++++++---------- test/Test_Esander/Esander.dat.save | 22 +-- test/Test_Esander/NoWat.dat.save | 22 +-- test/Test_Esander/neworder.Edpdp.dat.save | 101 ++++++++++ test/Test_Esander/neworder.Esander.dat.save | 11 ++ test/Test_Esander/neworder.NoWat.dat.save | 11 ++ 8 files changed, 264 insertions(+), 123 deletions(-) create mode 100644 test/Test_Esander/neworder.Edpdp.dat.save create mode 100644 test/Test_Esander/neworder.Esander.dat.save create mode 100644 test/Test_Esander/neworder.NoWat.dat.save diff --git a/src/Energy_Sander.cpp b/src/Energy_Sander.cpp index e885768445..6e0d536744 100644 --- a/src/Energy_Sander.cpp +++ b/src/Energy_Sander.cpp @@ -23,12 +23,22 @@ Energy_Sander::~Energy_Sander() { File::FreeTempName( top_filename_ ); } +#ifdef CPPTRAJ_ESANDER_ENERGY_ORDER +// This term ordering corresponds to what is used in the 'energy' action const char* Energy_Sander::Estring_[] = { "Bond", "Angle", "Dih", "VDW14", "Elec14", "VDW", "Elec", "GB", "Constraint", "Polar", "Hbond", "Surf", "Cavity", "SCF", "Dispersion", "DVDL", "Angle_UB", "Improper", "CMap", "EMap", "LES", "NOE", "PB", "RISM", "CT", "aMD_Boost", "Total", 0 }; +#else +// This is the original term ordering +const char* Energy_Sander::Estring_[] = { + "Total", "VDW", "Elec", "GB", "Bond", "Angle", "Dihedral", "VDW14", "Elec14", + "Constraint", "Polar", "Hbond", "Surf", "Cavity", "SCF", "Dispersion", "DVDL", "Angle_UB", + "Improper", "CMap", "EMap", "LES", "NOE", "PB", "RISM", "CT", "aMD_Boost", 0 +}; +#endif // Energy_Sander::Easpect() std::string Energy_Sander::Easpect(Etype typeIn) { diff --git a/src/Energy_Sander.h b/src/Energy_Sander.h index 669beae902..07a43deb1d 100644 --- a/src/Energy_Sander.h +++ b/src/Energy_Sander.h @@ -24,10 +24,18 @@ class Energy_Sander { /// Calculate energy for given Frame, save forces int CalcEnergyForces(Frame&); /// Enumerate different types of energy calcd via libsander. Linked to Estring_ +# ifdef CPPTRAJ_ESANDER_ENERGY_ORDER + // This term ordering corresponds to what is used in the 'energy' action enum Etype { BOND = 0, ANGLE, DIHEDRAL, VDW14, ELEC14, VDW, ELEC, GB, CONSTRAINT, POLAR, HBOND, SURF, CAVITY, SCF, DISP, DVDL, ANGLE_UB, IMP, CMAP, EMAP, LES, NOE, PB, RISM, CT, AMD_BOOST, TOTAL, N_ENERGYTYPES }; +# else + // This is the original term ordering + enum Etype { TOTAL = 0, VDW, ELEC, GB, BOND, ANGLE, DIHEDRAL, VDW14, ELEC14, + CONSTRAINT, POLAR, HBOND, SURF, CAVITY, SCF, DISP, DVDL, ANGLE_UB, + IMP, CMAP, EMAP, LES, NOE, PB, RISM, CT, AMD_BOOST, N_ENERGYTYPES }; +# endif /// \return Value of specified energy term. double Energy(Etype) const; /// \return Pointer to specified energy term. diff --git a/test/Test_Esander/Edpdp.dat.save b/test/Test_Esander/Edpdp.dat.save index fb247284ed..105a758534 100644 --- a/test/Test_Esander/Edpdp.dat.save +++ b/test/Test_Esander/Edpdp.dat.save @@ -1,101 +1,101 @@ -#Frame DPDP[bond] DPDP[angle] DPDP[dih] DPDP[vdw14] DPDP[elec14] DPDP[vdw] DPDP[elec] DPDP[gb] DPDP[surf] DPDP[total] - 1 65.3607 131.8731 137.8161 65.0756 1044.0345 -115.9750 -1411.3160 -287.5523 8.2191 -362.4643 - 2 57.7708 157.4151 132.2196 64.1154 1033.1675 -120.2763 -1395.6827 -291.9428 8.5001 -354.7133 - 3 65.6276 138.9934 132.4764 63.6082 1046.7778 -125.1295 -1400.7943 -300.7252 8.4092 -370.7565 - 4 54.0259 147.7710 128.0771 65.6641 1050.8066 -117.7838 -1423.3411 -290.1824 8.2300 -376.7324 - 5 49.4597 139.9179 129.8075 70.3971 1050.8492 -124.8303 -1392.5554 -307.0641 8.2632 -375.7554 - 6 49.2628 142.8182 138.1374 61.6022 1028.5830 -118.8866 -1400.8651 -295.0492 8.3598 -386.0375 - 7 61.8618 150.0429 127.6294 66.5359 1038.1030 -117.6782 -1388.2306 -303.4668 8.3141 -356.8886 - 8 53.1676 155.3169 137.1281 63.5159 1026.4366 -125.5548 -1387.9611 -293.7736 8.0948 -363.6296 - 9 62.9546 134.8385 133.8371 63.1068 1043.1964 -120.7442 -1403.4900 -293.0892 7.9598 -371.4302 - 10 53.8934 142.4284 138.3462 63.0387 1016.3050 -126.2939 -1384.7891 -287.9323 8.1505 -376.8531 - 11 55.3054 129.9546 127.5286 71.7840 1053.1556 -121.0978 -1407.5259 -293.8726 8.4462 -376.3221 - 12 53.4129 153.6630 134.3733 56.8265 1038.4127 -114.6492 -1386.1169 -299.0632 8.4692 -354.6716 - 13 56.2882 148.1127 133.3699 69.4499 1037.1483 -124.1634 -1392.0693 -300.1360 8.1457 -363.8540 - 14 55.8638 138.2717 130.8474 63.3417 1056.7785 -130.3721 -1412.1513 -293.6105 7.9364 -383.0943 - 15 56.0693 142.7686 129.0879 65.9910 1059.3338 -127.3972 -1405.9664 -301.0056 8.1161 -373.0024 - 16 61.3072 133.6336 136.9613 63.5579 1034.4417 -121.9517 -1385.2350 -303.2308 8.2903 -372.2255 - 17 57.0179 134.0674 131.8413 60.0611 1058.2101 -126.5692 -1406.3273 -306.9232 7.7921 -390.8298 - 18 55.1195 133.6977 128.8725 68.0979 1054.0128 -129.0991 -1402.6265 -304.2855 7.7974 -388.4135 - 19 48.6427 145.8739 136.5354 60.0096 1044.3992 -126.7821 -1391.4464 -307.6631 8.0830 -382.3478 - 20 55.8712 130.1390 145.0579 64.7638 1051.5065 -123.1587 -1419.6001 -290.6263 8.0568 -377.9898 - 21 54.6986 150.5643 135.5579 65.0243 1049.4507 -126.0537 -1408.3946 -295.6529 7.8789 -366.9266 - 22 50.9631 145.3701 135.3746 69.0404 1069.2887 -126.4980 -1428.5837 -293.2419 7.9684 -370.3183 - 23 45.6743 151.0320 129.4612 66.5696 1033.2969 -117.9406 -1433.1884 -261.5259 8.4184 -378.2025 - 24 53.7975 157.4404 128.4965 63.5865 1039.6832 -124.9557 -1441.5793 -259.8646 8.4479 -374.9478 - 25 53.6699 161.2282 135.4090 62.9472 1037.7845 -130.1868 -1416.4437 -271.2092 8.3336 -358.4672 - 26 56.8596 138.6478 123.8937 67.5998 1038.4554 -121.5649 -1414.4782 -273.9034 8.4339 -376.0564 - 27 48.1485 148.4915 120.2825 66.4896 1037.4989 -115.1863 -1432.7357 -262.1217 8.5190 -380.6136 - 28 53.4295 142.6836 123.6364 70.5412 1049.4299 -117.4515 -1439.8451 -269.8482 8.1205 -379.3036 - 29 55.5181 159.9433 130.4472 65.3908 1036.0575 -121.7265 -1437.9017 -262.1843 8.4245 -366.0312 - 30 56.9507 148.2727 136.9640 64.5306 1032.2292 -114.1851 -1428.8274 -268.0293 8.6235 -363.4711 - 31 55.2426 152.7345 129.6734 61.4624 1038.9035 -118.3613 -1407.1001 -291.2862 8.3549 -370.3763 - 32 68.8036 139.0309 135.8712 60.5774 1035.1132 -119.2168 -1407.0315 -286.0545 8.3865 -364.5201 - 33 55.0902 157.2314 128.2379 63.1669 1029.2673 -107.2154 -1447.7751 -256.9025 8.6432 -370.2562 - 34 60.3024 145.9796 128.7138 62.6577 1040.1395 -123.2517 -1421.7993 -268.3559 8.5376 -367.0764 - 35 64.4013 137.0067 131.2024 64.1728 1027.2545 -117.3351 -1428.1273 -263.3880 8.3662 -376.4465 - 36 57.5792 139.0553 121.2059 64.5424 1043.3918 -114.9366 -1409.9118 -287.7266 8.2918 -378.5088 - 37 43.2342 163.2659 129.3471 66.9988 1035.3904 -120.7328 -1411.9065 -275.9779 8.2119 -362.1689 - 38 56.3010 136.3248 125.5547 61.3369 1025.0299 -117.5483 -1417.8981 -271.5389 8.3765 -394.0615 - 39 54.6186 146.0676 133.9473 68.1487 1029.6384 -117.2665 -1432.1797 -259.4943 8.1830 -368.3368 - 40 51.5722 148.2079 123.7549 66.5018 1054.1245 -111.1429 -1447.2186 -264.9556 8.2407 -370.9152 - 41 50.6889 129.3059 130.2035 67.1367 1036.6142 -117.3817 -1416.4135 -275.2917 8.0876 -387.0502 - 42 52.6693 136.8790 125.7700 61.3937 1044.4173 -122.7493 -1434.6676 -265.1529 8.0366 -393.4039 - 43 59.3284 141.0120 127.7331 64.0905 1041.2125 -121.4760 -1423.8903 -271.5170 8.1990 -375.3078 - 44 64.1477 132.7412 123.9140 60.6160 1040.2589 -116.5651 -1413.1831 -278.9913 8.6132 -378.4484 - 45 62.9612 145.2352 127.9352 63.8549 1031.1785 -119.1632 -1433.7433 -260.3203 8.1467 -373.9150 - 46 50.8784 148.1046 131.7764 68.9012 1018.4316 -114.2412 -1413.6225 -267.5115 8.5029 -368.7802 - 47 48.9750 140.1283 135.6558 66.3180 1016.3728 -113.9798 -1406.9894 -273.1535 8.5585 -378.1142 - 48 55.7936 146.5386 126.8880 65.4379 1022.0638 -106.8784 -1416.3356 -273.8235 8.2258 -372.0898 - 49 52.1743 148.1726 119.9993 63.9993 1043.7726 -117.5285 -1431.2281 -270.2789 8.4587 -382.4588 - 50 50.8669 145.3822 130.6027 70.6206 1034.9376 -123.7341 -1418.3191 -273.0608 8.3235 -374.3804 - 51 50.7098 148.7767 131.4128 65.1048 1041.4194 -124.1527 -1439.5630 -264.0175 8.0603 -382.2494 - 52 48.9503 141.1495 126.8933 70.1105 1035.5437 -116.9890 -1426.8094 -262.9400 7.9886 -376.1025 - 53 66.0352 135.9233 126.4001 62.1707 1032.3043 -118.2068 -1421.9356 -271.1504 8.4362 -380.0230 - 54 58.2409 140.4208 123.6185 63.4404 1052.7573 -116.1368 -1450.8169 -257.3253 8.5423 -377.2588 - 55 45.7256 133.9326 124.8075 63.3846 1028.8358 -114.5950 -1422.0678 -258.0208 8.4066 -389.5909 - 56 45.0232 152.7312 132.2321 61.7975 1021.1887 -116.2242 -1409.4890 -268.7254 8.3752 -373.0907 - 57 61.5508 128.6400 129.2220 60.6586 1026.4236 -116.3758 -1410.9071 -273.1435 8.4140 -385.5173 - 58 51.5881 148.8700 131.3776 65.5367 1038.1315 -117.4617 -1415.7348 -282.0899 7.8262 -371.9563 - 59 52.1066 145.8017 129.3593 75.7320 1051.0321 -112.4652 -1448.5702 -256.2883 8.2188 -355.0733 - 60 47.0066 146.5450 130.8925 67.0668 1046.3681 -125.0242 -1458.3839 -253.6395 7.9921 -391.1765 - 61 52.8233 153.9279 131.7322 72.8346 1052.1832 -123.1316 -1464.0444 -252.2451 7.8330 -368.0869 - 62 62.8354 148.7573 130.2542 68.3631 1041.4865 -123.7191 -1455.7643 -248.6275 8.0518 -368.3626 - 63 51.3219 138.1288 140.7623 66.9722 1060.0673 -115.9329 -1472.2848 -257.1716 7.9519 -380.1849 - 64 59.8338 161.8989 129.0898 67.2989 1043.0931 -122.5901 -1453.1786 -257.3609 8.2217 -363.6933 - 65 60.8597 132.6889 138.9629 62.9829 1026.5155 -115.3097 -1416.5832 -267.0532 8.4812 -368.4548 - 66 58.1670 161.1825 132.5889 62.2109 1021.8496 -113.6297 -1402.5460 -280.2801 8.4393 -352.0178 - 67 61.8273 152.2172 129.6724 67.4160 1051.9976 -122.9298 -1441.3248 -270.4562 8.3580 -363.2221 - 68 51.4962 154.6757 133.5684 70.3259 1052.4616 -121.0232 -1454.7442 -262.6632 8.3168 -367.5860 - 69 57.7934 155.7785 128.4284 66.8225 1028.8313 -121.9480 -1410.4928 -271.5078 8.4117 -357.8827 - 70 52.8359 155.8594 129.5950 63.6450 1025.2439 -109.5185 -1421.5308 -272.5254 8.5599 -367.8356 - 71 55.4747 155.6609 133.4205 67.2478 1033.7277 -118.9269 -1439.8751 -261.0163 8.2249 -366.0618 - 72 49.8372 140.3799 133.5556 70.0932 1051.7516 -117.7716 -1464.0601 -261.1231 7.9187 -389.4186 - 73 54.5397 165.1839 134.3611 67.7878 1036.6233 -113.0715 -1463.5413 -253.7205 7.9785 -363.8590 - 74 54.8214 141.0952 136.9512 71.7555 1036.5729 -114.9592 -1452.8439 -256.3253 8.2552 -374.6770 - 75 51.5715 140.0358 140.0528 61.8973 1022.1398 -111.1491 -1415.5370 -264.8998 8.5956 -367.2931 - 76 54.3608 149.2484 133.7374 61.4951 1034.5136 -118.7760 -1415.7138 -274.7721 8.5903 -367.3162 - 77 54.3523 149.7298 132.1509 69.2076 1019.4421 -118.9986 -1402.6975 -270.8033 8.8644 -358.7523 - 78 58.5123 127.5527 128.4062 67.3295 1054.4361 -110.4151 -1438.5668 -273.1425 8.8033 -377.0844 - 79 54.3895 150.9465 128.6645 66.6828 1035.5120 -116.0379 -1401.2530 -283.4225 8.9079 -355.6102 - 80 59.6984 139.0770 128.1482 71.4438 1043.1037 -121.9232 -1420.3024 -269.7711 8.7455 -361.7800 - 81 45.5449 151.0672 141.1353 70.0242 1051.4878 -119.5903 -1469.9454 -248.3223 7.9300 -370.6686 - 82 53.9646 148.9218 137.5275 63.9726 1050.8411 -117.4761 -1470.8420 -247.4308 7.9313 -372.5900 - 83 53.5226 142.6006 128.7139 67.1750 1059.6078 -117.8260 -1466.0470 -255.9645 7.7476 -380.4700 - 84 60.0146 141.6374 135.9863 64.9176 1051.4315 -120.0374 -1469.8117 -249.9507 7.8332 -377.9793 - 85 55.8165 133.8010 128.1641 72.1625 1048.6404 -117.0585 -1429.4364 -267.7536 8.5422 -367.1218 - 86 53.9440 134.6349 125.4270 66.8982 1054.1378 -122.4332 -1423.4387 -277.1170 7.9008 -380.0461 - 87 55.1776 152.8731 130.1709 61.6216 1033.9393 -118.4841 -1429.4130 -264.9334 8.4795 -370.5684 - 88 45.1885 141.0867 133.1488 62.9821 1057.9098 -121.6610 -1435.7617 -272.5491 8.4217 -381.2341 - 89 61.9128 148.1307 126.5855 65.9900 1032.6615 -121.5331 -1432.4442 -260.8950 8.2444 -371.3474 - 90 58.5486 143.4168 137.8979 63.0533 1062.6902 -124.5014 -1446.9778 -265.4388 8.2623 -363.0489 - 91 56.7858 137.8859 142.2930 66.6924 1044.8802 -120.8279 -1419.8704 -289.8998 8.3952 -373.6656 - 92 52.8064 155.7915 139.1678 61.8681 1035.3877 -111.8257 -1420.3826 -282.0560 8.4822 -360.7605 - 93 46.5512 150.4214 130.0005 66.5813 1061.4933 -122.0914 -1455.7467 -264.3086 8.0445 -379.0545 - 94 66.7132 142.4756 125.9836 61.8797 1043.9843 -120.2698 -1434.5957 -265.1000 8.2144 -370.7147 - 95 50.3559 143.6346 135.3945 65.0683 1039.7894 -119.3685 -1442.8550 -262.4411 8.3461 -382.0758 - 96 58.0142 138.3254 135.6859 69.4420 1051.1832 -116.6821 -1451.2536 -262.5810 8.3156 -369.5503 - 97 49.1514 139.9584 133.2247 69.3901 1061.3456 -117.9805 -1452.5876 -271.3628 8.2479 -380.6129 - 98 46.4559 145.6981 132.6970 66.3574 1049.0884 -116.2311 -1448.1226 -262.5902 8.1394 -378.5077 - 99 63.7698 129.1249 126.9622 60.8390 1040.0153 -107.6384 -1418.5997 -284.4703 8.0748 -381.9224 - 100 57.1866 132.5138 128.6483 65.1466 1050.2714 -115.2943 -1436.1385 -274.2312 8.2469 -383.6505 +#Frame DPDP[total] DPDP[vdw] DPDP[elec] DPDP[gb] DPDP[bond] DPDP[angle] DPDP[dihedral] DPDP[vdw14] DPDP[elec14] DPDP[surf] + 1 -362.4643 -115.9750 -1411.3160 -287.5523 65.3607 131.8731 137.8161 65.0756 1044.0345 8.2191 + 2 -354.7133 -120.2763 -1395.6827 -291.9428 57.7708 157.4151 132.2196 64.1154 1033.1675 8.5001 + 3 -370.7565 -125.1295 -1400.7943 -300.7252 65.6276 138.9934 132.4764 63.6082 1046.7778 8.4092 + 4 -376.7324 -117.7838 -1423.3411 -290.1824 54.0259 147.7710 128.0771 65.6641 1050.8066 8.2300 + 5 -375.7554 -124.8303 -1392.5554 -307.0641 49.4597 139.9179 129.8075 70.3971 1050.8492 8.2632 + 6 -386.0375 -118.8866 -1400.8651 -295.0492 49.2628 142.8182 138.1374 61.6022 1028.5830 8.3598 + 7 -356.8886 -117.6782 -1388.2306 -303.4668 61.8618 150.0429 127.6294 66.5359 1038.1030 8.3141 + 8 -363.6296 -125.5548 -1387.9611 -293.7736 53.1676 155.3169 137.1281 63.5159 1026.4366 8.0948 + 9 -371.4302 -120.7442 -1403.4900 -293.0892 62.9546 134.8385 133.8371 63.1068 1043.1964 7.9598 + 10 -376.8531 -126.2939 -1384.7891 -287.9323 53.8934 142.4284 138.3462 63.0387 1016.3050 8.1505 + 11 -376.3221 -121.0978 -1407.5259 -293.8726 55.3054 129.9546 127.5286 71.7840 1053.1556 8.4462 + 12 -354.6716 -114.6492 -1386.1169 -299.0632 53.4129 153.6630 134.3733 56.8265 1038.4127 8.4692 + 13 -363.8540 -124.1634 -1392.0693 -300.1360 56.2882 148.1127 133.3699 69.4499 1037.1483 8.1457 + 14 -383.0943 -130.3721 -1412.1513 -293.6105 55.8638 138.2717 130.8474 63.3417 1056.7785 7.9364 + 15 -373.0024 -127.3972 -1405.9664 -301.0056 56.0693 142.7686 129.0879 65.9910 1059.3338 8.1161 + 16 -372.2255 -121.9517 -1385.2350 -303.2308 61.3072 133.6336 136.9613 63.5579 1034.4417 8.2903 + 17 -390.8298 -126.5692 -1406.3273 -306.9232 57.0179 134.0674 131.8413 60.0611 1058.2101 7.7921 + 18 -388.4135 -129.0991 -1402.6265 -304.2855 55.1195 133.6977 128.8725 68.0979 1054.0128 7.7974 + 19 -382.3478 -126.7821 -1391.4464 -307.6631 48.6427 145.8739 136.5354 60.0096 1044.3992 8.0830 + 20 -377.9898 -123.1587 -1419.6001 -290.6263 55.8712 130.1390 145.0579 64.7638 1051.5065 8.0568 + 21 -366.9266 -126.0537 -1408.3946 -295.6529 54.6986 150.5643 135.5579 65.0243 1049.4507 7.8789 + 22 -370.3183 -126.4980 -1428.5837 -293.2419 50.9631 145.3701 135.3746 69.0404 1069.2887 7.9684 + 23 -378.2025 -117.9406 -1433.1884 -261.5259 45.6743 151.0320 129.4612 66.5696 1033.2969 8.4184 + 24 -374.9478 -124.9557 -1441.5793 -259.8646 53.7975 157.4404 128.4965 63.5865 1039.6832 8.4479 + 25 -358.4672 -130.1868 -1416.4437 -271.2092 53.6699 161.2282 135.4090 62.9472 1037.7845 8.3336 + 26 -376.0564 -121.5649 -1414.4782 -273.9034 56.8596 138.6478 123.8937 67.5998 1038.4554 8.4339 + 27 -380.6136 -115.1863 -1432.7357 -262.1217 48.1485 148.4915 120.2825 66.4896 1037.4989 8.5190 + 28 -379.3036 -117.4515 -1439.8451 -269.8482 53.4295 142.6836 123.6364 70.5412 1049.4299 8.1205 + 29 -366.0312 -121.7265 -1437.9017 -262.1843 55.5181 159.9433 130.4472 65.3908 1036.0575 8.4245 + 30 -363.4711 -114.1851 -1428.8274 -268.0293 56.9507 148.2727 136.9640 64.5306 1032.2292 8.6235 + 31 -370.3763 -118.3613 -1407.1001 -291.2862 55.2426 152.7345 129.6734 61.4624 1038.9035 8.3549 + 32 -364.5201 -119.2168 -1407.0315 -286.0545 68.8036 139.0309 135.8712 60.5774 1035.1132 8.3865 + 33 -370.2562 -107.2154 -1447.7751 -256.9025 55.0902 157.2314 128.2379 63.1669 1029.2673 8.6432 + 34 -367.0764 -123.2517 -1421.7993 -268.3559 60.3024 145.9796 128.7138 62.6577 1040.1395 8.5376 + 35 -376.4465 -117.3351 -1428.1273 -263.3880 64.4013 137.0067 131.2024 64.1728 1027.2545 8.3662 + 36 -378.5088 -114.9366 -1409.9118 -287.7266 57.5792 139.0553 121.2059 64.5424 1043.3918 8.2918 + 37 -362.1689 -120.7328 -1411.9065 -275.9779 43.2342 163.2659 129.3471 66.9988 1035.3904 8.2119 + 38 -394.0615 -117.5483 -1417.8981 -271.5389 56.3010 136.3248 125.5547 61.3369 1025.0299 8.3765 + 39 -368.3368 -117.2665 -1432.1797 -259.4943 54.6186 146.0676 133.9473 68.1487 1029.6384 8.1830 + 40 -370.9152 -111.1429 -1447.2186 -264.9556 51.5722 148.2079 123.7549 66.5018 1054.1245 8.2407 + 41 -387.0502 -117.3817 -1416.4135 -275.2917 50.6889 129.3059 130.2035 67.1367 1036.6142 8.0876 + 42 -393.4039 -122.7493 -1434.6676 -265.1529 52.6693 136.8790 125.7700 61.3937 1044.4173 8.0366 + 43 -375.3078 -121.4760 -1423.8903 -271.5170 59.3284 141.0120 127.7331 64.0905 1041.2125 8.1990 + 44 -378.4484 -116.5651 -1413.1831 -278.9913 64.1477 132.7412 123.9140 60.6160 1040.2589 8.6132 + 45 -373.9150 -119.1632 -1433.7433 -260.3203 62.9612 145.2352 127.9352 63.8549 1031.1785 8.1467 + 46 -368.7802 -114.2412 -1413.6225 -267.5115 50.8784 148.1046 131.7764 68.9012 1018.4316 8.5029 + 47 -378.1142 -113.9798 -1406.9894 -273.1535 48.9750 140.1283 135.6558 66.3180 1016.3728 8.5585 + 48 -372.0898 -106.8784 -1416.3356 -273.8235 55.7936 146.5386 126.8880 65.4379 1022.0638 8.2258 + 49 -382.4588 -117.5285 -1431.2281 -270.2789 52.1743 148.1726 119.9993 63.9993 1043.7726 8.4587 + 50 -374.3804 -123.7341 -1418.3191 -273.0608 50.8669 145.3822 130.6027 70.6206 1034.9376 8.3235 + 51 -382.2494 -124.1527 -1439.5630 -264.0175 50.7098 148.7767 131.4128 65.1048 1041.4194 8.0603 + 52 -376.1025 -116.9890 -1426.8094 -262.9400 48.9503 141.1495 126.8933 70.1105 1035.5437 7.9886 + 53 -380.0230 -118.2068 -1421.9356 -271.1504 66.0352 135.9233 126.4001 62.1707 1032.3043 8.4362 + 54 -377.2588 -116.1368 -1450.8169 -257.3253 58.2409 140.4208 123.6185 63.4404 1052.7573 8.5423 + 55 -389.5909 -114.5950 -1422.0678 -258.0208 45.7256 133.9326 124.8075 63.3846 1028.8358 8.4066 + 56 -373.0907 -116.2242 -1409.4890 -268.7254 45.0232 152.7312 132.2321 61.7975 1021.1887 8.3752 + 57 -385.5173 -116.3758 -1410.9071 -273.1435 61.5508 128.6400 129.2220 60.6586 1026.4236 8.4140 + 58 -371.9563 -117.4617 -1415.7348 -282.0899 51.5881 148.8700 131.3776 65.5367 1038.1315 7.8262 + 59 -355.0733 -112.4652 -1448.5702 -256.2883 52.1066 145.8017 129.3593 75.7320 1051.0321 8.2188 + 60 -391.1765 -125.0242 -1458.3839 -253.6395 47.0066 146.5450 130.8925 67.0668 1046.3681 7.9921 + 61 -368.0869 -123.1316 -1464.0444 -252.2451 52.8233 153.9279 131.7322 72.8346 1052.1832 7.8330 + 62 -368.3626 -123.7191 -1455.7643 -248.6275 62.8354 148.7573 130.2542 68.3631 1041.4865 8.0518 + 63 -380.1849 -115.9329 -1472.2848 -257.1716 51.3219 138.1288 140.7623 66.9722 1060.0673 7.9519 + 64 -363.6933 -122.5901 -1453.1786 -257.3609 59.8338 161.8989 129.0898 67.2989 1043.0931 8.2217 + 65 -368.4548 -115.3097 -1416.5832 -267.0532 60.8597 132.6889 138.9629 62.9829 1026.5155 8.4812 + 66 -352.0178 -113.6297 -1402.5460 -280.2801 58.1670 161.1825 132.5889 62.2109 1021.8496 8.4393 + 67 -363.2221 -122.9298 -1441.3248 -270.4562 61.8273 152.2172 129.6724 67.4160 1051.9976 8.3580 + 68 -367.5860 -121.0232 -1454.7442 -262.6632 51.4962 154.6757 133.5684 70.3259 1052.4616 8.3168 + 69 -357.8827 -121.9480 -1410.4928 -271.5078 57.7934 155.7785 128.4284 66.8225 1028.8313 8.4117 + 70 -367.8356 -109.5185 -1421.5308 -272.5254 52.8359 155.8594 129.5950 63.6450 1025.2439 8.5599 + 71 -366.0618 -118.9269 -1439.8751 -261.0163 55.4747 155.6609 133.4205 67.2478 1033.7277 8.2249 + 72 -389.4186 -117.7716 -1464.0601 -261.1231 49.8372 140.3799 133.5556 70.0932 1051.7516 7.9187 + 73 -363.8590 -113.0715 -1463.5413 -253.7205 54.5397 165.1839 134.3611 67.7878 1036.6233 7.9785 + 74 -374.6770 -114.9592 -1452.8439 -256.3253 54.8214 141.0952 136.9512 71.7555 1036.5729 8.2552 + 75 -367.2931 -111.1491 -1415.5370 -264.8998 51.5715 140.0358 140.0528 61.8973 1022.1398 8.5956 + 76 -367.3162 -118.7760 -1415.7138 -274.7721 54.3608 149.2484 133.7374 61.4951 1034.5136 8.5903 + 77 -358.7523 -118.9986 -1402.6975 -270.8033 54.3523 149.7298 132.1509 69.2076 1019.4421 8.8644 + 78 -377.0844 -110.4151 -1438.5668 -273.1425 58.5123 127.5527 128.4062 67.3295 1054.4361 8.8033 + 79 -355.6102 -116.0379 -1401.2530 -283.4225 54.3895 150.9465 128.6645 66.6828 1035.5120 8.9079 + 80 -361.7800 -121.9232 -1420.3024 -269.7711 59.6984 139.0770 128.1482 71.4438 1043.1037 8.7455 + 81 -370.6686 -119.5903 -1469.9454 -248.3223 45.5449 151.0672 141.1353 70.0242 1051.4878 7.9300 + 82 -372.5900 -117.4761 -1470.8420 -247.4308 53.9646 148.9218 137.5275 63.9726 1050.8411 7.9313 + 83 -380.4700 -117.8260 -1466.0470 -255.9645 53.5226 142.6006 128.7139 67.1750 1059.6078 7.7476 + 84 -377.9793 -120.0374 -1469.8117 -249.9507 60.0146 141.6374 135.9863 64.9176 1051.4315 7.8332 + 85 -367.1218 -117.0585 -1429.4364 -267.7536 55.8165 133.8010 128.1641 72.1625 1048.6404 8.5422 + 86 -380.0461 -122.4332 -1423.4387 -277.1170 53.9440 134.6349 125.4270 66.8982 1054.1378 7.9008 + 87 -370.5684 -118.4841 -1429.4130 -264.9334 55.1776 152.8731 130.1709 61.6216 1033.9393 8.4795 + 88 -381.2341 -121.6610 -1435.7617 -272.5491 45.1885 141.0867 133.1488 62.9821 1057.9098 8.4217 + 89 -371.3474 -121.5331 -1432.4442 -260.8950 61.9128 148.1307 126.5855 65.9900 1032.6615 8.2444 + 90 -363.0489 -124.5014 -1446.9778 -265.4388 58.5486 143.4168 137.8979 63.0533 1062.6902 8.2623 + 91 -373.6656 -120.8279 -1419.8704 -289.8998 56.7858 137.8859 142.2930 66.6924 1044.8802 8.3952 + 92 -360.7605 -111.8257 -1420.3826 -282.0560 52.8064 155.7915 139.1678 61.8681 1035.3877 8.4822 + 93 -379.0545 -122.0914 -1455.7467 -264.3086 46.5512 150.4214 130.0005 66.5813 1061.4933 8.0445 + 94 -370.7147 -120.2698 -1434.5957 -265.1000 66.7132 142.4756 125.9836 61.8797 1043.9843 8.2144 + 95 -382.0758 -119.3685 -1442.8550 -262.4411 50.3559 143.6346 135.3945 65.0683 1039.7894 8.3461 + 96 -369.5503 -116.6821 -1451.2536 -262.5810 58.0142 138.3254 135.6859 69.4420 1051.1832 8.3156 + 97 -380.6129 -117.9805 -1452.5876 -271.3628 49.1514 139.9584 133.2247 69.3901 1061.3456 8.2479 + 98 -378.5077 -116.2311 -1448.1226 -262.5902 46.4559 145.6981 132.6970 66.3574 1049.0884 8.1394 + 99 -381.9224 -107.6384 -1418.5997 -284.4703 63.7698 129.1249 126.9622 60.8390 1040.0153 8.0748 + 100 -383.6505 -115.2943 -1436.1385 -274.2312 57.1866 132.5138 128.6483 65.1466 1050.2714 8.2469 diff --git a/test/Test_Esander/Esander.dat.save b/test/Test_Esander/Esander.dat.save index 83575c206b..1489386b9e 100644 --- a/test/Test_Esander/Esander.dat.save +++ b/test/Test_Esander/Esander.dat.save @@ -1,11 +1,11 @@ -#Frame S[bond] S[angle] S[dih] S[vdw14] S[elec14] S[vdw] S[elec] S[total] - 1 35.4705 93.3672 123.6395 46.9354 665.9690 2502.5936 -21563.5670 -18095.5918 - 2 47.5936 101.2947 125.3715 38.6891 655.7783 2455.6270 -21457.2687 -18032.9144 - 3 41.2026 111.4593 137.7342 43.2846 643.2083 2518.4931 -21591.4285 -18096.0464 - 4 44.1614 96.1412 128.5231 45.6698 654.4909 2526.1098 -21606.9431 -18111.8468 - 5 41.4961 105.7385 123.7398 44.6249 657.7510 2570.6484 -21667.5373 -18123.5386 - 6 37.8556 97.2202 126.4595 44.7027 653.3176 2533.3752 -21652.2187 -18159.2879 - 7 45.6627 101.9210 119.0334 41.7585 651.0073 2572.0340 -21749.7182 -18218.3013 - 8 35.2119 97.3884 121.5698 45.7198 645.6003 2561.9607 -21684.0738 -18176.6228 - 9 41.3678 80.6073 123.6050 45.8977 660.5711 2456.2484 -21601.3183 -18193.0210 - 10 43.8534 114.4428 127.4284 44.5121 658.2454 2491.7149 -21622.6568 -18142.4598 +#Frame S[total] S[vdw] S[elec] S[bond] S[angle] S[dihedral] S[vdw14] S[elec14] + 1 -18095.5918 2502.5936 -21563.5670 35.4705 93.3672 123.6395 46.9354 665.9690 + 2 -18032.9144 2455.6270 -21457.2687 47.5936 101.2947 125.3715 38.6891 655.7783 + 3 -18096.0464 2518.4931 -21591.4285 41.2026 111.4593 137.7342 43.2846 643.2083 + 4 -18111.8468 2526.1098 -21606.9431 44.1614 96.1412 128.5231 45.6698 654.4909 + 5 -18123.5386 2570.6484 -21667.5373 41.4961 105.7385 123.7398 44.6249 657.7510 + 6 -18159.2879 2533.3752 -21652.2187 37.8556 97.2202 126.4595 44.7027 653.3176 + 7 -18218.3013 2572.0340 -21749.7182 45.6627 101.9210 119.0334 41.7585 651.0073 + 8 -18176.6228 2561.9607 -21684.0738 35.2119 97.3884 121.5698 45.7198 645.6003 + 9 -18193.0210 2456.2484 -21601.3183 41.3678 80.6073 123.6050 45.8977 660.5711 + 10 -18142.4598 2491.7149 -21622.6568 43.8534 114.4428 127.4284 44.5121 658.2454 diff --git a/test/Test_Esander/NoWat.dat.save b/test/Test_Esander/NoWat.dat.save index 88fd377ff5..ba1ef6ebe3 100644 --- a/test/Test_Esander/NoWat.dat.save +++ b/test/Test_Esander/NoWat.dat.save @@ -1,11 +1,11 @@ -#Frame NoWat[bond] NoWat[angle] NoWat[dih] NoWat[vdw14] NoWat[elec14] NoWat[vdw] NoWat[elec] NoWat[total] - 1 35.4705 93.3672 123.6395 46.9354 665.9690 -79.8200 -919.5394 -33.9779 - 2 47.5936 101.2947 125.3715 38.6891 655.7783 -77.8711 -942.6597 -51.8034 - 3 41.2026 111.4593 137.7342 43.2846 643.2083 -82.0099 -917.1689 -22.2898 - 4 44.1614 96.1412 128.5231 45.6698 654.4909 -75.2261 -920.2656 -26.5052 - 5 41.4961 105.7385 123.7398 44.6249 657.7510 -76.6299 -924.5064 -27.7860 - 6 37.8556 97.2202 126.4595 44.7027 653.3176 -72.6688 -920.2399 -33.3532 - 7 45.6627 101.9210 119.0334 41.7585 651.0073 -74.0024 -929.8879 -44.5074 - 8 35.2119 97.3884 121.5698 45.7198 645.6003 -77.5298 -905.2854 -37.3249 - 9 41.3678 80.6073 123.6050 45.8977 660.5711 -78.5001 -933.3620 -59.8131 - 10 43.8534 114.4428 127.4284 44.5121 658.2454 -72.4914 -938.9367 -22.9459 +#Frame NoWat[total] NoWat[vdw] NoWat[elec] NoWat[bond] NoWat[angle] NoWat[dihedral] NoWat[vdw14] NoWat[elec14] + 1 -33.9779 -79.8200 -919.5394 35.4705 93.3672 123.6395 46.9354 665.9690 + 2 -51.8034 -77.8711 -942.6597 47.5936 101.2947 125.3715 38.6891 655.7783 + 3 -22.2898 -82.0099 -917.1689 41.2026 111.4593 137.7342 43.2846 643.2083 + 4 -26.5052 -75.2261 -920.2656 44.1614 96.1412 128.5231 45.6698 654.4909 + 5 -27.7860 -76.6299 -924.5064 41.4961 105.7385 123.7398 44.6249 657.7510 + 6 -33.3532 -72.6688 -920.2399 37.8556 97.2202 126.4595 44.7027 653.3176 + 7 -44.5074 -74.0024 -929.8879 45.6627 101.9210 119.0334 41.7585 651.0073 + 8 -37.3249 -77.5298 -905.2854 35.2119 97.3884 121.5698 45.7198 645.6003 + 9 -59.8131 -78.5001 -933.3620 41.3678 80.6073 123.6050 45.8977 660.5711 + 10 -22.9459 -72.4914 -938.9367 43.8534 114.4428 127.4284 44.5121 658.2454 diff --git a/test/Test_Esander/neworder.Edpdp.dat.save b/test/Test_Esander/neworder.Edpdp.dat.save new file mode 100644 index 0000000000..fb247284ed --- /dev/null +++ b/test/Test_Esander/neworder.Edpdp.dat.save @@ -0,0 +1,101 @@ +#Frame DPDP[bond] DPDP[angle] DPDP[dih] DPDP[vdw14] DPDP[elec14] DPDP[vdw] DPDP[elec] DPDP[gb] DPDP[surf] DPDP[total] + 1 65.3607 131.8731 137.8161 65.0756 1044.0345 -115.9750 -1411.3160 -287.5523 8.2191 -362.4643 + 2 57.7708 157.4151 132.2196 64.1154 1033.1675 -120.2763 -1395.6827 -291.9428 8.5001 -354.7133 + 3 65.6276 138.9934 132.4764 63.6082 1046.7778 -125.1295 -1400.7943 -300.7252 8.4092 -370.7565 + 4 54.0259 147.7710 128.0771 65.6641 1050.8066 -117.7838 -1423.3411 -290.1824 8.2300 -376.7324 + 5 49.4597 139.9179 129.8075 70.3971 1050.8492 -124.8303 -1392.5554 -307.0641 8.2632 -375.7554 + 6 49.2628 142.8182 138.1374 61.6022 1028.5830 -118.8866 -1400.8651 -295.0492 8.3598 -386.0375 + 7 61.8618 150.0429 127.6294 66.5359 1038.1030 -117.6782 -1388.2306 -303.4668 8.3141 -356.8886 + 8 53.1676 155.3169 137.1281 63.5159 1026.4366 -125.5548 -1387.9611 -293.7736 8.0948 -363.6296 + 9 62.9546 134.8385 133.8371 63.1068 1043.1964 -120.7442 -1403.4900 -293.0892 7.9598 -371.4302 + 10 53.8934 142.4284 138.3462 63.0387 1016.3050 -126.2939 -1384.7891 -287.9323 8.1505 -376.8531 + 11 55.3054 129.9546 127.5286 71.7840 1053.1556 -121.0978 -1407.5259 -293.8726 8.4462 -376.3221 + 12 53.4129 153.6630 134.3733 56.8265 1038.4127 -114.6492 -1386.1169 -299.0632 8.4692 -354.6716 + 13 56.2882 148.1127 133.3699 69.4499 1037.1483 -124.1634 -1392.0693 -300.1360 8.1457 -363.8540 + 14 55.8638 138.2717 130.8474 63.3417 1056.7785 -130.3721 -1412.1513 -293.6105 7.9364 -383.0943 + 15 56.0693 142.7686 129.0879 65.9910 1059.3338 -127.3972 -1405.9664 -301.0056 8.1161 -373.0024 + 16 61.3072 133.6336 136.9613 63.5579 1034.4417 -121.9517 -1385.2350 -303.2308 8.2903 -372.2255 + 17 57.0179 134.0674 131.8413 60.0611 1058.2101 -126.5692 -1406.3273 -306.9232 7.7921 -390.8298 + 18 55.1195 133.6977 128.8725 68.0979 1054.0128 -129.0991 -1402.6265 -304.2855 7.7974 -388.4135 + 19 48.6427 145.8739 136.5354 60.0096 1044.3992 -126.7821 -1391.4464 -307.6631 8.0830 -382.3478 + 20 55.8712 130.1390 145.0579 64.7638 1051.5065 -123.1587 -1419.6001 -290.6263 8.0568 -377.9898 + 21 54.6986 150.5643 135.5579 65.0243 1049.4507 -126.0537 -1408.3946 -295.6529 7.8789 -366.9266 + 22 50.9631 145.3701 135.3746 69.0404 1069.2887 -126.4980 -1428.5837 -293.2419 7.9684 -370.3183 + 23 45.6743 151.0320 129.4612 66.5696 1033.2969 -117.9406 -1433.1884 -261.5259 8.4184 -378.2025 + 24 53.7975 157.4404 128.4965 63.5865 1039.6832 -124.9557 -1441.5793 -259.8646 8.4479 -374.9478 + 25 53.6699 161.2282 135.4090 62.9472 1037.7845 -130.1868 -1416.4437 -271.2092 8.3336 -358.4672 + 26 56.8596 138.6478 123.8937 67.5998 1038.4554 -121.5649 -1414.4782 -273.9034 8.4339 -376.0564 + 27 48.1485 148.4915 120.2825 66.4896 1037.4989 -115.1863 -1432.7357 -262.1217 8.5190 -380.6136 + 28 53.4295 142.6836 123.6364 70.5412 1049.4299 -117.4515 -1439.8451 -269.8482 8.1205 -379.3036 + 29 55.5181 159.9433 130.4472 65.3908 1036.0575 -121.7265 -1437.9017 -262.1843 8.4245 -366.0312 + 30 56.9507 148.2727 136.9640 64.5306 1032.2292 -114.1851 -1428.8274 -268.0293 8.6235 -363.4711 + 31 55.2426 152.7345 129.6734 61.4624 1038.9035 -118.3613 -1407.1001 -291.2862 8.3549 -370.3763 + 32 68.8036 139.0309 135.8712 60.5774 1035.1132 -119.2168 -1407.0315 -286.0545 8.3865 -364.5201 + 33 55.0902 157.2314 128.2379 63.1669 1029.2673 -107.2154 -1447.7751 -256.9025 8.6432 -370.2562 + 34 60.3024 145.9796 128.7138 62.6577 1040.1395 -123.2517 -1421.7993 -268.3559 8.5376 -367.0764 + 35 64.4013 137.0067 131.2024 64.1728 1027.2545 -117.3351 -1428.1273 -263.3880 8.3662 -376.4465 + 36 57.5792 139.0553 121.2059 64.5424 1043.3918 -114.9366 -1409.9118 -287.7266 8.2918 -378.5088 + 37 43.2342 163.2659 129.3471 66.9988 1035.3904 -120.7328 -1411.9065 -275.9779 8.2119 -362.1689 + 38 56.3010 136.3248 125.5547 61.3369 1025.0299 -117.5483 -1417.8981 -271.5389 8.3765 -394.0615 + 39 54.6186 146.0676 133.9473 68.1487 1029.6384 -117.2665 -1432.1797 -259.4943 8.1830 -368.3368 + 40 51.5722 148.2079 123.7549 66.5018 1054.1245 -111.1429 -1447.2186 -264.9556 8.2407 -370.9152 + 41 50.6889 129.3059 130.2035 67.1367 1036.6142 -117.3817 -1416.4135 -275.2917 8.0876 -387.0502 + 42 52.6693 136.8790 125.7700 61.3937 1044.4173 -122.7493 -1434.6676 -265.1529 8.0366 -393.4039 + 43 59.3284 141.0120 127.7331 64.0905 1041.2125 -121.4760 -1423.8903 -271.5170 8.1990 -375.3078 + 44 64.1477 132.7412 123.9140 60.6160 1040.2589 -116.5651 -1413.1831 -278.9913 8.6132 -378.4484 + 45 62.9612 145.2352 127.9352 63.8549 1031.1785 -119.1632 -1433.7433 -260.3203 8.1467 -373.9150 + 46 50.8784 148.1046 131.7764 68.9012 1018.4316 -114.2412 -1413.6225 -267.5115 8.5029 -368.7802 + 47 48.9750 140.1283 135.6558 66.3180 1016.3728 -113.9798 -1406.9894 -273.1535 8.5585 -378.1142 + 48 55.7936 146.5386 126.8880 65.4379 1022.0638 -106.8784 -1416.3356 -273.8235 8.2258 -372.0898 + 49 52.1743 148.1726 119.9993 63.9993 1043.7726 -117.5285 -1431.2281 -270.2789 8.4587 -382.4588 + 50 50.8669 145.3822 130.6027 70.6206 1034.9376 -123.7341 -1418.3191 -273.0608 8.3235 -374.3804 + 51 50.7098 148.7767 131.4128 65.1048 1041.4194 -124.1527 -1439.5630 -264.0175 8.0603 -382.2494 + 52 48.9503 141.1495 126.8933 70.1105 1035.5437 -116.9890 -1426.8094 -262.9400 7.9886 -376.1025 + 53 66.0352 135.9233 126.4001 62.1707 1032.3043 -118.2068 -1421.9356 -271.1504 8.4362 -380.0230 + 54 58.2409 140.4208 123.6185 63.4404 1052.7573 -116.1368 -1450.8169 -257.3253 8.5423 -377.2588 + 55 45.7256 133.9326 124.8075 63.3846 1028.8358 -114.5950 -1422.0678 -258.0208 8.4066 -389.5909 + 56 45.0232 152.7312 132.2321 61.7975 1021.1887 -116.2242 -1409.4890 -268.7254 8.3752 -373.0907 + 57 61.5508 128.6400 129.2220 60.6586 1026.4236 -116.3758 -1410.9071 -273.1435 8.4140 -385.5173 + 58 51.5881 148.8700 131.3776 65.5367 1038.1315 -117.4617 -1415.7348 -282.0899 7.8262 -371.9563 + 59 52.1066 145.8017 129.3593 75.7320 1051.0321 -112.4652 -1448.5702 -256.2883 8.2188 -355.0733 + 60 47.0066 146.5450 130.8925 67.0668 1046.3681 -125.0242 -1458.3839 -253.6395 7.9921 -391.1765 + 61 52.8233 153.9279 131.7322 72.8346 1052.1832 -123.1316 -1464.0444 -252.2451 7.8330 -368.0869 + 62 62.8354 148.7573 130.2542 68.3631 1041.4865 -123.7191 -1455.7643 -248.6275 8.0518 -368.3626 + 63 51.3219 138.1288 140.7623 66.9722 1060.0673 -115.9329 -1472.2848 -257.1716 7.9519 -380.1849 + 64 59.8338 161.8989 129.0898 67.2989 1043.0931 -122.5901 -1453.1786 -257.3609 8.2217 -363.6933 + 65 60.8597 132.6889 138.9629 62.9829 1026.5155 -115.3097 -1416.5832 -267.0532 8.4812 -368.4548 + 66 58.1670 161.1825 132.5889 62.2109 1021.8496 -113.6297 -1402.5460 -280.2801 8.4393 -352.0178 + 67 61.8273 152.2172 129.6724 67.4160 1051.9976 -122.9298 -1441.3248 -270.4562 8.3580 -363.2221 + 68 51.4962 154.6757 133.5684 70.3259 1052.4616 -121.0232 -1454.7442 -262.6632 8.3168 -367.5860 + 69 57.7934 155.7785 128.4284 66.8225 1028.8313 -121.9480 -1410.4928 -271.5078 8.4117 -357.8827 + 70 52.8359 155.8594 129.5950 63.6450 1025.2439 -109.5185 -1421.5308 -272.5254 8.5599 -367.8356 + 71 55.4747 155.6609 133.4205 67.2478 1033.7277 -118.9269 -1439.8751 -261.0163 8.2249 -366.0618 + 72 49.8372 140.3799 133.5556 70.0932 1051.7516 -117.7716 -1464.0601 -261.1231 7.9187 -389.4186 + 73 54.5397 165.1839 134.3611 67.7878 1036.6233 -113.0715 -1463.5413 -253.7205 7.9785 -363.8590 + 74 54.8214 141.0952 136.9512 71.7555 1036.5729 -114.9592 -1452.8439 -256.3253 8.2552 -374.6770 + 75 51.5715 140.0358 140.0528 61.8973 1022.1398 -111.1491 -1415.5370 -264.8998 8.5956 -367.2931 + 76 54.3608 149.2484 133.7374 61.4951 1034.5136 -118.7760 -1415.7138 -274.7721 8.5903 -367.3162 + 77 54.3523 149.7298 132.1509 69.2076 1019.4421 -118.9986 -1402.6975 -270.8033 8.8644 -358.7523 + 78 58.5123 127.5527 128.4062 67.3295 1054.4361 -110.4151 -1438.5668 -273.1425 8.8033 -377.0844 + 79 54.3895 150.9465 128.6645 66.6828 1035.5120 -116.0379 -1401.2530 -283.4225 8.9079 -355.6102 + 80 59.6984 139.0770 128.1482 71.4438 1043.1037 -121.9232 -1420.3024 -269.7711 8.7455 -361.7800 + 81 45.5449 151.0672 141.1353 70.0242 1051.4878 -119.5903 -1469.9454 -248.3223 7.9300 -370.6686 + 82 53.9646 148.9218 137.5275 63.9726 1050.8411 -117.4761 -1470.8420 -247.4308 7.9313 -372.5900 + 83 53.5226 142.6006 128.7139 67.1750 1059.6078 -117.8260 -1466.0470 -255.9645 7.7476 -380.4700 + 84 60.0146 141.6374 135.9863 64.9176 1051.4315 -120.0374 -1469.8117 -249.9507 7.8332 -377.9793 + 85 55.8165 133.8010 128.1641 72.1625 1048.6404 -117.0585 -1429.4364 -267.7536 8.5422 -367.1218 + 86 53.9440 134.6349 125.4270 66.8982 1054.1378 -122.4332 -1423.4387 -277.1170 7.9008 -380.0461 + 87 55.1776 152.8731 130.1709 61.6216 1033.9393 -118.4841 -1429.4130 -264.9334 8.4795 -370.5684 + 88 45.1885 141.0867 133.1488 62.9821 1057.9098 -121.6610 -1435.7617 -272.5491 8.4217 -381.2341 + 89 61.9128 148.1307 126.5855 65.9900 1032.6615 -121.5331 -1432.4442 -260.8950 8.2444 -371.3474 + 90 58.5486 143.4168 137.8979 63.0533 1062.6902 -124.5014 -1446.9778 -265.4388 8.2623 -363.0489 + 91 56.7858 137.8859 142.2930 66.6924 1044.8802 -120.8279 -1419.8704 -289.8998 8.3952 -373.6656 + 92 52.8064 155.7915 139.1678 61.8681 1035.3877 -111.8257 -1420.3826 -282.0560 8.4822 -360.7605 + 93 46.5512 150.4214 130.0005 66.5813 1061.4933 -122.0914 -1455.7467 -264.3086 8.0445 -379.0545 + 94 66.7132 142.4756 125.9836 61.8797 1043.9843 -120.2698 -1434.5957 -265.1000 8.2144 -370.7147 + 95 50.3559 143.6346 135.3945 65.0683 1039.7894 -119.3685 -1442.8550 -262.4411 8.3461 -382.0758 + 96 58.0142 138.3254 135.6859 69.4420 1051.1832 -116.6821 -1451.2536 -262.5810 8.3156 -369.5503 + 97 49.1514 139.9584 133.2247 69.3901 1061.3456 -117.9805 -1452.5876 -271.3628 8.2479 -380.6129 + 98 46.4559 145.6981 132.6970 66.3574 1049.0884 -116.2311 -1448.1226 -262.5902 8.1394 -378.5077 + 99 63.7698 129.1249 126.9622 60.8390 1040.0153 -107.6384 -1418.5997 -284.4703 8.0748 -381.9224 + 100 57.1866 132.5138 128.6483 65.1466 1050.2714 -115.2943 -1436.1385 -274.2312 8.2469 -383.6505 diff --git a/test/Test_Esander/neworder.Esander.dat.save b/test/Test_Esander/neworder.Esander.dat.save new file mode 100644 index 0000000000..83575c206b --- /dev/null +++ b/test/Test_Esander/neworder.Esander.dat.save @@ -0,0 +1,11 @@ +#Frame S[bond] S[angle] S[dih] S[vdw14] S[elec14] S[vdw] S[elec] S[total] + 1 35.4705 93.3672 123.6395 46.9354 665.9690 2502.5936 -21563.5670 -18095.5918 + 2 47.5936 101.2947 125.3715 38.6891 655.7783 2455.6270 -21457.2687 -18032.9144 + 3 41.2026 111.4593 137.7342 43.2846 643.2083 2518.4931 -21591.4285 -18096.0464 + 4 44.1614 96.1412 128.5231 45.6698 654.4909 2526.1098 -21606.9431 -18111.8468 + 5 41.4961 105.7385 123.7398 44.6249 657.7510 2570.6484 -21667.5373 -18123.5386 + 6 37.8556 97.2202 126.4595 44.7027 653.3176 2533.3752 -21652.2187 -18159.2879 + 7 45.6627 101.9210 119.0334 41.7585 651.0073 2572.0340 -21749.7182 -18218.3013 + 8 35.2119 97.3884 121.5698 45.7198 645.6003 2561.9607 -21684.0738 -18176.6228 + 9 41.3678 80.6073 123.6050 45.8977 660.5711 2456.2484 -21601.3183 -18193.0210 + 10 43.8534 114.4428 127.4284 44.5121 658.2454 2491.7149 -21622.6568 -18142.4598 diff --git a/test/Test_Esander/neworder.NoWat.dat.save b/test/Test_Esander/neworder.NoWat.dat.save new file mode 100644 index 0000000000..88fd377ff5 --- /dev/null +++ b/test/Test_Esander/neworder.NoWat.dat.save @@ -0,0 +1,11 @@ +#Frame NoWat[bond] NoWat[angle] NoWat[dih] NoWat[vdw14] NoWat[elec14] NoWat[vdw] NoWat[elec] NoWat[total] + 1 35.4705 93.3672 123.6395 46.9354 665.9690 -79.8200 -919.5394 -33.9779 + 2 47.5936 101.2947 125.3715 38.6891 655.7783 -77.8711 -942.6597 -51.8034 + 3 41.2026 111.4593 137.7342 43.2846 643.2083 -82.0099 -917.1689 -22.2898 + 4 44.1614 96.1412 128.5231 45.6698 654.4909 -75.2261 -920.2656 -26.5052 + 5 41.4961 105.7385 123.7398 44.6249 657.7510 -76.6299 -924.5064 -27.7860 + 6 37.8556 97.2202 126.4595 44.7027 653.3176 -72.6688 -920.2399 -33.3532 + 7 45.6627 101.9210 119.0334 41.7585 651.0073 -74.0024 -929.8879 -44.5074 + 8 35.2119 97.3884 121.5698 45.7198 645.6003 -77.5298 -905.2854 -37.3249 + 9 41.3678 80.6073 123.6050 45.8977 660.5711 -78.5001 -933.3620 -59.8131 + 10 43.8534 114.4428 127.4284 44.5121 658.2454 -72.4914 -938.9367 -22.9459 From 5fe0f14d6150b6767ceb06dab79a6edd153c4db3 Mon Sep 17 00:00:00 2001 From: "Daniel R. Roe" Date: Fri, 21 Jul 2023 11:08:25 -0400 Subject: [PATCH 05/13] Add new ordering option for test saves --- test/Test_Esander/RunTest.sh | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/test/Test_Esander/RunTest.sh b/test/Test_Esander/RunTest.sh index 18efb1232c..78767d726e 100755 --- a/test/Test_Esander/RunTest.sh +++ b/test/Test_Esander/RunTest.sh @@ -6,6 +6,14 @@ CleanFiles ene.in Esander.dat force.nc Edpdp.dat CpptrajEsander.parm7 NoWat.dat TESTNAME='SANDER energy tests (long)' Requires sanderlib netcdf long +# Set to 1 if compiled with -DCPPTRAJ_ESANDER_ENERGY_ORDER +NEWORDER=0 +if [ $NEWORDER -eq 1 ] ; then + SAVEPREFIX='neworder.' +else + SAVEPREFIX='' +fi + INPUT="-i ene.in" TestPME() { @@ -19,7 +27,7 @@ esander S out Esander.dat saveforces trajout force.nc EOF RunCpptraj "$UNITNAME" - DoTest Esander.dat.save Esander.dat + DoTest "$SAVEPREFIX"Esander.dat.save Esander.dat NcTest force.nc.save force.nc -a 0.000001 fi } @@ -31,7 +39,7 @@ trajin ../DPDP.nc esander DPDP out Edpdp.dat gbsa 1 EOF RunCpptraj "SANDER energy test, GB." - DoTest Edpdp.dat.save Edpdp.dat + DoTest "$SAVEPREFIX"Edpdp.dat.save Edpdp.dat } TestStrip() { @@ -45,7 +53,7 @@ strip :WAT esander NoWat out NoWat.dat EOF RunCpptraj "$UNITNAME" - DoTest NoWat.dat.save NoWat.dat + DoTest "$SAVEPREFIX"NoWat.dat.save NoWat.dat fi } From 3b7618c0a437f4b086036f8c7e7312e04ccb80de Mon Sep 17 00:00:00 2001 From: "Daniel R. Roe" Date: Fri, 21 Jul 2023 13:49:29 -0400 Subject: [PATCH 06/13] Add openmm and related keywords to energy help --- src/Action_Energy.cpp | 11 ++++++++++- src/Action_Energy.h | 1 + 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/Action_Energy.cpp b/src/Action_Energy.cpp index 7931706cd9..1f8f6c299d 100644 --- a/src/Action_Energy.cpp +++ b/src/Action_Energy.cpp @@ -28,7 +28,7 @@ Action_Energy::~Action_Energy() { } void Action_Energy::Help() const { - mprintf("\t[] [] [out ] [nobondstoh]\n" + mprintf("\t[] [] [out ] [nobondstoh] [openmm []]\n" "\t[bond] [angle] [dihedral] {[nb14]|[e14]|[v14]} {[nonbond] | [elec] [vdw]}\n" "\t[{nokinetic|kinetic [ketype {vel|vv}] [dt
]}]\n" "\t[ etype { simple |\n" @@ -50,6 +50,15 @@ void Action_Energy::Help() const { EwaldOptions::KeywordsPME(), EwaldOptions::KeywordsLjpme() ); + mprintf(" Type 'help energy mdopts' for a list of potential options for 'openmm'.\n"); +} + +void Action_Energy::Help(ArgList& argIn) const { + if (argIn.hasKey("mdopts")) { + mprintf(" :\n"); + MdOpts::PrintHelp(); + } else + Help(); } /// Corresponds to Etype diff --git a/src/Action_Energy.h b/src/Action_Energy.h index f2b7f92933..19dec5a387 100644 --- a/src/Action_Energy.h +++ b/src/Action_Energy.h @@ -15,6 +15,7 @@ class Action_Energy: public Action { ~Action_Energy(); DispatchObject* Alloc() const { return (DispatchObject*)new Action_Energy(); } void Help() const; + void Help(ArgList&) const; private: Action::RetType Init(ArgList&, ActionInit&, int); Action::RetType Setup(ActionSetup&); From 499bec3f384ab73509c3ffe285b5869511ac781a Mon Sep 17 00:00:00 2001 From: "Daniel R. Roe" Date: Fri, 21 Jul 2023 13:59:06 -0400 Subject: [PATCH 07/13] Add the 'name' keyword to help. --- src/Exec_Emin.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Exec_Emin.cpp b/src/Exec_Emin.cpp index bb375184d5..fa73cd43d6 100644 --- a/src/Exec_Emin.cpp +++ b/src/Exec_Emin.cpp @@ -8,7 +8,7 @@ void Exec_Emin::Help() const { mprintf("\tcrdset [trajoutname ] [rmstol ] [nsteps <#>]\n" - "\t[] [frame <#>] [dx0 ] [out ]\n" + "\t[] [frame <#>] [dx0 ] [out ] [name ]\n" "\t[{nonbond|openmm}] []\n" "Warning: THIS COMMAND IS STILL UNDER DEVELOPMENT.\n" " Perform a simple steepest descent minimization on given COORDS set.\n" From e98ca3d83ff415f9b88f90e602429acd35b052d1 Mon Sep 17 00:00:00 2001 From: "Daniel R. Roe" Date: Fri, 21 Jul 2023 13:59:46 -0400 Subject: [PATCH 08/13] Update manual emin entry, add name keyword. Add 'openmm' keyword to energy manual entry. --- doc/cpptraj.lyx | 105 +++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 103 insertions(+), 2 deletions(-) diff --git a/doc/cpptraj.lyx b/doc/cpptraj.lyx index 9843c2e03c..c54a2db1f6 100644 --- a/doc/cpptraj.lyx +++ b/doc/cpptraj.lyx @@ -6744,6 +6744,13 @@ reference "subsec:cpptraj_createcrd" \begin_layout Subsection emin +\begin_inset CommandInset label +LatexCommand label +name "subsec:cpptraj-emin" + +\end_inset + + \end_layout \begin_layout LyX-Code @@ -6751,7 +6758,7 @@ emin crdset [trajoutname ] [rmstol ] [nsteps <#>] \end_layout \begin_layout LyX-Code - [] [frame <#>] [dx0 ] [out ] + [] [frame <#>] [dx0 ] [out ] [name ] \end_layout \begin_layout LyX-Code @@ -6819,6 +6826,14 @@ crdset ] File to write energies to. \end_layout +\begin_layout Description +[name +\begin_inset space ~ +\end_inset + +] If specified, create an energy per step data set. +\end_layout + \begin_layout Description [nonbond] If specified, use simple nonbonded potential term in additon to bonded terms. @@ -6841,9 +6856,61 @@ cut Set nonbonded interaction cutoff in Ang. (electrostatics and vdW). Default 8.0. +\end_layout + +\begin_layout Description +cutee +\begin_inset space ~ +\end_inset + + Set electrostatics interaction cutoff in Ang. \end_layout +\begin_layout Description +cutnb +\begin_inset space ~ +\end_inset + + Set vdW interaction cutoff in Ang. + +\end_layout + +\begin_layout Description +scaleee +\begin_inset space ~ +\end_inset + + Scaling factor to multiply 1-4 electrostatics interactions by. + +\end_layout + +\begin_layout Description +scalenb +\begin_inset space ~ +\end_inset + + Scaling factor to multiply 1-4 vdW interactions by. +\end_layout + +\begin_layout Description +shake +\begin_inset space ~ +\end_inset + + Use SHAKE constraints of : +\end_layout + +\begin_deeper +\begin_layout Description +'hydrogen' Constrain bonds to hydrogen. +\end_layout + +\begin_layout Description +'all' Constrain all bonds. +\end_layout + +\end_deeper \begin_layout Description nexclude \begin_inset space ~ @@ -6853,6 +6920,22 @@ nexclude Default 4. \end_layout +\begin_layout Description +qfac +\begin_inset space ~ +\end_inset + + Factor to use in electrostatic calculation. +\end_layout + +\begin_layout Standard +DataSets Created +\end_layout + +\begin_layout Description +[Energy] Total energy at each minimization step. +\end_layout + \end_deeper \begin_layout Standard THIS COMMAND IS STILL IN DEVELOPMENT AS OF VERSION 5.0.2. @@ -25467,7 +25550,7 @@ energy \end_layout \begin_layout LyX-Code -energy [] [] [out ] [nobondstoh] +energy [] [] [out ] [nobondstoh] [openmm []] \end_layout \begin_layout LyX-Code @@ -25545,6 +25628,24 @@ energy [] [] [out ] [nobondstoh] [nobondstoh] Skip calculating the energy of bonds to hydrogen. \end_layout +\begin_layout Description +[openmm] If specified and CPPTRAJ is compiled with OpenMM support, use OpenMM + to calculate energy. + Note this will only calculate total energy; any keywords pertaining to + individual energy components are not available. + For a list of potential options that can be used with 'openmm', see +\begin_inset CommandInset ref +LatexCommand vref +reference "subsec:cpptraj-emin" +plural "false" +caps "false" +noprefix "false" + +\end_inset + +. +\end_layout + \begin_layout Description [bond] Calculate bond energy. \end_layout From 481c6feffacaed7f8cf1c6595ce73c909a6be5e9 Mon Sep 17 00:00:00 2001 From: "Daniel R. Roe" Date: Fri, 21 Jul 2023 14:09:24 -0400 Subject: [PATCH 09/13] Add a tolerance --- test/Test_Emin/RunTest.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/Test_Emin/RunTest.sh b/test/Test_Emin/RunTest.sh index 354b23c468..1e3a16dce4 100755 --- a/test/Test_Emin/RunTest.sh +++ b/test/Test_Emin/RunTest.sh @@ -97,7 +97,7 @@ loadcrd ../tz2.rst7 1 1 name TZ2 emin crdset TZ2 nsteps 100 out omm.tz2.ene.dat openmm EOF RunCpptraj "$UNITNAME (Tz2)" - DoTest omm.tz2.ene.dat.save omm.tz2.ene.dat + DoTest omm.tz2.ene.dat.save omm.tz2.ene.dat -a 0.07 # All, PME UNITNAME="$UNITNAME (Tz2 PME)" CheckFor netcdf From c0899f87a5ed52b77312742115e71ac4cb32c551 Mon Sep 17 00:00:00 2001 From: "Daniel R. Roe" Date: Fri, 21 Jul 2023 14:10:55 -0400 Subject: [PATCH 10/13] 6.20.2. Revision bump for adding 'openmm' keyword to 'energy' action. --- src/Version.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Version.h b/src/Version.h index b077403d73..cc77287f99 100644 --- a/src/Version.h +++ b/src/Version.h @@ -12,7 +12,7 @@ * Whenever a number that precedes is incremented, all subsequent * numbers should be reset to 0. */ -#define CPPTRAJ_INTERNAL_VERSION "V6.20.1" +#define CPPTRAJ_INTERNAL_VERSION "V6.20.2" /// PYTRAJ relies on this #define CPPTRAJ_VERSION_STRING CPPTRAJ_INTERNAL_VERSION #endif From 6dbcb360e7526bd2881a7a89e62332c958940253 Mon Sep 17 00:00:00 2001 From: "Daniel R. Roe" Date: Mon, 24 Jul 2023 09:07:20 -0400 Subject: [PATCH 11/13] Try to fix python build by using setup-python@v4 --- .github/workflows/merge-gate.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/merge-gate.yml b/.github/workflows/merge-gate.yml index 5cacea3714..53386a9d6c 100644 --- a/.github/workflows/merge-gate.yml +++ b/.github/workflows/merge-gate.yml @@ -139,7 +139,7 @@ jobs: sudo apt-get install cmake-data cmake - uses: actions/checkout@v3 - name: Set up Python 3.8 - uses: actions/setup-python@v3 + uses: actions/setup-python@v4 with: python-version: 3.8 - name: Add conda to system path From bdf34182a537f11043a8e17c30964f5b6a85fce9 Mon Sep 17 00:00:00 2001 From: "Daniel R. Roe" Date: Mon, 24 Jul 2023 10:51:24 -0400 Subject: [PATCH 12/13] Try to fix python environment --- devtools/ci/environment.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/devtools/ci/environment.yml b/devtools/ci/environment.yml index d8bd2e9a06..34d6a61f6f 100644 --- a/devtools/ci/environment.yml +++ b/devtools/ci/environment.yml @@ -1,10 +1,10 @@ channels: - - conda-forge + - defaults dependencies: - - netcdf4 - - pyflakes + - python=3.8 - numpy - - cython - - parmed - - pytest - mock + - pytest + - cython + - setuptools + - curl From 47b4644746c9e130ef797c0baeec17ec63a2adb3 Mon Sep 17 00:00:00 2001 From: "Daniel R. Roe" Date: Mon, 24 Jul 2023 10:53:07 -0400 Subject: [PATCH 13/13] Try to fix the python CI install --- .github/workflows/merge-gate.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/merge-gate.yml b/.github/workflows/merge-gate.yml index 53386a9d6c..bdb3a047bf 100644 --- a/.github/workflows/merge-gate.yml +++ b/.github/workflows/merge-gate.yml @@ -148,7 +148,7 @@ jobs: echo $CONDA/bin >> $GITHUB_PATH - name: Install conda packages run: | - conda env update --file devtools/ci/environment.yml --name base + conda install setuptools cython numpy pytest mock curl - name: Install cpptraj run: | export PATH=$HOME/bin:${PATH}