Gromacs  2026.0-dev-20251008-6b655c5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Functions
qmmmtopologypreprocessor.h File Reference
#include <set>
#include <string>
#include <vector>
#include "gromacs/utility/arrayref.h"
#include "gromacs/utility/basedefinitions.h"
#include "gromacs/utility/real.h"
#include "qmmmtypes.h"
+ Include dependency graph for qmmmtopologypreprocessor.h:
+ This graph shows which files directly or indirectly include this file:

Description

QMMMTopologyPrepocessor class responsible for all modificatios of the topology during input pre-processing.

Author
Dmitry Morozov dmitr.nosp@m.y.mo.nosp@m.rozov.nosp@m.@jyu.nosp@m..fi

Classes

class  gmx::QMMMTopologyPreprocessor
 Class implementing gmx_mtop_t QMMM modifications during preprocessing. More...
 

Functions

std::vector< bool > gmx::splitQMBlocks (gmx_mtop_t *mtop, const std::set< int > &qmIndices)
 Splits QM containing molecules out of MM blocks in topology. More...
 
std::vector< realgmx::removeQMClassicalCharges (gmx_mtop_t *mtop, const std::set< int > &qmIndices, const std::vector< bool > &bQMBlock, real refQ, const MDLogger &logger, WarningHandler *wi)
 Removes classical charges from QM atoms and virtual sites. More...
 
void gmx::addQMLJExclusions (gmx_mtop_t *mtop, const std::set< int > &qmIndices, const MDLogger &logger)
 Build exclusion list for non-bonded interactions between QM atoms. More...
 
std::vector< int > gmx::buildQMMMAtomNumbers (const gmx_mtop_t &mtop)
 Builds and returns a vector of atom numbers for all atoms in mtop. More...
 
void gmx::modifyQMMMTwoCenterInteractions (gmx_mtop_t *mtop, const std::set< int > &qmIndices, const std::vector< bool > &bQMBlock, const MDLogger &logger)
 Modifies pairwise bonded interactions. More...
 
void gmx::modifyQMMMThreeCenterInteractions (gmx_mtop_t *mtop, const std::set< int > &qmIndices, const std::vector< bool > &bQMBlock, const MDLogger &logger)
 Modifies three-centers interactions (i.e. Angles, Settles) More...
 
void gmx::modifyQMMMFourCenterInteractions (gmx_mtop_t *mtop, const std::set< int > &qmIndices, const std::vector< bool > &bQMBlock, const MDLogger &logger)
 Modifies four-centers interactions. More...
 
void gmx::checkConstrainedBonds (gmx_mtop_t *mtop, const std::set< int > &qmIndices, const std::vector< bool > &bQMBlock, WarningHandler *wi)
 Checks for constrained bonds within QM subsystem. More...
 
std::vector< LinkFrontier > gmx::buildQMMMLink (gmx_mtop_t *mtop, const std::set< int > &qmIndices, const std::vector< bool > &bQMBlock, const MDLogger &logger)
 Builds link frontier vector with pairs of atoms indicting broken QM - MM chemical bonds. More...