diff --git a/Examples/Psi2STo2K2PiGam/AbsPsi2STo2K2PiGamLh.cc b/Examples/Psi2STo2K2PiGam/AbsPsi2STo2K2PiGamLh.cc index 4c2325d536eccaf182ce3c57291da69be95e927a..d1b1ed576360272480578f7b598d868962c8b237 100644 --- a/Examples/Psi2STo2K2PiGam/AbsPsi2STo2K2PiGamLh.cc +++ b/Examples/Psi2STo2K2PiGam/AbsPsi2STo2K2PiGamLh.cc @@ -1623,7 +1623,7 @@ complex<double> AbsPsi2STo2K2PiGamLh::chiToK2KToK2PiAmp(Psi2STo2K2PiGamData::Psi return result; } -complex<double> AbsPsi2STo2K2PiGamLh::chiToK1Tof980_piKAmp(Psi2STo2K2PiGamData::Psi2STo2K2PiGamEvtData* theData, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& K1Prod, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& K1Dec, double K1Mass, double K1Width, double f980_Mass, double f980_gKK, double f980_gPiPi){ +complex<double> AbsPsi2STo2K2PiGamLh::chiToKjTof980_piKAmp(Psi2STo2K2PiGamData::Psi2STo2K2PiGamEvtData* theData, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& KjProd, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& KjDec, Spin Kj, double KjMass, double KjWidth, double f980_Mass, double f980_gKK, double f980_gPiPi){ const double massPi0 = 0.1349766; std::pair <const double, const double> decPair1=make_pair(massPi0, massPi0); @@ -1644,13 +1644,13 @@ complex<double> AbsPsi2STo2K2PiGamLh::chiToK1Tof980_piKAmp(Psi2STo2K2PiGamData:: Vector4<double> PiPi(theData->PiPi_HeliChic0_4V.E(), theData->PiPi_HeliChic0_4V.Px(), theData->PiPi_HeliChic0_4V.Py(), theData->PiPi_HeliChic0_4V.Pz()); - Spin lamK1=0; + Spin lamKj=0; complex<double> result(0.,0.); std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >::iterator itProd; std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >::iterator itDec; - for ( itProd=K1Prod.begin(); itProd!=K1Prod.end(); ++itProd){ + for ( itProd=KjProd.begin(); itProd!=KjProd.end(); ++itProd){ boost::shared_ptr<const JPCLS> theState=itProd->first; double theMagProd=itProd->second.first; @@ -1659,26 +1659,27 @@ complex<double> AbsPsi2STo2K2PiGamLh::chiToK1Tof980_piKAmp(Psi2STo2K2PiGamData:: complex<double> currentResultDec(0.,0.); - for ( itDec=K1Dec.begin(); itDec!=K1Dec.end(); ++itDec){ + for ( itDec=KjDec.begin(); itDec!=KjDec.end(); ++itDec){ boost::shared_ptr<const JPCLS> theDecState=itDec->first; double theMagDec=itDec->second.first; double thePhiDec=itDec->second.second; complex<double> expiphiDec(cos(thePhiDec), sin(thePhiDec)); - complex<double> ampKpPiPi=conj(theData->DfK1pTof0Kp[1][0][0])*BreitWigner(KpPiPi, K1Mass, K1Width); - complex<double> ampKmPiPi=conj(theData->DfK1mTof0Km[1][0][0])*BreitWigner(KmPiPi, K1Mass, K1Width); + complex<double> ampKpPiPi=conj(theData->DfKjpTof0Kp[Kj][0][0])*BreitWigner(KpPiPi, KjMass, KjWidth); + complex<double> ampKmPiPi=conj(theData->DfKjmTof0Km[Kj][0][0])*BreitWigner(KmPiPi, KjMass, KjWidth); - currentResultDec+=theMagDec*expiphiDec*sqrt(2.*theState->L+1.)*Clebsch(theState->L, 0., theState->S, 0, theState->J, 0)*Clebsch(1,0, 0, 0, theState->S, 0)*Flatte(PiPi, decPair1, decPair2, f980_Mass, f980_gPiPi, f980_gKK)*(ampKpPiPi+ampKmPiPi); + currentResultDec+=theMagDec*expiphiDec*sqrt(2.*theDecState->L+1.) + *Flatte(PiPi, decPair1, decPair2, f980_Mass, f980_gPiPi, f980_gKK)*(ampKpPiPi+ampKmPiPi); } - result+=theMagProd*expiphiProd*currentResultDec; + result+=theMagProd*expiphiProd*sqrt(2.*theState->L+1.)*Clebsch(theState->L, 0., theState->S, 0, theState->J, 0)*Clebsch(Kj,0, 0, 0, theState->S, 0)*currentResultDec; } return result; } -complex<double> AbsPsi2STo2K2PiGamLh::chiToK1Tof0_piKAmp(Psi2STo2K2PiGamData::Psi2STo2K2PiGamEvtData* theData, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& K1Prod, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& K1Dec, double K1Mass, double K1Width, double f0Mass, double f0Width){ +complex<double> AbsPsi2STo2K2PiGamLh::chiToKjTof0_piKAmp(Psi2STo2K2PiGamData::Psi2STo2K2PiGamEvtData* theData, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& KjProd, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& KjDec, Spin Kj, double KjMass, double KjWidth, double f0Mass, double f0Width){ Vector4<double> KpPiPi(theData->KpPiPi_HeliChic0_4V.E(), theData->KpPiPi_HeliChic0_4V.Px(), theData->KpPiPi_HeliChic0_4V.Py(), theData->KpPiPi_HeliChic0_4V.Pz()); @@ -1689,13 +1690,13 @@ complex<double> AbsPsi2STo2K2PiGamLh::chiToK1Tof0_piKAmp(Psi2STo2K2PiGamData::Ps theData->PiPi_HeliChic0_4V.Py(), theData->PiPi_HeliChic0_4V.Pz()); - Spin lamK1=0; + Spin lamKj=0; complex<double> result(0.,0.); std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >::iterator itProd; std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >::iterator itDec; - for ( itProd=K1Prod.begin(); itProd!=K1Prod.end(); ++itProd){ + for ( itProd=KjProd.begin(); itProd!=KjProd.end(); ++itProd){ boost::shared_ptr<const JPCLS> theState=itProd->first; double theMagProd=itProd->second.first; @@ -1704,21 +1705,21 @@ complex<double> AbsPsi2STo2K2PiGamLh::chiToK1Tof0_piKAmp(Psi2STo2K2PiGamData::Ps complex<double> currentResultDec(0.,0.); - for ( itDec=K1Dec.begin(); itDec!=K1Dec.end(); ++itDec){ + for ( itDec=KjDec.begin(); itDec!=KjDec.end(); ++itDec){ boost::shared_ptr<const JPCLS> theDecState=itDec->first; double theMagDec=itDec->second.first; double thePhiDec=itDec->second.second; complex<double> expiphiDec(cos(thePhiDec), sin(thePhiDec)); - complex<double> ampKpPiPi=conj(theData->DfK1pTof0Kp[1][0][0])*BreitWigner(KpPiPi, K1Mass, K1Width); - complex<double> ampKmPiPi=conj(theData->DfK1mTof0Km[1][0][0])*BreitWigner(KmPiPi, K1Mass, K1Width); + complex<double> ampKpPiPi=conj(theData->DfKjpTof0Kp[Kj][0][0])*BreitWigner(KpPiPi, KjMass, KjWidth); + complex<double> ampKmPiPi=conj(theData->DfKjmTof0Km[Kj][0][0])*BreitWigner(KmPiPi, KjMass, KjWidth); - currentResultDec+=theMagDec*expiphiDec*sqrt(2.*theState->L+1.)*Clebsch(theState->L, 0., theState->S, 0, theState->J, 0)*Clebsch(1,0, 0, 0, theState->S, 0)*BreitWigner(PiPi, f0Mass, f0Width)*(ampKpPiPi+ampKmPiPi); + currentResultDec+=theMagDec*expiphiDec*sqrt(2.*theDecState->L+1.)*BreitWigner(PiPi, f0Mass, f0Width)*(ampKpPiPi+ampKmPiPi); } - result+=theMagProd*expiphiProd*currentResultDec; + result+=theMagProd*expiphiProd*sqrt(2.*theState->L+1.)*Clebsch(theState->L, 0., theState->S, 0, theState->J, 0)*Clebsch(Kj,0, 0, 0, theState->S, 0)*currentResultDec; } return result; diff --git a/Examples/Psi2STo2K2PiGam/AbsPsi2STo2K2PiGamLh.hh b/Examples/Psi2STo2K2PiGam/AbsPsi2STo2K2PiGamLh.hh index 63051965585c23ac885819f59d1f509ca405d901..d88521630a1549c2fc68e018ddc086d7ab78c4c0 100644 --- a/Examples/Psi2STo2K2PiGam/AbsPsi2STo2K2PiGamLh.hh +++ b/Examples/Psi2STo2K2PiGam/AbsPsi2STo2K2PiGamLh.hh @@ -135,9 +135,9 @@ protected: virtual complex<double> chiToPi0Pi0ToK0KAmp(Psi2STo2K2PiGamData::Psi2STo2K2PiGamEvtData* theData, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& ChiToPi0Pi0Amp, double Pi_0_Mass, double Pi_0_Width, double K0Mass, double K0Width); - virtual complex<double> chiToK1Tof980_piKAmp(Psi2STo2K2PiGamData::Psi2STo2K2PiGamEvtData* theData, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& K1Prod, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& K1Dec, double K1Mass, double K1Width, double f980_Mass, double f980_gKK, double f980_gPiPi); + virtual complex<double> chiToKjTof980_piKAmp(Psi2STo2K2PiGamData::Psi2STo2K2PiGamEvtData* theData, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& KjProd, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& KjDec, Spin Kj, double KjMass, double KjWidth, double f980_Mass, double f980_gKK, double f980_gPiPi); - virtual complex<double> chiToK1Tof0_piKAmp(Psi2STo2K2PiGamData::Psi2STo2K2PiGamEvtData* theData, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& K1Prod, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& K1Dec, double K1Mass, double K1Width, double f0Mass, double f0Width); + virtual complex<double> chiToKjTof0_piKAmp(Psi2STo2K2PiGamData::Psi2STo2K2PiGamEvtData* theData, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& KjProd, std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess >& KjDec, Spin Kj, double KjMass, double KjWidth, double f0Mass, double f0Width); private: diff --git a/Examples/Psi2STo2K2PiGam/FitParams2K2PiGam.cc b/Examples/Psi2STo2K2PiGam/FitParams2K2PiGam.cc index a786f4561242556f131147d6f73c3e3bafdb9cf3..6d32421f93f2f3009a980d6c419d441b0990ff37 100644 --- a/Examples/Psi2STo2K2PiGam/FitParams2K2PiGam.cc +++ b/Examples/Psi2STo2K2PiGam/FitParams2K2PiGam.cc @@ -66,6 +66,9 @@ FitParams2K2PiGam::FitParams2K2PiGam() _jpclsMap[paramEnum2K2PiGam::K_1_2400Tof980K]=theStates.K1pTof0KStates(); _jpclsMap[paramEnum2K2PiGam::K_1_2400Tof1710K]=theStates.K1pTof0KStates(); _jpclsMap[paramEnum2K2PiGam::K_1_2400ToK_0_1430Pi]=theStates.K1ToK0PiStates(); + _jpclsMap[paramEnum2K2PiGam::ChiToK_2_2400K]=theStates.ChiToK0K2_States(); + _jpclsMap[paramEnum2K2PiGam::K_2_2400Tof980K]=theStates.K2Tof0KStates(); + _jpclsMap[paramEnum2K2PiGam::K_2_2400Tof1710K]=theStates.K2Tof0KStates(); _jpclsMap[paramEnum2K2PiGam::K892K_1_1680]=theStates.ChiTo2K892States(); _jpclsMap[paramEnum2K2PiGam::ChiToK1680K1680]=theStates.ChiTo2K892States(); _jpclsMap[paramEnum2K2PiGam::ChiToK1680K_0_1430]=theStates.ChiToKst0Kst1States(); @@ -172,6 +175,9 @@ std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collecti else if (index==paramEnum2K2PiGam::K_1_2400Tof980K) return params.K_1_2400Tof980K; else if (index==paramEnum2K2PiGam::K_1_2400Tof1710K) return params.K_1_2400Tof1710K; else if (index==paramEnum2K2PiGam::K_1_2400ToK_0_1430Pi) return params.K_1_2400ToK_0_1430Pi; + else if (index==paramEnum2K2PiGam::ChiToK_2_2400K) return params.ChiToK_2_2400K; + else if (index==paramEnum2K2PiGam::K_2_2400Tof980K) return params.K_2_2400Tof980K; + else if (index==paramEnum2K2PiGam::K_2_2400Tof1710K) return params.K_2_2400Tof1710K; else if (index==paramEnum2K2PiGam::K892K_1_1680) return params.ChiToK892K1680; else if (index==paramEnum2K2PiGam::ChiToK1680K1680) return params.ChiToK1680K1680; else if (index==paramEnum2K2PiGam::ChiToK1680K_0_1430) return params.ChiToK1680K_0_1430; @@ -237,6 +243,7 @@ pair<double, double>& FitParams2K2PiGam::massPair(param2K2PiGam& params, unsigne else if (index==paramEnum2K2PiGam::f_2_2300) return params.Bwf_2_2300; else if (index==paramEnum2K2PiGam::K_0_2400) return params.BwK_0_2400; else if (index==paramEnum2K2PiGam::K_1_2400) return params.BwK_1_2400; + else if (index==paramEnum2K2PiGam::K_2_2400) return params.BwK_2_2400; else if (index==paramEnum2K2PiGam::K_0_1950) return params.BwK_0_1950; else if (index==paramEnum2K2PiGam::K_1_1680) return params.BwK_1_1680; else if (index==paramEnum2K2PiGam::K_1_2300) return params.BwK_1_2300; diff --git a/Examples/Psi2STo2K2PiGam/FitParams2K2PiGam.hh b/Examples/Psi2STo2K2PiGam/FitParams2K2PiGam.hh index 0875e680df73bb6b08f806217e3457ec60c97f0f..0ebc98d28fd35567c8c907cd7cd406f75611fc52 100644 --- a/Examples/Psi2STo2K2PiGam/FitParams2K2PiGam.hh +++ b/Examples/Psi2STo2K2PiGam/FitParams2K2PiGam.hh @@ -25,59 +25,62 @@ using namespace ROOT::Minuit2; struct param2K2PiGam { - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > PsiToChiGam; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTo2K892; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTo2Kappa; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTo2K_2_1430; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTo2K_0_1430; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_0_1430_K_2_1430; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_0_1430_K892; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_1_1410_K_1_1410; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_1_1410_K892; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_2_1430_K892; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_1_1400K; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K1400ToK892Pi; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_1_1270_K; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_1_1270ToK892Pi; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_1_1270ToK_0_1430Pi; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_1_2400K; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_1_2400Tof980K; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_1_2400Tof1710K; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_1_2400ToK_0_1430Pi; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_pif1710_k; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_kf1710_pi; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTof1710f1710; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTof980f980; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTof980f2200; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTof980f_2_2300; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > PsiToChiGam; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTo2K892; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTo2Kappa; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTo2K_2_1430; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTo2K_0_1430; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_0_1430_K_2_1430; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_0_1430_K892; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_1_1410_K_1_1410; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_1_1410_K892; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_2_1430_K892; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_1_1400K; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K1400ToK892Pi; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_1_1270_K; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_1_1270ToK892Pi; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_1_1270ToK_0_1430Pi; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_1_2400K; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_1_2400Tof980K; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_1_2400Tof1710K; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_1_2400ToK_0_1430Pi; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_2_2400K; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_2_2400Tof980K; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_2_2400Tof1710K; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_pif1710_k; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_kf1710_pi; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTof1710f1710; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTof980f980; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTof980f2200; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTof980f_2_2300; std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiTof_2_2300sigma; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToSigmaf980; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToSigmaf1370; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToSigmaf1710; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToSigmaf2200; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_pif1370_k; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_kf1370_pi; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_pif1500_k; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_kf1500_pi; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1710_pif1370_k; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1710_kf1370_pi; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_pif_2_1270_k; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_kf_2_1270_pi; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_pif_2_1430_k; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_kf_2_1430_pi; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_pif_2_1525_k; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_kf_2_1525_pi; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_pif_2_1950_k; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_kf_2_1950_pi; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1500_pif_2_1525_k; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1500_kf_2_1525_pi; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1710_pif_2_1430_k; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1710_kf_2_1430_pi; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1710_pif_2_1950_k; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1710_kf_2_1950_pi; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_0_2400ToKf980; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_0_2400ToKf_0_1710; - std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_0_1430K_0_1950; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToSigmaf980; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToSigmaf1370; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToSigmaf1710; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToSigmaf2200; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_pif1370_k; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_kf1370_pi; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_pif1500_k; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_kf1500_pi; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1710_pif1370_k; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1710_kf1370_pi; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_pif_2_1270_k; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_kf_2_1270_pi; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_pif_2_1430_k; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_kf_2_1430_pi; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_pif_2_1525_k; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_kf_2_1525_pi; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_pif_2_1950_k; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f980_kf_2_1950_pi; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1500_pif_2_1525_k; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1500_kf_2_1525_pi; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1710_pif_2_1430_k; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1710_kf_2_1430_pi; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1710_pif_2_1950_k; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > f1710_kf_2_1950_pi; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_0_2400ToKf980; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_0_2400ToKf_0_1710; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_0_1430K_0_1950; std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToKappaK_0_1430; std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToKappaK_0_1950; std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK892K1680; @@ -130,6 +133,7 @@ struct param2K2PiGam pair<double, double> Bwf_2_2300; pair<double, double> BwK_0_2400; pair<double, double> BwK_1_2400; + pair<double, double> BwK_2_2400; pair<double, double> BwK_2_1950; pair<double, double> BwK_0_1950; pair<double, double> BwK_1_1680; @@ -156,6 +160,7 @@ struct paramEnum2K2PiGam{ ChiToK_1_1400K, K_1_1400ToK892Pi, ChiToK_1_1270_K, K_1_1270ToK892Pi, K_1_1270ToK_0_1430Pi, ChiToK_1_1650K, K_1_1650ToK892Pi, K_1_1650ToK_0_1430Pi, K_0_1430K_0_1950, KappaK_0_1950, ChiToKappaK_0_1430, ChiToK_1_2400K, K_1_2400Tof980K, K_1_2400Tof1710K, K_1_2400ToK_0_1430Pi, + ChiToK_2_2400K, K_2_2400Tof980K, K_2_2400Tof1710K, f980_pif1710_k, f980_kf1710_pi, ChiTof1710f1710, f980f980, f980f2200, ChiTof980f_2_2300, ChiTof_2_2300sigma, f980_pif1370_k, f980_kf1370_pi, f980_pif1500_k, f980_kf1500_pi, f1710_pif1370_k, f1710_kf1370_pi, K_0_2400KToKf980, ChiToK_0_2400ToKf_0_1710, K892K_1_1680, ChiToK1680K1680, ChiToK1680K_0_1430, K892K_1_2300, @@ -168,7 +173,7 @@ struct paramEnum2K2PiGam{ ChiToK_2_1770K, K_2_1770ToK_2_1430Pi, ChiToK_0_1430KPi, ChiToK892KPi, nAmps, K892=nAmps,Kappa, K_0_1430, K_1_1400, K_1_1410, K_2_1430, K_1_1270,K_1_1650, - f1500, f1710, f2200, sigma, f1360, f1370, K_0_2400, K_1_2400, K_0_1950, K_1_1680, K_1_2300, K_0_1460, K_0_1830, + f1500, f1710, f2200, sigma, f1360, f1370, K_0_2400, K_1_2400, K_2_2400, K_0_1950, K_1_1680, K_1_2300, K_0_1460, K_0_1830, f_2_1270, f_2_1430, f_2_1525, f_2_1950, f_2_2300, Pi_2_1670, Pi1800, Pi3000, Pi_2_2285, K_2_1770, nMasses, @@ -184,6 +189,7 @@ struct paramEnum2K2PiGam{ "ChiToK_1_1400K", "K_1_1400ToK892Pi", "ChiToK_1_1270_K", "K_1_1270ToK892Pi", "K_1_1270ToK_0_1430Pi", "ChiToK_1_1650K", "K_1_1650ToK892Pi", "K_1_1650ToK_0_1430Pi","K_0_1430K_0_1950", "KappaK_0_1950","ChiToKappaK_0_1430", "ChiToK_1_2400K", "K_1_2400Tof980K","K_1_2400Tof1710K", "K_1_2400ToK_0_1430Pi", + "ChiToK_2_2400K", "K_2_2400Tof980K","K_2_2400Tof1710K", "f980_pif1710_k", "f980_kf1710_pi", "ChiTof1710f1710", "f980f980", "f980f2200", "ChiTof980f_2_2300","ChiTof_2_2300sigma", "f980_pif1370_k", "f980_kf1370_pi", "f980_pif1500_k", "f980_kf1500_pi", "f1710_pif1370_k", "f1710_kf1370_pi", "K_0_2400KToKf980", "ChiToK_0_2400ToKf_0_1710", "K892K_1_1680", "ChiToK1680K1680", "ChiToK1680K_0_1430", "K892K_1_2300", @@ -194,9 +200,8 @@ struct paramEnum2K2PiGam{ "ChiToPi1800Pi0Tof980","ChiToPi1800Pi0Tof1370","ChiToPi1800Pi0ToKappa","ChiToPi1800Pi0ToK892K","ChiToPi3000Pi0ToK892K","ChiToPi3000Pi0ToK_0_1950K", "ChiToPi_2_2285Pi","Pi_2_2285Tof1700Pi","Pi_2_2285ToK892KPi","Pi_2_2285ToK_0_1430K","Pi_2_2285ToK_2_1430K", "ChiToK_2_1770K","K_2_1770ToK_2_1430Pi","ChiToK_0_1430KPi","ChiToK892KPi", - "K892", "Kappa", "K_0_1430", "K_1_1400", "K_1_1410", "K_2_1430", "K_1_1270", "K_1_1650", - "f1500", "f1710", "f2200", "sigma", "f1360", "f1370", "K_0_2400", "K_1_2400", "K_0_1950", "K_1_1680", "K_1_2300", "K_0_1460", "K_0_1830", + "f1500", "f1710", "f2200", "sigma", "f1360", "f1370", "K_0_2400", "K_1_2400", "K_2_2400", "K_0_1950", "K_1_1680", "K_1_2300", "K_0_1460", "K_0_1830", "f_2_1270", "f_2_1430", "f_2_1525","f_2_1950","f_2_2300", "Pi_2_1670","Pi1800","Pi3000","Pi_2_2285","K_2_1770", diff --git a/Examples/Psi2STo2K2PiGam/Hyp5Lh.cc b/Examples/Psi2STo2K2PiGam/Hyp5Lh.cc index f69336b54d4becd67a0a8b1695604652d57fd333..c23ca579134b6fab7f2d5e5ae2a0dc9b98e4d66f 100644 --- a/Examples/Psi2STo2K2PiGam/Hyp5Lh.cc +++ b/Examples/Psi2STo2K2PiGam/Hyp5Lh.cc @@ -15,6 +15,8 @@ Hyp5Lh::Hyp5Lh(boost::shared_ptr<const Psi2STo2K2PiGamEvtList> theEvtList, const ,_K_1_2400KHyp5(true) ,_K_1_2400KTof_0_1710Hyp5(true) ,_K_1_2400KToK_0_1430Hyp5(true) + ,_K_2_2400KTof980Hyp5(true) + ,_K_2_2400KTof_0_1710Hyp5(true) ,_ChiToK_0_1430KPiHyp5(true) ,_ChiToK892KPiHyp5(true) , _nFitParams(0) @@ -30,6 +32,8 @@ Hyp5Lh::Hyp5Lh( boost::shared_ptr<AbsPsi2STo2K2PiGamLh> theLhPtr, const std::map ,_K_1_2400KHyp5(true) ,_K_1_2400KTof_0_1710Hyp5(true) ,_K_1_2400KToK_0_1430Hyp5(true) + ,_K_2_2400KTof980Hyp5(true) + ,_K_2_2400KTof_0_1710Hyp5(true) ,_ChiToK_0_1430KPiHyp5(true) ,_ChiToK892KPiHyp5(true) , _nFitParams(0) @@ -79,14 +83,14 @@ complex<double> Hyp5Lh::chi0DecAmps(const param2K2PiGam& theParamVal, Psi2STo2K2 if(_K_1_2400KHyp5){ std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_1_2400Tof980K=theParamVal.K_1_2400Tof980K; - result+=chiToK1Tof980_piKAmp(theData, ChiToK_1_2400K, K_1_2400Tof980K, K_1_2400Mass, K_1_2400Width, f980_Mass, f980_gKK, f980_gPiPi); + result+=chiToKjTof980_piKAmp(theData, ChiToK_1_2400K, K_1_2400Tof980K, 1, K_1_2400Mass, K_1_2400Width, f980_Mass, f980_gKK, f980_gPiPi); } if(_K_1_2400KTof_0_1710Hyp5){ double f1710Mass=theParamVal.Bwf1710.first; double f1710Width=theParamVal.Bwf1710.second; std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_1_2400Tof1710K=theParamVal.K_1_2400Tof1710K; - result+=chiToK1Tof0_piKAmp(theData, ChiToK_1_2400K, K_1_2400Tof1710K, K_1_2400Mass, K_1_2400Width, f1710Mass, f1710Width); + result+=chiToKjTof0_piKAmp(theData, ChiToK_1_2400K, K_1_2400Tof1710K, 1, K_1_2400Mass, K_1_2400Width, f1710Mass, f1710Width); } if(_K_1_2400KToK_0_1430Hyp5){ @@ -97,6 +101,25 @@ complex<double> Hyp5Lh::chi0DecAmps(const param2K2PiGam& theParamVal, Psi2STo2K2 } } + + if(_K_2_2400KTof980Hyp5 || _K_2_2400KTof_0_1710Hyp5){ + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_2_2400K=theParamVal.ChiToK_2_2400K; + double K_2_2400Mass=theParamVal.BwK_2_2400.first; + double K_2_2400Width=theParamVal.BwK_2_2400.second; + + if(_K_2_2400KTof980Hyp5){ + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_2_2400Tof980K=theParamVal.K_2_2400Tof980K; + result+=chiToKjTof980_piKAmp(theData, ChiToK_2_2400K, K_2_2400Tof980K, 2, K_2_2400Mass, K_2_2400Width, f980_Mass, f980_gKK, f980_gPiPi); + } + + if (_K_2_2400KTof_0_1710Hyp5){ + double f1710Mass=theParamVal.Bwf1710.first; + double f1710Width=theParamVal.Bwf1710.second; + std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > K_2_2400Tof1710K=theParamVal.K_2_2400Tof1710K; + result+=chiToKjTof0_piKAmp(theData, ChiToK_2_2400K, K_2_2400Tof1710K, 2, K_2_2400Mass, K_2_2400Width, f1710Mass, f1710Width); + } + } + if(_ChiToK_0_1430KPiHyp5){ std::map< boost::shared_ptr<const JPCLS>, pair<double, double>, pawian::Collection::SharedPtrLess > ChiToK_0_1430KPi=theParamVal.ChiToK_0_1430KPi; double K_0_1430Mass=theParamVal.BwK_0_1430.first; @@ -273,7 +296,6 @@ void Hyp5Lh::setUp(const std::map<const std::string, bool>& hypMap){ else Alert << "hypothesis K_1_2400KHyp5 not set!!!" <<endmsg; - iter= hypMap.find("K_1_2400KTof_0_1710Hyp5"); if (iter !=hypMap.end()){ _K_1_2400KTof_0_1710Hyp5= iter->second; @@ -291,6 +313,25 @@ void Hyp5Lh::setUp(const std::map<const std::string, bool>& hypMap){ else Alert << "hypothesis K_1_2400KToK_0_1430Hyp5 not set!!!" <<endmsg; + + iter= hypMap.find("K_2_2400KTof980Hyp5"); + if (iter !=hypMap.end()){ + _K_2_2400KTof980Hyp5= iter->second; + Info<< "hypothesis " << iter->first << "\t" << _K_2_2400KTof980Hyp5 <<endmsg; + _hypMap[iter->first]= iter->second; + } + else Alert << "hypothesis K_2_2400KTof980Hyp5 not set!!!" <<endmsg; + + + iter= hypMap.find("K_2_2400KTof_0_1710Hyp5"); + if (iter !=hypMap.end()){ + _K_2_2400KTof_0_1710Hyp5= iter->second; + Info<< "hypothesis " << iter->first << "\t" << _K_2_2400KTof_0_1710Hyp5 <<endmsg; + _hypMap[iter->first]= iter->second; + } + else Alert << "hypothesis K_2_2400KTof_0_1710Hyp5 not set!!!" <<endmsg; + + iter= hypMap.find("K_0_2400KTof_0_1710Hyp5"); if (iter !=hypMap.end()){ @@ -345,6 +386,20 @@ void Hyp5Lh::setUp(const std::map<const std::string, bool>& hypMap){ } } + if(_K_2_2400KTof980Hyp5 || _K_2_2400KTof_0_1710Hyp5){ + _ampVec.push_back(paramEnum2K2PiGam::ChiToK_2_2400K); + _massVec.push_back(paramEnum2K2PiGam::K_2_2400); + + if(_K_2_2400KTof980Hyp5){ + _ampVec.push_back(paramEnum2K2PiGam::K_2_2400Tof980K); + } + + if(_K_2_2400KTof_0_1710Hyp5){ + _ampVec.push_back(paramEnum2K2PiGam::K_2_2400Tof1710K); + } + } + + if(_ChiToK_0_1430KPiHyp5){ _ampVec.push_back(paramEnum2K2PiGam::ChiToK_0_1430KPi); } diff --git a/Examples/Psi2STo2K2PiGam/Hyp5Lh.hh b/Examples/Psi2STo2K2PiGam/Hyp5Lh.hh index d5d43fc4ddb599019d3c69e417b9a4f66fb031ad..5507ea0d0a0afb3656df1b2bbd0c1a1a2d4de1f1 100644 --- a/Examples/Psi2STo2K2PiGam/Hyp5Lh.hh +++ b/Examples/Psi2STo2K2PiGam/Hyp5Lh.hh @@ -57,6 +57,8 @@ protected: bool _K_1_2400KHyp5; bool _K_1_2400KTof_0_1710Hyp5; bool _K_1_2400KToK_0_1430Hyp5; + bool _K_2_2400KTof980Hyp5; + bool _K_2_2400KTof_0_1710Hyp5; bool _ChiToK_0_1430KPiHyp5; bool _ChiToK892KPiHyp5; diff --git a/Examples/Psi2STo2K2PiGam/Jamfile b/Examples/Psi2STo2K2PiGam/Jamfile index e6c2eb1ce6f9a041de6ff2ae65c35c471acc8d49..35c51f5fb87c22268f0779b84d1746d0ac9f576d 100644 --- a/Examples/Psi2STo2K2PiGam/Jamfile +++ b/Examples/Psi2STo2K2PiGam/Jamfile @@ -15,4 +15,3 @@ exe ParserTestApp : ParserTestApp.cc Psi2STo2K2PiGam : ; exe Mpsi2STo2K2PiGamTestApp : Mpsi2STo2K2PiGamTestApp.cc Psi2STo2K2PiGam : ; exe qaMixedSampleCacheApp : qaMixedSampleCacheApp.cc Psi2STo2K2PiGam : ; exe qaMixedSampleFastApp : qaMixedSampleFastApp.cc Psi2STo2K2PiGam : ; - diff --git a/Examples/Psi2STo2K2PiGam/Mpsi2STo2K2PiGamTestApp.cc b/Examples/Psi2STo2K2PiGam/Mpsi2STo2K2PiGamTestApp.cc index b80636ba07c4a9fd1617fea9e0c3750e2d278e86..15d1c3e464a479245ccf95f59f04fd5c01e9b5e5 100644 --- a/Examples/Psi2STo2K2PiGam/Mpsi2STo2K2PiGamTestApp.cc +++ b/Examples/Psi2STo2K2PiGam/Mpsi2STo2K2PiGamTestApp.cc @@ -174,6 +174,8 @@ int main(int __argc,char *__argv[]){ hypMap["K_1_2400KHyp5"]=true; hypMap["K_1_2400KTof_0_1710Hyp5"]=true; hypMap["K_1_2400KToK_0_1430Hyp5"]=true; + hypMap["K_2_2400KTof980Hyp5"]=true; + hypMap["K_2_2400KTof_0_1710Hyp5"]=true; hypMap["ChiToK_0_1430KPiHyp5"]=true; hypMap["ChiToK892KPiHyp5"]=true; hypMap["K_0_1430K_0_1950Hyp6"]=true; diff --git a/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamData.hh b/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamData.hh index 5c4c3fecf937994512e01be641d865e0387632a5..0d07e6be009af6d7c58bd09ae207659a7b3dc9a1 100644 --- a/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamData.hh +++ b/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamData.hh @@ -112,9 +112,8 @@ namespace Psi2STo2K2PiGamData { map<Spin,map<Spin,map<Spin,complex<double> > > > Dff2ToKKviaKKpi0; map<Spin,map<Spin,map<Spin,complex<double> > > > Dff2ToKKviaKKpi1; - map<Spin,map<Spin,map<Spin,complex<double> > > > DfK1pTof0Kp; - map<Spin,map<Spin,map<Spin,complex<double> > > > DfK1mTof0Km; - + map<Spin,map<Spin,map<Spin,complex<double> > > > DfKjpTof0Kp; + map<Spin,map<Spin,map<Spin,complex<double> > > > DfKjmTof0Km; bool operator<(const Psi2STo2K2PiGamEvtData& compare) const{ bool result=false; diff --git a/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamEvtList.cc b/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamEvtList.cc index 17bc022e478429e77fb9d57c1e1f02fcfced6269..71cca09ba4fb161dc6b6943748dde7c8cfe3660e 100644 --- a/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamEvtList.cc +++ b/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamEvtList.cc @@ -170,15 +170,14 @@ Psi2STo2K2PiGamEvtData* Psi2STo2K2PiGamEvtList::fillEvtData(Event* anEvent, int // calculate and store WignerD functions for K*+(1400)->K*+(892) pi1; K*+(892)->K+ pi0 + cc Spin jKst1400=1; - for (Spin M=-1; M<=1; M++){ - for (Spin lam=-1; lam<=1; lam++){ - thePsi2STo2K2PiGamEvtData->DfK1400pToKstpPi1[jKst1400][M][lam]=Wigner_D(KpPi0_HeliKpPi0Pi0_4V.Phi(),KpPi0_HeliKpPi0Pi0_4V.Theta(),0,jKst1400,M,lam); - thePsi2STo2K2PiGamEvtData->DfK1400pToKstpPi0[jKst1400][M][lam]=Wigner_D(KpPi1_HeliKpPi0Pi0_4V.Phi(),KpPi1_HeliKpPi0Pi0_4V.Theta(),0,jKst1400,M,lam); - - thePsi2STo2K2PiGamEvtData->DfK1400mToKstmPi1[jKst1400][M][lam]=Wigner_D(KmPi0_HeliKmPi0Pi0_4V.Phi(),KmPi0_HeliKmPi0Pi0_4V.Theta(),0,jKst1400,M,lam); - thePsi2STo2K2PiGamEvtData->DfK1400mToKstmPi0[jKst1400][M][lam]=Wigner_D(KmPi1_HeliKmPi0Pi0_4V.Phi(),KmPi1_HeliKmPi0Pi0_4V.Theta(),0,jKst1400,M,lam); - } + for (Spin lam=-1; lam<=1; lam++){ + thePsi2STo2K2PiGamEvtData->DfK1400pToKstpPi1[jKst1400][0][lam]=Wigner_D(KpPi0_HeliKpPi0Pi0_4V.Phi(),KpPi0_HeliKpPi0Pi0_4V.Theta(),0,jKst1400,0,lam); + thePsi2STo2K2PiGamEvtData->DfK1400pToKstpPi0[jKst1400][0][lam]=Wigner_D(KpPi1_HeliKpPi0Pi0_4V.Phi(),KpPi1_HeliKpPi0Pi0_4V.Theta(),0,jKst1400,0,lam); + + thePsi2STo2K2PiGamEvtData->DfK1400mToKstmPi1[jKst1400][0][lam]=Wigner_D(KmPi0_HeliKmPi0Pi0_4V.Phi(),KmPi0_HeliKmPi0Pi0_4V.Theta(),0,jKst1400,0,lam); + thePsi2STo2K2PiGamEvtData->DfK1400mToKstmPi0[jKst1400][0][lam]=Wigner_D(KmPi1_HeliKmPi0Pi0_4V.Phi(),KmPi1_HeliKmPi0Pi0_4V.Theta(),0,jKst1400,0,lam); } + // calculate and store WignerD functions for K2->K*2 pi; Spin jK2=2; @@ -192,12 +191,10 @@ Psi2STo2K2PiGamEvtData* Psi2STo2K2PiGamEvtList::fillEvtData(Event* anEvent, int } // calculate and store WignerD functions for K*2->K pi0 via K pi0 pi0 for (Spin M=-2; M<=2; M++){ - for (Spin lam2=-2; lam2<=2; lam2++){ - thePsi2STo2K2PiGamEvtData->DfK2pToKpPi0ViaKpPiPi[jK2][M][lam2]=Wigner_D(Kp_HeliKpPi0_ViaKpPiPi_4V.Phi(), Kp_HeliKpPi0_ViaKpPiPi_4V.Theta(),0,jK2,M,lam2); - thePsi2STo2K2PiGamEvtData->DfK2pToKpPi1ViaKpPiPi[jK2][M][lam2]=Wigner_D(Kp_HeliKpPi1_ViaKpPiPi_4V.Phi(),Kp_HeliKpPi1_ViaKpPiPi_4V.Theta(),0,jK2,M,lam2); - thePsi2STo2K2PiGamEvtData->DfK2mToKmPi0ViaKmPiPi[jK2][M][lam2]=Wigner_D(Km_HeliKmPi0_ViaKmPiPi_4V.Phi(),Km_HeliKmPi0_ViaKmPiPi_4V.Theta(),0,jK2,M,lam2); - thePsi2STo2K2PiGamEvtData->DfK2mToKmPi1ViaKmPiPi[jK2][M][lam2]=Wigner_D(Km_HeliKmPi1_ViaKmPiPi_4V.Phi(),Km_HeliKmPi1_ViaKmPiPi_4V.Theta(),0,jK2,M,lam2); - } + thePsi2STo2K2PiGamEvtData->DfK2pToKpPi0ViaKpPiPi[jK2][M][0]=Wigner_D(Kp_HeliKpPi0_ViaKpPiPi_4V.Phi(), Kp_HeliKpPi0_ViaKpPiPi_4V.Theta(),0,jK2,M,0); + thePsi2STo2K2PiGamEvtData->DfK2pToKpPi1ViaKpPiPi[jK2][M][0]=Wigner_D(Kp_HeliKpPi1_ViaKpPiPi_4V.Phi(),Kp_HeliKpPi1_ViaKpPiPi_4V.Theta(),0,jK2,M,0); + thePsi2STo2K2PiGamEvtData->DfK2mToKmPi0ViaKmPiPi[jK2][M][0]=Wigner_D(Km_HeliKmPi0_ViaKmPiPi_4V.Phi(),Km_HeliKmPi0_ViaKmPiPi_4V.Theta(),0,jK2,M,0); + thePsi2STo2K2PiGamEvtData->DfK2mToKmPi1ViaKmPiPi[jK2][M][0]=Wigner_D(Km_HeliKmPi1_ViaKmPiPi_4V.Phi(),Km_HeliKmPi1_ViaKmPiPi_4V.Theta(),0,jK2,M,0); } // calculate and store WignerD functions for K*1+->K+ pi0, K*1+->K+ pi1+ cc Spin jKst892=1; @@ -211,19 +208,11 @@ Psi2STo2K2PiGamEvtData* Psi2STo2K2PiGamEvtList::fillEvtData(Event* anEvent, int // calculate and store WignerD functions for K*1+->K+ pi0, K*1+->K+ pi1+ cc Via K+ pi0 pi0 for (Spin M=-1; M<=1; M++){ - for (Spin lam2=-1; lam2<=1; lam2++){ - thePsi2STo2K2PiGamEvtData->DfKst1pToKpPi0ViaKpPiPi[jKst892][M][lam2]=Wigner_D(Kp_HeliKpPi0_ViaKpPiPi_4V.Phi(), Kp_HeliKpPi0_ViaKpPiPi_4V.Theta(),0,jKst892,M,lam2); - thePsi2STo2K2PiGamEvtData->DfKst1pToKpPi1ViaKpPiPi[jKst892][M][lam2]=Wigner_D(Kp_HeliKpPi1_ViaKpPiPi_4V.Phi(),Kp_HeliKpPi1_ViaKpPiPi_4V.Theta(),0,jKst892,M,lam2); - - thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi0ViaKmPiPi[jKst892][M][lam2]=Wigner_D(Km_HeliKmPi0_ViaKmPiPi_4V.Phi(),Km_HeliKmPi0_ViaKmPiPi_4V.Theta(),0,jKst892,M,lam2); - thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi1ViaKmPiPi[jKst892][M][lam2]=Wigner_D(Km_HeliKmPi1_ViaKmPiPi_4V.Phi(),Km_HeliKmPi1_ViaKmPiPi_4V.Theta(),0,jKst892,M,lam2); + thePsi2STo2K2PiGamEvtData->DfKst1pToKpPi0ViaKpPiPi[jKst892][M][0]=Wigner_D(Kp_HeliKpPi0_ViaKpPiPi_4V.Phi(), Kp_HeliKpPi0_ViaKpPiPi_4V.Theta(),0,jKst892,M,0); + thePsi2STo2K2PiGamEvtData->DfKst1pToKpPi1ViaKpPiPi[jKst892][M][0]=Wigner_D(Kp_HeliKpPi1_ViaKpPiPi_4V.Phi(),Kp_HeliKpPi1_ViaKpPiPi_4V.Theta(),0,jKst892,M,0); -// thePsi2STo2K2PiGamEvtData->DfKst1pToKpPi0ViaKpPiPi[jKst892][M][lam2]=Wigner_D(Kp_HeliKpPi0_4V.Phi(), Kp_HeliKpPi0_4V.Theta(),0,jKst892,M,lam2); -// thePsi2STo2K2PiGamEvtData->DfKst1pToKpPi1ViaKpPiPi[jKst892][M][lam2]=Wigner_D(Kp_HeliKpPi1_4V.Phi(), Kp_HeliKpPi1_4V.Theta(),0,jKst892,M,lam2); - -// thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi0ViaKmPiPi[jKst892][M][lam2]=Wigner_D(Km_HeliKmPi0_4V.Phi(), Km_HeliKmPi0_4V.Theta(),0,jKst892,M,lam2); -// thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi1ViaKmPiPi[jKst892][M][lam2]=Wigner_D(Km_HeliKmPi1_4V.Phi(), Km_HeliKmPi1_4V.Theta(),0,jKst892,M,lam2); - } + thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi0ViaKmPiPi[jKst892][M][0]=Wigner_D(Km_HeliKmPi0_ViaKmPiPi_4V.Phi(),Km_HeliKmPi0_ViaKmPiPi_4V.Theta(),0,jKst892,M,0); + thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi1ViaKmPiPi[jKst892][M][0]=Wigner_D(Km_HeliKmPi1_ViaKmPiPi_4V.Phi(),Km_HeliKmPi1_ViaKmPiPi_4V.Theta(),0,jKst892,M,0); } @@ -273,28 +262,24 @@ Psi2STo2K2PiGamEvtData* Psi2STo2K2PiGamEvtList::fillEvtData(Event* anEvent, int // calculate and store WignerD functions for K*1+->K+ pi0, K*1+->K+ pi1+ cc Via K+ K- pi0 - for (Spin M=-1; M<=1; M++){ - for (Spin lam2=-1; lam2<=1; lam2++){ - thePsi2STo2K2PiGamEvtData->DfKst1pToKpPi0ViaKKPi0[jKst892][M][lam2]=Wigner_D(Kp_HeliKpPi0_ViaKKPi0_4V.Phi(), Kp_HeliKpPi0_ViaKKPi0_4V.Theta(),0,jKst892,M,lam2); - thePsi2STo2K2PiGamEvtData->DfKst1pToKpPi1ViaKKPi1[jKst892][M][lam2]=Wigner_D(Kp_HeliKpPi1_ViaKKPi1_4V.Phi(),Kp_HeliKpPi1_ViaKKPi1_4V.Theta(),0,jKst892,M,lam2); - - thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi0ViaKKPi0[jKst892][M][lam2]=Wigner_D(Km_HeliKmPi0_ViaKKPi0_4V.Phi(),Km_HeliKmPi0_ViaKKPi0_4V.Theta(),0,jKst892,M,lam2); - thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi1ViaKKPi1[jKst892][M][lam2]=Wigner_D(Km_HeliKmPi1_ViaKKPi1_4V.Phi(),Km_HeliKmPi1_ViaKKPi1_4V.Theta(),0,jKst892,M,lam2); - + for (Spin M=-1; M<=1; M++){ + thePsi2STo2K2PiGamEvtData->DfKst1pToKpPi0ViaKKPi0[jKst892][M][0]=Wigner_D(Kp_HeliKpPi0_ViaKKPi0_4V.Phi(), Kp_HeliKpPi0_ViaKKPi0_4V.Theta(),0,jKst892,M,0); + thePsi2STo2K2PiGamEvtData->DfKst1pToKpPi1ViaKKPi1[jKst892][M][0]=Wigner_D(Kp_HeliKpPi1_ViaKKPi1_4V.Phi(),Kp_HeliKpPi1_ViaKKPi1_4V.Theta(),0,jKst892,M,0); + + thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi0ViaKKPi0[jKst892][M][0]=Wigner_D(Km_HeliKmPi0_ViaKKPi0_4V.Phi(),Km_HeliKmPi0_ViaKKPi0_4V.Theta(),0,jKst892,M,0); + thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi1ViaKKPi1[jKst892][M][0]=Wigner_D(Km_HeliKmPi1_ViaKKPi1_4V.Phi(),Km_HeliKmPi1_ViaKKPi1_4V.Theta(),0,jKst892,M,0); + } - } - -// calculate and store WignerD functions for K*2+->K+ pi0, K*2+->K+ pi1+ cc Via K+ K- pi0 - for (Spin M=-2; M<=2; M++){ - for (Spin lam2=-2; lam2<=2; lam2++){ - thePsi2STo2K2PiGamEvtData->DfKst1pToKpPi0ViaKKPi0[2][M][lam2]=Wigner_D(Kp_HeliKpPi0_ViaKKPi0_4V.Phi(), Kp_HeliKpPi0_ViaKKPi0_4V.Theta(),0,2,M,lam2); - thePsi2STo2K2PiGamEvtData->DfKst1pToKpPi1ViaKKPi1[2][M][lam2]=Wigner_D(Kp_HeliKpPi1_ViaKKPi1_4V.Phi(),Kp_HeliKpPi1_ViaKKPi1_4V.Theta(),0,2,M,lam2); - - thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi0ViaKKPi0[2][M][lam2]=Wigner_D(Km_HeliKmPi0_ViaKKPi0_4V.Phi(),Km_HeliKmPi0_ViaKKPi0_4V.Theta(),0,2,M,lam2); - thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi1ViaKKPi1[2][M][lam2]=Wigner_D(Km_HeliKmPi1_ViaKKPi1_4V.Phi(),Km_HeliKmPi1_ViaKKPi1_4V.Theta(),0,2,M,lam2); - + + // calculate and store WignerD functions for K*2+->K+ pi0, K*2+->K+ pi1+ cc Via K+ K- pi0 + for (Spin M=-2; M<=2; M++){ + thePsi2STo2K2PiGamEvtData->DfKst1pToKpPi0ViaKKPi0[2][M][0]=Wigner_D(Kp_HeliKpPi0_ViaKKPi0_4V.Phi(), Kp_HeliKpPi0_ViaKKPi0_4V.Theta(),0,2,M,0); + thePsi2STo2K2PiGamEvtData->DfKst1pToKpPi1ViaKKPi1[2][M][0]=Wigner_D(Kp_HeliKpPi1_ViaKKPi1_4V.Phi(),Kp_HeliKpPi1_ViaKKPi1_4V.Theta(),0,2,M,0); + + thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi0ViaKKPi0[2][M][0]=Wigner_D(Km_HeliKmPi0_ViaKKPi0_4V.Phi(),Km_HeliKmPi0_ViaKKPi0_4V.Theta(),0,2,M,0); + thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi1ViaKKPi1[2][M][0]=Wigner_D(Km_HeliKmPi1_ViaKKPi1_4V.Phi(),Km_HeliKmPi1_ViaKKPi1_4V.Theta(),0,2,M,0); + } - } // calculate and store WignerD functions for K*0+->K+ pi0, K*0+->K+ pi1+ cc Via K+ K- pi0 thePsi2STo2K2PiGamEvtData->DfKst1pToKpPi0ViaKKPi0[0][0][0]=Wigner_D(Kp_HeliKpPi0_ViaKKPi0_4V.Phi(), Kp_HeliKpPi0_ViaKKPi0_4V.Theta(),0,0,0,0); @@ -303,12 +288,6 @@ Psi2STo2K2PiGamEvtData* Psi2STo2K2PiGamEvtList::fillEvtData(Event* anEvent, int thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi0ViaKKPi0[0][0][0]=Wigner_D(Km_HeliKmPi0_ViaKKPi0_4V.Phi(),Km_HeliKmPi0_ViaKKPi0_4V.Theta(),0,0,0,0); thePsi2STo2K2PiGamEvtData->DfKst1mToKmPi1ViaKKPi1[0][0][0]=Wigner_D(Km_HeliKmPi1_ViaKKPi1_4V.Phi(),Km_HeliKmPi1_ViaKKPi1_4V.Theta(),0,0,0,0); - for (Spin lam1=-1; lam1<=1; lam1++){ - for (Spin lam2=-1; lam2<=1; lam2++){ - thePsi2STo2K2PiGamEvtData->DfK1pTof0Kp[1][lam1][lam2]=Wigner_D(PiPi_HeliKpPi0Pi0_4V.Phi(), PiPi_HeliKpPi0Pi0_4V.Theta(),0, 1, lam1,lam2); - thePsi2STo2K2PiGamEvtData->DfK1mTof0Km[1][lam1][lam2]=Wigner_D(PiPi_HeliKmPi0Pi0_4V.Phi(), PiPi_HeliKmPi0Pi0_4V.Theta(),0, 1, lam1,lam2); - } - } for (Spin Kj=0; Kj<=3; Kj++){ thePsi2STo2K2PiGamEvtData->DfKjpTof0Kp[Kj][0][0]=Wigner_D(PiPi_HeliKpPi0Pi0_4V.Phi(), PiPi_HeliKpPi0Pi0_4V.Theta(),0, Kj, 0,0); diff --git a/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamStates.cc b/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamStates.cc index 6bcb21c6ce25055f2fee240f5e79bf67dffe8561..82c2f07113c8e026db7640ac3ebc1a2a6dc62022 100644 --- a/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamStates.cc +++ b/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamStates.cc @@ -100,6 +100,9 @@ Psi2STo2K2PiGamStates::Psi2STo2K2PiGamStates() : fillJPCLS(_pi0JPC, _Kst1JPC, _pi0JPC, _Pi0pToKstKJPCLS); + + fillJPCLS(_K2mJPC, _f0JPC, _kJPC, _K2Tof0KJPCLS); + } Psi2STo2K2PiGamStates::~Psi2STo2K2PiGamStates() @@ -295,6 +298,13 @@ void Psi2STo2K2PiGamStates::print(std::ostream& os) const os << "\n" << std::endl; } + os << "\n *** LS combinations for the decay K2 to f0 K *** "<< std::endl; + for ( itJPCLS=_K2Tof0KJPCLS.begin(); itJPCLS!=_K2Tof0KJPCLS.end(); ++itJPCLS){ + (*itJPCLS)->print(os); + os << "\n" << std::endl; + } + + os << "\n *** K+- *** "<< std::endl; _kJPC->print(os); diff --git a/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamStates.hh b/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamStates.hh index ea9090c48ea11f70e355f117ba332b5e7fc071d5..e488f9615585d0ab3d64a4d5a7af5d16c9c6cb62 100644 --- a/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamStates.hh +++ b/Examples/Psi2STo2K2PiGam/Psi2STo2K2PiGamStates.hh @@ -49,6 +49,7 @@ public: std::vector< boost::shared_ptr<const JPCLS> > K2mToK2pPiStates() const {return _K2mToK2pPiJPCLS;} std::vector< boost::shared_ptr<const JPCLS> > K1pTof0KStates() const {return _K1pTof0KJPCLS;} std::vector< boost::shared_ptr<const JPCLS> > Pi0pToKstKStates() const {return _Pi0pToKstKJPCLS;} + std::vector< boost::shared_ptr<const JPCLS> > K2Tof0KStates() const {return _K2Tof0KJPCLS;} void print(std::ostream& os) const; protected: @@ -97,6 +98,7 @@ private: std::vector< boost::shared_ptr<const JPCLS> > _Kst2JPCLS; std::vector< boost::shared_ptr<const JPCLS> > _f2JPCLS; std::vector< boost::shared_ptr<const JPCLS> > _Pi0pToKstKJPCLS; + std::vector< boost::shared_ptr<const JPCLS> > _K2Tof0KJPCLS; void fillJPCLS(boost::shared_ptr<jpcRes>, boost::shared_ptr<jpcRes>, boost::shared_ptr<jpcRes>, std::vector< boost::shared_ptr<const JPCLS> >& ); };