Skip to content
Snippets Groups Projects
Commit 69b8cb37 authored by Markus Kuhlmann's avatar Markus Kuhlmann
Browse files

Merge branch 'master' of jollyj.ep1.rub.de:EP1/Pawian

parents 903b7beb 5bf6f729
No related branches found
No related tags found
No related merge requests found
This diff is collapsed.
......@@ -58,35 +58,33 @@ protected:
private:
TFile* _theTFile;
TH1F* _phpRealHist;
TH1F* _phpImagHist;
TH2F* _phpDefaultComplRealHist2;
TH2F* _phpDefaultComplImagHist2;
TH2F* _phpPenningtonRealHist2;
TH2F* _phpPenningtonImagHist2;
TH2F* _phpReidRealHist2;
TH2F* _phpReidImagHist2;
TH1F* _phpAsnerRealHist;
TH1F* _phpAsnerImagHist;
TH1F* _phpPenningtonRealHist;
TH1F* _phpPenningtonImagHist;
TH1F* _phpReidRealHist;
TH1F* _phpReidImagHist;
TH1F* _phpDefaultRealHist;
TH1F* _phpDefaultImagHist;
TH1F* _phpDefaultComplRealHist;
TH1F* _phpDefaultComplImagHist;
TH1F* _phpMAsnerRealHist;
TH1F* _phpMAsnerImagHist;
TH1F* _phpMPenningtonRealHist;
TH1F* _phpMPenningtonImagHist;
TH1F* _phpMReidRealHist;
TH1F* _phpMReidImagHist;
TH1F* _phpMDefaultComplRealHist;
TH1F* _phpMDefaultComplImagHist;
TH2F* _CMDefaultComplRealHist2;
TH2F* _CMDefaultComplImagHist2;
TH2F* _CMPenningtonRealHist2;
TH2F* _CMPenningtonImagHist2;
TH2F* _CMReidRealHist2;
TH2F* _CMReidImagHist2;
TH1F* _CMAsnerRealHist;
TH1F* _CMAsnerImagHist;
TH1F* _CMPenningtonRealHist;
TH1F* _CMPenningtonImagHist;
TH1F* _CMReidRealHist;
TH1F* _CMReidImagHist;
TH1F* _CMDefaultRealHist;
TH1F* _CMDefaultImagHist;
TH1F* _CMDefaultComplRealHist;
TH1F* _CMDefaultComplImagHist;
TH1F* _CMMAsnerRealHist;
TH1F* _CMMAsnerImagHist;
TH1F* _CMMPenningtonRealHist;
TH1F* _CMMPenningtonImagHist;
TH1F* _CMMReidRealHist;
TH1F* _CMMReidImagHist;
TH1F* _CMMDefaultComplRealHist;
TH1F* _CMMDefaultComplImagHist;
const double _mass1;
const double _mass2;
......
......@@ -62,7 +62,7 @@ complex<double> PhaseSpaceIsobarReid::ChewM(const double mass){
complex<double> PhaseSpaceIsobarReid::ChewM(const complex<double> mass){
complex<double> s=mass*mass;
complex<double> result=PawianQFT::ChewMandelstamReid(s, _mass1, _mass2);
complex<double> result = PawianQFT::ChewMandelstamReid(s, _mass1, _mass2);
complex<double> momReid = PawianQFT::breakupMomQReid(mass, _mass1, _mass2);
CorrectForChosenSign(momReid, result);
return result;
......
......@@ -40,21 +40,18 @@ vector<LS> PawianQFT::GetValidLSWeak(const Spin &__j, const Spin &__s1, const Sp
return valid_ls;
}
complex<double> PawianQFT::phaseSpaceFacAsner(double s, double massDec1, double massDec2){
complex<double> i(0.,1.);
complex<double> PawianQFT::ChewMandelstamAsner(double s, double massDec1, double massDec2){
double rho_i=rhoiAsner(s, massDec1, massDec2);
complex<double> irhoComplex(-rho_i/PawianConstants::pi,0.);
if(s<0 || s > (massDec1+massDec2)*(massDec1+massDec2)){
double multTerm= fabs((1.+rho_i)/(1.-rho_i));
irhoComplex*=log(multTerm);
if(s > (massDec1+massDec2)*(massDec1+massDec2)) irhoComplex+=i*rho_i;
if(s > (massDec1+massDec2)*(massDec1+massDec2)) irhoComplex+=PawianConstants::i*rho_i;
}
else{
irhoComplex*=2.*atan(1/rho_i);
}
// complex<double> result=irhoComplex/i;
complex<double> result=irhoComplex;
return result;
}
......@@ -65,11 +62,10 @@ double PawianQFT::rhoiAsner(double s, double massDec1, double massDec2){
return result;
}
complex<double> PawianQFT::phaseSpaceFacPennington(complex<double> s, double massDec1, double massDec2){
complex<double> PawianQFT::ChewMandelstamPennington(complex<double> s, double massDec1, double massDec2){
//Chew-Mandelstam parametrization
//fulfils analyticity and unitarity
// Basevant/Berger: ANL-HEP-PR-78-27
complex<double> i(0.,1.);
complex<double> sqrrho_a=complex<double>(1.,0.)-(massDec1+massDec2)*(massDec1+massDec2)/s;
complex<double> rho_a = sqrt(sqrrho_a);
complex<double> result=-rho_a/PawianConstants::pi*log((rho_a+1.)/(rho_a-1.));
......@@ -104,9 +100,8 @@ complex<double> PawianQFT::ChewMandelstamReid(complex<double> s, double massDec1
}
complex<double> PawianQFT::phaseSpaceFacReid(complex<double> mass, double massDec1, double massDec2){
complex<double> i(0.,1);
complex<double> s=mass*mass;
complex<double> result=PawianQFT::ChewMandelstamReid(s, massDec1, massDec2)/i;
complex<double> result=PawianQFT::ChewMandelstamReid(s, massDec1, massDec2).imag();
return result;
}
......@@ -115,12 +110,6 @@ complex<double> PawianQFT::phaseSpaceFacReid(double mass, double massDec1, doubl
return PawianQFT::phaseSpaceFacReid(massCompl, massDec1, massDec2);
}
complex<double> PawianQFT::phaseSpaceFacPenningtonsqrts(complex<double> sqrts, double massDec1, double massDec2){
complex<double> s=sqrts*sqrts;
complex<double> result=PawianQFT::phaseSpaceFacPennington(s, massDec1, massDec2);
return result;
}
complex<double> PawianQFT::phaseSpaceFacDefault(double mass, double massDec1, double massDec2){
complex<double> result(0.,0.);
......
......@@ -28,13 +28,12 @@
namespace PawianQFT{
/// Returns all valid @a LS combos for weak decays; non partity conservation
vector<LS> GetValidLSWeak(const Spin &__j, const Spin &__s1, const Spin &__s2);
complex<double> phaseSpaceFacAsner(double s, double massDec1, double massDec2);
complex<double> ChewMandelstamAsner(double s, double massDec1, double massDec2);
double rhoiAsner(double s, double massDec1, double massDec2);
complex<double> phaseSpaceFacPennington(complex<double> s, double massDec1, double massDec2);
complex<double> ChewMandelstamPennington(complex<double> s, double massDec1, double massDec2);
complex<double> ChewMandelstamReid(complex<double> s, double massDec1, double massDec2);
complex<double> phaseSpaceFacReid(complex<double> mass, double massDec1, double massDec2);
complex<double> phaseSpaceFacReid(double mass, double massDec1, double massDec2);
complex<double> phaseSpaceFacPenningtonsqrts(complex<double> sqrts, double massDec1, double massDec2);
complex<double> phaseSpaceFacDefault(double mass, double massDec1, double massDec2);
complex<double> phaseSpaceFacDefault(complex<double> mass, double massDec1, double massDec2);
complex<double> phaseSpaceFacAS(double mass, double massDec1, double massDec2);
......
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