/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Generator/BesEvtGen/BesEvtGen-00-03-58/src/EvtGen/EvtGenBase/EvtMBreitWigner.cc

Go to the documentation of this file.
00001 #include "EvtGenBase/EvtPatches.hh"
00002 #include "EvtGenBase/EvtMBreitWigner.hh"
00003 #include <cstdlib>
00004 
00005 using std::endl;
00006 
00007 EvtMBreitWigner::EvtMBreitWigner( const EvtId& id, const vector<string>& args )
00008 {
00009     if( args.size() != 0 ) {
00010         report(ERROR, "EvtGen")<<"Unknown input arguments passed in to lineshape."<<endl;
00011         ::abort();
00012     }
00013 
00014     _id = id;
00015     _width = EvtPDL::getWidth( id );
00016     _resmass = EvtPDL::getMeanMass( id );
00017 }
00018 
00019 EvtComplex EvtMBreitWigner::shape( const vector<EvtVector4R>& product ) const 
00020 {
00021     static EvtComplex I(0.0, 1.0);
00022     double mass = _node->get4vector(product).mass();
00023  
00024     return sqrt(_width/( EvtConst::twoPi )) * 1/( mass - _resmass - I * _width/2 );
00025 }
00026 
00027 
00028 EvtMLineShape * EvtMBreitWigner::duplicate() const
00029 {
00030   vector<string> args;
00031   EvtMLineShape* tmp=new EvtMBreitWigner( _id, args );
00032   return tmp;
00033 }
00034 

Generated on Tue Nov 29 23:12:13 2016 for BOSS_7.0.2 by  doxygen 1.4.7