NanoStructures  1.0
DMFT solver for layered, strongly correlated nanostructures

Classes

struct  Accuracy
 

Public Types

typedef double(* tIntegralABKernel )(double eps, int nOmega, double omega, std::complex< double > fomegaA, std::complex< double > fomegaB, void *parameters)
 

Public Member Functions

 IntegralAB (const IntegralAB &orig)
 
IntegralABoperator= (const IntegralAB &orig)
 
void setBounds (int n,...)
 
void setIntegralKernels (tIntegralABKernel real, tIntegralABKernel imag)
 
void setAccuracy (double abs, double rel)
 
void setParameterFunctions (const CFunction &pfA, const CFunction &pfB)
 
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
 
tIntegralABKernel m_kernelReal
 
tIntegralABKernel m_kernelImag
 
const CFunctionm_parameterFunctionA
 
const CFunctionm_parameterFunctionB
 
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/integralAB.h
  • /home/chris/Development/Release/NanoStructures/math/integralAB.cpp