BOSS 7.1.1
BESIII Offline Software System
Loading...
Searching...
No Matches
D0Topipipi0.h
Go to the documentation of this file.
1//--------------------------------------------------------------------------
2//
3// Environment:
4// This software is part of models developed at BES collaboration
5// based on the EvtGen framework. If you use all or part
6// of it, please give an appropriate acknowledgement.
7//
8// Copyright Information: See EvtGen/BesCopyright
9// Copyright (A) 2006 Ping Rong-Gang @IHEP
10//
11// Module: EvtD0Topipipi0.cc
12//
13// Description: Model provided by user, see the mannual
14//
15// Modification history:
16//
17// Liaoyuan Dong Aug. 8, 2022 Module created
18//
19//------------------------------------------------------------------------
20
21#ifndef D0TOPIPIPI0_H
22#define D0TOPIPIPI0_H
23
24#include <vector>
25#include <complex>
26
27using namespace std;
28
30
31public:
32
34 virtual ~D0Topipipi0();
35
36 void init();
37
38 complex<double> Amp(vector<double> Pip, vector<double> Pim, vector<double> Pi0);
39
40private:
41
42 int _nd;
43 int charm;
44 int tagmode;
45
46 void setInput(double* pip, double* pim, double* pi0);
47 int CalAmp();
48
49 complex<double> m_AmpD0;
50 complex<double> m_AmpDb;
51 complex<double> m_RAmp;
52 complex<double> Get_AmpD0(){return m_AmpD0;}
53 complex<double> Get_AmpDb(){return m_AmpDb;}
54
55 double Get_strongPhase();
56 double arg(complex<double> x);
57 double mag2(complex<double> x);
58 double mag2_itf(complex<double> x, complex<double> y);
59
60 complex<double> CalD0Amp();
61 complex<double> CalDbAmp();
62
63 vector<double> sum_tensor(vector<double> pa, vector<double> pb);
64 double contract_11_0(vector<double> pa, vector<double> pb);
65 double contract_22_0(vector<double> pa, vector<double> pb);
66 vector<double> contract_21_1(vector<double> pa, vector<double> pb);
67 vector<double> contract_22_2(vector<double> pa, vector<double> pb);
68 vector<double> contract_31_2(vector<double> pa, vector<double> pb);
69 vector<double> contract_41_3(vector<double> pa, vector<double> pb);
70 vector<double> contract_42_2(vector<double> pa, vector<double> pb);
71
72 vector<double> OrbitalTensors(vector<double> pa, vector<double> pb, vector<double> pc, double r, int rank);
73 vector<double> ProjectionTensors(vector<double> pa, int rank);
74
75 double fundecaymomentum(double mr2, double m1_2, double m2_2);
76 double fundecaymomentum2(double mr2, double m1_2, double m2_2);
77 complex<double> breitwigner(double mx2, double mr, double wr);
78 double h(double m, double q);
79 double dh(double m0, double q0);
80 double f(double m0, double sx, double q0, double q);
81 double d(double m0, double q0);
82 double wid(double mass, double sa, double sb, double sc, double r, int l);
83
84 complex<double> GS(double mx2, double mr, double wr, double m1_2, double m2_2, double r, int l);
85 complex<double> irho(double mr2, double m1_2, double m2_2);
86 complex<double> Flatte(double mx2, double mr, double g1, double g2, double m1a, double m1b, double m2a, double m2b);
87 complex<double> RBW(double mx2, double mr, double wr, double m1_2, double m2_2, double r, int l);
88 double rho22(double sc);
89 complex<double> rhoMTX(int i, int j, double s);
90 complex<double> KMTX(int i, int j, double s);
91 complex<double> IMTX(int i, int j);
92 complex<double> FMTX(double Kijx, double Kijy, double rhojjx, double rhojjy, int i, int j);
93 double FINVMTX(double s, double *FINVx, double *FINVy);
94 complex<double> PVTR(int ID, double s);
95 complex<double> Fvector(double sa, double s0, int l);
96
97 vector<double> p4_Pip;
98 vector<double> p4_Pim;
99 vector<double> p4_Pi0;
100
101 vector<double> g_uv;
102 vector<double> epsilon_uvmn;
103 vector< complex<double> > fitpara;
104
105 double math_pi;
106 double mass_Pion;
107
108 double rRes;
109 double rD;
110 double m_Pi;
111 double m2_Pi;
112 double m_Pi0;
113 double m2_Pi0;
114
115 double m0_rho7700;
116 double w0_rho7700;
117
118 double m0_rho770p;
119 double w0_rho770p;
120
121 double m0_f21270;
122 double w0_f21270;
123
124 double s0_prod;
125
126
127 double delta;
128
129};
130
131#endif
double mass
TF1 * g1
int ID[no]
XmlRpcServer s
****INTEGER imax DOUBLE PRECISION m_pi *DOUBLE PRECISION m_amfin DOUBLE PRECISION m_Chfin DOUBLE PRECISION m_Xenph DOUBLE PRECISION m_sinw2 DOUBLE PRECISION m_GFermi DOUBLE PRECISION m_MfinMin DOUBLE PRECISION m_ta2 INTEGER m_out INTEGER m_KeyFSR INTEGER m_KeyQCD *COMMON c_Semalib $ !copy of input $ !CMS energy $ !beam mass $ !final mass $ !beam charge $ !final charge $ !smallest final mass $ !Z mass $ !Z width $ !EW mixing angle $ !Gmu Fermi $ alphaQED at q
Definition KKsem.h:33
virtual ~D0Topipipi0()
complex< double > Amp(vector< double > Pip, vector< double > Pim, vector< double > Pi0)
double y[1000]