File indexing completed on 2025-04-19 09:10:16
0001 #ifndef SHRIMPS_Tools_Parameter_Structures_H
0002 #define SHRIMPS_Tools_Parameter_Structures_H
0003
0004 #include <ostream>
0005
0006 namespace SHRIMPS {
0007 struct run_mode {
0008 enum code {
0009 test = 0,
0010 xsecs_only = 1,
0011 inelastic_events = 10,
0012 elastic_events = 11,
0013 soft_diffractive_events = 12,
0014 single_diffractive_events = 13,
0015 double_diffractive_events = 14,
0016 quasi_elastic_events = 15,
0017 all_min_bias = 20,
0018 underlying_event = 100,
0019 unknown = -1
0020 };
0021 };
0022
0023 struct weight_mode {
0024 enum code {
0025 unweighted = 0,
0026 weighted = 1,
0027 unknown = -1
0028 };
0029 };
0030
0031 struct ff_form {
0032 enum code {
0033 Gauss = 2,
0034 dipole = 1
0035 };
0036 };
0037
0038 struct absorption {
0039 enum code {
0040 exponential = 2,
0041 factorial = 1
0042 };
0043 };
0044
0045 struct ladder_weight {
0046 enum code {
0047 IntervalOnly,
0048 ReggeDiffusion,
0049 Regge
0050 };
0051 };
0052
0053 struct ktform {
0054 enum code {
0055 IR0 = 2,
0056 smooth = 1,
0057 frozen = 0,
0058 cut = -1
0059 };
0060 };
0061
0062 struct ordering {
0063 enum code {
0064 ao_phys = 6,
0065 rap_phys = 4,
0066 ao_keep = 3,
0067 ao = 2,
0068 keep = 1,
0069 rap_only = 0
0070 };
0071 };
0072 struct resc_ktmin {
0073 enum code {
0074 props = 2,
0075 on = 1,
0076 off = 0,
0077 };
0078 };
0079 struct resc_nosing {
0080 enum code {
0081 on = 1,
0082 off = 0
0083 };
0084 };
0085 struct resc_over_sing {
0086 enum code {
0087 on = 1,
0088 off = 0
0089 };
0090 };
0091 struct resc_mode {
0092 enum code {
0093 on = 1,
0094 off = 0
0095 };
0096 };
0097 struct reconn_mode {
0098 enum code {
0099 run = 2,
0100 fix = 1,
0101 off = 0
0102 };
0103 };
0104
0105
0106 struct Run_Parameters {
0107 run_mode::code runmode;
0108 weight_mode::code weightmode;
0109 public:
0110 Run_Parameters() {}
0111 };
0112
0113 struct FormFactor_Parameters {
0114 public:
0115 ff_form::code form;
0116 size_t number;
0117 double norm, beta02, Lambda2, kappa, xi, bmax, accu;
0118 size_t bsteps;
0119
0120 FormFactor_Parameters() {}
0121 FormFactor_Parameters(const FormFactor_Parameters & params) :
0122 form(params.form),number(-1),
0123 norm(params.norm),beta02(params.beta02),
0124 Lambda2(params.Lambda2),kappa(params.kappa),xi(params.xi),
0125 bmax(params.bmax), accu(params.accu), bsteps(params.bsteps) {}
0126 };
0127
0128 struct Eikonal_Parameters {
0129 public:
0130 absorption::code absorp;
0131 double originalY, cutoffY, Ymax, lambda, Delta, beta02;
0132 double bmax, accu;
0133
0134 Eikonal_Parameters() {}
0135 Eikonal_Parameters(const Eikonal_Parameters & params) :
0136 absorp(params.absorp),
0137 originalY(params.originalY), cutoffY(params.cutoffY), Ymax(params.Ymax),
0138 lambda(params.lambda),Delta(params.Delta),beta02(params.beta02),
0139 bmax(params.bmax), accu(params.accu) {}
0140 };
0141
0142 struct Ladder_Parameters {
0143 public:
0144 double Q02, Qas2;
0145 Ladder_Parameters() {}
0146 };
0147
0148 struct ShowerLink_Parameters {
0149 public:
0150 double CEKT2min;
0151 double KT2min;
0152 ShowerLink_Parameters() {}
0153 };
0154 }
0155
0156 #endif