votca 2026-dev
Loading...
Searching...
No Matches
votca::xtp::SegmentMapper< AtomContainer > Class Template Reference

#include <segmentmapper.h>

Collaboration diagram for votca::xtp::SegmentMapper< AtomContainer >:

Classes

struct  FragInfo
struct  Seginfo

Public Member Functions

 SegmentMapper (Logger &log)
void LoadMappingFile (const std::string &mapfile)
AtomContainer map (const Segment &seg, const SegId &segid) const
AtomContainer map (const Segment &seg, QMState state) const
AtomContainer map (const Segment &seg, const std::string &coordfilename) const

Private Types

using mapAtom = typename AtomContainer::Atom_Type
using atom_id = std::pair<Index, std::string>

Private Member Functions

Index FindVectorIndexFromAtomId (Index atomid, const std::vector< mapAtom * > &fragment_mapatoms) const
void ParseFragment (Seginfo &seginfo, const tools::Property &frag)
template<typename T>
Eigen::Vector3d CalcWeightedPos (const std::vector< double > &weights, const T &atoms) const
void PlaceMapAtomonMD (const std::vector< mapAtom * > &fragment_mapatoms, const std::vector< const Atom * > &fragment_mdatoms) const
void MapMapAtomonMD (const FragInfo &frag, const std::vector< mapAtom * > &fragment_mapatoms, const std::vector< const Atom * > &fragment_mdatoms) const
void TransferExternalBondDirection (mapAtom *, const Atom *, const Eigen::Matrix3d &) const
void TransferBondedPartners (mapAtom *, const Atom *, const std::map< Index, mapAtom * > &) const
std::pair< Index, IndexCalcAtomIdRange (const Segment &seg) const
std::pair< Index, IndexCalcAtomIdRange (const std::vector< Index > &seg) const
atom_id StringToMapIndex (const std::string &map_string) const
atom_id StringToMDIndex (const std::string &md_string) const
Index getRank (const mapAtom &atom) const
std::vector< double > getWeights (const tools::Property &frag) const
std::string getFrame (const tools::Property &frag) const
void FillMap ()
void FillMap ()
Index getRank (const QMAtom &) const
void TransferExternalBondDirection (QMAtom *map_atom, const Atom *md_atom, const Eigen::Matrix3d &rot) const
void TransferBondedPartners (QMAtom *map_atom, const Atom *md_atom, const std::map< Index, QMAtom * > &md_id_to_map_atom) const

Private Attributes

std::map< std::string, std::string > mapatom_xml_
std::map< std::string, Seginfosegment_info_
Loggerlog_

Detailed Description

template<class AtomContainer>
class votca::xtp::SegmentMapper< AtomContainer >

Definition at line 39 of file segmentmapper.h.

Member Typedef Documentation

◆ atom_id

template<class AtomContainer>
using votca::xtp::SegmentMapper< AtomContainer >::atom_id = std::pair<Index, std::string>
private

Definition at line 54 of file segmentmapper.h.

◆ mapAtom

template<class AtomContainer>
using votca::xtp::SegmentMapper< AtomContainer >::mapAtom = typename AtomContainer::Atom_Type
private

Definition at line 52 of file segmentmapper.h.

Constructor & Destructor Documentation

◆ SegmentMapper()

template<class AtomContainer>
votca::xtp::SegmentMapper< AtomContainer >::SegmentMapper ( Logger & log)

Definition at line 30 of file segmentmapper.cc.

Member Function Documentation

◆ CalcAtomIdRange() [1/2]

template<class AtomContainer>
std::pair< Index, Index > votca::xtp::SegmentMapper< AtomContainer >::CalcAtomIdRange ( const Segment & seg) const
private

Definition at line 267 of file segmentmapper.cc.

◆ CalcAtomIdRange() [2/2]

template<class AtomContainer>
std::pair< Index, Index > votca::xtp::SegmentMapper< AtomContainer >::CalcAtomIdRange ( const std::vector< Index > & seg) const
private

Definition at line 260 of file segmentmapper.cc.

◆ CalcWeightedPos()

template<class AtomContainer>
template<typename T>
Eigen::Vector3d votca::xtp::SegmentMapper< AtomContainer >::CalcWeightedPos ( const std::vector< double > & weights,
const T & atoms ) const
private

Definition at line 52 of file segmentmapper.cc.

◆ FillMap() [1/2]

void votca::xtp::SegmentMapper< QMMolecule >::FillMap ( )
inlineprivate

Definition at line 164 of file segmentmapper.h.

◆ FillMap() [2/2]

template<class AtomContainer>
void votca::xtp::SegmentMapper< AtomContainer >::FillMap ( )
inlineprivate

Definition at line 153 of file segmentmapper.h.

◆ FindVectorIndexFromAtomId()

template<class AtomContainer>
Index votca::xtp::SegmentMapper< AtomContainer >::FindVectorIndexFromAtomId ( Index atomid,
const std::vector< mapAtom * > & fragment_mapatoms ) const
private

Definition at line 301 of file segmentmapper.cc.

◆ getFrame()

template<class AtomContainer>
std::string votca::xtp::SegmentMapper< AtomContainer >::getFrame ( const tools::Property & frag) const
inlineprivate

Definition at line 146 of file segmentmapper.h.

◆ getRank() [1/2]

template<class AtomContainer>
Index votca::xtp::SegmentMapper< AtomContainer >::getRank ( const mapAtom & atom) const
inlineprivate

Definition at line 142 of file segmentmapper.h.

◆ getRank() [2/2]

Index votca::xtp::SegmentMapper< QMMolecule >::getRank ( const QMAtom & ) const
inlineprivate

Definition at line 174 of file segmentmapper.h.

◆ getWeights()

template<class AtomContainer>
std::vector< double > votca::xtp::SegmentMapper< AtomContainer >::getWeights ( const tools::Property & frag) const
private

Definition at line 64 of file segmentmapper.cc.

◆ LoadMappingFile()

template<class AtomContainer>
void votca::xtp::SegmentMapper< AtomContainer >::LoadMappingFile ( const std::string & mapfile)

Definition at line 181 of file segmentmapper.cc.

◆ map() [1/3]

template<class AtomContainer>
AtomContainer votca::xtp::SegmentMapper< AtomContainer >::map ( const Segment & seg,
const SegId & segid ) const

Definition at line 35 of file segmentmapper.cc.

◆ map() [2/3]

template<class AtomContainer>
AtomContainer votca::xtp::SegmentMapper< AtomContainer >::map ( const Segment & seg,
const std::string & coordfilename ) const

Definition at line 423 of file segmentmapper.cc.

◆ map() [3/3]

template<class AtomContainer>
AtomContainer votca::xtp::SegmentMapper< AtomContainer >::map ( const Segment & seg,
QMState state ) const

Definition at line 403 of file segmentmapper.cc.

◆ MapMapAtomonMD()

template<class AtomContainer>
void votca::xtp::SegmentMapper< AtomContainer >::MapMapAtomonMD ( const FragInfo & frag,
const std::vector< mapAtom * > & fragment_mapatoms,
const std::vector< const Atom * > & fragment_mdatoms ) const
private

Definition at line 312 of file segmentmapper.cc.

◆ ParseFragment()

template<class AtomContainer>
void votca::xtp::SegmentMapper< AtomContainer >::ParseFragment ( Seginfo & seginfo,
const tools::Property & frag )
private

Definition at line 101 of file segmentmapper.cc.

◆ PlaceMapAtomonMD()

template<class AtomContainer>
void votca::xtp::SegmentMapper< AtomContainer >::PlaceMapAtomonMD ( const std::vector< mapAtom * > & fragment_mapatoms,
const std::vector< const Atom * > & fragment_mdatoms ) const
private

Definition at line 284 of file segmentmapper.cc.

◆ StringToMapIndex()

template<class AtomContainer>
std::pair< Index, std::string > votca::xtp::SegmentMapper< AtomContainer >::StringToMapIndex ( const std::string & map_string) const
private

Definition at line 230 of file segmentmapper.cc.

◆ StringToMDIndex()

template<class AtomContainer>
std::pair< Index, std::string > votca::xtp::SegmentMapper< AtomContainer >::StringToMDIndex ( const std::string & md_string) const
private

Definition at line 241 of file segmentmapper.cc.

◆ TransferBondedPartners() [1/2]

template<class AtomContainer>
void votca::xtp::SegmentMapper< AtomContainer >::TransferBondedPartners ( mapAtom * ,
const Atom * ,
const std::map< Index, mapAtom * > &  ) const
inlineprivate

Definition at line 131 of file segmentmapper.h.

◆ TransferBondedPartners() [2/2]

void votca::xtp::SegmentMapper< QMMolecule >::TransferBondedPartners ( QMAtom * map_atom,
const Atom * md_atom,
const std::map< Index, QMAtom * > & md_id_to_map_atom ) const
inlineprivate

Definition at line 190 of file segmentmapper.h.

◆ TransferExternalBondDirection() [1/2]

template<class AtomContainer>
void votca::xtp::SegmentMapper< AtomContainer >::TransferExternalBondDirection ( mapAtom * ,
const Atom * ,
const Eigen::Matrix3d &  ) const
inlineprivate

Definition at line 111 of file segmentmapper.h.

◆ TransferExternalBondDirection() [2/2]

void votca::xtp::SegmentMapper< QMMolecule >::TransferExternalBondDirection ( QMAtom * map_atom,
const Atom * md_atom,
const Eigen::Matrix3d & rot ) const
inlineprivate

Definition at line 179 of file segmentmapper.h.

Member Data Documentation

◆ log_

template<class AtomContainer>
Logger& votca::xtp::SegmentMapper< AtomContainer >::log_
private

Definition at line 134 of file segmentmapper.h.

◆ mapatom_xml_

template<class AtomContainer>
std::map<std::string, std::string> votca::xtp::SegmentMapper< AtomContainer >::mapatom_xml_
private

Definition at line 73 of file segmentmapper.h.

◆ segment_info_

template<class AtomContainer>
std::map<std::string, Seginfo> votca::xtp::SegmentMapper< AtomContainer >::segment_info_
private

Definition at line 74 of file segmentmapper.h.


The documentation for this class was generated from the following files: