diff options
author | tlatorre <tlatorre@uchicago.edu> | 2018-09-06 10:13:52 -0500 |
---|---|---|
committer | tlatorre <tlatorre@uchicago.edu> | 2018-09-06 10:13:52 -0500 |
commit | ae90fe0e0c47e39a803c453e565e0eebea2ecd65 (patch) | |
tree | b04af76a4b273047da99a9ca595fc018e2caa8ff /src | |
parent | 19fc5bf79f207d2c1d7c7e9a540802249de8163e (diff) | |
download | sddm-ae90fe0e0c47e39a803c453e565e0eebea2ecd65.tar.gz sddm-ae90fe0e0c47e39a803c453e565e0eebea2ecd65.tar.bz2 sddm-ae90fe0e0c47e39a803c453e565e0eebea2ecd65.zip |
introduce a minimum value for the scattering RMS theta0
Diffstat (limited to 'src')
-rw-r--r-- | src/path.c | 2 | ||||
-rw-r--r-- | src/path.h | 10 |
2 files changed, 11 insertions, 1 deletions
@@ -175,7 +175,7 @@ void path_eval(path *p, double s, double *pos, double *dir, double *T, double *t dir[2] = interp1d(s,p->s,p->dz,N); /* FIXME: This should be the *residual* scattering RMS. */ - *theta0 = p->theta0*sqrt(s); + *theta0 = fmax(MIN_THETA0, p->theta0*sqrt(s)); } void path_free(path *p) @@ -3,6 +3,16 @@ #include <gsl/gsl_spline.h> +/* Minimum value for the scattering RMS `theta0`. + * + * This is a bit of a hack to correct for the fact that we assume the + * probability of a photon hitting a PMT is uniform across the face of a PMT. + * By introducing a minimum value for the scattering RMS we broaden the angular + * distribution such that it effectively averages across the face of a PMT. + * + * FIXME: Should do some tests to figure out what is the best value. */ +#define MIN_THETA0 0.01 + typedef double getKineticEnergyFunc(double x, double T0); typedef struct path { |