Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/examples/advanced/brachytherapy/comparison/compare_all.C

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /examples/advanced/brachytherapy/comparison/compare_all.C (Version 11.3.0) and /examples/advanced/brachytherapy/comparison/compare_all.C (Version 11.1.2)


  1 {                                                   1 {
  2 // Read reference data in granero.txt               2 // Read reference data in granero.txt
  3 FILE *fg1=fopen("granero.txt", "r");                3 FILE *fg1=fopen("granero.txt", "r");
  4 Int_t n_points_granero =13;                         4 Int_t n_points_granero =13;
  5 Float_t x1[n_points_granero], y1[n_points_gran      5 Float_t x1[n_points_granero], y1[n_points_granero], ratio_liv[n_points_granero];
  6 Float_t x, y;                                       6 Float_t x, y;
  7 Int_t ncols_granero;                                7 Int_t ncols_granero;
  8 Int_t nlines1 =0;                                   8 Int_t nlines1 =0;
  9                                                     9 
 10 while(1)                                           10 while(1)
 11  {                                                 11  {
 12   ncols_granero = fscanf(fg1,"%f %f",&x, &y);      12   ncols_granero = fscanf(fg1,"%f %f",&x, &y);
 13   if (ncols_granero<0) break;                      13   if (ncols_granero<0) break;
 14  // std::cout << "x " << x << std::endl;           14  // std::cout << "x " << x << std::endl;
 15   x1[nlines1]=x;                                   15   x1[nlines1]=x;
 16   y1[nlines1]=y;                                   16   y1[nlines1]=y;
 17   nlines1++;                                       17   nlines1++;
 18 }                                                  18 }
 19                                                    19 
 20 fclose(fg1);                                       20 fclose(fg1);
 21                                                    21 
 22 // Read the results of the brachytherapy advan     22 // Read the results of the brachytherapy advanced example
 23 // FlexiSorceMacro.mac - livermore                 23 // FlexiSorceMacro.mac - livermore
 24 FILE *fg2=fopen("geant4_dose_Flexi_livermore.t     24 FILE *fg2=fopen("geant4_dose_Flexi_livermore.txt", "r");
 25 Int_t n_points_geant4 =398;                        25 Int_t n_points_geant4 =398;
 26 Float_t x2[n_points_geant4], y2[n_points_geant     26 Float_t x2[n_points_geant4], y2[n_points_geant4];
 27 Int_t ncols_geant4_liv;                            27 Int_t ncols_geant4_liv;
 28 Int_t nlines2 =0;                                  28 Int_t nlines2 =0;
 29                                                    29 
 30 while(1)                                           30 while(1)
 31  {                                                 31  {
 32   ncols_geant4_liv = fscanf(fg2,"%f %f",&x, &y     32   ncols_geant4_liv = fscanf(fg2,"%f %f",&x, &y);
 33   if (ncols_geant4_liv<0) break;                   33   if (ncols_geant4_liv<0) break;
 34  // std::cout << "x " << x << std::endl;           34  // std::cout << "x " << x << std::endl;
 35   x2[nlines2]=x;                                   35   x2[nlines2]=x;
 36   y2[nlines2]=y;                                   36   y2[nlines2]=y;
 37                                                    37   
 38   for (int i=0; i<n_points_granero; i++)           38   for (int i=0; i<n_points_granero; i++)
 39    {                                               39    {
 40    if (x1[i]==x2[nlines2])                         40    if (x1[i]==x2[nlines2])
 41    {                                               41    { 
 42    ratio_liv[i]= y2[nlines2]/y1[i];                42    ratio_liv[i]= y2[nlines2]/y1[i];
 43   // std::cout << "granero: " <<  x1[i] << ","     43   // std::cout << "granero: " <<  x1[i] << "," << y1[i] 
 44    //          << ", livermore: "<< x2[nlines2     44    //          << ", livermore: "<< x2[nlines2] << "," << y2[nlines2]
 45    //          << " ratio:" << ratio_liv[i] <<     45    //          << " ratio:" << ratio_liv[i] << std::endl;
 46   }                                                46   }
 47   }                                                47   }
 48   nlines2++;                                       48   nlines2++;
 49 }                                                  49 }
 50                                                    50 
 51 fclose(fg2);                                       51 fclose(fg2);
 52                                                    52 
 53 // Read the results of the brachytherapy advan     53 // Read the results of the brachytherapy advanced example
 54 //  penelope                                       54 //  penelope
 55 FILE *fg3=fopen("geant4_dose_Flexi_penelope.tx     55 FILE *fg3=fopen("geant4_dose_Flexi_penelope.txt", "r");
 56 Float_t x3[n_points_geant4], y3[n_points_geant     56 Float_t x3[n_points_geant4], y3[n_points_geant4], ratio_pen[n_points_granero];
 57 Int_t ncols_geant4_penelope;                       57 Int_t ncols_geant4_penelope;
 58 Int_t nlines3 =0;                                  58 Int_t nlines3 =0;
 59                                                    59 
 60 while(1)                                           60 while(1)
 61  {                                                 61  {
 62   ncols_geant4_penelope = fscanf(fg3,"%f %f",&     62   ncols_geant4_penelope = fscanf(fg3,"%f %f",&x, &y);
 63   if (ncols_geant4_penelope<0) break;              63   if (ncols_geant4_penelope<0) break;
 64  // std::cout << "x " << x << std::endl;           64  // std::cout << "x " << x << std::endl;
 65   x3[nlines3]=x;                                   65   x3[nlines3]=x;
 66   y3[nlines3]=y;                                   66   y3[nlines3]=y;
 67   for (int i=0; i<n_points_granero; i++)           67   for (int i=0; i<n_points_granero; i++)
 68    {                                               68    {
 69    if (x1[i]==x3[nlines3])                         69    if (x1[i]==x3[nlines3])
 70    {                                               70    { 
 71    ratio_pen[i]= y3[nlines3]/y1[i];                71    ratio_pen[i]= y3[nlines3]/y1[i];
 72  //  std::cout << "granero: " <<  x1[i] << ","     72  //  std::cout << "granero: " <<  x1[i] << "," << y1[i] 
 73   //           << ", penelope: "<< x3[nlines3]     73   //           << ", penelope: "<< x3[nlines3] << "," << y3[nlines3]
 74    //          << " ratio:" << ratio_pen[i] <<     74    //          << " ratio:" << ratio_pen[i] << std::endl;
 75   }                                                75   }
 76   }                                                76   }
 77   nlines3++;                                       77   nlines3++;
 78 }                                                  78 }
 79                                                    79 
 80 fclose(fg3);                                       80 fclose(fg3);
 81                                                    81 
 82 // FlexiSorceMacro.mac - opt 0                     82 // FlexiSorceMacro.mac - opt 0
 83 FILE *fg4=fopen("geant4_dose_Flexi_opt0.txt",      83 FILE *fg4=fopen("geant4_dose_Flexi_opt0.txt", "r");
 84 Float_t x4[n_points_geant4], y4[n_points_geant     84 Float_t x4[n_points_geant4], y4[n_points_geant4], ratio_opt0[n_points_granero];
 85 Int_t ncols_geant4_opt0;                           85 Int_t ncols_geant4_opt0;
 86 Int_t nlines4 =0;                                  86 Int_t nlines4 =0;
 87                                                    87 
 88 while(1)                                           88 while(1)
 89  {                                                 89  {
 90   ncols_geant4_opt0 = fscanf(fg4,"%f %f",&x, &     90   ncols_geant4_opt0 = fscanf(fg4,"%f %f",&x, &y);
 91   if (ncols_geant4_opt0<0) break;                  91   if (ncols_geant4_opt0<0) break;
 92  // std::cout << "x " << x << std::endl;           92  // std::cout << "x " << x << std::endl;
 93   x4[nlines4]=x;                                   93   x4[nlines4]=x;
 94   y4[nlines4]=y;                                   94   y4[nlines4]=y;
 95   for (int i=0; i<n_points_granero; i++)           95   for (int i=0; i<n_points_granero; i++)
 96    {                                               96    {
 97    if (x1[i]==x4[nlines4])                         97    if (x1[i]==x4[nlines4])
 98    {                                               98    { 
 99    ratio_opt0[i]= y4[nlines4]/y1[i];               99    ratio_opt0[i]= y4[nlines4]/y1[i];
100   // std::cout << "granero: " <<  x1[i] << ","    100   // std::cout << "granero: " <<  x1[i] << "," << y1[i] 
101    //          << ", opt0: "<< x4[nlines4] <<     101    //          << ", opt0: "<< x4[nlines4] << "," << y4[nlines4]
102     //         << " ratio:" << ratio_opt0[i] <    102     //         << " ratio:" << ratio_opt0[i] << std::endl;
103   }                                               103   }
104   }                                               104   }
105   nlines4++;                                      105   nlines4++;
106 }                                                 106 }
107                                                   107 
108 fclose(fg4);                                      108 fclose(fg4);
109                                                   109 
110 // FlexiSorceMacro.mac - opt 3                    110 // FlexiSorceMacro.mac - opt 3
111 FILE *fg5=fopen("geant4_dose_Flexi_opt3.txt",     111 FILE *fg5=fopen("geant4_dose_Flexi_opt3.txt", "r");
112 Float_t x5[n_points_geant4], y5[n_points_geant    112 Float_t x5[n_points_geant4], y5[n_points_geant4], ratio_opt3[n_points_granero];
113 Int_t ncols_geant4_opt3;                          113 Int_t ncols_geant4_opt3;
114 Int_t nlines5 =0;                                 114 Int_t nlines5 =0;
115                                                   115 
116 while(1)                                          116 while(1)
117  {                                                117  {
118   ncols_geant4_opt3 = fscanf(fg5,"%f %f",&x, &    118   ncols_geant4_opt3 = fscanf(fg5,"%f %f",&x, &y);
119   if (ncols_geant4_opt3<0) break;                 119   if (ncols_geant4_opt3<0) break;
120  // std::cout << "x " << x << std::endl;          120  // std::cout << "x " << x << std::endl;
121   x5[nlines5]=x;                                  121   x5[nlines5]=x;
122   y5[nlines5]=y;                                  122   y5[nlines5]=y;
123                                                   123 
124  for (int i=0; i<n_points_granero; i++)           124  for (int i=0; i<n_points_granero; i++)
125    {                                              125    {
126    if (x1[i]==x5[nlines5])                        126    if (x1[i]==x5[nlines5])
127    {                                              127    { 
128    ratio_opt3[i]= y5[nlines5]/y1[i];              128    ratio_opt3[i]= y5[nlines5]/y1[i];
129  /*  std::cout << "granero: " <<  x1[i] << ","    129  /*  std::cout << "granero: " <<  x1[i] << "," << y1[i] 
130              << ", opt3: "<< x5[nlines5] << ",    130              << ", opt3: "<< x5[nlines5] << "," << y5[nlines5]
131             << " ratio:" << ratio_opt3[i] << s    131             << " ratio:" << ratio_opt3[i] << std::endl;*/
132   }                                               132   }
133   }                                               133   }
134   nlines5++;                                      134   nlines5++;
135 }                                                 135 }
136                                                   136 
137 fclose(fg5);                                      137 fclose(fg5);
138                                                   138 
139 // FlexiSorceMacro.mac - opt 4                    139 // FlexiSorceMacro.mac - opt 4
140 FILE *fg6=fopen("geant4_dose_Flexi_opt4.txt",     140 FILE *fg6=fopen("geant4_dose_Flexi_opt4.txt", "r");
141 Float_t x6[n_points_geant4], y6[n_points_geant    141 Float_t x6[n_points_geant4], y6[n_points_geant4], ratio_opt4[n_points_granero];
142 Int_t ncols_geant4_opt4;                          142 Int_t ncols_geant4_opt4;
143 Int_t nlines6 =0;                                 143 Int_t nlines6 =0;
144                                                   144 
145 while(1)                                          145 while(1)
146  {                                                146  {
147   ncols_geant4_opt4 = fscanf(fg6,"%f %f",&x, &    147   ncols_geant4_opt4 = fscanf(fg6,"%f %f",&x, &y);
148   if (ncols_geant4_opt4<0) break;                 148   if (ncols_geant4_opt4<0) break;
149  // std::cout << "x " << x << std::endl;          149  // std::cout << "x " << x << std::endl;
150   x6[nlines6]=x;                                  150   x6[nlines6]=x;
151   y6[nlines6]=y;                                  151   y6[nlines6]=y;
152   for (int i=0; i<n_points_granero; i++)          152   for (int i=0; i<n_points_granero; i++)
153    {                                              153    {
154    if (x1[i]==x6[nlines6])                        154    if (x1[i]==x6[nlines6])
155    {                                              155    { 
156    ratio_opt4[i]= y6[nlines6]/y1[i];              156    ratio_opt4[i]= y6[nlines6]/y1[i];
157 /*   std::cout << "granero: " <<  x1[i] << ","    157 /*   std::cout << "granero: " <<  x1[i] << "," << y1[i] 
158               << ", opt4: "<< x6[nlines6] << "    158               << ", opt4: "<< x6[nlines6] << "," << y6[nlines6]
159             << " ratio:" << ratio_opt4[i] << s    159             << " ratio:" << ratio_opt4[i] << std::endl;*/
160   }                                               160   }
161   }                                               161   }
162   nlines6++;                                      162   nlines6++;
163 }                                                 163 }
164                                                   164 
165 fclose(fg6);                                      165 fclose(fg6);
166                                                   166 
167 TGraph *gr1 = new TGraph (nlines1, x1, y1);       167 TGraph *gr1 = new TGraph (nlines1, x1, y1);
168 TGraph *gr2 = new TGraph (nlines2, x2, y2);       168 TGraph *gr2 = new TGraph (nlines2, x2, y2);
169 TGraph *gr3 = new TGraph (nlines3, x3, y3);       169 TGraph *gr3 = new TGraph (nlines3, x3, y3);
170 TGraph *gr4 = new TGraph (nlines4, x4, y4);       170 TGraph *gr4 = new TGraph (nlines4, x4, y4);
171 TGraph *gr5 = new TGraph (nlines5, x5, y5);       171 TGraph *gr5 = new TGraph (nlines5, x5, y5);
172 TGraph *gr6 = new TGraph (nlines6, x6, y6);       172 TGraph *gr6 = new TGraph (nlines6, x6, y6);
173                                                   173 
174 std::cout<< "Livermore" << std::endl;             174 std::cout<< "Livermore" << std::endl;
175                                                   175 
176 for (Int_t j=0; j < nlines1; j++)                 176 for (Int_t j=0; j < nlines1; j++)
177 {                                                 177 {
178  if ((ratio_liv[j] > 1.03) || (ratio_liv[j] <     178  if ((ratio_liv[j] > 1.03) || (ratio_liv[j] < 0.97)) std::cout<< "Difference above 3% :"<< x1[j] << ", " << ratio_liv[j] << std::endl;
179 }                                                 179 } 
180 std::cout<< "penelope" << std::endl;              180 std::cout<< "penelope" << std::endl;
181 for (Int_t j=0; j < nlines1; j++)                 181 for (Int_t j=0; j < nlines1; j++)
182  {                                                182  {
183   if ((ratio_pen[j] > 1.03) || (ratio_pen[j] <    183   if ((ratio_pen[j] > 1.03) || (ratio_pen[j] < 0.97)) std::cout<< "Difference above 3% :" << x1[j] << ", " << ratio_pen[j] << std::endl;
184 }                                                 184 } 
185                                                   185 
186 std::cout<< "opt0" << std::endl;                  186 std::cout<< "opt0" << std::endl;
187 for (Int_t j=0; j < nlines1; j++)                 187 for (Int_t j=0; j < nlines1; j++)
188  {                                                188  {
189  if ((ratio_opt0[j] > 1.03) || (ratio_opt0[j]     189  if ((ratio_opt0[j] > 1.03) || (ratio_opt0[j] < 0.97)) std::cout<< "Difference above 3% :" << x1[j] << ", " << ratio_opt0[j] << std::endl;
190 }                                                 190 } 
191                                                   191 
192 std::cout<< "opt3" << std::endl;                  192 std::cout<< "opt3" << std::endl;
193 for (Int_t j=0; j < nlines1; j++)                 193 for (Int_t j=0; j < nlines1; j++)
194  {                                                194  {
195  if ((ratio_opt3[j] > 1.03) || (ratio_opt3[j]     195  if ((ratio_opt3[j] > 1.03) || (ratio_opt3[j] < 0.97)) std::cout<< "Difference above 3% :" << x1[j] << ", " << ratio_opt3[j] << std::endl;
196 }                                                 196 } 
197 std::cout<< "opt4" << std::endl;                  197 std::cout<< "opt4" << std::endl;
198 for (Int_t j=0; j < nlines1; j++)                 198 for (Int_t j=0; j < nlines1; j++)
199  {                                                199  {
200  if ((ratio_opt4[j] > 1.03) || (ratio_opt4[j]     200  if ((ratio_opt4[j] > 1.03) || (ratio_opt4[j] < 0.97)) std::cout<< "Difference above 3% :" << x1[j] << ", " << ratio_opt4[j] << std::endl;
201 }                                                 201 } 
202                                                   202 
203 TGraph *gr1_ratio = new TGraph (nlines1, x1, r    203 TGraph *gr1_ratio = new TGraph (nlines1, x1, ratio_liv);
204 TGraph *gr2_ratio = new TGraph (nlines1, x1, r    204 TGraph *gr2_ratio = new TGraph (nlines1, x1, ratio_pen);
205 TGraph *gr3_ratio = new TGraph (nlines1, x1, r    205 TGraph *gr3_ratio = new TGraph (nlines1, x1, ratio_opt0);
206 TGraph *gr4_ratio = new TGraph (nlines1, x1, r    206 TGraph *gr4_ratio = new TGraph (nlines1, x1, ratio_opt3);
207 TGraph *gr5_ratio = new TGraph (nlines1, x1, r    207 TGraph *gr5_ratio = new TGraph (nlines1, x1, ratio_opt4);
208                                                   208 
209 // draw the graph with axis, continuous line,     209 // draw the graph with axis, continuous line, and put
210 // a * at each point                              210 // a * at each point
211 gr1->SetTitle("Dose rate distribution");          211 gr1->SetTitle("Dose rate distribution");
212 gr1-> GetXaxis()->SetTitle("Distance from the     212 gr1-> GetXaxis()->SetTitle("Distance from the centre (cm)");
213 gr1->GetYaxis()->SetTitle("Normalised dose rat    213 gr1->GetYaxis()->SetTitle("Normalised dose rate distribution");
214 gr1->SetLineWidth(1);                             214 gr1->SetLineWidth(1);
215 gr1->SetMarkerColor(1);                           215 gr1->SetMarkerColor(1);
216 gr1->SetMarkerStyle(20);                          216 gr1->SetMarkerStyle(20);
217 gr1->Draw("AP");                                  217 gr1->Draw("AP");
218                                                   218 
219 gr2->SetLineWidth(0.3);                           219 gr2->SetLineWidth(0.3);
220 gr2->SetMarkerColor(2);                           220 gr2->SetMarkerColor(2);
221 gr2->SetMarkerStyle(21);                          221 gr2->SetMarkerStyle(21);
222 gr2->SetMarkerSize(0.2);                          222 gr2->SetMarkerSize(0.2);
223 gr2->SetLineColor(2);                             223 gr2->SetLineColor(2);
224 gr2->Draw("CP");                                  224 gr2->Draw("CP");
225                                                   225 
226 gr3->SetLineWidth(0.3);                           226 gr3->SetLineWidth(0.3);
227 gr3->SetMarkerColor(3);                           227 gr3->SetMarkerColor(3);
228 gr3->SetMarkerStyle(21);                          228 gr3->SetMarkerStyle(21);
229 gr3->SetMarkerSize(0.2);                          229 gr3->SetMarkerSize(0.2);
230 gr3->SetLineColor(3);                             230 gr3->SetLineColor(3);
231 gr3->Draw("CP");                                  231 gr3->Draw("CP");
232                                                   232 
233 gr4->SetLineWidth(0.3);                           233 gr4->SetLineWidth(0.3);
234 gr4->SetMarkerColor(4);                           234 gr4->SetMarkerColor(4);
235 gr4->SetMarkerStyle(21);                          235 gr4->SetMarkerStyle(21);
236 gr4->SetMarkerSize(0.2);                          236 gr4->SetMarkerSize(0.2);
237 gr4->SetLineColor(4);                             237 gr4->SetLineColor(4);
238 gr4->Draw("CP");                                  238 gr4->Draw("CP");
239                                                   239 
240 gr5->SetLineWidth(0.3);                           240 gr5->SetLineWidth(0.3);
241 gr5->SetMarkerColor(6);                           241 gr5->SetMarkerColor(6);
242 gr5->SetMarkerStyle(21);                          242 gr5->SetMarkerStyle(21);
243 gr5->SetMarkerSize(0.2);                          243 gr5->SetMarkerSize(0.2);
244 gr5->SetLineColor(6);                             244 gr5->SetLineColor(6);
245 gr5->Draw("CP");                                  245 gr5->Draw("CP");
246                                                   246 
247 gr6->SetLineWidth(0.3);                           247 gr6->SetLineWidth(0.3);
248 gr6->SetMarkerColor(9);                           248 gr6->SetMarkerColor(9);
249 gr6->SetMarkerStyle(21);                          249 gr6->SetMarkerStyle(21);
250 gr6->SetMarkerSize(0.2);                          250 gr6->SetMarkerSize(0.2);
251 gr6->SetLineColor(9);                             251 gr6->SetLineColor(9);
252 gr6->Draw("CP");                                  252 gr6->Draw("CP");
253                                                   253 
254 TLegend *leg = new TLegend(0.3, 0.5, 0.6, 0.8)    254 TLegend *leg = new TLegend(0.3, 0.5, 0.6, 0.8);
255 leg->SetFillColor(0);                             255 leg->SetFillColor(0);
256 leg->AddEntry(gr1, "Reference data", "lp");       256 leg->AddEntry(gr1, "Reference data", "lp");
257 leg->AddEntry(gr2, "Geant4 - Livermore", "lp")    257 leg->AddEntry(gr2, "Geant4 - Livermore", "lp");
258 leg->AddEntry(gr3, "Geant4 - Penelope", "lp");    258 leg->AddEntry(gr3, "Geant4 - Penelope", "lp");
259 leg->AddEntry(gr4, "Geant4 - opt0", "lp");        259 leg->AddEntry(gr4, "Geant4 - opt0", "lp");
260 leg->AddEntry(gr5, "Geant4 - opt3", "lp");        260 leg->AddEntry(gr5, "Geant4 - opt3", "lp");
261 leg->AddEntry(gr6, "Geant4 - opt4", "lp");        261 leg->AddEntry(gr6, "Geant4 - opt4", "lp");
262 leg->Draw();                                      262 leg->Draw();
263                                                   263 
264 c1 -> Print("Flexi_dose_rate_distribution.jpg"    264 c1 -> Print("Flexi_dose_rate_distribution.jpg");
265                                                   265 
266 // ratio plot                                     266 // ratio plot
267 gr1_ratio->SetTitle("Dose rate distribution -     267 gr1_ratio->SetTitle("Dose rate distribution - RATIO");
268 gr1_ratio-> GetXaxis()->SetTitle("Distance fro    268 gr1_ratio-> GetXaxis()->SetTitle("Distance from the centre (cm)");
269 gr1_ratio->GetYaxis()->SetTitle("Ratio");         269 gr1_ratio->GetYaxis()->SetTitle("Ratio");
270 gr1_ratio->SetLineWidth(1);                       270 gr1_ratio->SetLineWidth(1);
271 gr2_ratio->SetMarkerSize(0.8);                    271 gr2_ratio->SetMarkerSize(0.8);
272 gr1_ratio->SetMarkerColor(1);                     272 gr1_ratio->SetMarkerColor(1);
273 gr1_ratio->SetMarkerStyle(20);                    273 gr1_ratio->SetMarkerStyle(20);
274 gr1_ratio->Draw("AP");                            274 gr1_ratio->Draw("AP");
275                                                   275 
276 gr2_ratio->SetLineWidth(0.3);                     276 gr2_ratio->SetLineWidth(0.3);
277 gr2_ratio->SetMarkerColor(2);                     277 gr2_ratio->SetMarkerColor(2);
278 gr2_ratio->SetMarkerStyle(20);                    278 gr2_ratio->SetMarkerStyle(20);
279 gr2_ratio->SetMarkerSize(0.8);                    279 gr2_ratio->SetMarkerSize(0.8);
280 gr2_ratio->SetLineColor(2);                       280 gr2_ratio->SetLineColor(2);
281 gr2_ratio->Draw("P");                             281 gr2_ratio->Draw("P");
282                                                   282 
283 gr3_ratio->SetLineWidth(0.3);                     283 gr3_ratio->SetLineWidth(0.3);
284 gr3_ratio->SetMarkerColor(3);                     284 gr3_ratio->SetMarkerColor(3);
285 gr3_ratio->SetMarkerStyle(20);                    285 gr3_ratio->SetMarkerStyle(20);
286 gr3_ratio->SetMarkerSize(0.8);                    286 gr3_ratio->SetMarkerSize(0.8);
287 gr3_ratio->SetLineColor(3);                       287 gr3_ratio->SetLineColor(3);
288 gr3_ratio->Draw("P");                             288 gr3_ratio->Draw("P");
289                                                   289 
290 gr4_ratio->SetLineWidth(0.3);                     290 gr4_ratio->SetLineWidth(0.3);
291 gr4_ratio->SetMarkerColor(4);                     291 gr4_ratio->SetMarkerColor(4);
292 gr4_ratio->SetMarkerStyle(20);                    292 gr4_ratio->SetMarkerStyle(20);
293 gr4_ratio->SetMarkerSize(0.8);                    293 gr4_ratio->SetMarkerSize(0.8);
294 gr4_ratio->SetLineColor(4);                       294 gr4_ratio->SetLineColor(4);
295 gr4_ratio->Draw("P");                             295 gr4_ratio->Draw("P");
296                                                   296 
297 gr5_ratio->SetLineWidth(0.3);                     297 gr5_ratio->SetLineWidth(0.3);
298 gr5_ratio->SetMarkerColor(6);                     298 gr5_ratio->SetMarkerColor(6);
299 gr5_ratio->SetMarkerStyle(21);                    299 gr5_ratio->SetMarkerStyle(21);
300 gr5_ratio->SetMarkerSize(1);                      300 gr5_ratio->SetMarkerSize(1);
301 gr5_ratio->SetLineColor(6);                       301 gr5_ratio->SetLineColor(6);
302 gr5_ratio->Draw("P");                             302 gr5_ratio->Draw("P");
303                                                   303 
304 TLegend *leg = new TLegend(0.3, 0.5, 0.6, 0.8)    304 TLegend *leg = new TLegend(0.3, 0.5, 0.6, 0.8);
305 leg->SetFillColor(0);                             305 leg->SetFillColor(0);
306 leg->AddEntry(gr1_ratio, "Geant4 - Livermore",    306 leg->AddEntry(gr1_ratio, "Geant4 - Livermore", "lp");
307 leg->AddEntry(gr2_ratio, "Geant4 - Penelope",     307 leg->AddEntry(gr2_ratio, "Geant4 - Penelope", "lp");
308 leg->AddEntry(gr3_ratio, "Geant4 - opt0", "lp"    308 leg->AddEntry(gr3_ratio, "Geant4 - opt0", "lp");
309 leg->AddEntry(gr4_ratio, "Geant4 - opt3", "lp"    309 leg->AddEntry(gr4_ratio, "Geant4 - opt3", "lp");
310 leg->AddEntry(gr5_ratio, "Geant4 - opt4", "lp"    310 leg->AddEntry(gr5_ratio, "Geant4 - opt4", "lp");
311 leg->Draw();                                      311 leg->Draw();
312                                                   312 
313 c1 -> Print("Flexi_dose_rate_distribution_rati    313 c1 -> Print("Flexi_dose_rate_distribution_ratio.jpg");
314                                                   314 
315 }                                                 315 }
316                                                   316