BOSS
8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
EvtFlatLineShape.cc
Go to the documentation of this file.
1
//--------------------------------------------------------------------------
2
//
3
// Environment:
4
// This software is part of the EvtGen package developed jointly
5
// for the BaBar and CLEO collaborations. If you use all or part
6
// of it, please give an appropriate acknowledgement.
7
//
8
// Copyright Information: See EvtGen/COPYRIGHT
9
// Copyright (C) 1998 Caltech, UCSB
10
//
11
// Module: EvtLineShape.cc
12
//
13
// Description: Store particle properties for one particle.
14
//
15
// Modification history:
16
//
17
// Lange March 10, 2001 Module created
18
// Dvoretskii June 03, 2002 Reimplemented rollMass()
19
//
20
//------------------------------------------------------------------------
21
#include "
EvtPatches.hh
"
22
23
#include "
EvtBlattWeisskopf.hh
"
24
#include "
EvtFlatLineShape.hh
"
25
#include "
EvtPDL.hh
"
26
#include "
EvtPatches.hh
"
27
#include "
EvtPropBreitWigner.hh
"
28
#include "
EvtPropBreitWignerRel.hh
"
29
#include "
EvtRandom.hh
"
30
#include "
EvtSpinType.hh
"
31
#include "
EvtTwoBodyVertex.hh
"
32
33
EvtFlatLineShape::EvtFlatLineShape
() {}
34
35
EvtFlatLineShape::~EvtFlatLineShape
() {}
36
37
EvtFlatLineShape::EvtFlatLineShape
(
double
mass
,
double
width,
double
maxRange,
38
EvtSpinType::spintype
sp ) {
39
40
_mass
=
mass
;
41
_width
= width;
42
_spin
= sp;
43
_maxRange
= maxRange;
44
45
double
maxdelta = width;
46
47
_massMax
=
mass
+ maxdelta;
48
_massMin
=
mass
- maxdelta;
49
50
if
(
_massMin
< 0. )
_massMin
= 0.;
51
}
52
53
EvtFlatLineShape::EvtFlatLineShape
(
const
EvtFlatLineShape
& x ) {
54
_mass
= x._mass;
55
_width
= x._width;
56
_spin
= x._spin;
57
_massMax
= x._massMax;
58
_massMin
= x._massMin;
59
_maxRange
= x._maxRange;
60
}
61
62
EvtFlatLineShape
&
EvtFlatLineShape::operator=
(
const
EvtFlatLineShape
& x ) {
63
_mass
= x._mass;
64
_massMax
= x._massMax;
65
_massMin
= x._massMin;
66
_width
= x._width;
67
_maxRange
= x._maxRange;
68
_spin
= x._spin;
69
return
*
this
;
70
}
71
72
EvtAbsLineShape
*
EvtFlatLineShape::clone
() {
return
new
EvtFlatLineShape
( *
this
); }
73
74
double
EvtFlatLineShape::getMassProb
(
double
mass
,
double
massPar,
int
nDaug,
75
double
* massDau ) {
76
77
double
dTotMass = 0.;
78
79
int
i;
80
for
( i = 0; i < nDaug; i++ ) { dTotMass += massDau[i]; }
81
if
( (
mass
< dTotMass ) )
return
0.;
82
83
if
( massPar > 0.0000000001 )
84
{
85
if
(
mass
> massPar )
return
0.;
86
}
87
88
return
1.;
89
}
90
91
double
EvtFlatLineShape::getRandMass
(
EvtId
* parId,
int
nDaug,
EvtId
* dauId,
EvtId
* othDaugId,
92
double
massMax,
double
* dauMasses ) {
93
94
return
EvtRandom::Flat
(
_massMin
,
_massMax
);
95
}
mass
double mass
Definition
CosmicGenerator.cxx:128
EvtBlattWeisskopf.hh
EvtFlatLineShape.hh
EvtPDL.hh
EvtPatches.hh
EvtPropBreitWignerRel.hh
EvtPropBreitWigner.hh
EvtRandom.hh
EvtSpinType.hh
EvtTwoBodyVertex.hh
EvtAbsLineShape::_massMax
double _massMax
Definition
EvtAbsLineShape.hh:97
EvtAbsLineShape::_spin
EvtSpinType::spintype _spin
Definition
EvtAbsLineShape.hh:112
EvtAbsLineShape::_mass
double _mass
Definition
EvtAbsLineShape.hh:95
EvtAbsLineShape::_maxRange
double _maxRange
Definition
EvtAbsLineShape.hh:99
EvtAbsLineShape::_width
double _width
Definition
EvtAbsLineShape.hh:98
EvtAbsLineShape::EvtAbsLineShape
EvtAbsLineShape()
Definition
EvtAbsLineShape.cc:38
EvtAbsLineShape::_massMin
double _massMin
Definition
EvtAbsLineShape.hh:96
EvtFlatLineShape::getRandMass
double getRandMass(EvtId *parId, int nDaug, EvtId *dauId, EvtId *othDaugId, double maxMass, double *dauMasses)
Definition
EvtFlatLineShape.cc:91
EvtFlatLineShape::operator=
EvtFlatLineShape & operator=(const EvtFlatLineShape &x)
Definition
EvtFlatLineShape.cc:62
EvtFlatLineShape::EvtFlatLineShape
EvtFlatLineShape()
Definition
EvtFlatLineShape.cc:33
EvtFlatLineShape::clone
EvtAbsLineShape * clone()
Definition
EvtFlatLineShape.cc:72
EvtFlatLineShape::~EvtFlatLineShape
~EvtFlatLineShape()
Definition
EvtFlatLineShape.cc:35
EvtFlatLineShape::getMassProb
double getMassProb(double mass, double massPar, int nDaug, double *massDau)
Definition
EvtFlatLineShape.cc:74
EvtId
Definition
EvtId.hh:27
EvtRandom::Flat
static double Flat()
Definition
EvtRandom.cc:69
EvtSpinType::spintype
spintype
Definition
EvtSpinType.hh:30
8.0.0
BOSS_Gen
BesEvtGen
src
EvtGen
EvtGenBase
EvtFlatLineShape.cc
Generated by
1.16.1