Fast Methods for Cosmological Simulations
FastSim serves as a tool for quick N-body simulations in modified gravity.
anonymous_namespace{core_power.cpp}::Integr_obj Class Reference

basic integration object, wrapper for GSL integration functions More...

Inheritance diagram for anonymous_namespace{core_power.cpp}::Integr_obj:

Public Member Functions

 Integr_obj (double(*f)(double, void *), const double a, const double b, const double epsabs, const double epsrel, const size_t limit)
 
 ~Integr_obj ()
 
void set_a (double a_new)
 
void set_b (double b_new)
 

Protected Attributes

double result
 
double error
 
double a
 
double b
 
double L
 
double epsabs
 
double epsrel
 
size_t limit
 
gsl_function F
 
gsl_integration_workspace * w
 
int gsl_errno
 

Detailed Description

basic integration object, wrapper for GSL integration functions

Note
GSL functions are mostly witten for double so even with different PRECISION set these are computed in double precision

Definition at line 49 of file core_power.cpp.

Constructor & Destructor Documentation

anonymous_namespace{core_power.cpp}::Integr_obj::Integr_obj ( double(*)(double, void *)  f,
const double  a,
const double  b,
const double  epsabs,
const double  epsrel,
const size_t  limit 
)
inline
anonymous_namespace{core_power.cpp}::Integr_obj::~Integr_obj ( )
inline

Definition at line 61 of file core_power.cpp.

References w.

62  {
63  gsl_integration_workspace_free (w);
64  }

Member Function Documentation

void anonymous_namespace{core_power.cpp}::Integr_obj::set_a ( double  a_new)
inline
void anonymous_namespace{core_power.cpp}::Integr_obj::set_b ( double  b_new)
inline

Member Data Documentation

double anonymous_namespace{core_power.cpp}::Integr_obj::a
protected

Definition at line 72 of file core_power.cpp.

double anonymous_namespace{core_power.cpp}::Integr_obj::b
protected

Definition at line 72 of file core_power.cpp.

double anonymous_namespace{core_power.cpp}::Integr_obj::epsabs
protected

Definition at line 73 of file core_power.cpp.

double anonymous_namespace{core_power.cpp}::Integr_obj::epsrel
protected

Definition at line 73 of file core_power.cpp.

double anonymous_namespace{core_power.cpp}::Integr_obj::error
protected

Definition at line 71 of file core_power.cpp.

gsl_function anonymous_namespace{core_power.cpp}::Integr_obj::F
protected

Definition at line 75 of file core_power.cpp.

int anonymous_namespace{core_power.cpp}::Integr_obj::gsl_errno
protected

Definition at line 77 of file core_power.cpp.

double anonymous_namespace{core_power.cpp}::Integr_obj::L
protected

Definition at line 72 of file core_power.cpp.

size_t anonymous_namespace{core_power.cpp}::Integr_obj::limit
protected

Definition at line 74 of file core_power.cpp.

double anonymous_namespace{core_power.cpp}::Integr_obj::result
protected

Definition at line 71 of file core_power.cpp.

gsl_integration_workspace* anonymous_namespace{core_power.cpp}::Integr_obj::w
protected

Definition at line 76 of file core_power.cpp.


The documentation for this class was generated from the following file: