![]() |
CosmoBolognaLib
Free Software C++/Python libraries for cosmological calculations
|
The class CUBAwrapper. More...
#include "Headers/CUBAwrapper.h"

Public Member Functions | |
| CUBAwrapper ()=default | |
| default constructor | |
| CUBAwrapper (FunctionDoubleVectorPtrVectorRef func, const std::shared_ptr< void > function_parameters, std::vector< double > ¶meters, const int ndim) | |
| default constructor More... | |
| CUBAwrapper (FunctionDoubleVector func, const int ndim) | |
| default constructor More... | |
| ~CUBAwrapper ()=default | |
| default destructor | |
| void | set_integrand (FunctionDoubleVectorPtrVectorRef func, const std::shared_ptr< void > function_parameters, std::vector< double > ¶meters, const int ndim) |
| set the integrand More... | |
| void | set_integrand (FunctionDoubleVector func, const int ndim) |
| set the integrand More... | |
| void | set_limits (std::vector< std::vector< double >> integration_limits) |
| set integration limits More... | |
| STR_CUBA_inputs & | inputs () |
| return reference to integration parameters More... | |
| double | IntegrateVegas (std::vector< std::vector< double >> integration_limits, const bool parallelize=true) |
| integrate using the Vegas routine More... | |
| double | IntegrateSuave (std::vector< std::vector< double >> integration_limits, const bool parallelize=true) |
| integrate using the Suave routine More... | |
| double | IntegrateDivonne (std::vector< std::vector< double >> integration_limits, const bool parallelize=true) |
| integrate using the Divonne routine More... | |
| double | IntegrateCuhre (std::vector< std::vector< double >> integration_limits, const bool parallelize=true) |
| integrate using the Cuhre routine More... | |
Protected Attributes | |
| FunctionDoubleVector | m_integrand |
| integrand | |
| int | m_ndim |
| integral dimension | |
| STR_CUBA_inputs | m_inputs |
| CUBA integration inputs. | |
The class CUBAwrapper.
This class is used to handle objects of type CUBAwrapper . It can be used to estimate multidimensional integrals using montecarlo methods implemented in the CUBA library. See http://www.feynarts.de/cuba/ for complete documentation
Definition at line 187 of file CUBAwrapper.h.
| cbl::wrapper::cuba::CUBAwrapper::CUBAwrapper | ( | FunctionDoubleVectorPtrVectorRef | func, |
| const std::shared_ptr< void > | function_parameters, | ||
| std::vector< double > & | parameters, | ||
| const int | ndim | ||
| ) |
default constructor
| func | the integrand |
| function_parameters | suppoer function parameters |
| parameters | parameters |
| ndim | the integral dimension |
Definition at line 65 of file CUBAwrapper.cpp.
| cbl::wrapper::cuba::CUBAwrapper::CUBAwrapper | ( | FunctionDoubleVector | func, |
| const int | ndim | ||
| ) |
default constructor
| func | the integrand |
| ndim | the integral dimension |
Definition at line 74 of file CUBAwrapper.cpp.
|
inline |
return reference to integration parameters
Definition at line 260 of file CUBAwrapper.h.
| double cbl::wrapper::cuba::CUBAwrapper::IntegrateCuhre | ( | std::vector< std::vector< double >> | integration_limits, |
| const bool | parallelize = true |
||
| ) |
integrate using the Cuhre routine
| integration_limits | vector containing integration limits |
| parallelize | parallelize the integration |
Definition at line 201 of file CUBAwrapper.cpp.
| double cbl::wrapper::cuba::CUBAwrapper::IntegrateDivonne | ( | std::vector< std::vector< double >> | integration_limits, |
| const bool | parallelize = true |
||
| ) |
integrate using the Divonne routine
| integration_limits | vector containing integration limits |
| parallelize | parallelize the integration |
Definition at line 167 of file CUBAwrapper.cpp.
| double cbl::wrapper::cuba::CUBAwrapper::IntegrateSuave | ( | std::vector< std::vector< double >> | integration_limits, |
| const bool | parallelize = true |
||
| ) |
integrate using the Suave routine
| integration_limits | vector containing integration limits |
| parallelize | parallelize the integration |
Definition at line 135 of file CUBAwrapper.cpp.
| double cbl::wrapper::cuba::CUBAwrapper::IntegrateVegas | ( | std::vector< std::vector< double >> | integration_limits, |
| const bool | parallelize = true |
||
| ) |
integrate using the Vegas routine
| integration_limits | vector containing integration limits |
| parallelize | parallelize the integration |
Definition at line 103 of file CUBAwrapper.cpp.
| void cbl::wrapper::cuba::CUBAwrapper::set_integrand | ( | FunctionDoubleVector | func, |
| const int | ndim | ||
| ) |
set the integrand
| func | the integrand |
| ndim | the integral dimension |
Definition at line 93 of file CUBAwrapper.cpp.
| void cbl::wrapper::cuba::CUBAwrapper::set_integrand | ( | FunctionDoubleVectorPtrVectorRef | func, |
| const std::shared_ptr< void > | function_parameters, | ||
| std::vector< double > & | parameters, | ||
| const int | ndim | ||
| ) |
set the integrand
| func | the integrand |
| function_parameters | suppoer function parameters |
| parameters | parameters |
| ndim | the integral dimension |
Definition at line 83 of file CUBAwrapper.cpp.
|
inline |
set integration limits
| integration_limits | vector containing integration limits |
Definition at line 252 of file CUBAwrapper.h.