1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
#ifndef MUON_H
#define MUON_H
#include <stddef.h> /* for size_t */
#define EULER_CONSTANT 0.57721
typedef struct muon_energy {
double *x;
double *T;
size_t n;
} muon_energy;
muon_energy *muon_init_energy(double T0, double rho, size_t n);
double muon_get_energy(double x, muon_energy *m);
void muon_free_energy(muon_energy *m);
double get_range(double T, double rho);
double get_dEdx(double T, double rho);
double get_expected_reflected_charge(double x, double T, double theta0, double *pos, double *dir, double *pmt_pos, double *pmt_normal, double r);
double get_expected_charge(double x, double T, double T0, double *pos, double *dir, double *pmt_pos, double *pmt_normal, double r);
#endif
|