integrals_1el_potential.cc File Reference

#include <stdlib.h>
#include <math.h>
#include <stdio.h>
#include <errno.h>
#include <memory.h>
#include <time.h>
#include <stdarg.h>
#include <assert.h>
#include <vector>
#include "integrals_1el.h"
#include "integrals_1el_potential.h"
#include "memorymanag.h"
#include "pi.h"
#include "output.h"
#include "utilities.h"
#include "boysfunction.h"
#include "integral_info.h"
#include "integrals_general.h"
#include "box_system.h"
#include "multipole.h"
#include "integrals_2el_single.h"
#include "integrals_1el_single.h"
#include "integrals_hermite.h"
#include "matrix_norm.h"
#include "mm_limit_table.h"

Classes

struct  atom_box_struct
struct  DistributionSpecStructWithPairIdx
struct  group_struct

Functions

static ergo_real get_distance_3d (const ergo_real *x, const ergo_real *y)
static int create_nuclei_mm_tree (int nAtoms, const Atom *atomList, ergo_real boxSize, atom_box_struct **return_boxList, int *return_numberOfLevels, Atom **return_atomListReordered)
static int do_interaction_recursive (const IntegralInfo &integralInfo, ergo_real *V_list, int noOfBasisFuncIndexPairs, const DistributionSpecStructWithPairIdx *list, int nDistrs, const multipole_struct_small *multipoleList, const ergo_real *maxMomentVectorNormForDistrsList, int maxNoOfMomentsForDistrs, int maxDegreeForDistrs, ergo_real distrExtent, const Atom *atomListReordered, ergo_real threshold, const atom_box_struct *boxList, MMInteractor &interactor, int boxIndex, int currLevel, int numberOfLevels)
 Take care of interaction between list of distrs and box.
static int get_list_of_distrs_for_V (const BasisInfoStruct &basisInfo, const basis_func_index_pair_struct_1el *basisFuncIndexPairList, int noOfBasisFuncIndexPairs, ergo_real threshold, ergo_real maxCharge, DistributionSpecStructWithPairIdx *resultList, int maxCountResult)
static int compare_distrs (const void *p1, const void *p2)
static int sort_distr_list (DistributionSpecStructWithPairIdx *list, int n)
static ergo_real getSafeMaxDistance (const BasisInfoStruct &basisInfo, const Molecule &molecule)
int compute_V_linear (const BasisInfoStruct &basisInfo, const IntegralInfo &integralInfo, const Molecule &molecule, ergo_real threshold, ergo_real boxSize, const basis_func_index_pair_struct_1el *basisFuncIndexPairList, ergo_real *V_list, int noOfBasisFuncIndexPairs)
static ergo_real simplePrimVintegralSingle (DistributionSpecStruct *prim, const Atom *atom, const IntegralInfo *integralInfo)
static ergo_real simplePrimVintegral_list (DistributionSpecStruct *list, int nPrims, const Atom *atom, ergo_real threshold, const IntegralInfo *integralInfo)
int compute_V_matrix_full (const BasisInfoStruct &basisInfo, const IntegralInfo &integralInfo, int nAtoms, const Atom *atomList, ergo_real threshold, ergo_real *result)

Variables

const ergo_real tolernance_dist = 1e-10
const ergo_real tolernance_exponent = 1e-11

Function Documentation

static int compare_distrs ( const void *  p1,
const void *  p2 
) [static]
int compute_V_linear ( const BasisInfoStruct basisInfo,
const IntegralInfo integralInfo,
const Molecule molecule,
ergo_real  threshold,
ergo_real  boxSize,
const basis_func_index_pair_struct_1el basisFuncIndexPairList,
ergo_real V_list,
int  noOfBasisFuncIndexPairs 
)
int compute_V_matrix_full ( const BasisInfoStruct basisInfo,
const IntegralInfo integralInfo,
int  nAtoms,
const Atom atomList,
ergo_real  threshold,
ergo_real result 
)
static int create_nuclei_mm_tree ( int  nAtoms,
const Atom atomList,
ergo_real  boxSize,
atom_box_struct **  return_boxList,
int *  return_numberOfLevels,
Atom **  return_atomListReordered 
) [static]
static int do_interaction_recursive ( const IntegralInfo integralInfo,
ergo_real V_list,
int  noOfBasisFuncIndexPairs,
const DistributionSpecStructWithPairIdx list,
int  nDistrs,
const multipole_struct_small multipoleList,
const ergo_real maxMomentVectorNormForDistrsList,
int  maxNoOfMomentsForDistrs,
int  maxDegreeForDistrs,
ergo_real  distrExtent,
const Atom atomListReordered,
ergo_real  threshold,
const atom_box_struct boxList,
MMInteractor interactor,
int  boxIndex,
int  currLevel,
int  numberOfLevels 
) [static]
static ergo_real get_distance_3d ( const ergo_real x,
const ergo_real y 
) [static]
static int get_list_of_distrs_for_V ( const BasisInfoStruct basisInfo,
const basis_func_index_pair_struct_1el basisFuncIndexPairList,
int  noOfBasisFuncIndexPairs,
ergo_real  threshold,
ergo_real  maxCharge,
DistributionSpecStructWithPairIdx resultList,
int  maxCountResult 
) [static]
static ergo_real getSafeMaxDistance ( const BasisInfoStruct basisInfo,
const Molecule molecule 
) [static]
static ergo_real simplePrimVintegral_list ( DistributionSpecStruct list,
int  nPrims,
const Atom atom,
ergo_real  threshold,
const IntegralInfo integralInfo 
) [static]
static ergo_real simplePrimVintegralSingle ( DistributionSpecStruct prim,
const Atom atom,
const IntegralInfo integralInfo 
) [static]
static int sort_distr_list ( DistributionSpecStructWithPairIdx list,
int  n 
) [static]

References compare_distrs().

Referenced by compute_V_linear().


Variable Documentation

const ergo_real tolernance_dist = 1e-10

Referenced by compare_distrs().

Referenced by compare_distrs().


Generated on 21 Nov 2012 for ergo by  doxygen 1.6.1