EvtGen
2.2.0
Monte Carlo generator of particle decays, in particular the weak decays of heavy flavour particles such as B mesons.
Loading...
Searching...
No Matches
EvtGenBase
EvtIntervalFlatPdf.hh
Go to the documentation of this file.
1
2
/***********************************************************************
3
* Copyright 1998-2020 CERN for the benefit of the EvtGen authors *
4
* *
5
* This file is part of EvtGen. *
6
* *
7
* EvtGen is free software: you can redistribute it and/or modify *
8
* it under the terms of the GNU General Public License as published by *
9
* the Free Software Foundation, either version 3 of the License, or *
10
* (at your option) any later version. *
11
* *
12
* EvtGen is distributed in the hope that it will be useful, *
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
15
* GNU General Public License for more details. *
16
* *
17
* You should have received a copy of the GNU General Public License *
18
* along with EvtGen. If not, see <https://www.gnu.org/licenses/>. *
19
***********************************************************************/
20
21
#ifndef EVT_INTERVAL_FLAT_PDF_HH
22
#define EVT_INTERVAL_FLAT_PDF_HH
23
24
#include "
EvtGenBase/EvtPdf.hh
"
25
#include "
EvtGenBase/EvtPoint1D.hh
"
26
27
#include <assert.h>
28
29
/*
30
* Uniform PDF defined on a 1D interval.
31
*/
32
33
class
EvtIntervalFlatPdf
:
public
EvtPdf
<EvtPoint1D> {
34
public
:
35
EvtIntervalFlatPdf
(
double
min,
double
max );
36
EvtIntervalFlatPdf
(
const
EvtIntervalFlatPdf
& other );
37
EvtPdf<EvtPoint1D>
*
clone
()
const override
;
38
39
using
EvtPdf
<
EvtPoint1D
>
::compute_integral
;
40
EvtValError
compute_integral
()
const override
;
41
EvtPoint1D
randomPoint
()
override
;
42
43
protected
:
44
double
pdf
(
const
EvtPoint1D
& )
const override
;
45
46
double
m_min
;
47
double
m_max
;
48
};
49
50
#endif
EvtPdf.hh
EvtPoint1D.hh
EvtIntervalFlatPdf::clone
EvtPdf< EvtPoint1D > * clone() const override
Definition
EvtIntervalFlatPdf.cpp:38
EvtIntervalFlatPdf::m_min
double m_min
Definition
EvtIntervalFlatPdf.hh:46
EvtIntervalFlatPdf::pdf
double pdf(const EvtPoint1D &) const override
Definition
EvtIntervalFlatPdf.cpp:43
EvtIntervalFlatPdf::compute_integral
EvtValError compute_integral() const override
Definition
EvtIntervalFlatPdf.cpp:48
EvtIntervalFlatPdf::randomPoint
EvtPoint1D randomPoint() override
Definition
EvtIntervalFlatPdf.cpp:53
EvtIntervalFlatPdf::m_max
double m_max
Definition
EvtIntervalFlatPdf.hh:47
EvtIntervalFlatPdf::EvtIntervalFlatPdf
EvtIntervalFlatPdf(double min, double max)
Definition
EvtIntervalFlatPdf.cpp:27
EvtPdf< EvtPoint1D >::EvtPdf
EvtPdf()
Definition
EvtPdf.hh:74
EvtPoint1D
Definition
EvtPoint1D.hh:27
EvtValError
Definition
EvtValError.hh:31
Generated by
1.16.1