]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TEvtGen/EvtGenBase/EvtIntervalFlatPdf.cxx
New plots for trending injector efficiencies (Melinda)
[u/mrichter/AliRoot.git] / TEvtGen / EvtGenBase / EvtIntervalFlatPdf.cxx
CommitLineData
da0e9ce3 1#include "EvtGenBase/EvtPatches.hh"
2/*******************************************************************************
3 * Project: BaBar detector at the SLAC PEP-II B-factory
4 * Package: EvtGenBase
5 * File: $Id: EvtIntervalFlatPdf.cc,v 1.4 2004/12/21 19:58:44 ryd Exp $
6 * Author: Alexei Dvoretskii, dvoretsk@slac.stanford.edu, 2001-2002
7 *
8 * Copyright (C) 2002 Caltech
9 *******************************************************************************/
10
11#include "EvtGenBase/EvtPatches.hh"
12#include <assert.h>
13#include "EvtGenBase/EvtIntervalFlatPdf.hh"
14#include "EvtGenBase/EvtRandom.hh"
15
16EvtIntervalFlatPdf::EvtIntervalFlatPdf(double min, double max)
17 : EvtPdf<EvtPoint1D>(), _min(min), _max(max)
18{
19 assert(max >= min);
20}
21
22EvtIntervalFlatPdf::EvtIntervalFlatPdf(const EvtIntervalFlatPdf& other)
23 : EvtPdf<EvtPoint1D>(other), _min(other._min), _max(other._max)
24{}
25
26EvtIntervalFlatPdf::~EvtIntervalFlatPdf()
27{}
28
29EvtPdf<EvtPoint1D>* EvtIntervalFlatPdf::clone() const
30{
31 return new EvtIntervalFlatPdf(*this);
32}
33
34double EvtIntervalFlatPdf::pdf(const EvtPoint1D&) const
35{
36 return 1.;
37}
38
39EvtValError EvtIntervalFlatPdf::compute_integral() const
40{
41 return EvtValError(_max-_min,0.);
42}
43
44EvtPoint1D EvtIntervalFlatPdf::randomPoint()
45{
46 return EvtPoint1D(_min,_max,EvtRandom::Flat(_min,_max));
47}