22 #ifndef __PLUMED_tools_PDB_h
23 #define __PLUMED_tools_PDB_h
50 bool read(
const std::string&file,
bool naturalUnits,
double scale);
58 const std::vector<double> &
getBeta()
const;
63 const std::vector<std::string> &
getRemark()
const;
71 void getResidueRange(
const std::string& chainname,
unsigned& res_start,
unsigned& res_end, std::string& errmsg )
const;
75 bool getBackbone(
const unsigned& resnumber,
const std::vector<std::string>& backnames, std::vector<AtomNumber>& backnumbers )
const ;
77 std::string
getChainID(
const unsigned& resnumber)
const;
79 void renameAtoms(
const std::string& old_name,
const std::string& new_name );
Simple class to store the index of an atom.
std::vector< std::string > atomsymb
std::vector< std::string > residuenames
bool read(const std::string &file, bool naturalUnits, double scale)
Read the pdb from a file, scaling positions by a factor scale.
unsigned getResidueNumber(AtomNumber a) const
return the residue number for a specific atom
void getAtomRange(const std::string &chainname, AtomNumber &a_start, AtomNumber &a_end, std::string &errmsg) const
Get the atoms in each of the chains.
friend Log & operator<<(Log &ostr, const PDB &pdb)
use the log to dump information
std::string getAtomName(AtomNumber a) const
return the name of a specific atom
void getChainNames(std::vector< std::string > &chains) const
Get the names of all the chains in the pdb file.
Class containing the log stream.
void renameAtoms(const std::string &old_name, const std::string &new_name)
This allows you to give atoms a new name - this is used to rename the HB1 atoms in GLY residues CB so...
std::vector< double > beta
const std::vector< Vector > & getPositions() const
Access to the position array.
void setArgKeyword(const std::string &new_args)
This is used to set the keyword ARG - this is so we we can use a1.
const std::vector< double > & getBeta() const
Access to the beta array.
const std::vector< double > & getOccupancy() const
Access to the occupancy array.
std::vector< Vector > positions
std::string getResidueName(AtomNumber a) const
return the residue name for a specific atom
std::vector< double > occupancy
std::vector< std::string > chain
std::map< AtomNumber, unsigned > number2index
const std::vector< std::string > & getRemark() const
Access to the lines of REMARK.
std::vector< unsigned > residue
bool getBackbone(const unsigned &resnumber, const std::vector< std::string > &backnames, std::vector< AtomNumber > &backnumbers) const
Get the atoms in the backbone of a particular residue.
bool readFromFilepointer(FILE *fp, bool naturalUnits, double scale)
Read from a file pointer.
unsigned size() const
Returns the number of atoms.
const std::vector< AtomNumber > & getAtomNumbers() const
Access to the indexes.
std::string getChainID(const unsigned &resnumber) const
Get the chain ID that a particular residue is a part of.
void getResidueRange(const std::string &chainname, unsigned &res_start, unsigned &res_end, std::string &errmsg) const
Get the residues in each of the chains.
std::vector< AtomNumber > numbers
std::vector< std::string > remark