aboutsummaryrefslogtreecommitdiff
path: root/src/scattering.h
blob: 265f65348c54b3e20579f7370e2ea32c669e22da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/* Copyright (c) 2019, Anthony Latorre <tlatorre at uchicago>
 *
 * This program is free software: you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by the Free
 * Software Foundation, either version 3 of the License, or (at your option)
 * any later version.

 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
 * more details.

 * You should have received a copy of the GNU General Public License along with
 * this program. If not, see <https://www.gnu.org/licenses/>.
 */

#ifndef SCATTERING_H
#define SCATTERING_H

/* Maximum value for the scattering RMS `theta0`.
 *
 * This is to prevent the interpolation from going out of bounds. */
#define MAX_THETA0 1.0

void init_interpolation(void);
double get_probability(double beta, double cos_theta, double theta0);
double get_probability2(double beta);
double get_weighted_quantum_efficiency(void);
void free_interpolation(void);

#endif