Back to home page

EIC code displayed by LXR

 
 

    


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