Page Menu
Home
HEPForge
Search
Configure Global Search
Log In
Files
F19243728
VectorMesonVectorVectorDecayer.icc
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Award Token
Flag For Later
Size
2 KB
Referenced Files
None
Subscribers
None
VectorMesonVectorVectorDecayer.icc
View Options
// -*- C++ -*-
//
// This is the implementation of the inlined member functions of
// the VectorMesonVectorVectorDecayer class.
//
namespace Herwig {
using namespace ThePEG;
inline VectorMesonVectorVectorDecayer::
VectorMesonVectorVectorDecayer(const VectorMesonVectorVectorDecayer & x)
: VectorMesonDecayerBase(x), _coupling(x._coupling), _incoming(x._incoming),
_outgoing1(x._outgoing1), _outgoing2(x._outgoing2), _maxweight(x._maxweight),
_initsize(x._initsize)
{}
inline IBPtr VectorMesonVectorVectorDecayer::clone() const {
return new_ptr(*this);
}
inline IBPtr VectorMesonVectorVectorDecayer::fullclone() const {
return new_ptr(*this);
}
inline void VectorMesonVectorVectorDecayer::doupdate() throw(UpdateException) {
VectorMesonDecayerBase::doupdate();
// First update base class.
bool redo = touched();
// redo if touched.
// UpdateChecker::check(aDependentMember, redo);
// Update referenced objects on which this depends redo is set to true
// if the dependent object is touched.
// for_each(ContainerOfDependencies, UpdateChecker(redo));
// Update a container of references.
// for_each(MapOfDependencies, UpdateMapChecker(redo));
// Update a map of references.
if ( !redo ) return;
// return if nothing has been touched. Otherwise do the actual update.
// touch()
// Touch if anything has changed.
}
inline void VectorMesonVectorVectorDecayer::doinit() throw(InitException) {
VectorMesonDecayerBase::doinit();
unsigned int isize(_incoming.size());
if(isize!=_outgoing1.size()||isize!=_outgoing2.size()||
isize!=_maxweight.size()||isize!=_coupling.size())
{throw InitException() << "Inconsistent parameters in "
<< "VectorMesonVectorVectorDecayer" << Exception::runerror;}
// set up the integration channels
vector<double> wgt(1,1.);
PDVector extpart(3);
DecayPhaseSpaceModePtr mode;
for(unsigned int ix=0;ix<_incoming.size();++ix)
{
extpart[0]=getParticleData(_incoming[ix]);
extpart[1]=getParticleData(_outgoing1[ix]);
extpart[2]=getParticleData(_outgoing2[ix]);
mode = new_ptr(DecayPhaseSpaceMode(extpart,this));
addMode(mode,_maxweight[ix],wgt);
}
}
inline void VectorMesonVectorVectorDecayer::dofinish() {
VectorMesonDecayerBase::dofinish();
}
inline void VectorMesonVectorVectorDecayer::doinitrun() {
VectorMesonDecayerBase::doinitrun();
if(_Initialize)
{for(unsigned int ix=0;ix<_incoming.size();++ix)
{_maxweight[ix]=2.*mode(ix)->maxWeight();}}
}
inline void VectorMesonVectorVectorDecayer::rebind(const TranslationMap & trans)
throw(RebindException) {
// dummy = trans.translate(dummy);
VectorMesonDecayerBase::rebind(trans);
}
inline IVector VectorMesonVectorVectorDecayer::getReferences() {
IVector ret = VectorMesonDecayerBase::getReferences();
// ret.push_back(dummy);
return ret;
}
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Tue, Sep 30, 4:35 AM (1 h, 13 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
6564693
Default Alt Text
VectorMesonVectorVectorDecayer.icc (2 KB)
Attached To
Mode
rHERWIGHG herwighg
Attached
Detach File
Event Timeline
Log In to Comment