cepgen
is hosted by
Hepforge
,
IPPP Durham
CepGen
1.2.5
Central exclusive processes event generator
Loading...
Searching...
No Matches
Integrator.h
Go to the documentation of this file.
1
/*
2
* CepGen: a central exclusive processes event generator
3
* Copyright (C) 2021-2024 Laurent Forthomme
4
*
5
* This program is free software: you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License as published by
7
* the Free Software Foundation, either version 3 of the License, or
8
* any later version.
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with this program. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
#ifndef CepGenAddOns_CubaWrapper_CubaIntegrator_h
20
#define CepGenAddOns_CubaWrapper_CubaIntegrator_h
21
22
#include "
CepGen/Integration/Integrator.h
"
23
24
namespace
cepgen
{
25
class
Integrand;
27
namespace
cuba {
29
class
Integrator
:
public
cepgen::Integrator
{
30
public
:
31
explicit
Integrator
(
const
ParametersList
&);
32
33
static
ParametersDescription
description
();
34
static
Integrand
*
gIntegrand
;
35
36
Value
integrate
(
Integrand
&)
override
;
37
38
protected
:
39
virtual
Value
integrate
() = 0;
40
41
int
ncomp_
,
nvec_
;
42
double
epsrel_
,
epsabs_
;
43
int
mineval_
,
maxeval_
;
44
int
verbose_
;
45
};
46
47
int
cuba_integrand
(
const
int
* ndim,
const
double
xx[],
const
int
*
/*ncomp*/
,
double
ff[],
void
*
/*userdata*/
);
48
}
// namespace cuba
49
}
// namespace cepgen
50
51
#endif
Integrator.h
cepgen::Integrand
An integrand wrapper placeholder.
Definition
Integrand.h:27
cepgen::Integrator
Monte-Carlo integration algorithm.
Definition
Integrator.h:28
cepgen::ParametersDescription
A description object for parameters collection.
Definition
ParametersDescription.h:26
cepgen::ParametersList
Definition
ParametersList.h:52
cepgen::Value
A scalar value with its uncertainty.
Definition
Value.h:26
cepgen::cuba::Integrator
Cuba integration algorithm.
Definition
Integrator.h:29
cepgen::cuba::Integrator::mineval_
int mineval_
Definition
Integrator.h:43
cepgen::cuba::Integrator::nvec_
int nvec_
Definition
Integrator.h:41
cepgen::cuba::Integrator::maxeval_
int maxeval_
Definition
Integrator.h:43
cepgen::cuba::Integrator::integrate
virtual Value integrate()=0
cepgen::cuba::Integrator::ncomp_
int ncomp_
Definition
Integrator.h:41
cepgen::cuba::Integrator::verbose_
int verbose_
Definition
Integrator.h:44
cepgen::cuba::Integrator::epsrel_
double epsrel_
Definition
Integrator.h:42
cepgen::cuba::Integrator::description
static ParametersDescription description()
Definition
Integrator.cpp:42
cepgen::cuba::Integrator::gIntegrand
static Integrand * gIntegrand
Definition
Integrator.h:34
cepgen::cuba::Integrator::epsabs_
double epsabs_
Definition
Integrator.h:42
cepgen::cuba::cuba_integrand
int cuba_integrand(const int *ndim, const double xx[], const int *, double ff[], void *)
Definition
Integrator.cpp:55
cepgen
Common namespace for this Monte Carlo generator.
Definition
CommandLineHandler.cpp:36
CepGenAddOns
CubaWrapper
Integrator.h
Generated on Mon Jul 29 2024 for CepGen by
1.9.7