21 gStyle->SetOptStat(0000);
23 gStyle->SetPalette(1);
24 gROOT->SetStyle(
"Plain");
28 c1 =
new TCanvas (
"c1",
"",20,20,1200,900);
35 FILE *
fp = fopen(
"phantom.dat",
"r");
42 TH1F *
h1 =
new TH1F(
"h1",
"Nucleus marker intensity",100,1,300);
43 TH1F *
h11 =
new TH1F(
"h11 ",
"",100,1,300);
45 TH1F *
h2 =
new TH1F(
"h2",
"Cytoplasm marker intensity",100,1,300);
46 TH1F *
h20 =
new TH1F(
"h20 ",
"",100,1,300);
48 TNtuple *
ntupleYXN =
new TNtuple(
"NUCLEUS",
"ntuple",
"Y:X:vox");
49 TNtuple *
ntupleZX =
new TNtuple(
"CYTOPLASM",
"ntuple",
"Z:X:vox");
50 TNtuple *
ntupleYX =
new TNtuple(
"CYTOPLASM",
"ntuple",
"Y:X:vox");
57 if ( nlines == 0 ) ncols = fscanf(fp,
"%f %f %f",&tmp,&tmp,&tmp);
58 if ( nlines == 1 ) ncols = fscanf(fp,
"%f %f %f",&voxelSizeX,&voxelSizeY,&voxelSizeZ);
59 if ( nlines == 2 ) ncols = fscanf(fp,
"%f %f %f",&tmp,&tmp,&tmp);
60 if ( nlines >= 3 ) ncols = fscanf(fp,
"%f %f %f %f %f %f", &X, &Y, &Z, &
mat, &den, &vox);
69 if (den==1) h1->Fill( vox );
70 if (den==2) h11->Fill( vox );
71 ntupleYXN->Fill(Y,X,vox);
75 if (den==1) h2->Fill( vox );
76 if (den==2) h20->Fill( vox );
77 ntupleZX->Fill(Z,X,vox);
78 ntupleYX->Fill(Y,X,vox);
89 h1->GetXaxis()->SetLabelSize(0.025);
90 h1->GetYaxis()->SetLabelSize(0.025);
91 h1->GetXaxis()->SetTitleSize(0.035);
92 h1->GetYaxis()->SetTitleSize(0.035);
93 h1->GetXaxis()->SetTitleOffset(1.4);
94 h1->GetYaxis()->SetTitleOffset(1.4);
95 h1->GetXaxis()->SetTitle(
"Voxel intensity (0-255)");
96 h1->GetYaxis()->SetTitle(
"Number of events");
100 h11->SetLineColor(8);
101 h11->SetFillColor(8);
108 h2->GetXaxis()->SetLabelSize(0.025);
109 h2->GetYaxis()->SetLabelSize(0.025);
110 h2->GetXaxis()->SetTitleSize(0.035);
111 h2->GetYaxis()->SetTitleSize(0.035);
112 h2->GetXaxis()->SetTitleOffset(1.4);
113 h2->GetYaxis()->SetTitleOffset(1.4);
114 h2->GetXaxis()->SetTitle(
"Voxel intensity (0-255)");
115 h2->GetYaxis()->SetTitle(
"Number of events");
119 h20->SetLineColor(5);
120 h20->SetFillColor(5);
127 gStyle->SetOptStat(0000);
129 gStyle->SetPalette(1);
130 gROOT->SetStyle(
"Plain");
135 TH2F *
hist =
new TH2F(
"hist",
"hist",50,-20,20,50,-20,20);
136 ntupleYX->Draw(
"Y:X>>hist",
"vox",
"colz");
139 hist->GetXaxis()->SetLabelSize(0.025);
140 hist->GetYaxis()->SetLabelSize(0.025);
141 hist->GetZaxis()->SetLabelSize(0.025);
142 hist->GetXaxis()->SetTitleSize(0.035);
143 hist->GetYaxis()->SetTitleSize(0.035);
144 hist->GetXaxis()->SetTitleOffset(1.4);
145 hist->GetYaxis()->SetTitleOffset(1.4);
146 hist->GetXaxis()->SetTitle(
"Y (um)");
147 hist->GetYaxis()->SetTitle(
"X (um)");
148 hist->SetTitle(
"Cytoplasm intensity on transverse section");
153 TH2F *
hist2 =
new TH2F(
"hist2",
"hist2",50,-20,20,50,-20,20);
154 ntupleYXN->Draw(
"Y:X>>hist2",
"vox",
"colz");
157 hist2->GetXaxis()->SetLabelSize(0.025);
158 hist2->GetYaxis()->SetLabelSize(0.025);
159 hist2->GetZaxis()->SetLabelSize(0.025);
160 hist2->GetXaxis()->SetTitleSize(0.035);
161 hist2->GetYaxis()->SetTitleSize(0.035);
162 hist2->GetXaxis()->SetTitleOffset(1.4);
163 hist2->GetYaxis()->SetTitleOffset(1.4);
164 hist2->GetXaxis()->SetTitle(
"Y (um)");
165 hist2->GetYaxis()->SetTitle(
"X (um)");
166 hist2->SetTitle(
"Nucleus intensity on transverse section");
170 system (
"rm -rf microbeam.root");
171 system (
"hadd -O microbeam.root microbeam_*.root");
173 TFile
f(
"microbeam.root");
181 ntuple0 = (TNtuple*)
f.Get(
"ntuple0");
182 ntuple1 = (TNtuple*)
f.Get(
"ntuple1");
183 ntuple2 = (TNtuple*)
f.Get(
"ntuple2");
184 ntuple3 = (TNtuple*)
f.Get(
"ntuple3");
185 ntuple4 = (TNtuple*)
f.Get(
"ntuple4");
187 TH1F *
h1bis =
new TH1F(
"h1bis",
"Dose distribution in Nucleus",100,0.001,1.);
188 TH1F *
h10 =
new TH1F(
"h10bis",
"Dose distribution in Cytoplasm",100,0.001,.2);
192 ntuple3->Project(
"h1bis",
"doseN");
193 scale = 1/h1bis->Integral();
196 h1bis->GetXaxis()->SetLabelSize(0.025);
197 h1bis->GetYaxis()->SetLabelSize(0.025);
198 h1bis->GetXaxis()->SetTitleSize(0.035);
199 h1bis->GetYaxis()->SetTitleSize(0.035);
200 h1bis->GetXaxis()->SetTitleOffset(1.4);
201 h1bis->GetYaxis()->SetTitleOffset(1.4);
202 h1bis->GetXaxis()->SetTitle(
"Absorbed dose (Gy)");
203 h1bis->GetYaxis()->SetTitle(
"Fraction of events");
204 h1bis->SetLineColor(3);
205 h1bis->SetFillColor(3);
212 ntuple3->Project(
"h10bis",
"doseC");
213 scale = 1/h10->Integral();
216 h10->GetXaxis()->SetLabelSize(0.025);
217 h10->GetYaxis()->SetLabelSize(0.025);
218 h10->GetXaxis()->SetTitleSize(0.035);
219 h10->GetYaxis()->SetTitleSize(0.035);
220 h10->GetXaxis()->SetTitleOffset(1.4);
221 h10->GetYaxis()->SetTitleOffset(1.4);
222 h10->GetXaxis()->SetTitle(
"Absorbed dose (Gy)");
223 h10->GetYaxis()->SetTitle(
"Fraction of events");
224 h10->SetLineColor(2);
225 h10->SetFillColor(2);
231 gStyle->SetOptStat(0000);
233 gStyle->SetPalette(1);
234 gROOT->SetStyle(
"Plain");
238 TH1F *
h2bis =
new TH1F(
"h2bis",
"Beam stopping power at cell entrance",200,0,300);
241 ntuple0->Project(
"h2bis",
"sp");
242 scale = 1/h2bis->Integral();
245 h2bis->GetXaxis()->SetLabelSize(0.025);
246 h2bis->GetYaxis()->SetLabelSize(0.025);
247 h2bis->GetXaxis()->SetTitleSize(0.035);
248 h2bis->GetYaxis()->SetTitleSize(0.035);
249 h2bis->GetXaxis()->SetTitleOffset(1.4);
250 h2bis->GetYaxis()->SetTitleOffset(1.4);
251 h2bis->GetXaxis()->SetTitle(
"dE/dx (keV/um)");
252 h2bis->GetYaxis()->SetTitle(
"Fraction of events");
253 h2bis->SetTitle(
"dE/dx at cell entrance");
254 h2bis->SetFillColor(4);
255 h2bis->SetLineColor(4);
257 gaus->SetLineColor(6);
267 Xc = -1295.59e3 - 955e3*sin(10*TMath::Pi()/180);
270 Zc = -1327e3 + 955e3*cos(10*TMath::Pi()/180);
273 Xc = Xc + 5.24*cos(10*TMath::Pi()/180);
274 Zc = Zc + 5.24*sin(10*TMath::Pi()/180);
276 TNtuple *
ntupleR =
new TNtuple(
"Rmax",
"ntuple",
"Z2:Y2:X2");
278 ntuple2->SetBranchAddress(
"x",&x);
279 ntuple2->SetBranchAddress(
"y",&y);
280 ntuple2->SetBranchAddress(
"z",&z);
284 ntuple2->GetEntry(i);
290 Z2 = zz*cos(10*TMath::Pi()/180)-xx*sin(10*TMath::Pi()/180);
291 X2 = zz*sin(10*TMath::Pi()/180)+xx*cos(10*TMath::Pi()/180);
293 ntupleR->Fill(Z2,Y2,X2);
297 ntupleR->Draw(
"X2:Z2",
"abs(X2)<50",
"surf3");
304 gStyle->SetOptStat(0000);
306 gStyle->SetPalette(1);
307 gROOT->SetStyle(
"Plain");
310 TH2F *
histbis =
new TH2F(
"histbis",
"histbis",50,-20,20,50,-20,20);
311 ntuple4->Draw(
"y*0.359060:x*0.359060>>histbis",
"doseV",
"contz");
313 histbis->Draw(
"contz");
314 histbis->GetXaxis()->SetLabelSize(0.025);
315 histbis->GetYaxis()->SetLabelSize(0.025);
316 histbis->GetZaxis()->SetLabelSize(0.025);
317 histbis->GetXaxis()->SetTitleSize(0.035);
318 histbis->GetYaxis()->SetTitleSize(0.035);
319 histbis->GetXaxis()->SetTitleOffset(1.4);
320 histbis->GetYaxis()->SetTitleOffset(1.4);
321 histbis->GetXaxis()->SetTitle(
"Y (um)");
322 histbis->GetYaxis()->SetTitle(
"X (um)");
323 histbis->SetTitle(
"Energy deposit -transverse- (z axis in eV)");
326 TH2F *
histter =
new TH2F(
"histter",
"histter",50,-20,20,50,-20,20);
327 ntuple4->Draw(
"x*0.359060:(z+1500/0.162810+21)*0.162810>>histter",
"doseV",
"contz");
329 histter->Draw(
"contz");
330 histter->GetXaxis()->SetLabelSize(0.025);
331 histter->GetYaxis()->SetLabelSize(0.025);
332 histter->GetZaxis()->SetLabelSize(0.025);
333 histter->GetXaxis()->SetTitleSize(0.035);
334 histter->GetYaxis()->SetTitleSize(0.035);
335 histter->GetXaxis()->SetTitleOffset(1.4);
336 histter->GetYaxis()->SetTitleOffset(1.4);
337 histter->GetXaxis()->SetTitle(
"Z (um)");
338 histter->GetYaxis()->SetTitle(
"X (um)");
339 histter->SetTitle(
"Energy deposit -longitudinal- (z axis in eV)");
345 gStyle->SetOptStat(0000);
347 gStyle->SetPalette(1);
348 gROOT->SetStyle(
"Plain");
350 TH1F *
h77 =
new TH1F(
"hx",
"h1",200,-10,10);
351 TH1F *
h88 =
new TH1F(
"hy",
"h1",200,-10,10);
354 ntuple1->Project(
"hx",
"x");
355 scale = 1/h77->Integral();
358 h77->GetXaxis()->SetLabelSize(0.025);
359 h77->GetYaxis()->SetLabelSize(0.025);
360 h77->GetXaxis()->SetTitleSize(0.035);
361 h77->GetYaxis()->SetTitleSize(0.035);
362 h77->GetXaxis()->SetTitleOffset(1.4);
363 h77->GetYaxis()->SetTitleOffset(1.4);
364 h77->GetXaxis()->SetTitle(
"Position (um)");
365 h77->GetYaxis()->SetTitle(
"Fraction of events");
366 h77->SetTitle(
"Beam X position on cell");
367 h77->SetFillColor(4);
368 h77->SetLineColor(4);
372 ntuple1->Project(
"hy",
"y");
373 scale = 1/h88->Integral();
376 h88->GetXaxis()->SetLabelSize(0.025);
377 h88->GetYaxis()->SetLabelSize(0.025);
378 h88->GetXaxis()->SetTitleSize(0.035);
379 h88->GetYaxis()->SetTitleSize(0.035);
380 h88->GetXaxis()->SetTitleOffset(1.4);
381 h88->GetYaxis()->SetTitleOffset(1.4);
382 h88->GetXaxis()->SetTitle(
"Position (um)");
383 h88->GetYaxis()->SetTitle(
"Fraction of events");
384 h88->SetTitle(
"Beam Y position on cell");
385 h88->SetFillColor(4);
386 h88->SetLineColor(4);
system("rm -rf microbeam.root")