185 static const int X = 0;
188 static const int Y = 1;
191 static const int Z = 2;
204 Node(
int nbAtomParam,
int nbAtomMolAParam,
ProgData &pdataParam);
250 void diagonalizeHessian();
256 void basisChange(
double matrixHessianEigVec[3][3]);
Manage the results of the application.
Class designed to store Gradient related values and provide some utilities concerning those.
Definition LocalData.h:61
double sumBRho
Sum multiplications of rhos' values and B values.
Definition Node.h:137
void process(axis_t &posGrid, int index, Results &results, param_t ¶ms)
Process all the information for an entire line of the grid.
Definition Node.cpp:366
double hess[6]
Six hessian values.
Definition Node.h:125
double *__restrict diffX
Differences between node position and atom's position over x axis.
Definition Node.h:80
static const int Y
Constant used for accessing y axis in three element's array.
Definition Node.h:188
double *__restrict distance
Distance value between the node position and the atom.
Definition Node.h:107
double *__restrict squareZ
Square of difference value "diffZ" over the z axis.
Definition Node.h:95
double multInvR
Multiplicative inverse of the distance.
Definition Node.h:143
double *__restrict rho1
Rho value processed over the x axis.
Definition Node.h:98
double opti2
Optimization value 2.
Definition Node.h:173
double *__restrict diffZ
Differences between node position and atom's position over z axis.
Definition Node.h:86
void computeSortLambdas()
Function used to compute and sort lambdas' values.
Definition Node.cpp:323
double tmp
Temporary value.
Definition Node.h:180
int nbAtomMolA
The number of atom in molecule A.
Definition Node.h:69
void reComputeGrad()
Computes gradient only, ig ED gradiet have already been computed before.
Definition Node.cpp:259
double *__restrict rho3
Rho value processed over the z axis.
Definition Node.h:104
static const int Z
Constant used for accessing z axis in three element's array.
Definition Node.h:191
double *__restrict squareX
Square of difference value "diffX" over the x axis.
Definition Node.h:89
double squareMultInvR
Square of the multiplicative inverse of the distance.
Definition Node.h:146
ProgData & pdata
The program's data.
Definition Node.h:75
double rho
Rho value processed during density processing.
Definition Node.h:110
void computeDensity(axis_t &__restrict posGrid, param_t &__restrict params)
Computes density.
Definition Node.cpp:107
int lol2
TO DOCUMENT.
Definition Node.h:194
axis_t partialGradient
Partial gradients added to process gradient values.
Definition Node.h:134
double *__restrict rho2
Rho value processed over the y axis.
Definition Node.h:101
static const int X
Constant used for accessing x axis in three element's array.
Definition Node.h:185
~Node()
Destructor.
Definition Node.cpp:81
double *__restrict diffY
Differences between node position and atom's position over y axis.
Definition Node.h:83
void sortLambdas()
Sorting function used to sort lambdas' values.
Definition Node.cpp:292
Node(int nbAtomParam, int nbAtomMolAParam, ProgData &pdataParam)
Main constructor.
Definition Node.cpp:55
double contribution
Contribution value processed during density processing.
Definition Node.h:113
void basisChange(double matrixHessianEigVec[3][3])
basis change for every vector of the IGM approach : ED gradient, ED IGM gradient, ....
Definition Node.cpp:522
double lambdas[3]
Three lambda's values (eigenvalues of the ED hessian)
Definition Node.h:128
bool shouldCompute
Tells if the density matched the desired values.
Definition Node.h:120
double sumSquareBRho
Sum multiplications of rhos' values and squares of B values.
Definition Node.h:140
LocalData * data
The local data' values.
Definition Node.h:72
double *__restrict squareY
Square of difference value "diffY" over the y axis.
Definition Node.h:92
int nbAtom
The number of atom, both molecule combined.
Definition Node.h:66
void computeGradHess()
Computes gradient and hessian's values.
Definition Node.cpp:192
double eigV[3][3]
Three eigenvectors.
Definition Node.h:131
double *__restrict opti
Optimization value 1.
Definition Node.h:170
Class designed to store the program's main dataprovide some utilities concerning those.
Definition ProgData.h:65
Class designed to store all results that can be used as output by the program.
Definition Results.h:67
Structure describing one axis.
Definition general.h:694
Structure used for the storage of the parameters read from the parameter file param....
Definition general.h:560