#include <QCMndo.hpp>
Inheritance diagram for QCMndo:
Class of the semi-empirical quantum model MNDO :
Modiflied Neglect of Diatomic Overlap.
Definition at line 39 of file QCMndo.hpp.
Public Member Functions | |
template<class TPManager> | |
QCFloat | computeCoreEnergy (TPManager &manager, typename TPManager::TSystem::QCIterator &iter) |
template<class TPIterator> | |
QCFloat | computeElecEnergy (TPIterator &workingSystem, QCDensityGtr< QCSymMatrix > &QCRestrict densityP) |
template<class TPIterator> | |
QCFloat | computeElecEnergy (TPIterator &workingSystem, QCDensityGtr< QCSymMatrix > &__restrict__ densityP) |
template<class TPManager> | |
void | deriveCoreEnergy (TPManager &manager, typename TPManager::TSystem::QCIterator &workingSystem, QCFloat *QCRestrict dRepIntegralSSVector) |
template<class TPManager> | |
void | deriveCoreEnergy (TPManager &manager, typename TPManager::TSystem::QCIterator &workingSystem, QCFloat *__restrict__ dRepIntegralSSVector) |
template<class TPManager> | |
void | deriveElecEnergy (TPManager &manager, typename TPManager::TSystem::QCIterator &workingSystem, const QCPoint3D &shift, QCFloat *QCRestrict dRepIntegralSSVector) |
template<class TPManager> | |
void | deriveElecEnergy (TPManager &manager, typename TPManager::TSystem::QCIterator &workingSystem, const QCPoint3D &shift, QCFloat *__restrict__ dRepIntegralSSVector) |
void | dispatchDerivative (QCSystem &system, QCFloat deOnDxj, QCFloat deOnDyj, QCFloat deOnDzj, int i, int j) |
QCMndo (const int &nbAOsp, const int &nbAOspd) | |
virtual | ~QCMndo (void) |
Static Public Attributes | |
static const int | NbMaxAtomTypes = 83 |
static const int | NbMaxOrbTypes = 3 |
Protected Member Functions | |
bool | isOHorNH (int atomicNbX, int atomicNbY) |
QCFloat | sometimesR (int atomicNbX, int atomicNbY, const QCFloat &rAB) |
|
Definition at line 61 of file QCMndo.cpp. |
|
Definition at line 71 of file QCMndo.cpp. |
|
Calculation of the core-core repulsion Definition at line 84 of file QCMndo.cpp. References QC_ONE, QC_ZERO, QCExp, and QCRestrict. |
|
Calcul de l'energie electronique a partir de P, H et F FIXME Definition at line 179 of file QCMndo.cpp. References QC_HALF, QC_TRACE_ENER, and QC_ZERO. |
|
Calculation of the electronic energy |
|
Definition at line 544 of file QCMndo.cpp. References COORDX, COORDY, COORDZ, dispatchDerivative(), QCGeneralData::getDeltaQ(), isOHorNH(), QC_ONE, QC_TWO, QC_ZERO, QCExp, and QCRestrict. Here is the call graph for this function: ![]() |
|
|
|
Definition at line 228 of file QCMndo.cpp. References COORDX, COORDY, COORDZ, dispatchDerivative(), QCGeneralData::getDerivationType(), QC_FOUR, QC_HALF, QC_TWO, QC_ZERO, QCRestrict, QCModel::spdWorkingAB, QCModel::spWorkingAA, QCModel::spWorkingAB, and QCModel::spWorkingBB. Here is the call graph for this function: ![]() |
|
|
|
Definition at line 708 of file QCMndo.cpp. References QCAtoms::incrXDisp(), QCAtoms::incrYDisp(), QCAtoms::incrZDisp(), and QC_ZERO. Referenced by deriveCoreEnergy(), and deriveElecEnergy(). Here is the call graph for this function: ![]() |
|
Return true if X-Y is a O-H or a N-H bound Definition at line 118 of file QCMndo.hpp. Referenced by deriveCoreEnergy(), and sometimesR(). |
|
Function used in the calculation of the core-core repulsion energy. An r appears in that equation for the MNDO, AM1 and PM3 approaches in the case of O-H or N-H bounds Definition at line 128 of file QCMndo.hpp. References isOHorNH(), and QC_ONE. Here is the call graph for this function: ![]() |
|
The maximum atomic number of recognized atoms. It's 83, that means that actually, we can write in the input file atoms which atomic number belongs to [1; 83]. Definition at line 161 of file QCMndo.hpp. |
|
The maximum number of type of described orbitals. It's 3 for s, p and d atomic orbitals. Actually, we only use s and p. d will be used in MNDO/d. Definition at line 155 of file QCMndo.hpp. |