Scine::Swoose  2.1.0
This is the SCINE module Swoose.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
QmmmHelpers.h File Reference
#include <Eigen/Core>
#include <list>
#include <vector>
Include dependency graph for QmmmHelpers.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Scine::Qmmm::QmmmHelpers::ChargeRedistributionResult
 A small container for the result of a charge redistribution, containing the new atomic charges, the auxiliary virtual charges that are not placed on atoms as well as their positions. More...
 

Typedefs

using Scine::Utils::PositionCollection = Eigen::Matrix< double, Eigen::Dynamic, 3, Eigen::RowMajor >
 

Functions

std::vector< double > Scine::Qmmm::QmmmHelpers::writeChargesAndPositionsAsList (const Utils::AtomCollection &structure, const ChargeRedistributionResult &chargeRedistributionResult, const std::vector< int > &listOfQmAtoms)
 
void Scine::Qmmm::QmmmHelpers::writePointChargesFile (const Utils::PositionCollection &positions, const ChargeRedistributionResult &chargeRedistributionResult, const std::vector< int > &listOfQmAtoms, const std::string &filename, bool writeTurbomoleFormat)
 Writes the point charges of the MM region to a file needed by ORCA. More...
 
Utils::AtomCollection Scine::Qmmm::QmmmHelpers::createQmRegion (const std::vector< int > &listOfQmAtoms, const Utils::AtomCollection &structure, const std::vector< std::list< int >> &listsOfNeighbors, const std::string &xyzFilename, std::vector< int > &mmBoundaryAtoms)
 Creates the QM region from the whole structure. More...
 
void Scine::Qmmm::QmmmHelpers::checkValidityOfQmRegion (const std::vector< int > &listOfQmAtoms, const Utils::AtomCollection &structure)
 Checks the validity of the selected QM region. More...
 
void Scine::Qmmm::QmmmHelpers::addAllLinkAtoms (Utils::AtomCollection &qmRegion, const Utils::AtomCollection &fullStructure, const std::vector< std::list< int >> &listsOfNeighbors, const std::vector< int > &listOfQmAtoms, std::vector< int > &mmBoundaryAtoms)
 Adds the link atoms to the QM region. More...
 
void Scine::Qmmm::QmmmHelpers::addOneLinkAtom (Utils::AtomCollection &qmRegion, const Utils::Atom &qmAtom, const Utils::Atom &mmAtom)
 Adds a single link atom where a bond between two given atoms exists in the full molecular structure. More...
 
ChargeRedistributionResult Scine::Qmmm::QmmmHelpers::getRedistributedCharges (std::vector< double > charges, const Utils::PositionCollection &positions, const std::vector< int > &mmBoundaryAtoms, const std::vector< std::list< int >> &listsOfNeighbors, const std::vector< int > &listOfQmAtoms, const std::string &scheme)
 Performs a charge redistribution, so that the MM atoms close to the QM-MM boundary carry no charge. More...
 

Detailed Description