diff --git a/src/adjmat/AdjacencyMatrixBase.cpp b/src/adjmat/AdjacencyMatrixBase.cpp index 8439f73b43..970c9f91ea 100644 --- a/src/adjmat/AdjacencyMatrixBase.cpp +++ b/src/adjmat/AdjacencyMatrixBase.cpp @@ -55,8 +55,8 @@ AdjacencyMatrixBase::AdjacencyMatrixBase(const ActionOptions& ao): { std::vector shape(2); std::vector t; parseAtomList("GROUP", t ); if( t.size()==0 ) { - parseAtomList("ATOMS", t); - if( t.size()>0 ) warning("using depracated syntax for contact matrix. You are strongly recommended to use GROUP instead of ATOMS"); + parseAtomList("ATOMS", t); + if( t.size()>0 ) warning("using depracated syntax for contact matrix. You are strongly recommended to use GROUP instead of ATOMS"); } if( t.size()==0 ) { diff --git a/src/adjmat/ContactMatrixShortcut.cpp b/src/adjmat/ContactMatrixShortcut.cpp index 915b45e14d..47d63a0ce0 100644 --- a/src/adjmat/ContactMatrixShortcut.cpp +++ b/src/adjmat/ContactMatrixShortcut.cpp @@ -90,23 +90,23 @@ ContactMatrixShortcut::ContactMatrixShortcut(const ActionOptions& ao): Action(ao), ActionShortcut(ao) { - std::vector grp_str; std::string atomsstr=""; - std::vector atomsvec; parseVector("ATOMS",atomsvec); + std::vector grp_str; std::string atomsstr=""; + std::vector atomsvec; parseVector("ATOMS",atomsvec); if( atomsvec.size()>0 ) { - for(unsigned i=0; i( atomsvec[i] ); - if( gg ) grp_str.push_back( atomsvec[i] ); - } - if( grp_str.size()!=atomsvec.size() ) { - grp_str.resize(0); - atomsstr = " ATOMS=" + atomsvec[0]; for(unsigned i=1; i( atomsvec[i] ); + if( gg ) grp_str.push_back( atomsvec[i] ); + } + if( grp_str.size()!=atomsvec.size() ) { + grp_str.resize(0); + atomsstr = " ATOMS=" + atomsvec[0]; for(unsigned i=1; i9 ) error("cannot handle more than 9 groups"); if( grp_str.size()==0 ) { readInputLine( getShortcutLabel() + ": CONTACT_MATRIX_PROPER " + atomsstr + " " + convertInputLineToString() ); return; } diff --git a/src/adjmat/Sprint.cpp b/src/adjmat/Sprint.cpp index 456c3c1ecd..2dca7f097e 100644 --- a/src/adjmat/Sprint.cpp +++ b/src/adjmat/Sprint.cpp @@ -103,17 +103,17 @@ Sprint::Sprint(const ActionOptions& ao): Action(ao), ActionShortcut(ao) { - std::string matinp; parse("MATRIX",matinp); + std::string matinp; parse("MATRIX",matinp); if( matinp.length()==0 ) { - readInputLine( getShortcutLabel() + "_jmat: CONTACT_MATRIX " + convertInputLineToString() ); - matinp = getShortcutLabel() + "_jmat"; - } + readInputLine( getShortcutLabel() + "_jmat: CONTACT_MATRIX " + convertInputLineToString() ); + matinp = getShortcutLabel() + "_jmat"; + } std::vector nin_group; unsigned ntot_atoms=0; for(unsigned i=1;; ++i) { - std::string inum; Tools::convert( i, inum ); - ActionWithValue* av = plumed.getActionSet().selectWithLabel( matinp + inum + inum ); - if( !av ) break ; - unsigned natoms = (av->copyOutput(0))->getShape()[0]; nin_group.push_back( natoms ); ntot_atoms += natoms; + std::string inum; Tools::convert( i, inum ); + ActionWithValue* av = plumed.getActionSet().selectWithLabel( matinp + inum + inum ); + if( !av ) break ; + unsigned natoms = (av->copyOutput(0))->getShape()[0]; nin_group.push_back( natoms ); ntot_atoms += natoms; } // Diagonalization @@ -133,8 +133,8 @@ Sprint::Sprint(const ActionOptions& ao): readInputLine( sort_act ); readInputLine( getShortcutLabel() + jnum + ": SORT ARG=" + getShortcutLabel() + "_selection" + jnum ); for(unsigned n=0; n GridBase::create(const std::string& funcl, const std:: std::vector gbin1(nvar); std::vector gbin(nvar); std::vector labels(nvar),gmin(nvar),gmax(nvar); std::vector fieldnames; ifile.scanFieldList( fieldnames ); + // Retrieve names for fields - for(unsigned i=0; igetName(); + for(unsigned i=0; igetName(); bool found=false; + for(unsigned j=0; j GridBase::create(const std::string& funcl, const std:: gbin[i]=gbin1[i]-1; // Note header in grid file indicates one more bin that there should be when data is not periodic plumed_massert( pstring=="false", "input value is not periodic but grid is"); } - hasder=ifile.FieldExist( "der_" + args[i]->getName() ); + hasder=ifile.FieldExist( "der_" + labels[i] ); if( doder && !hasder ) plumed_merror("missing derivatives from grid file"); for(unsigned j=0; j GridBase::create(const std::string& funcl, const std:: ifile.scanField( "nbins_" + labels[i], gbin1[i]); ifile.scanField( "periodic_" + labels[i], pstring ); } - if(hasder) { for(unsigned i=0; igetName(), dder[i] ); } } + if(hasder) { for(unsigned i=0; igetIndex(xx); if(doder) {grid->setValueAndDerivatives(index,f,dder);} else {grid->setValue(index,f);}