ergo
gradient_test.cc File Reference

Tests the gradient computation. More...

Functions

static void preparePermutations (const BasisInfoStruct &basisInfo, mat::SizesAndBlocks &sizeBlockInfo, std::vector< int > &permutation, std::vector< int > &inversePermutation)
 
static ergo_real get_nucl_energy_for_given_mol_and_dens (const IntegralInfo &integralInfo, const Molecule &molecule, const BasisInfoStruct &basisInfo, const symmMatrix &D, ergo_real threshold_integrals_1el, mat::SizesAndBlocks const &matrix_size_block_info, std::vector< int > const &permutationHML)
 
static int get_gradient_using_finite_differences (const IntegralInfo &integralInfo, const BasisInfoStruct &basisInfo, const Molecule &molecule, const symmMatrix &densityMatrix, ergo_real threshold_integrals_1el, const mat::SizesAndBlocks &matrix_size_block_info, const std::vector< int > &permutationHML, ergo_real *resultGradient)
 
static int get_gradient_using_explicit_integrals (const IntegralInfo &integralInfo, const BasisInfoStruct &basisInfo, const Molecule &molecule, const symmMatrix &densityMatrix, ergo_real threshold_integrals_1el, const mat::SizesAndBlocks &matrix_size_block_info, const std::vector< int > &permutationHML, const std::vector< int > &inversePermutationHML, ergo_real *resultGradient)
 
static int test_gradient_by_explicit_comparison (const IntegralInfo &integralInfo)
 
int main (int argc, char *argv[])
 

Detailed Description

Tests the gradient computation.

Author
Elias Rudberg responsible

Function Documentation

◆ get_gradient_using_explicit_integrals()

static int get_gradient_using_explicit_integrals ( const IntegralInfo integralInfo,
const BasisInfoStruct basisInfo,
const Molecule molecule,
const symmMatrix densityMatrix,
ergo_real  threshold_integrals_1el,
const mat::SizesAndBlocks matrix_size_block_info,
const std::vector< int > &  permutationHML,
const std::vector< int > &  inversePermutationHML,
ergo_real resultGradient 
)
static

◆ get_gradient_using_finite_differences()

static int get_gradient_using_finite_differences ( const IntegralInfo integralInfo,
const BasisInfoStruct basisInfo,
const Molecule molecule,
const symmMatrix densityMatrix,
ergo_real  threshold_integrals_1el,
const mat::SizesAndBlocks matrix_size_block_info,
const std::vector< int > &  permutationHML,
ergo_real resultGradient 
)
static

◆ get_nucl_energy_for_given_mol_and_dens()

static ergo_real get_nucl_energy_for_given_mol_and_dens ( const IntegralInfo integralInfo,
const Molecule molecule,
const BasisInfoStruct basisInfo,
const symmMatrix D,
ergo_real  threshold_integrals_1el,
mat::SizesAndBlocks const &  matrix_size_block_info,
std::vector< int > const &  permutationHML 
)
static

◆ main()

int main ( int  argc,
char *  argv[] 
)

◆ preparePermutations()

static void preparePermutations ( const BasisInfoStruct basisInfo,
mat::SizesAndBlocks sizeBlockInfo,
std::vector< int > &  permutation,
std::vector< int > &  inversePermutation 
)
static

◆ test_gradient_by_explicit_comparison()