IGMPlot 3.16
Optimized IGMplot version able to use wfn/wfx/xyz files
Loading...
Searching...
No Matches
LocalData Class Reference

Class designed to store Gradient related values and provide some utilities concerning those. More...

#include <LocalData.h>

Collaboration diagram for LocalData:
Collaboration graph

Public Member Functions

 LocalData (int nbAtomInMolAParam, int nbAtomParam)
 Constructor.
 
 ~LocalData ()
 Destructor that frees space for the atom's contribution.
 
void init ()
 Function used to initialize values to 0.
 
void reinit ()
 Function used to reinitialize values to 0.
 
void updateGrad (int i, axis_t partialGrad)
 Function used to update the values using index and partial gradients passed as arguments.
 
void updateIGMInter ()
 Updates the IGM inter.
 
void updateIGMAbsOut (int atomIndex)
 Updates the IGM with the absolute value of the interaction of molecule A and the atom alone summed up.
 
void updateIGMAbsIn (int atomIndex)
 Updates the IGM with the sum of the absolute value of the molecule A and the absolute value of the atom.
 
double getNormGrad ()
 GEts the vector's norm for gradient.
 
void processNormGrad ()
 Process the vector's norm for gradient.
 
double getNormGradIGM ()
 Gets the vector's norm for gradient IGM.
 
void processNormGradIGM ()
 Process the vector's norm for gradient IGM.
 
double getNormGradIGMInter ()
 Gets the vector's norm for gradient inter.
 
void processNormGradIGMInter ()
 Process the vector's norm for gradient inter.
 
double getNormGradIGMAbsOut ()
 GEts the vector's norm for gradient inter with absolute value of the sum of molecule A's interactions and the atom alone's interactions.
 
void processNormGradIGMAbsOut (int i)
 Process the vector's norm for gradient inter with absolute value of the sum of molecule A's interactions and the atom alone's interactions.
 
double getNormGradIGMAbsIn ()
 Gets the vector's norm for gradient inter with the sum of the absolute value of molecule A's interactions and the absolute value of the atom alone's interactions.
 
void processNormGradIGMAbsIn (int i)
 Process the vector's norm for gradient inter with the sum of the absolute value of molecule A's interactions and the absolute value of the atom alone's interactions.
 
double getGradVal (int index)
 Gets the gradient value at the index given.
 
void setGradNull ()
 Sets the gradient values to 0.
 

Private Attributes

int nbAtomInMolA
 Number of atom in the first molecule.
 
int nbAtom
 Number of atoms.
 
double grad [3]
 ED Gradient values.
 
double gradIGM [3]
 ED Gradient IGM values.
 
double contributionInsideMoleculeA [3]
 Contribution ED gradient inside molecule A.
 
double contributionInsideMoleculeB [3]
 Contribution ED gradient inside molecule B.
 
axis_tcontributionAtomicAlone
 Contribution ED gradient for focused atom alone or all.
 
double gradIGMInter [3]
 Axis values for IGM Inter.
 
double gradIGMAbsOut [3]
 Axis values for IGM Inter ( | molA + Atom | )
 
double gradIGMAbsIn [3]
 Axis values for IGM Inter ( | molA | + | atom | )
 
double normGrad
 Gradient's vector's norm.
 
double normGradIGM
 Gradient IGM's vector's norm.
 
double normGradIGMInter
 Gradient IGM inter's vector's norm.
 
double normGradIGMInterAbsOut
 Gradient IGM inter's vector's norm (| molA + Atom |)
 
double normGradIGMInterAbsIn
 Gradient IGM inter's vector's norm (|molA| + |Atom|)
 

Detailed Description

Class designed to store Gradient related values and provide some utilities concerning those.

Warning
No copy constructor defined, careful when trying to pass this by value

Constructor & Destructor Documentation

◆ LocalData()

LocalData::LocalData ( int nbAtomInMolAParam,
int nbAtomParam )

Constructor.

Parameters
nbAtomInMolAParamthe number of atom in the first molecule
nbAtomParamthe number of atom
Here is the call graph for this function:

Member Function Documentation

◆ getGradVal()

double LocalData::getGradVal ( int index)

Gets the gradient value at the index given.

Parameters
index: the index value
Returns
the current gradient value at the given index

◆ getNormGrad()

double LocalData::getNormGrad ( )

GEts the vector's norm for gradient.

Returns
vector's norm
Here is the caller graph for this function:

◆ getNormGradIGM()

double LocalData::getNormGradIGM ( )

Gets the vector's norm for gradient IGM.

Returns
vector's norm
Here is the caller graph for this function:

◆ getNormGradIGMAbsIn()

double LocalData::getNormGradIGMAbsIn ( )

Gets the vector's norm for gradient inter with the sum of the absolute value of molecule A's interactions and the absolute value of the atom alone's interactions.

Warning
Please note that this function directly depend on the atom given during the process
Returns
vector's norm
Here is the caller graph for this function:

◆ getNormGradIGMAbsOut()

double LocalData::getNormGradIGMAbsOut ( )

GEts the vector's norm for gradient inter with absolute value of the sum of molecule A's interactions and the atom alone's interactions.

Warning
Please note that this function directly depend on the atom given during the process
Returns
vector's norm
Here is the caller graph for this function:

◆ getNormGradIGMInter()

double LocalData::getNormGradIGMInter ( )

Gets the vector's norm for gradient inter.

Returns
vector's norm
Here is the caller graph for this function:

◆ processNormGradIGMAbsIn()

void LocalData::processNormGradIGMAbsIn ( int i)

Process the vector's norm for gradient inter with the sum of the absolute value of molecule A's interactions and the absolute value of the atom alone's interactions.

Parameters
ithe atom's index
Here is the call graph for this function:

◆ processNormGradIGMAbsOut()

void LocalData::processNormGradIGMAbsOut ( int i)

Process the vector's norm for gradient inter with absolute value of the sum of molecule A's interactions and the atom alone's interactions.

Parameters
ithe atom's index
Here is the call graph for this function:

◆ updateGrad()

void LocalData::updateGrad ( int i,
axis_t partialGrad )

Function used to update the values using index and partial gradients passed as arguments.

Parameters
iIndex value
partialGradPartial Gradient for all three axis

◆ updateIGMAbsIn()

void LocalData::updateIGMAbsIn ( int atomIndex)

Updates the IGM with the sum of the absolute value of the molecule A and the absolute value of the atom.

Parameters
atomIndex: the index of the atom relevant to the update
Here is the caller graph for this function:

◆ updateIGMAbsOut()

void LocalData::updateIGMAbsOut ( int atomIndex)

Updates the IGM with the absolute value of the interaction of molecule A and the atom alone summed up.

Parameters
atomIndex: the index of the atom relevant to the update
Here is the caller graph for this function:

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