#include <QCSubDomain.hpp>
Inheritance diagram for QCSubDomain:
The class of the sub-domains. These sub-domains are used in the Divide And Conquer approach. Each sub-domain contains a part of the global atomic system. It appplies a such like SCF algorithm to that local sud-domain and get a local solution that can be merged with other local solutions to obtain the global solution.
Definition at line 80 of file QCSubDomain.hpp.
Public Member Functions | |
void | addOverlpIndirectionInfo (int remoteSbdId, int atomIdx, int remoteAtomIdx, QCSubDomainZone remoteZone) |
void | allocStructures (QCPartSubDomain &domain) |
Allocate the structures of subdomain and neigboors. | |
void | allocStructures (int nbatoms, int nbao, int nbovrlp, const int *sbdIds, const int *nbshared) |
Allocate the structures of subdomain and neigboors. | |
template<class TPParam> | |
void | computeBFactor (const TPParam *QCRestrict parameters) |
template<class TPParam> | |
void | computeBFactor (const TPParam *__restrict__ parameters) |
bool | containsNonShell2 (int mapidx) const |
void | copyAtomOverlpInto (QCFloat *atomsBuff, int *orderBuff, int *ovrlpBuff, QCSubDomainZone *zoneBuff, int *blockBuff=NULL) |
void | fillAtomInStructure (std::vector< std::vector< QCAtomIn > > &v) |
template<class TPParam> | |
void | fillDensityArray (const TPParam *QCRestrict parameters, QCFloat *QCRestrict &densityArray, bool alloc) |
template<class TPParam> | |
void | fillDensityArray (const TPParam *__restrict__ parameters, QCFloat *__restrict__ &densityArray, bool alloc=false) |
void | fillWeight (const QCGeneralData &data) |
QCFloat | getBFactor (int idx) const |
QCFloat * | getBFactor (void) |
int | getDensityBlockCount (void) const |
int | getDensityBlockIdx (int idx) const |
int | getGlobalIdx (const int idx) const |
return the global index (in the whole molecule) of local index idx. | |
const int * | getGlobalIdxs (void) const |
int | getId (void) const |
Return the Id of the sub domain. | |
int | getIndLocalIdx (int mapidx, int cellidx) |
int | getIndRemoteIdx (int mapidx, int cellidx) |
int | getMapOffset (int sbdId) const |
QCModelMatrices & | getMatrices (void) |
int | getNbAOCoreShell1 (void) const |
int | getNbAOShell2 (void) const |
int | getNbAtomCoreShell1 (void) const |
int | getNbAtomShell2 (void) const |
int | getNbFilledOM (void) const |
int | getNbOccupiedOM (void) const |
int | getNbOverlpSD (void) const |
int | getNbSharedAtoms (int mapidx) const |
QCFloat | getOrbitalOccupN (int idx) const |
QCFloat * | getOrbitalOccupN (void) |
int * | getOverlapMap (void) |
int | getOverlapMapSize (void) const |
int | getRemDomainId (int mapidx) const |
int | getRemoteIdx (int sbdId, int atomIdx) const |
const QCSystem & | getRootSystem (void) const |
const QCSystem & | getSystem (void) const |
QCSystem & | getSystem (void) |
QCSubDomainZone * | getZone () const |
return the array of zone type | |
QCSubDomainZone | getZone (int idx) const |
return the zone type of atoms idx | |
template<class TPParam> | |
void | initWeightedDensity (const TPParam *QCRestrict parameters) |
template<class TPParam> | |
void | initWeightedDensity (const TPParam *__restrict__) |
void | modifyMatricesAndEnergy (const QCFloat &lambdaOpt) |
void | printHeadOfInternalStructure () |
QCSubDomain (const QCSystem *root) | |
QCSubDomain (void) | |
void | setAtomOverlpFrom (QCFloat *atomsBuff, int *orderBuff, int *ovrlpBuff, QCSubDomainZone *zoneBuff, int *blockBuff=NULL) |
void | setDensityBlockIdx (int idx, int val) |
void | setGlobalIdx (int idx, int val) |
void | setGlobalIndex (const int id) |
void | setId (int id) |
void | setNbFilledOccupiedOM (int filled, int occup) |
void | setOrbitalOccupN (int idx, QCFloat val) |
void | setRootSystem (const QCSystem *root) |
template<class TPParam> | |
void | setSystemNumbers (const TPParam *QCRestrict parameters) |
template<class TPParam> | |
void | setSystemNumbers (const TPParam *__restrict__ parameters) |
void | setZone (int idx, QCSubDomainZone val) |
void | sortOverlapments (void) |
template<class TPParam> | |
QCFloat | traceProductCoreShell1 (const TPParam *QCRestrict parameters, QCSymMatrix &QCRestrict fockMatrix, QCSymMatrix &QCRestrict densityMatrix) |
template<class TPParam> | |
QCFloat | traceProductCoreShell1 (const TPParam *__restrict__ parameters, QCSymMatrix &__restrict__ fockMatrix, QCSymMatrix &__restrict__ densityMatrix) |
void | unsetAtomOverlp (void) |
void | updateInternalStructure () |
Update the head of the overlapMap structure. | |
void | writeInFileNew (std::ofstream &out) |
Write the new format of the description of the subdomain. | |
void | writeOverlapStructure () |
void | writeSubDomainHeader (std::ofstream &out) |
Write the Partition Description of the current subdomain. | |
~QCSubDomain (void) | |
Private Member Functions | |
void | sort (int offset) |
void | swap (int i, int j) |
Private Attributes | |
QCFloat * | bFactor |
int | densityBlockCount |
int * | densityBlockIdx |
int | domainId |
int | globalDomainId |
int * | globalIdx |
int | nbAOCoreShell1 |
int | nbAOShell2 |
int | nbAtomCoreShell1 |
int | nbAtomShell2 |
int | nbFilledOM |
int | nbOccupiedOM |
QCFloat *__restrict__ | orbitalOccupN |
int * | overlapMap |
int | overlapMapSize |
const QCSystem * | rootSystem |
QCSymMatrix | weight |
QCSubDomainZone * | zone |
Friends | |
ostream & | operator<< (ostream &out, const QCSubDomain &domain) |
|
Basic constructor Definition at line 48 of file QCSubDomain.cpp. |
|
Definition at line 34 of file QCSubDomain.cpp. |
|
Definition at line 62 of file QCSubDomain.cpp. References bFactor, densityBlockIdx, globalIdx, orbitalOccupN, overlapMap, QC_TRACE_END, and zone. |
|
Definition at line 189 of file QCSubDomain.cpp. References getMapOffset(), IND_MAP_CELL, IND_MAP_HEAD, LOCAL_IND_IDX, NB_SHARED_ATOM_IDX, overlapMap, REMOTE_IND_IDX, and REMOTE_ZONE_IDX. Referenced by QCMDSystem< TPSolver >::fillMaps(). Here is the call graph for this function: ![]() |
|
Allocate the structures of subdomain and neigboors. Allocate the structures of subdomain and neigboors.
Definition at line 139 of file QCSubDomain.cpp. References QCAtoms::allocateAtoms(), QCOrdering::allocateCells(), bFactor, densityBlockIdx, QCPartSubDomain::getLoad(), QCPartSubDomain::getNbAtoms(), QCPartSubDomain::getNbAtomsShell1(), QCPartSubDomain::getNbAtomsShell2(), QCPartSubDomain::getNbNeighbors(), QCPartSubDomain::getNeighborIdx(), globalIdx, IND_MAP_CELL, IND_MAP_HEAD, NB_AO_SHELL1_IDX, NB_AO_SHELL2_IDX, NB_ATOM_SHELL1_IDX, NB_ATOM_SHELL2_IDX, NB_OVRLP_IDX, NB_SHARED_AO_IDX, NB_SHARED_ATOM_IDX, QCAtoms::nbAtoms, orbitalOccupN, overlapMap, overlapMapSize, OVRLP_MAP_DECL, OVRLP_MAP_HEAD, printHeadOfInternalStructure(), QC_TRACE_INIT, SBD_ID_IDX, QCSymMatrix::setDimAndAllocate(), weight, and zone. Here is the call graph for this function: ![]() |
|
Allocate the structures of subdomain and neigboors. Allocate the structures of subdomain and neigboors.
Definition at line 92 of file QCSubDomain.cpp. References QCAtoms::allocateAtoms(), QCOrdering::allocateCells(), bFactor, densityBlockIdx, domainId, globalIdx, IND_MAP_CELL, IND_MAP_HEAD, NB_AO_SHELL1_IDX, NB_AO_SHELL2_IDX, NB_ATOM_SHELL1_IDX, NB_ATOM_SHELL2_IDX, NB_OVRLP_IDX, NB_SHARED_AO_IDX, NB_SHARED_ATOM_IDX, orbitalOccupN, overlapMap, overlapMapSize, OVRLP_MAP_DECL, OVRLP_MAP_HEAD, QC_TRACE_INIT, SBD_ID_IDX, QCSymMatrix::setDimAndAllocate(), weight, and zone. Referenced by QCMDSystem< TPSolver >::allocStructures(). Here is the call graph for this function: ![]() |
|
Suppression du double [] possible ici au profit d'un ++ sur le tableau elems de localEigenvectCMtx[i][mu]. Attention, c est la matrice transposee que l on a en retour de la fonction fortran, donc |cmu_i|^2 a les indices inverses dans l instruction ci-dessous Definition at line 431 of file QCSubDomain.cpp. References bFactor, QCModelMatrices::getEigenVectCt(), QCOrdering::getFirstAOAt(), QCMatElemGtr< TPMatrix >::getMatrix(), QCSystem::getNbAtomicOrbitals(), QCAtoms::getNbAtoms(), QCOrdering::getParamIndexAt(), QC_ZERO, QCRestrict, and weight. Here is the call graph for this function: ![]() |
|
|
|
Definition at line 251 of file QCSubDomain.hpp. References getZone(), IND_MAP_CELL, IND_MAP_HEAD, LOCAL_IND_IDX, NB_SHARED_ATOM_IDX, overlapMap, OVRLP_MAP_HEAD, and QC_SHELL2. Here is the call graph for this function: ![]() |
|
Definition at line 346 of file QCSubDomain.hpp. References ATOM_OFFSET, QCAtoms::atoms, QCOrdering::cells, densityBlockIdx, QCAtoms::DIMENSION, DOM_ID_IDX, domainId, QCAtoms::getNbAtoms(), getOverlapMapSize(), NB_ATOM_IDX, QCAtoms::nbAtoms, ORDR_CELL_SIZE, overlapMap, and zone. Here is the call graph for this function: ![]() |
|
Definition at line 880 of file QCSubDomain.cpp. References domainId, QCAtoms::getNbAtoms(), globalIdx, QCAtomIn::localNum, QCAtomIn::numDomain, QC_TRACE, QCAtomIn::typeZone, and zone. Here is the call graph for this function: ![]() |
|
Definition at line 329 of file QCSubDomain.cpp. References densityBlockCount, QCModelMatrices::getDensityP(), QCOrdering::getFirstAOAt(), QCMatElemGtr< TPMatrix >::getMatrix(), QCOrdering::getParamIndexAt(), QCAtoms::nbAtoms, and QCRestrict. Here is the call graph for this function: ![]() |
|
Referenced by QCMDSystem< TPSolver >::completeFockMatricesAndElecEnergy(). |
|
Filling of the matrix of coefficient of partitioning Definition at line 256 of file QCSubDomain.cpp. References QCAtoms::getNbAtoms(), getNbOverlpSD(), QCGeneralData::getPartitionType(), IND_MAP_CELL, IND_MAP_HEAD, LOCAL_IND_IDX, NB_SHARED_ATOM_IDX, overlapMap, OVRLP_MAP_HEAD, QC_DIXON_PART, QC_ONE, QC_SHELL1, QC_SHELL2, QC_STANDARD_PART, QC_ZERO, weight, and zone. Here is the call graph for this function: ![]() |
|
Definition at line 134 of file QCSubDomain.hpp. References bFactor. |
|
Definition at line 133 of file QCSubDomain.hpp. References bFactor. Referenced by QCMDSystem< TPSolver >::addLevels(), QCMDSystem< TPSolver >::adjustFermiEnergy(), QCMDSystem< TPSolver >::adjustFermiEnergyDichotomy(), and QCMDSystem< TPSolver >::removeLevels(). |
|
Definition at line 127 of file QCSubDomain.hpp. References densityBlockCount. |
|
Definition at line 126 of file QCSubDomain.hpp. References densityBlockIdx. |
|
return the global index (in the whole molecule) of local index idx.
Definition at line 114 of file QCSubDomain.hpp. References globalIdx. Referenced by operator<<(), and QCMDSystem< TPSolver >::writeDensityOnFileAscii(). |
|
Definition at line 132 of file QCSubDomain.hpp. References globalIdx. Referenced by QCMDSystem< TPSolver >::writeDensityOnFileAscii(), QCPartitioner< TPSystem >::writeInFileVTK(), QCMDSystem< TPSolver >::writeLocalDensityOnFilesAscii(), and QCMDSystem< TPSolver >::writeOrbitalPartition(). |
|
Return the Id of the sub domain. Accessors Definition at line 107 of file QCSubDomain.hpp. References domainId. Referenced by QCMDSystem< TPSolver >::adjustFermiEnergyDichotomy(), QCMDSystem< TPSolver >::completeDensityMatrices(), QCMDSystem< TPSolver >::completeFockMatricesAndElecEnergy(), QCMDSystem< TPSolver >::completeHamiltonMatrices(), and operator<<(). |
|
Definition at line 201 of file QCSubDomain.hpp. References IND_MAP_CELL, IND_MAP_HEAD, LOCAL_IND_IDX, overlapMap, and OVRLP_MAP_HEAD. |
|
Definition at line 209 of file QCSubDomain.hpp. References IND_MAP_CELL, IND_MAP_HEAD, overlapMap, OVRLP_MAP_HEAD, and REMOTE_IND_IDX. |
|
Definition at line 218 of file QCSubDomain.hpp. References getNbOverlpSD(), overlapMap, OVRLP_MAP_HEAD, and SBD_ID_IDX. Referenced by addOverlpIndirectionInfo(), and getRemoteIdx(). Here is the call graph for this function: ![]() |
|
Definition at line 174 of file QCSubDomain.hpp. References QCModelMatrices::asBase(). Here is the call graph for this function: ![]() |
|
Definition at line 124 of file QCSubDomain.hpp. References nbAOCoreShell1. Referenced by operator<<(). |
|
Definition at line 125 of file QCSubDomain.hpp. References nbAOShell2. Referenced by operator<<(). |
|
Definition at line 122 of file QCSubDomain.hpp. References nbAtomCoreShell1. Referenced by operator<<(). |
|
Definition at line 123 of file QCSubDomain.hpp. References nbAtomShell2. Referenced by operator<<(). |
|
Definition at line 135 of file QCSubDomain.hpp. References nbFilledOM. Referenced by QCMDSystem< TPSolver >::adjustFermiEnergy(), and QCMDSystem< TPSolver >::adjustFermiEnergyDichotomy(). |
|
Definition at line 136 of file QCSubDomain.hpp. References nbOccupiedOM. Referenced by QCMDSystem< TPSolver >::adjustFermiEnergy(), QCMDSystem< TPSolver >::adjustFermiEnergyDichotomy(), and QCMDSystem< TPSolver >::adjustFermiEnergyNew(). |
|
return the number of neighbors Definition at line 111 of file QCSubDomain.hpp. References NB_OVRLP_IDX, and overlapMap. Referenced by fillWeight(), getMapOffset(), and sortOverlapments(). |
|
Definition at line 186 of file QCSubDomain.hpp. References NB_SHARED_ATOM_IDX, overlapMap, and OVRLP_MAP_HEAD. |
|
Definition at line 138 of file QCSubDomain.hpp. References orbitalOccupN. |
|
Definition at line 137 of file QCSubDomain.hpp. References orbitalOccupN. Referenced by QCMDSystem< TPSolver >::adjustFermiEnergy(), QCMDSystem< TPSolver >::adjustFermiEnergyDichotomy(), and QCMDSystem< TPSolver >::adjustFermiEnergyNew(). |
|
Definition at line 140 of file QCSubDomain.hpp. References overlapMap. |
|
Definition at line 139 of file QCSubDomain.hpp. References overlapMapSize. Referenced by copyAtomOverlpInto(). |
|
Definition at line 194 of file QCSubDomain.hpp. References overlapMap, OVRLP_MAP_HEAD, and SBD_ID_IDX. Referenced by QCMDSystem< TPSolver >::completeDensityMatrices(). |
|
Return the remote index in subdomain sbdId of atom of index atomIdx. Definition at line 234 of file QCSubDomain.hpp. References getMapOffset(), IND_MAP_CELL, IND_MAP_HEAD, LOCAL_IND_IDX, NB_SHARED_ATOM_IDX, overlapMap, and REMOTE_IND_IDX. Referenced by operator<<(). Here is the call graph for this function: ![]() |
|
Definition at line 170 of file QCSubDomain.hpp. References rootSystem. |
|
Definition at line 166 of file QCSubDomain.hpp. References QCSystem::asBase(). Here is the call graph for this function: ![]() |
|
Definition at line 162 of file QCSubDomain.hpp. References QCSystem::asBase(). Here is the call graph for this function: ![]() |
|
return the array of zone type
Definition at line 131 of file QCSubDomain.hpp. References zone. Referenced by containsNonShell2(), and traceProductCoreShell1(). |
|
return the zone type of atoms idx
Reimplemented from QCSystem. Definition at line 129 of file QCSubDomain.hpp. References zone. Referenced by operator<<(), QCMDSystem< TPSolver >::writeDensityOnFileAscii(), QCMDSystem< TPSolver >::writeLocalDensityOnFilesAscii(), QCMDSystem< TPSolver >::writeOrbitalPartition(), and QCPartitioner< TPSystem >::writeSubDomainVTK(). |
|
Multiplication des elements de la matrice densite par les elements correspondants de la matrice de coef de partitionnement Stockage du resultat dans weightedDensityP Definition at line 369 of file QCSubDomain.cpp. References QCModelMatrices::densityP, QCModelMatrices::getDensityP(), QCOrdering::getFirstAOAt(), QCMatElemGtr< TPMatrix >::getMatrix(), QCAtoms::getNbAtoms(), QCOrdering::getParamIndexAt(), QCModelMatrices::getWeightedDensityP(), QCRestrict, weight, and QCModelMatrices::weightedDensityP. Here is the call graph for this function: ![]() |
|
Referenced by QCMDSystem< TPSolver >::completeFockMatricesAndElecEnergy(). |
|
Definition at line 582 of file QCSubDomain.cpp. References QCMatrix::axpy(), QCFockGtr< TPMatrix >::copyMatrix(), QCModelMatrices::densityP, QCModelMatrices::densityPTild, QCEnergies::elecEnergyETild, QCEnergies::elecEnergyETild1e, QCModelMatrices::fockF, QCModelMatrices::fockFTild, QCMatElemGtr< TPMatrix >::getMatrix(), QCModelMatrices::hamiltonH, QC_HALF, QC_ONE, QCMatrix::scale(), and QCSymMatrix::traceProduct(). Referenced by QCMDSystem< TPSolver >::applyOptimalDamping(). Here is the call graph for this function: ![]() |
|
Display the glabal information of the internal structure overlapMap Definition at line 830 of file QCSubDomain.cpp. References domainId, globalDomainId, NB_AO_SHELL1_IDX, NB_AO_SHELL2_IDX, NB_ATOM_SHELL1_IDX, NB_ATOM_SHELL2_IDX, NB_OVRLP_IDX, NB_SHARED_AO_IDX, NB_SHARED_ATOM_IDX, nbAOCoreShell1, nbAOShell2, nbAtomCoreShell1, nbAtomShell2, overlapMap, OVRLP_MAP_HEAD, QC_TRACE, and SBD_ID_IDX. Referenced by allocStructures(), setSystemNumbers(), updateInternalStructure(), and writeInFileNew(). |
|
Definition at line 376 of file QCSubDomain.hpp. References ATOM_OFFSET, QCAtoms::atoms, QCOrdering::cells, densityBlockIdx, DOM_ID_IDX, domainId, NB_ATOM_IDX, QCAtoms::nbAtoms, overlapMap, and zone. |
|
Definition at line 149 of file QCSubDomain.hpp. References densityBlockIdx. Referenced by setSystemNumbers(). |
|
Definition at line 148 of file QCSubDomain.hpp. References globalIdx. Referenced by QCMDSystem< TPSolver >::addAtom(). |
|
Definition at line 151 of file QCSubDomain.hpp. References globalDomainId. Referenced by QCMDSystem< TPSolver >::allocStructures(). |
|
Definition at line 150 of file QCSubDomain.hpp. References domainId. Referenced by QCMDSystem< TPSolver >::allocDomains(). |
|
Definition at line 156 of file QCSubDomain.hpp. References nbFilledOM, and nbOccupiedOM. Referenced by QCMDSystem< TPSolver >::addLevels(), QCMDSystem< TPSolver >::adjustFermiEnergyDichotomy(), and QCMDSystem< TPSolver >::removeLevels(). |
|
Definition at line 154 of file QCSubDomain.hpp. References orbitalOccupN. Referenced by QCMDSystem< TPSolver >::addLevels(), and QCMDSystem< TPSolver >::removeLevels(). |
|
Mutators Definition at line 146 of file QCSubDomain.hpp. References rootSystem. Referenced by QCMDSystem< TPSolver >::allocDomains(). |
|
On affecte les startOrb, soit l'indice de depart des OA de l'atome courant dans les matrices du systeme traite. On est dans un sous domaine Reimplemented from QCSystem. Definition at line 215 of file QCSubDomain.cpp. References densityBlockCount, QCSystem::getNbElectrons(), QCOrdering::getParamIndexAt(), QCSystem::getSpinMultiplicity(), nbAtomCoreShell1, QCSystem::nbAtomicOrbitals, QCAtoms::nbAtoms, nbAtomShell2, QCSystem::nbElectrons, printHeadOfInternalStructure(), QC_TRACE_INIT, rootSystem, setDensityBlockIdx(), QCOrdering::setFirstAOAt(), QCSystem::spinMultiplicity, and QCSystem::systemCharge. Here is the call graph for this function: ![]() |
|
Reimplemented from QCSystem. |
|
Definition at line 147 of file QCSubDomain.hpp. References zone. Referenced by QCMDSystem< TPSolver >::addAtom(). |
|
Definition at line 453 of file QCSubDomain.hpp. References IND_MAP_CELL, IND_MAP_HEAD, NB_SHARED_ATOM_IDX, overlapMap, REMOTE_IND_IDX, and swap(). Referenced by sortOverlapments(). Here is the call graph for this function: ![]() |
|
Definition at line 268 of file QCSubDomain.hpp. References getNbOverlpSD(), overlapMap, OVRLP_MAP_HEAD, and sort(). Here is the call graph for this function: ![]() |
|
Swap the two atoms of index1 and index2 in the QCAtoms structure. Reimplemented from QCAtoms. Definition at line 435 of file QCSubDomain.hpp. References LOCAL_IND_IDX, overlapMap, REMOTE_IND_IDX, and REMOTE_ZONE_IDX. Referenced by sort(). |
|
Definition at line 481 of file QCSubDomain.cpp. References QCOrdering::getFirstAOAt(), QCAtoms::getNbAtoms(), QCOrdering::getParamIndexAt(), getZone(), QC_CORE, QC_HALF, QC_SHELL2, QC_ZERO, QCRestrict, and weight. Here is the call graph for this function: ![]() |
|
Referenced by QCMDSystem< TPSolver >::applyOptimalDamping(). |
|
Definition at line 394 of file QCSubDomain.hpp. References QCAtoms::atoms, QCOrdering::cells, densityBlockIdx, overlapMap, and zone. |
|
Update the head of the overlapMap structure.
Definition at line 769 of file QCSubDomain.cpp. References QCAtoms::getNbAtoms(), QCAtoms::getType(), globalDomainId, IND_MAP_CELL, IND_MAP_HEAD, LOCAL_IND_IDX, NB_AO_SHELL1_IDX, NB_AO_SHELL2_IDX, NB_ATOM_SHELL1_IDX, NB_ATOM_SHELL2_IDX, NB_OVRLP_IDX, NB_SHARED_AO_IDX, NB_SHARED_ATOM_IDX, nbAOCoreShell1, nbAOShell2, nbAtomCoreShell1, nbAtomShell2, overlapMap, OVRLP_MAP_HEAD, printHeadOfInternalStructure(), QC_SHELL1, QC_SHELL2, and QC_TRACE_INIT. Here is the call graph for this function: ![]() |
|
Write the new format of the description of the subdomain.
Definition at line 690 of file QCSubDomain.cpp. References domainId, QCAtoms::getNbAtoms(), globalIdx, IND_MAP_CELL, IND_MAP_HEAD, LOCAL_IND_IDX, NB_ATOM_SHELL1_IDX, NB_ATOM_SHELL2_IDX, NB_OVRLP_IDX, NB_SHARED_ATOM_IDX, overlapMap, OVRLP_MAP_DECL, OVRLP_MAP_HEAD, printHeadOfInternalStructure(), QC_CORE, QC_SHELL1, QC_SHELL2, QC_TRACE_OUT, SBD_ID_IDX, and zone. Here is the call graph for this function: ![]() |
|
Definition at line 177 of file QCSubDomain.hpp. References overlapMap, and overlapMapSize. |
|
Write the Partition Description of the current subdomain.
Definition at line 862 of file QCSubDomain.cpp. References domainId, NB_OVRLP_IDX, NB_SHARED_ATOM_IDX, nbAOCoreShell1, nbAOShell2, nbAtomCoreShell1, nbAtomShell2, overlapMap, OVRLP_MAP_HEAD, QC_TRACE, and SBD_ID_IDX. |
|
Definition at line 611 of file QCSubDomain.cpp. |
|
The array of B factor of the sub-domains. This is the sum of the Definition at line 533 of file QCSubDomain.hpp. Referenced by allocStructures(), computeBFactor(), getBFactor(), and ~QCSubDomain(). |
|
No idea today Definition at line 515 of file QCSubDomain.hpp. Referenced by fillDensityArray(), getDensityBlockCount(), and setSystemNumbers(). |
|
No idea today Definition at line 511 of file QCSubDomain.hpp. Referenced by allocStructures(), copyAtomOverlpInto(), getDensityBlockIdx(), setAtomOverlpFrom(), setDensityBlockIdx(), unsetAtomOverlp(), and ~QCSubDomain(). |
|
Id (number) of the subdomain Definition at line 476 of file QCSubDomain.hpp. Referenced by allocStructures(), copyAtomOverlpInto(), fillAtomInStructure(), getId(), printHeadOfInternalStructure(), setAtomOverlpFrom(), setId(), writeInFileNew(), and writeSubDomainHeader(). |
|
Definition at line 477 of file QCSubDomain.hpp. Referenced by printHeadOfInternalStructure(), setGlobalIndex(), and updateInternalStructure(). |
|
Array of size number of atoms in the subdomain. globalIdx[i] specifies the global index (index in the whole molecule) of atom i Definition at line 507 of file QCSubDomain.hpp. Referenced by allocStructures(), fillAtomInStructure(), getGlobalIdx(), getGlobalIdxs(), operator<<(), setGlobalIdx(), writeInFileNew(), and ~QCSubDomain(). |
|
Number of orbitals in the buffer 1 Definition at line 489 of file QCSubDomain.hpp. Referenced by getNbAOCoreShell1(), printHeadOfInternalStructure(), updateInternalStructure(), and writeSubDomainHeader(). |
|
Number of orbitals in the buffer 2 Definition at line 497 of file QCSubDomain.hpp. Referenced by getNbAOShell2(), printHeadOfInternalStructure(), updateInternalStructure(), and writeSubDomainHeader(). |
|
Number of atoms in the buffer 1 Definition at line 485 of file QCSubDomain.hpp. Referenced by getNbAtomCoreShell1(), printHeadOfInternalStructure(), setSystemNumbers(), updateInternalStructure(), and writeSubDomainHeader(). |
|
Number of atoms in the buffer 2 Definition at line 493 of file QCSubDomain.hpp. Referenced by getNbAtomShell2(), printHeadOfInternalStructure(), setSystemNumbers(), updateInternalStructure(), and writeSubDomainHeader(). |
|
The number of filled orbitals i.e. whose occupation number is equal to 2. Definition at line 538 of file QCSubDomain.hpp. Referenced by getNbFilledOM(), and setNbFilledOccupiedOM(). |
|
The number of occupied orbitals i.e. whose occupation number is superior to 0. Definition at line 543 of file QCSubDomain.hpp. Referenced by getNbOccupiedOM(), and setNbFilledOccupiedOM(). |
|
The molecular orbital occupation number. In a classic calculation, those number are always equal to 0 or 2. In a Divide And Conquer approach, the homo carries a fraction of electron to keep as a constant the global number of electrons of the system. Definition at line 550 of file QCSubDomain.hpp. Referenced by allocStructures(), getOrbitalOccupN(), setOrbitalOccupN(), and ~QCSubDomain(). |
|
Array of information on the structure of neighboors. Definition at line 519 of file QCSubDomain.hpp. Referenced by addOverlpIndirectionInfo(), allocStructures(), containsNonShell2(), copyAtomOverlpInto(), fillWeight(), getIndLocalIdx(), getIndRemoteIdx(), getMapOffset(), getNbOverlpSD(), getNbSharedAtoms(), getOverlapMap(), getRemDomainId(), getRemoteIdx(), operator<<(), printHeadOfInternalStructure(), setAtomOverlpFrom(), sort(), sortOverlapments(), swap(), unsetAtomOverlp(), updateInternalStructure(), writeInFileNew(), writeOverlapStructure(), writeSubDomainHeader(), and ~QCSubDomain(). |
|
Size of the array of integer called overlapMap Definition at line 523 of file QCSubDomain.hpp. Referenced by allocStructures(), getOverlapMapSize(), and writeOverlapStructure(). |
|
Definition at line 481 of file QCSubDomain.hpp. Referenced by getRootSystem(), setRootSystem(), and setSystemNumbers(). |
|
This is the partitioning coefficient array. Definition at line 527 of file QCSubDomain.hpp. Referenced by allocStructures(), computeBFactor(), fillWeight(), initWeightedDensity(), and traceProductCoreShell1(). |
|
Array of size number of atoms in the subdomain. zone[i] specifies in which region (core, buffer1 or buffer2) the atom i is located Definition at line 502 of file QCSubDomain.hpp. Referenced by allocStructures(), copyAtomOverlpInto(), fillAtomInStructure(), fillWeight(), getZone(), setAtomOverlpFrom(), setZone(), unsetAtomOverlp(), writeInFileNew(), and ~QCSubDomain(). |