#include <EvtPartProp.hh>
Public Member Functions | |
void | addFactorPn (double factor) |
EvtPartProp (const EvtPartProp &x) | |
EvtPartProp () | |
void | fixLSForSP8 () |
int | getChg3 () |
double | getctau () |
EvtId | getId () |
EvtId | getIdChgConj () |
EvtAbsLineShape * | getLineShape () |
int | getLundKC () |
double | getMass () |
double | getMassMax () |
double | getMassMin () |
double | getMassProb (double mass, double massPar, int nDaug, double *massDau) |
double | getMaxRange () |
const std::string & | getName () |
double | getRandMass (EvtId *parId, int nDaug, EvtId *dauId, EvtId *othDauId, double maxMass, double *dauMasses) |
EvtSpinType::spintype | getSpinType () |
int | getStdHep () |
double | getWidth () |
void | includeBirthFactor (bool yesno) |
void | includeDecayFactor (bool yesno) |
void | initLineShape (double mass, double width, double maxRange) |
void | newLineShape (std::string type) |
EvtPartProp & | operator= (const EvtPartProp &x) |
void | reSetBlatt (double blatt) |
void | reSetMass (double mass) |
void | reSetMassMax (double mass) |
void | reSetMassMin (double mass) |
void | reSetWidth (double width) |
double | rollMass () |
void | setChg3 (int c3) |
void | setctau (double tau) |
void | setId (EvtId id) |
void | setIdChgConj (EvtId idchgconj) |
void | setLineShape (EvtAbsLineShape *l) |
void | setLundKC (int lundkc) |
void | setName (std::string pname) |
void | setPWForBirthL (int spin, EvtId par, EvtId othD) |
void | setPWForDecay (int spin, EvtId d1, EvtId d2) |
void | setSpinType (EvtSpinType::spintype stype) |
void | setStdHep (int stdhep) |
~EvtPartProp () | |
Private Attributes | |
int | _chg3 |
double | _ctau |
EvtId | _id |
EvtId | _idchgconj |
EvtAbsLineShape * | _lineShape |
int | _lundkc |
std::string | _name |
EvtSpinType::spintype | _spintype |
int | _stdhep |
|
00034 : 00035 _id(-1,-1) 00036 ,_idchgconj(-1,-1) 00037 ,_chg3(0) 00038 ,_stdhep(0) 00039 ,_lundkc(0) 00040 { 00041 _lineShape=0; 00042 _ctau=0.0; 00043 _name="*******"; 00044 _spintype=EvtSpinType::SCALAR; 00045 }
|
|
00047 { 00048 00049 if (0!=x._lineShape){ 00050 _lineShape=x._lineShape->clone(); 00051 } 00052 else{ 00053 _lineShape=0; 00054 } 00055 _ctau=x._ctau; 00056 _name=x._name; 00057 _spintype=x._spintype; 00058 _id=x._id; 00059 _idchgconj=x._idchgconj; 00060 _chg3=x._chg3; 00061 _stdhep=x._stdhep; 00062 _lundkc=x._lundkc; 00063 00064 }
|
|
00066 { 00067 if ( _lineShape ) delete _lineShape; 00068 _lineShape=0; 00069 }
|
|
00164 { 00165 if (!_lineShape) ::abort(); 00166 _lineShape->addFactorPn(factor); 00167 00168 }
|
|
00095 {_lineShape->fixForSP8();}
|
|
00052 {return _chg3; }
|
|
00049 {return _ctau; }
|
|
00061 {return _id;}
|
|
00064 {return _idchgconj;}
|
|
00073 {return _lineShape;}
|
|
00070 {return _lundkc;}
|
|
00040 {return _lineShape->getMass();}
|
|
00042 {return _lineShape->getMassMax();}
|
|
00041 {return _lineShape->getMassMin();}
|
|
00047 { return _lineShape->getMassProb(mass,massPar,nDaug,massDau);}
|
|
00043 {return _lineShape->getMaxRange();}
|
|
00058 {return _name;}
|
|
00046 {return _lineShape->getRandMass(parId,nDaug,dauId,othDauId,maxMass,dauMasses);}
|
|
00055 {return _spintype; }
|
|
00067 {return _stdhep;}
|
|
00044 {return _lineShape->getWidth();}
|
|
00155 { 00156 if (!_lineShape) ::abort(); 00157 _lineShape->includeBirthFactor(yesno); 00158 }
|
|
00159 { 00160 if (!_lineShape) ::abort(); 00161 _lineShape->includeDecayFactor(yesno); 00162 }
|
|
00090 { 00091 00092 // _lineShape=new EvtAbsLineShape(mass,width,maxRange); 00093 _lineShape=new EvtRelBreitWignerBarrierFact(mass,width,maxRange,_spintype); 00094 }
|
|
00096 { 00097 00098 double m=_lineShape->getMass(); 00099 double w=_lineShape->getWidth(); 00100 double mR=_lineShape->getMaxRange(); 00101 EvtSpinType::spintype st=_lineShape->getSpinType(); 00102 delete _lineShape; 00103 if ( type == "RELBW" ) { 00104 _lineShape=new EvtRelBreitWignerBarrierFact(m,w,mR,st); 00105 } 00106 if ( type == "NONRELBW" ) { 00107 _lineShape = new EvtAbsLineShape(m,w,mR,st); 00108 } 00109 if ( type == "FLAT" ) { 00110 _lineShape = new EvtFlatLineShape(m,w,mR,st); 00111 } 00112 if ( type == "MANYDELTAFUNC" ) { 00113 _lineShape = new EvtManyDeltaFuncLineShape(m,w,mR,st); 00114 } 00115 }
|
|
00079 { 00080 00081 _lineShape=x._lineShape->clone(); 00082 00083 _ctau=x._ctau; 00084 _name=x._name; 00085 _chg3=x._chg3; 00086 _spintype=x._spintype; 00087 return *this; 00088 }
|
|
00151 { 00152 if (!_lineShape) ::abort(); 00153 _lineShape->reSetBlatt(blatt); 00154 }
|
|
00123 { 00124 if (!_lineShape) ::abort(); 00125 _lineShape->reSetMass(mass); 00126 }
|
|
00147 { 00148 if (!_lineShape) ::abort(); 00149 _lineShape->reSetMassMax(mass); 00150 }
|
|
00143 { 00144 if (!_lineShape) ::abort(); 00145 _lineShape->reSetMassMin(mass); 00146 }
|
|
00127 { 00128 if (!_lineShape) ::abort(); 00129 _lineShape->reSetWidth(width); 00130 }
|
|
00079 {return _lineShape->rollMass();}
|
|
00053 { _chg3=c3; }
|
|
00050 { _ctau=tau; }
|
|
00062 {_id=id;}
|
|
00065 {_idchgconj=idchgconj;}
|
|
00078 { _lineShape=l;}
|
|
00071 {_lundkc=lundkc;}
|
|
00072 { 00073 00074 _name=pname; 00075 00076 }
|
|
00137 { 00138 if (!_lineShape) ::abort(); 00139 _lineShape->setPWForBirthL(spin,par,othD); 00140 }
|
|
00132 { 00133 if (!_lineShape) ::abort(); 00134 _lineShape->setPWForDecay(spin,d1,d2); 00135 }
|
|
00056 { _spintype=stype; }
|
|
00068 {_stdhep=stdhep;}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|