CRXS  1.0
Comic Ray Cross Section Tools
 All Classes Namespaces Functions Variables Pages
Static Public Member Functions | Static Public Attributes | List of all members
CRXS::XS_definitions Class Reference

Static Public Member Functions

static double inv_pp_pbar_CM__Winkler (double s, double E_pbar_d, double pT_pbar, double *C_array, int len_C_array=-1)
 Parametrization of the invariant antiproton production (pbar) crosssection from pp in CMF. More...
 
static double inv_pp_pbar_CM__diMauro (double s, double E_pbar, double pT_pbar, double *C_array, int len_C_array=-1)
 Parametrization of the invariant antiproton production (pbar) crosssection from pp in CMF. More...
 
static double el_pp__diMauro (double s)
 Parametrization of the total pp cross section. More...
 
static double tot_pp__diMauro (double s)
 Parametrization of the elastic pp cross section. More...
 
static void totXS_TableToArray (std::string file, double array[91][4])
 Function to read a simple text table. More...
 
static void totXS_Read ()
 Function to read all the total XS tables.
 
static double totXS_get_interpolation_loglin (double x, double array[91][4])
 Function to interpolate the the XS tables. Interpolation is linear in log-log. More...
 
static double tot_pbarp (double T_pbar)
 Interpolation of the total pbar+p cross section. More...
 
static double el_pbarp (double T_pbar)
 Interpolation of the elastic pbar+p cross section. More...
 
static double tot_pbarD (double T_pbar)
 Interpolation of the total pbar+D cross section. More...
 
static double nar_pbarD (double T_pbar)
 Interpolation of the non-annihilating pbar+D cross section. More...
 
static double inv_pp_p_CM__Anderson (double s, double E_p, double pT_p, double *C_array=Dummy, int len_C_array=-1)
 Parametrization of the invariant proton scattering crosssection from pp in CMF. More...
 
static double pbar_overlap_function_projectile (double x_F)
 Parametrization of the target and projectile overlap function in pbar production. More...
 
static double pbar_overlap_function_target (double x_F)
 Parametrization of the target and target overlap function in pbar production. More...
 
static double factor__AA (double s, double xF, int A_projectile, int N_projectile, int A_target, int N_target, int parametrization)
 Parametrization of the nuclear scaling factor. More...
 
static double * Get_D_parameters (int parametrization)
 
static double * Get_C_parameters (int parametrization)
 
static double * Get_C_parameters_isospin (int parametrization)
 
static double deltaHyperon (double s, double *C_array, int len_C_array=-1)
 
static double deltaIsospin (double s, double *C_array, int len_C_array=-1)
 

Static Public Attributes

static double fMass_proton = 0.9382720813
 
static double fMass_neutron = 0.9395654133
 
static double fMass_deuteron = 1.8756
 
static double fMass_helion3 = 0.9382720813*3
 
static double fMass_helion4 = 0.9382720813*4
 
static bool f_totXS_IsRead = false
 Bool to store whether the tables are alread read.
 
static double fXS__tot_pbarp [91][4]
 Array to store the total pbar+p XS; column 0: T_pbar in GeV, column 1: XS in mbarn.
 
static double fXS__el_pbarp [91][4]
 Array to store the elastic pbar+p XS; column 0: T_pbar in GeV, column 1: XS in mbarn.
 
static double fXS__tot_pbarD [91][4]
 Array to store the total pbar+D XS; column 0: T_pbar in GeV, column 1: XS in mbarn.
 
static double fXS__nar_pbarD [91][4]
 Array to store the non-annihilation pbar+D XS; column 0: T_pbar in GeV, column 1: XS in mbarn.
 
static double Korsmeier_I_C1_to_C11 [12] = { -1, 3.50193e+00, 5.58513e+00, 3.99553e-02, -2.50716e-01, 2.65053e+00, 3.78145e-02, 4.29478e-02, 2.69520e+00, 0.0, 0.0, 0.0 }
 
static double diMauro_I_C1_to_C11 [12] = { -1, 4.499, 3.41, 0.00942, 0.445, 3.502, 0.0622, -0.247, 2.576, 0.0, 0.0, 0.0 }
 
static double diMauro_II_C1_to_C11 [12] = { -1, 4.448, 3.735, 0.00502, 0.708, 3.527, 0.236, -0.729, 2.517, -1.822e-11, 3.527, 0.384 }
 
static double Winkler_C1_to_C16 [17] = { 1, 0.31, 0.30, 21316., 0.9, 0.047, 7.76, 0.168, 0.038, 1.0e-3, 0.7, 30.9, -1.74, 0.71, 0.114, 20736., 0.51 }
 
static double Winkler_II_C1_to_C16 [17] = { 2, 0.31, 0.30, 21316., 0.9, 0.047, 7.76, 0.168, 0.038, 1.0e-3, 0.7, 30.9, -1.74, 0.71, 0.114, 20736., 0.51 }
 
static double Korsmeier_II_C1_to_C16 [17] = { 1, 0.31, 0.30, 21316., 0.9, 5.01767e-02, 7.79045, 1.64809e-01, 0.038, 4.74370e-04, 3.70480e+00, 30.9, -1.74, 0.71, 0.114, 20736., 0.51 }
 
static double Korsmeier_III_C1_to_C16 [17] = { 2, 0.31, 0.30, 21316., 0.9, 5.01767e-02, 7.79045, 1.64809e-01, 0.038, 4.74370e-04, 3.70480e+00, 30.9, -1.74, 0.71, 0.114, 20736., 0.51 }
 
static double diMauro_I_C1_to_C16 [17] = { -1, 0.00, 0.00, 0., 0.0, 0., 0., 0., 0., 0., 0, 0., 0., 0., 0.6, 100., 0.0 }
 
static double diMauro_II_C1_to_C16 [17] = { -1, 0.00, 0.00, 0., 0.0, 0., 0., 0., 0., 0., 0, 0., 0., 0., 0.6, 100., 0.0 }
 
static double Anderson_C1_to_C16 [17] = { -1, 0.00, 0.00, 0., 0.0, 0., 0., 0., 0., 0., 0, 0., 0., 0., 0.0, 100., 0.0 }
 
static double Korsmeier_I_D1_to_D2 [3] = { -1, 0.825, 0.167 }
 
static double Korsmeier_II_D1_to_D2 [3] = { -1, 0.828, 0.145 }
 
static double Korsmeier_III_D1_to_D2 [3] = { -1, 0.828, 0.145 }
 
static double Winkler_D1_to_D2 [3] = { -1, 0.839, 0.161 }
 
static double Winkler_II_D1_to_D2 [3] = { -1, 0.839, 0.161 }
 
static double diMauro_I_D1_to_D2 [3] = { -1, 0.8, 0. }
 
static double diMauro_II_D1_to_D2 [3] = { -1, 0.8, 0. }
 
static double Winkler_SELF_C1_to_C16 [17] = { 1, 0.31, 0.30, 21316., 0.9, 5.01767e-02, 7.79045, 1.64809e-01, 0.038, 4.74370e-04, 3.70480e+00, 30.9, -1.74, 0.71, 0.114, 20736., 0.51 }
 
static double diMauro_SELF_C1_to_C11 [12] = { -1, 3.50193e+00, 5.58513e+00, 3.99553e-02, -2.50716e-01, 2.65053e+00, 3.78145e-02, 4.29478e-02, 2.69520e+00, 0.0, 0.0, 0.0 }
 
static double diMauro_SELF_C1_to_C16 [17] = { -1, 0.31, 0.30, 21316., 0.9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.114, 20736., 0.51 }
 
static double Winkler_SELF_D1_to_D2 [3] = { -1, 0.828, 0.145 }
 
static double diMauro_SELF_D1_to_D2 [3] = { -1, 0.825, 0.167 }
 
static double Dummy [1] = { -1 }
 

Member Function Documentation

double CRXS::XS_definitions::el_pbarp ( double  T_pbar)
static

Interpolation of the elastic pbar+p cross section.

Hand-fitted curve to the data collected by the Particle Data Group (PDG). The data and tables of the hand-fitted curve are stored in <CRXS dir>="">/cpp/data

Parameters
doubleT_pbar Kinetic energy of the antiproton (p at rest)
Returns
double Cross section in mbarn
double CRXS::XS_definitions::el_pp__diMauro ( double  s)
static

Parametrization of the total pp cross section.

Taken from: di Mauro, et al.; 2014; A new evaluation of the antiproton production cross section for cosmic ray studies; DOI: 10.1103/PhysRevD.90.085017

Parameters
doubles CM energy.
Returns
double Cross section in mbarn
double CRXS::XS_definitions::factor__AA ( double  s,
double  xF,
int  A_projectile,
int  N_projectile,
int  A_target,
int  N_target,
int  parametrization 
)
static

Parametrization of the nuclear scaling factor.

Depending on the parametrization, taken from: Korsmeier, et al.; 2018; Production cross sections of cosmic antiprotons in the light of new data from the NA61 and LHCb experiments; DOI: 10.1103/PhysRevD.97.103019

Taken from: Winkler, M. W.; 2017; Cosmic Ray Antiprotons at High Energies; arXiv:1701.04866

In the case of Di Mauro XS we use a simple scaling of A^0.8 for both, projectile and target.

Parameters
doubles CM energy, squared.
doulbexF Feynman scaling (2*pL/sqrt(s) in CMF)
intA_projectile Mass number of the projectile
intN_projectile Number of neutrons in the projectile
intA_target Mass number of the target
intN_target Number of neutrons in the target
stringparametrization Cross section parametrization [Korsmeier_II (default), Korsmeier_I, Winkler, diMauro_I, diMauro_II]
Returns
double factor Scaling factor
double CRXS::XS_definitions::inv_pp_p_CM__Anderson ( double  s,
double  E_p,
double  pT_p,
double *  C_array = Dummy,
int  len_C_array = -1 
)
static

Parametrization of the invariant proton scattering crosssection from pp in CMF.

Taken from: Anderson, et al.; 1967; PROTON AND PION SPECTRA FROM PROTON-PROTON INTERACTIONS AT 10, 20, AND 30 BeV/c*; DOI: https://doi.org/10.1103/PhysRevLett.19.198

Parameters
doubles CM energy.
doulbeE_p Energy of the scattered proton in CMF
doulbepT_p Transverse momentum of the scattered proton in CMF.
double CRXS::XS_definitions::inv_pp_pbar_CM__diMauro ( double  s,
double  E_pbar,
double  pT_pbar,
double *  C_array,
int  len_C_array = -1 
)
static

Parametrization of the invariant antiproton production (pbar) crosssection from pp in CMF.

Taken from: di Mauro, et al.; 2014; A new evaluation of the antiproton production cross section for cosmic ray studies; DOI: 10.1103/PhysRevD.90.085017

\[ E_{\bar{p}} \frac{ d^3 \sigma_{pp}^{(\bar{p})} }{d^3 p_{\bar{p}} } (s, E_{\bar{p}}, p_{T,\bar{p}}) \]

Parameters
doubles CM energy.
doulbeE_pbar Energy of the produced antiproton in CMF
doulbepT_pbar Transverse momentum of the produced antiproton in CMF.
doulbe*C_array Ci=(1,...,16), parameters. C1=C_array[1], C2=C_array[2], ... (C_array[0] is not used)
Returns
double Cross section in mbarn/GeV^2
double CRXS::XS_definitions::inv_pp_pbar_CM__Winkler ( double  s,
double  E_pbar_d,
double  pT_pbar,
double *  C_array,
int  len_C_array = -1 
)
static

Parametrization of the invariant antiproton production (pbar) crosssection from pp in CMF.

All cross sections are given in mbarn All enegies, momenta, and masses have unit GeV.

Taken from: Winkler, M. W.; 2017; Cosmic Ray Antiprotons at High Energies; arXiv:1701.04866

\[ E_{\bar{p}} \frac{ d^3 \sigma_{pp}^{(\bar{p})} }{d^3 p_{\bar{p}} } (s, E_{\bar{p}}, p_{T,\bar{p}}) \]

Parameters
doubles CM energy.
doulbeE_pbar Energy of the produced antiproton in CMF
doulbepT_pbar Transverse momentum of the produced antiproton in CMF.
doulbe*C_array Ci=(1,...,16), parameters. C1=C_array[1], C2=C_array[2], ... (C_array[0] is not used)
Returns
double Cross section in mbarn/GeV^2
double CRXS::XS_definitions::nar_pbarD ( double  T_pbar)
static

Interpolation of the non-annihilating pbar+D cross section.

Hand-fitted curve to the data collected by:

A. Baldini, V. Flaminio, W. G. Moorhead, and D. R. O. Morrison,
Total Cross-Sections for Reactions of High Energy Particles,
edited by S. H., Vol. 12B (SpringerMaterials, 1988).

The data and tables of the hand-fitted curve are stored in <CRXS dir>="">/cpp/data

Parameters
doubleT_pbar Kinetic energy of the antiproton (D at rest)
Returns
double Cross section in mbarn
double CRXS::XS_definitions::pbar_overlap_function_projectile ( double  x_F)
static

Parametrization of the target and projectile overlap function in pbar production.

Taken from: NA49; Inclusive production of protons, anti-protons, neutrons, deuterons and tritons in p+C collisions at 158 GeV/c beam momentum; arXiv:1207.6520v3

Fig. 69, Tab. 14

Parameters
doublex_F Feynman parameter p/p_max.
Returns
double Overlap function for projectile
double CRXS::XS_definitions::pbar_overlap_function_target ( double  x_F)
static

Parametrization of the target and target overlap function in pbar production.

Taken from: NA49; Inclusive production of protons, anti-protons, neutrons, deuterons and tritons in p+C collisions at 158 GeV/c beam momentum; arXiv:1207.6520v3

Fig. 69, Tab. 14

Parameters
doublex_F Feynman parameter p/p_max.
Returns
double Overlap function for target
double CRXS::XS_definitions::tot_pbarD ( double  T_pbar)
static

Interpolation of the total pbar+D cross section.

Hand-fitted curve to the data collected by the Particle Data Group (PDG). The data and tables of the hand-fitted curve are stored in <CRXS dir>="">/cpp/data

Parameters
doubleT_pbar Kinetic energy of the antiproton (D at rest)
Returns
double Cross section in mbarn
double CRXS::XS_definitions::tot_pbarp ( double  T_pbar)
static

Interpolation of the total pbar+p cross section.

Hand-fitted curve to the data collected by the Particle Data Group (PDG). The data and tables of the hand-fitted curve are stored in <CRXS dir>="">/cpp/data

Parameters
doubleT_pbar Kinetic energy of the antiproton (p at rest)
Returns
double Cross section in mbarn
double CRXS::XS_definitions::tot_pp__diMauro ( double  s)
static

Parametrization of the elastic pp cross section.

Taken from: di Mauro, et al.; 2014; A new evaluation of the antiproton production cross section for cosmic ray studies; DOI: 10.1103/PhysRevD.90.085017

Parameters
doubles CM energy.
Returns
double Cross section in mbarn
double CRXS::XS_definitions::totXS_get_interpolation_loglin ( double  x,
double  array[91][4] 
)
static

Function to interpolate the the XS tables. Interpolation is linear in log-log.

To be used with the arrays fXS__*

Parameters
doublex Value in column 0 of array.
doublearray[91][4] Table which is supposed to be interpolated (use column 1).
Returns
double Interpolted value
void CRXS::XS_definitions::totXS_TableToArray ( std::string  file,
double  array[91][4] 
)
static

Function to read a simple text table.

Parameters
std::stringfile File name of the table.
doublearray[91][4] Array to store the table entries.

The documentation for this class was generated from the following files: