Hex  2.2
Hydrogen-electron collision solver
Data Structures | Macros | Typedefs
radial.h File Reference
#include <cmath>
#include <functional>
#include <vector>
#include "hex-arrays.h"
#include "hex-symbandmatrix.h"
#include "hex-special.h"
#include "bspline.h"
#include "gauss.h"
#include "io.h"
#include "parallel.h"
Include dependency graph for radial.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  RadialIntegrals
 Class that calculates and manages the radial integrals for given B-spline bases. More...
 

Macros

#define EXPANSION_QUADRATURE_POINTS   20
 
#define OneElectronMatrixAccessors(M)
 
#define OneElectronMatrixArrayAccessors(M)
 
#define OneElectronPartialMatrixAccessors(M)
 

Typedefs

typedef std::function< Complex(Complex)> CCFunction
 
typedef std::function< Complex(Complex, Complex)> C2CFunction
 

Macro Definition Documentation

◆ EXPANSION_QUADRATURE_POINTS

#define EXPANSION_QUADRATURE_POINTS   20

◆ OneElectronMatrixAccessors

#define OneElectronMatrixAccessors (   M)
Value:
SymBandMatrix<Complex> const & M () const { return M##_x_; } \
SymBandMatrix<Complex> const & M##_x () const { return M##_x_; } \
SymBandMatrix<Complex> const & M##_y () const { return M##_y_; } \
Complex M##_x (std::size_t i, std::size_t j) const { return M##_x_(i,j); } \
Complex M##_y (std::size_t i, std::size_t j) const { return M##_y_(i,j); } \

◆ OneElectronMatrixArrayAccessors

#define OneElectronMatrixArrayAccessors (   M)
Value:
SymBandMatrix<Complex> const & M (int L) const { return M##_x_[L]; } \
SymBandMatrix<Complex> const & M##_x (int L) const { return M##_x_[L]; } \
SymBandMatrix<Complex> const & M##_y (int L) const { return M##_y_[L]; } \
Complex M##_x (int L, std::size_t i, std::size_t j) const { return M##_x_[L](i,j); } \
Complex M##_y (int L, std::size_t i, std::size_t j) const { return M##_y_[L](i,j); } \

◆ OneElectronPartialMatrixAccessors

#define OneElectronPartialMatrixAccessors (   M)
Value:
cArrayView M##_x (int L = -1) const \
{ \
if (L < 0) return M##_x_; \
std::size_t mi_size = bspline_x_.Nspline() * (2 * bspline_x_.order() + 1) * (bspline_x_.order() + 1); \
return cArrayView (M##_x_, L * mi_size, mi_size); \
} \
cArrayView M##_y (int L = -1) const \
{ \
if (L < 0) return M##_y_; \
std::size_t mi_size = bspline_y_.Nspline() * (2 * bspline_y_.order() + 1) * (bspline_y_.order() + 1); \
return cArrayView (M##_y_, L * mi_size, mi_size); \
}

Typedef Documentation

◆ C2CFunction

typedef std::function<Complex(Complex,Complex)> C2CFunction

◆ CCFunction

typedef std::function<Complex(Complex)> CCFunction