20 int main(
int argc,
char **argv)
37 catch(
const exception &error) {
38 FATAL(error.what() << endl);
42 const JRadiation radiation(4.0, 8.0, 40, 0.01, 0.1, 0.1);
44 JManager<double, TH1D> HA(
new TH1D(
"Brems1 [% GeV]", NULL, 10000, -7.5,
log10(0.5)));
45 JManager<double, TH1D> HB(
new TH1D(
"Brems2 [% GeV]", NULL, 10000, -3.2,
log10(0.5)));
46 JManager<double, TH1D> HC(
new TH1D(
"EErad [% GeV]", NULL, 10000, -7.8, 0.0));
48 for (
const double E : { 1.0e2, 1.0e3 }) {
54 for (
int i = 1; i <= ha->GetNbinsX(); ++i) {
56 const double x = ha->GetBinCenter(i);
57 const double v =
pow(10.0, x);
58 const double y = radiation.getThetaRMSfromBrems(
E, v);
60 ha->SetBinContent(i, y);
63 for (
int i = 1; i <= hb->GetNbinsX(); ++i) {
65 const double x = hb->GetBinCenter(i);
66 const double v = 1.0 -
pow(10.0, x);
67 const double y = radiation.getThetaRMSfromBrems(
E, v);
69 hb->SetBinContent(i, y);
72 for (
int i = 1; i <= hc->GetNbinsX(); ++i) {
74 const double x = hc->GetBinCenter(i);
75 const double v =
pow(10.0, x);
76 const double y = radiation.getThetaRMSfromEErad(
E, v);
78 hc->SetBinContent(i, y);
84 out << HA << HB << HC;
Utility class to parse command line options.
int main(int argc, char *argv[])
Dynamic ROOT object management.
Muon radiative cross sections.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
set_variable E_E log10(E_{fit}/E_{#mu})"
T pow(const T &x, const double y)
Power .
General purpose messaging.
Utility class to parse command line options.