NanoStructures  1.0
DMFT solver for layered, strongly correlated nanostructures

Classes

struct  Accuracy
 

Public Types

typedef double(* tIntegralKernel )(double eps, int nOmega, double omega, std::complex< double > fomega, void *parameters)
 

Public Member Functions

 Integral (const Integral &orig)
 
Integraloperator= (const Integral &orig)
 
void setBounds (int n,...)
 
void setIntegralKernels (tIntegralKernel real, tIntegralKernel imag)
 
void setAccuracy (double abs, double rel)
 
void setParameterFunction (const CFunction &pf)
 
void setIntegrationParameters (void *parameters)
 
void setIntegrals (bool real, bool imag)
 
void operator() (CFunction &result)
 
void operator() (CFunction &result, mpi::OpenMPI &com)
 

Static Public Member Functions

static void integrationErrorHandler (const char *x, const char *y, int a, int b)
 

Static Protected Member Functions

static double integrationHelper_real (double eps, void *integral)
 
static double integrationHelper_imag (double eps, void *integral)
 

Protected Attributes

bool m_real
 
bool m_imag
 
double * m_bounds
 
int m_nBounds
 
tIntegralKernel m_kernelReal
 
tIntegralKernel m_kernelImag
 
const CFunctionm_parameterFunction
 
gsl_function m_gslIntegrationFunctionReal
 
gsl_function m_gslIntegrationFunctionImag
 
Accuracy m_accuracy
 
gsl_integration_workspace * m_integrationWorkspace
 
int m_n
 
void * m_integrationParameters
 

The documentation for this class was generated from the following files:
  • /home/chris/Development/Release/NanoStructures/math/integral.h
  • /home/chris/Development/Release/NanoStructures/math/integral.cpp