PandaRoot
DalitzGlobals.h
Go to the documentation of this file.
1 //****************************************************************************
2 //* This file is part of PandaRoot. *
3 //* *
4 //* PandaRoot is distributed under the terms of the *
5 //* GNU General Public License (GPL) version 3, *
6 //* copied verbatim in the file "LICENSE". *
7 //* *
8 //* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9 //* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10 //* The authors are listed in the file "AUTHORS". *
11 //****************************************************************************
12 
13 // --------------------------------------------------------------------------
14 // KinTools.cpp - Helper tools for DalitzGUI
15 // --------------------------------------------------------------------------
16 //
17 // Original author: Klaus Goetzen - GSI Darmstadt
18 // Last modified : 2014/08/15
19 // --------------------------------------------------------------------------
20 #pragma once
21 
22 #include <iostream>
23 #include "TComplex.h"
24 #include "TColor.h"
25 #include "TArrayD.h"
26 #include "TStyle.h"
27 #include "CRes.h"
28 // using std::cout;
29 // using std::endl;
30 // using std::flush;
31 
32 //**************************************
33 
34 //**************************************
35 //**************************************
36 //**************************************
37 
38 namespace DalitzGuiGlobals {
39 
44 
48 
52 
59 
66 
73 
80 
87 
93 
99 };
100 
101 inline const int MAX_FIN = 100;
102 inline const int MAX_RES = 100;
103 inline const int MAX_BIN = 500;
104 
105 inline int N_FIN = 0, N_RES = 0;
106 
107 inline const double plot_margin = 0.05; // margin of plots as fraction of phsp range
108 
109 // Parameters for final states and resonances will be read from file 'DalitzGUI.ini'
110 inline Int_t id_fin[MAX_FIN];
111 inline Double_t m_fin[MAX_FIN];
112 inline TString nam_fin[MAX_FIN], nam_pfin[MAX_FIN];
113 
114 inline Int_t id_res[MAX_RES], J_res[MAX_RES];
115 inline Double_t m_res[MAX_RES], G_res[MAX_RES];
116 inline TString name_res[MAX_RES];
117 
118 // The available variables for animated GIF creation
119 inline const TString vars_tex[13] = {"#sqrt{s}", "A_{23,1}", "#phi_{23,1}", "A_{23,2}", "#phi_{23,2}", "A_{31,1}", "#phi_{31,1}",
120  "A_{31,2}", "#phi_{31,2}", "A_{12,1}", "#phi_{12,1}", "A_{12,2}", "#phi_{12,2}"};
121 inline const TString vars[13] = {"M", "A23_1", "ph23_1", "A23_2", "ph23_2", "A31_1", "ph31_1", "A31_2", "ph31_2", "A12_1", "ph12_1", "A12_2", "ph12_2"};
122 
123 // some constants
124 inline const Int_t ngbins = 140; // number of points for phase space surronding graph
125 inline const Int_t lSlider = 140; // width of amp and phase sliders
126 inline const Int_t lMSlider = 200;
127 
128 // Range of sqrt(s) in GeV
129 inline const Double_t M_min = 0.5;
130 inline const Double_t M_max = 7.5;
131 
132 // Range for amplitude A and phase Ph
133 inline const Int_t A_min = 0; // min slider amplitude value
134 inline const Int_t A_max = 1500; // max slider amplitude value
135 inline const Int_t Ph_min = 0; // min slider phase value
136 inline const Int_t Ph_max = 628; // max slider phase value
137 
138 // some globals to exchange values between TDalitzGui and AniGifDialog
139 inline Int_t gAniGifVar = 0;
140 inline Int_t gAniGifPlot = 0;
141 inline Float_t gAniGifMin = 0;
142 inline Float_t gAniGifMax = 1;
143 inline Float_t gAniGifSteps = 20;
144 inline Float_t gAniGifTime = 20;
145 inline Int_t gMainOnly = 0;
146 inline bool gAniGifOk = true;
147 inline TString gAniFileName = "DalitzGui_ani.gif";
148 
149 inline const char *filetypes[] = {"DalitzGui cfg files", "*.cfg", "All files", "*", nullptr, nullptr};
150 inline const char *filetypesgif[] = {"GIF Images", "*.gif", nullptr, nullptr};
151 inline const char *filetypesscrn[] = {"All files", "*", nullptr, nullptr};
152 
153 // const int MAX_FIN = 100;
154 // const int MAX_RES = 100;
155 
156 // int N_FIN = 0, N_RES = 0;
157 
158 // const double plot_margin = 0.05; // margin of plots as fraction of phsp range
159 
160 // // Parameters for final states and resonances will be read from file 'DalitzGUI.ini'
161 // Int_t id_fin[MAX_FIN];
162 // Double_t m_fin[MAX_FIN];
163 // TString nam_fin[MAX_FIN], nam_pfin[MAX_FIN];
164 
165 // Int_t id_res[MAX_RES], J_res[MAX_RES];
166 // Double_t m_res[MAX_RES], G_res[MAX_RES];
167 // TString name_res[MAX_RES];
168 
169 // // The available variables for animated GIF creation
170 // const TString vars_tex[13] = {"#sqrt{s}", "A_{23,1}", "#phi_{23,1}", "A_{23,2}", "#phi_{23,2}", "A_{31,1}", "#phi_{31,1}",
171 // "A_{31,2}", "#phi_{31,2}", "A_{12,1}", "#phi_{12,1}", "A_{12,2}", "#phi_{12,2}"};
172 // const TString vars[13] = {"M", "A23_1", "ph23_1", "A23_2", "ph23_2", "A31_1", "ph31_1", "A31_2", "ph31_2", "A12_1", "ph12_1", "A12_2", "ph12_2"};
173 
174 // // Range of sqrt(s) in GeV
175 // const Double_t M_min = 0.5;
176 // const Double_t M_max = 7.5;
177 
178 // // Range for amplitude A and phase Ph
179 // const Int_t A_min = 0; // min slider amplitude value
180 // const Int_t A_max = 1500; // max slider amplitude value
181 // const Int_t Ph_min = 0; // min slider phase value
182 // const Int_t Ph_max = 628; // max slider phase value
183 
184 // // some globals to exchange values between TDalitzGui and AniGifDialog
185 // Int_t gAniGifVar = 0;
186 // Int_t gAniGifPlot = 0;
187 // Float_t gAniGifMin = 0;
188 // Float_t gAniGifMax = 1;
189 // Float_t gAniGifSteps = 20;
190 // Float_t gAniGifTime = 20;
191 // Int_t gMainOnly = 0;
192 // bool gAniGifOk = true;
193 // TString gAniFileName = "DalitzGui_ani.gif";
194 
195 } // namespace DalitzGuiGlobals
Int_t J_res[MAX_RES]
Double_t G_res[MAX_RES]
const Int_t A_max
const TString vars[13]
TString nam_pfin[MAX_FIN]
Double_t m_fin[MAX_FIN]
TString name_res[MAX_RES]
const Int_t Ph_min
Double_t m_res[MAX_RES]
const Int_t lMSlider
const double plot_margin
Int_t id_fin[MAX_FIN]
const Int_t ngbins
Int_t id_res[MAX_RES]
const Int_t Ph_max
const char * filetypesgif[]
const char * filetypesscrn[]
const char * filetypes[]
TString nam_fin[MAX_FIN]
const Double_t M_min
const Double_t M_max
const TString vars_tex[13]
const Int_t A_min
const Int_t lSlider