21#ifndef VOTCA_XTP_QMMOLECULE_H
22#define VOTCA_XTP_QMMOLECULE_H
38 void WriteXYZ(std::string filename, std::string header)
const;
43 for (
const auto&
at : container) {
78 atom.
setID(
at.getId() + offset);
79 const Index* partners =
at.getBondedPartnerIds();
82 offset_partners[i] = (partners[i] == -1) ? -1 : partners[i] + offset;
100 out << container.
getId() <<
" " << container.
getType() <<
"\n";
101 for (
const QMAtom& atom : container) {
const std::string & getType() const
const QMAtom & at(Index index) const
AtomContainer(std::string type, Index id)
std::vector< QMAtom > atomlist_
void setBondedPartnerIds(const Index(&ids)[kMaxBondedPartners])
void setID(const Index index)
static constexpr Index kMaxBondedPartners
QMMolecule(std::string name, Index id)
void LoadFromFile(std::string filename)
friend std::ostream & operator<<(std::ostream &out, const QMMolecule &container)
void WriteXYZ(std::string filename, std::string header) const
void AddContainer(const AtomContainer< QMAtom > &container)
QMMolecule(CheckpointReader &r)
Provides a means for comparing floating point numbers.