116 if (strcmp (command,
"weighting") == 0) {
119 pn->EnableWeighting();
120 pn->SetExpectedWeightMean(-1);
123 pp->EnableWeighting();
124 pp->SetExpectedWeightMean(-1);
128 if (pn_gen)
return kTRUE;
131 TF1 *
flat =
new TF1(
"flat",
"1", 0, kin_max);
135 new PInclusiveModel(
"flat@p + n_brems_p_n_dilepton/generator",
"Dilepton generator", -1);
138 pn_gen->Add(
"q,parent");
139 pn_gen->Add(
"p,daughter");
140 pn_gen->Add(
"n,daughter");
141 pn_gen->Add(
"dilepton,daughter,primary");
142 pn_gen->SetSampleFunction(
flat);
144 pn_gen->EnableGenerator();
149 new PInclusiveModel(
"flat2@p + p_brems_p_p_dilepton/generator",
"Dilepton generator", -1);
152 pp_gen->Add(
"q,parent");
153 pp_gen->Add(
"p,daughter");
154 pp_gen->Add(
"p,daughter");
155 pp_gen->Add(
"dilepton,daughter,primary");
156 pp_gen->SetSampleFunction(
flat);
158 pp_gen->EnableGenerator();
162 }
else if (strcmp (command,
"kin_max") == 0) {
166 }
else if (strcmp (command,
"elastic") == 0) {
167 if (current_author) {
176 }
else if (strcmp (command,
"delta") == 0) {
177 if (current_author) {
186 }
else if (strcmp (command,
"n1520") == 0) {
187 if (current_author) {
192 Warning(
"ExecCommand",
"N1520 option not available for KK");
195 }
else if (strcmp (command,
"sum") == 0) {
196 if (current_author) {
205 }
else if (strcmp (command,
"fsi") == 0) {
207 if (pn_fsi)
return kTRUE;
211 pn_fsi =
new PNNFSI(
"pn_fsi@p + n_brems_p_n_dilepton/nnfsi",
"PN FSI effects",-1);
212 pn_fsi->EnableWeighting();
213 pn_fsi->SetExpectedWeightMean(-1);
216 np_fsi =
new PNNFSI(
"np_fsi@n + p_brems_p_n_dilepton/nnfsi",
"PN FSI effects",-1);
217 np_fsi->EnableWeighting();
218 np_fsi->SetExpectedWeightMean(-1);
221 pp_fsi =
new PNNFSI(
"pp_fsi@p + p_brems_p_p_dilepton/nnfsi",
"PP FSI effects",-1);
222 pp_fsi->EnableWeighting();
223 pp_fsi->SetExpectedWeightMean(-1);
224 pp_fsi->SetA0R0(-7.8098,2.767);
229 }
else if (strcmp (command,
"kaptari") == 0) {
240 pdmutil->
AddSubGroup(
"bremsstrahlung_kk",
"Bremsstrahlung from KK",
"bremsstrahlung");
241 pdmutil->
SetGroup(
"bremsstrahlung_kk");
243 pn =
new PBremsstrahlung(
"p + n_brems_p_n_dilepton",
"pn Kaptari/Kaempfer bremsstrahlung", -1);
246 pn->Add(
"p,grandparent,p1");
247 pn->Add(
"n,grandparent,p2");
248 pn->Add(
"p,daughter,p3");
249 pn->Add(
"n,daughter,p4");
250 pn->Add(
"dilepton",
"daughter");
253 newmodel3->
Add(
"dummy,parent");
255 pp =
new PBremsstrahlung(
"p + p_brems_p_p_dilepton",
"pp Kaptari/Kaempfer bremsstrahlung", -1);
258 pp->Add(
"p,grandparent,p1");
259 pp->Add(
"p,grandparent,p2");
260 pp->Add(
"p,daughter,p3");
261 pp->Add(
"p,daughter,p4");
262 pp->Add(
"dilepton",
"daughter");
268 pdmutil->
Add(newmodel3);
273 }
else if (strcmp (command,
"shyam") == 0) {
275 char *path = getenv(
"PLUTO_DIR");
277 Error (
"ExecCommand",
"$PLUTO_DIR not set: dat files cannot be located");
291 array_pp_sm_125 =
new PArray(1);
292 array_pp_sm_125->Scaling(0.001);
293 array_pp_sm_125->OpenFile(path + TString(
"/plugins/brems/shyam_pp_1.25GeV.dat"), 0, 5);
296 array_pn_sm_125 =
new PArray(2);
297 array_pn_sm_125->Scaling(0.001);
298 array_pn_sm_125->OpenFile(path + TString(
"/plugins/brems/shyam_pn_1GeV.dat"), 0, 5, 1);
299 array_pn_sm_125->OpenFile(path + TString(
"/plugins/brems/shyam_pn_1.25GeV.dat"), 0, 5, 1.25);
300 array_pn_sm_125->OpenFile(path + TString(
"/plugins/brems/shyam_pn_1.5GeV.dat"), 0, 5, 1.5);
304 pdmutil->
AddSubGroup(
"bremsstrahlung_sm",
"Bremsstrahlung from Shyam/Mosel",
"bremsstrahlung");
306 "Bremsstrahlung from Shyam/Mosel (total)",
"bremsstrahlung_sm");
308 "Bremsstrahlung from Shyam/Mosel (elastic)",
"bremsstrahlung_sm");
310 "Bremsstrahlung from Shyam/Mosel (delta)",
"bremsstrahlung_sm");
312 "Bremsstrahlung from Shyam/Mosel (N*1520)",
"bremsstrahlung_sm");
315 pdmutil->
SetGroup(
"bremsstrahlung_sm_total");
316 pp_sm_total =
new PBremsstrahlung(
"pp_sm_total@p + p_brems_p_p_dilepton",
317 "pp Shyam/Mosel bremsstrahlung (total)", -1);
319 pp_sm_total->Add(
"q,parent");
320 pp_sm_total->Add(
"p,grandparent,p1");
321 pp_sm_total->Add(
"p,grandparent,p2");
322 pp_sm_total->Add(
"p,daughter,p3");
323 pp_sm_total->Add(
"p,daughter,p4");
324 pp_sm_total->Add(
"dilepton",
"daughter");
325 pp_sm_total->SetFunc(array_pp_sm_125->GetTGraph(0,1));
326 pdmutil->
Add(pp_sm_total);
329 pn_sm_total =
new PBremsstrahlung(
"pn_sm_total@p + n_brems_p_n_dilepton",
330 "pn Shyam/Mosel bremsstrahlung (total)", -1);
332 pn_sm_total->Add(
"q,parent");
333 pn_sm_total->Add(
"p,grandparent,p1");
334 pn_sm_total->Add(
"n,grandparent,p2");
335 pn_sm_total->Add(
"p,daughter,p3");
336 pn_sm_total->Add(
"n,daughter,p4");
337 pn_sm_total->Add(
"dilepton",
"daughter");
338 TGraph2D *gr = array_pn_sm_125->GetTGraph2D(0,1);
339 pn_sm_total->SetFunc(gr);
340 pdmutil->
Add(pn_sm_total);
343 "pn Shyam/Mosel bremsstrahlung (total) [clone]", -1);
344 newmodel3->
Add(
"dummy,parent");
346 pdmutil->
Add(newmodel3);
349 pdmutil->
SetGroup(
"bremsstrahlung_sm_elastic");
350 pp_sm_elastic =
new PBremsstrahlung(
"pp_sm_elastic@p + p_brems_p_p_dilepton",
351 "pp Shyam/Mosel bremsstrahlung (elastic)",-1);
353 pp_sm_elastic->Add(
"p,grandparent,p1");
354 pp_sm_elastic->Add(
"p,grandparent,p2");
355 pp_sm_elastic->Add(
"q,parent");
356 pp_sm_elastic->Add(
"p,daughter,p3");
357 pp_sm_elastic->Add(
"p,daughter,p4");
358 pp_sm_elastic->Add(
"dilepton",
"daughter");
359 pp_sm_elastic->SetFunc(array_pp_sm_125->GetTGraph(0,2));
360 pdmutil->
Add(pp_sm_elastic);
363 pn_sm_elastic =
new PBremsstrahlung(
"pn_sm_elastic@p + n_brems_p_n_dilepton",
364 "pn Shyam/Mosel bremsstrahlung (elastic)", -1);
366 pn_sm_elastic->Add(
"p,grandparent,p1");
367 pn_sm_elastic->Add(
"n,grandparent,p2");
368 pn_sm_elastic->Add(
"q,parent");
369 pn_sm_elastic->Add(
"p,daughter,p3");
370 pn_sm_elastic->Add(
"n,daughter,p4");
371 pn_sm_elastic->Add(
"dilepton",
"daughter");
372 gr = array_pn_sm_125->GetTGraph2D(0,2);
373 pn_sm_elastic->SetFunc(gr);
374 pdmutil->
Add(pn_sm_elastic);
376 newmodel3 =
new PBremsstrahlung(
"np_sm_elastic@n + p_brems_p_n_dilepton",
377 "pn Shyam/Mosel bremsstrahlung (elastic) [clone]", -1);
378 newmodel3->
Add(
"dummy,parent");
380 pdmutil->
Add(newmodel3);
383 pdmutil->
SetGroup(
"bremsstrahlung_sm_delta");
384 pp_sm_delta =
new PBremsstrahlung(
"pp_sm_delta@p + p_brems_p_p_dilepton",
385 "pp Shyam/Mosel bremsstrahlung (delta)", -1);
387 pp_sm_delta->Add(
"p,grandparent,p1");
388 pp_sm_delta->Add(
"p,grandparent,p2");
389 pp_sm_delta->Add(
"q,parent");
390 pp_sm_delta->Add(
"p,daughter,p3");
391 pp_sm_delta->Add(
"p,daughter,p4");
392 pp_sm_delta->Add(
"dilepton",
"daughter");
393 pp_sm_delta->SetFunc(array_pp_sm_125->GetTGraph(0,3));
394 pdmutil->
Add(pp_sm_delta);
397 pn_sm_delta =
new PBremsstrahlung(
"pn_sm_delta@p + n_brems_p_n_dilepton",
398 "pn Shyam/Mosel bremsstrahlung (delta)", -1);
400 pn_sm_delta->Add(
"p,grandparent,p1");
401 pn_sm_delta->Add(
"n,grandparent,p2");
402 pn_sm_delta->Add(
"q,parent");
403 pn_sm_delta->Add(
"p,daughter,p3");
404 pn_sm_delta->Add(
"n,daughter,p4");
405 pn_sm_delta->Add(
"dilepton",
"daughter");
406 gr = array_pn_sm_125->GetTGraph2D(0,3);
407 pn_sm_delta->SetFunc(gr);
408 pdmutil->
Add(pn_sm_delta);
410 newmodel3 =
new PBremsstrahlung(
"np_sm_delta@n + p_brems_p_n_dilepton",
411 "pn Shyam/Mosel bremsstrahlung (delta) [clone]", -1);
412 newmodel3->
Add(
"dummy,parent");
414 pdmutil->
Add(newmodel3);
417 pdmutil->
SetGroup(
"bremsstrahlung_sm_n1520");
418 pp_sm_n1520 =
new PBremsstrahlung(
"pp_sm_n1520@p + p_brems_p_p_dilepton",
419 "pp Shyam/Mosel bremsstrahlung (n1520)", -1);
421 pp_sm_n1520->Add(
"p,grandparent,p1");
422 pp_sm_n1520->Add(
"p,grandparent,p2");
423 pp_sm_n1520->Add(
"q,parent");
424 pp_sm_n1520->Add(
"p,daughter,p3");
425 pp_sm_n1520->Add(
"p,daughter,p4");
426 pp_sm_n1520->Add(
"dilepton",
"daughter");
427 pp_sm_n1520->SetFunc(array_pp_sm_125->GetTGraph(0,4));
428 pdmutil->
Add(pp_sm_n1520);
431 pn_sm_n1520 =
new PBremsstrahlung(
"pn_sm_n1520@p + n_brems_p_n_dilepton",
432 "pn Shyam/Mosel bremsstrahlung (n1520)", -1);
434 pn_sm_n1520->Add(
"p,grandparent,p1");
435 pn_sm_n1520->Add(
"n,grandparent,p2");
436 pn_sm_n1520->Add(
"q,parent");
437 pn_sm_n1520->Add(
"p,daughter,p3");
438 pn_sm_n1520->Add(
"n,daughter,p4");
439 pn_sm_n1520->Add(
"dilepton",
"daughter");
440 gr = array_pn_sm_125->GetTGraph2D(0,4);
441 pn_sm_n1520->SetFunc(gr);
442 pdmutil->
Add(pn_sm_n1520);
444 newmodel3 =
new PBremsstrahlung(
"np_sm_n1520@n + p_brems_p_n_dilepton",
445 "pn Shyam/Mosel bremsstrahlung (n1520) [clone]", -1);
446 newmodel3->
Add(
"dummy,parent");
448 pdmutil->
Add(newmodel3);