Skip to content
Snippets Groups Projects
Commit a6542422 authored by Bertram Kopf's avatar Bertram Kopf
Browse files

minor changes in terms of improvment of the perfomance

parent c8c4c9c5
No related branches found
No related tags found
No related merge requests found
......@@ -56,7 +56,7 @@ public:
virtual const std::string name() const {return _name;}
const std::string wignerDKey() {return _wignerDKey;}
const std::string wignerDRefKey() {return _wignerDRefKey;}
const unsigned int wigDWigDRefId() {return _wigDWigDRefId;}
const unsigned short wigDWigDRefId() {return _wigDWigDRefId;}
const std::string refKey() {return _refKey;}
virtual std::string fitParSuffix() const {return _fitParamSuffix;}
void setFitParSuffix(std::string& suffix) {_fitParamSuffix = suffix;}
......@@ -158,7 +158,7 @@ protected:
std::string _wignerDKey;
std::string _refKey;
std::string _wignerDRefKey;
unsigned int _wigDWigDRefId;
unsigned short _wigDWigDRefId;
std::string _dynType;
bool _dynEnabled;
......
......@@ -40,27 +40,22 @@
//typedef unsigned int Id3StringType;
typedef std::map<std::string, Vector4<double> > mapString4Vec;
//typedef std::map<std::string, map<std::string, map<Spin,map<Spin,map<Spin,complex<double> > > > > > mapStringStringSpinComplex;
//typedef std::map<std::string, std::map<std::string, std::map<Id3StringType, complex<double> > > > mapStringStringIntComplex;
typedef std::map<std::string, double> mapStringDouble;
typedef std::map<std::string, map<std::string, double> > mapStringStringDouble;
typedef std::map<std::string, map<Spin,map<Spin, complex<double> > > > mapStringComplDouble;
typedef std::map<std::string, map<Spin,map<Spin,map<Spin, map<Spin, map<Spin,complex<double> > > > > > > mapString5SpinsComplex;
typedef std::map<std::string, map<int,map<Spin, map<Spin, map<Spin,complex<double> > > > > > mapStringInt3SpinsComplex;
typedef std::map<unsigned int, std::map<Id3StringType, complex<double> > > mapIntInt3Complex;
typedef std::map<unsigned int, std::map<Id1StringType, complex<double> > > mapIntInt1Complex;
typedef std::map<unsigned int, double> mapIntDouble;
typedef std::map<unsigned short, std::map<Id3StringType, complex<double> > > mapShortInt3Complex;
typedef std::map<unsigned short, std::map<Id1StringType, complex<double> > > mapShortInt1Complex;
typedef std::map<unsigned short, double> mapIntDouble;
struct EvtData {
mapString4Vec FourVecsString;
// mapStringStringSpinComplex WignerDsStringString;
// mapStringStringIntComplex WignerDStringStringId;
mapStringDouble DoubleString;
mapStringStringDouble DoubleStringString;
mapStringComplDouble ComplexDoubleString;
mapString5SpinsComplex ComplexDouble5SpinString;
mapStringInt3SpinsComplex ComplexDoubleInt3SpinString;
mapIntInt3Complex WignerDIdId3;
mapIntInt1Complex WignerDIdId1;
mapShortInt3Complex WignerDIdId3;
mapShortInt1Complex WignerDIdId1;
mapIntDouble DoubleId;
double evtWeight;
int evtNo;
......
......@@ -67,7 +67,6 @@ complex<double> LSOmegaTo3PiDecAmps::XdecPartAmp(Spin& lamX, Spin& lamDec, short
*conj(theData->WignerDIdId1.at(_decay->wigDWigDRefId()).at(IdLamOmega));
result+=amp;
}
//result*=sqrt( theData->DoubleStringString[_lambdaDecKey][_decay->wignerDRefKey()] );
result*=sqrt(theData->DoubleId.at(_decay->wigDWigDRefId()));
return result;
}
......@@ -99,7 +98,6 @@ complex<double> LSOmegaTo3PiDecAmps::XdecAmp(Spin& lamX, EvtData* theData, Spin&
if (_absDyn->isLdependent()) amp*=_absDyn->eval(theData, grandmaAmp, (*it)->L);
result+=amp;
}
// result*=sqrt( theData->DoubleStringString[_lambdaDecKey][_decay->wignerDRefKey()] );
result*=sqrt(theData->DoubleId.at(_decay->wigDWigDRefId()));
if (!_absDyn->isLdependent()) result*=_absDyn->eval(theData, grandmaAmp);
if ( _cacheAmps){
......
......@@ -42,8 +42,6 @@ OmegaTo3PiLSDecay::OmegaTo3PiLSDecay(Particle* mother, Particle* daughter1, Part
OmegaTo3PiDecay(mother, daughter1, daughter2, daughter3, channelID)
{
_wignerDKey="omegaTo3piLS_"+FunctionUtils::particleListName(_finalStateParticles);
// _wignerDKey="omegaTo3piLS_"+_motherIGJPCPtr->name()+FunctionUtils::particleListName(_finalStateParticles);
// _lambdaDecKey="lambdaOmega_"+_motherIGJPCPtr->name()+FunctionUtils::particleListName(_finalStateParticles);
}
OmegaTo3PiLSDecay::~OmegaTo3PiLSDecay(){
......@@ -91,10 +89,8 @@ void OmegaTo3PiLSDecay::fillWignerDs(std::map<std::string , Vector4<double> >& f
double theQ=daughter1_HeliOmega.E()-daughter1_HeliOmega.M()+daughter2_HeliOmega.E()-daughter2_HeliOmega.M()+daughter3_HeliOmega.E()-daughter3_HeliOmega.M();
double lambdaNorm=theQ*theQ*(theQ*theQ/108.+daughter1_HeliOmega.M()*theQ/9.+daughter1_HeliOmega.M()*daughter1_HeliOmega.M()/3.);
double lambdaOmegaDec=normOmegaDecHeliOmega_4V.P()*normOmegaDecHeliOmega_4V.P()/lambdaNorm;
// evtData->DoubleStringString[_lambdaDecKey][_wignerDRefKey]=lambdaOmegaDec;
evtData->DoubleId[_wigDWigDRefId]=lambdaOmegaDec;
// Spin lam1lam2Dec(0);
// Spin motherJ=_motherIGJPCPtr->J;
for(Spin lamOmega=-1; lamOmega<=1; ++lamOmega){
Id1StringType IdLamOmega=FunctionUtils::spin1Index(lamOmega);
evtData->WignerDIdId1[_wigDWigDRefId][IdLamOmega]=Wigner_D(normOmegaDecHeliOmega_4V.Phi(), normOmegaDecHeliOmega_4V.Theta(),0, 1,lamOmega,0);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment