-
Notifications
You must be signed in to change notification settings - Fork 8
/
ltepop.h
22 lines (19 loc) · 1.04 KB
/
ltepop.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#ifndef LTEPOP_H
#define LTEPOP_H
#include <vector>
[[nodiscard]] auto get_groundlevelpop(int nonemptymgi, int element, int ion) -> double;
#pragma omp declare simd
[[nodiscard]] auto calculate_levelpop(int nonemptymgi, int element, int ion, int level) -> double;
#pragma omp declare simd
[[nodiscard]] auto calculate_levelpop_lte(int nonemptymgi, int element, int ion, int level) -> double;
#pragma omp declare simd
[[nodiscard]] auto get_levelpop(int nonemptymgi, int element, int ion, int level) -> double;
[[nodiscard]] auto calculate_sahafact(int element, int ion, int level, int upperionlevel, double T, double E_threshold)
-> double;
[[nodiscard]] auto get_nnion(int nonemptymgi, int element, int ion) -> double;
void calculate_ion_balance_nne(int nonemptymgi);
void calculate_cellpartfuncts(int nonemptymgi, int element);
[[nodiscard]] auto calculate_ionfractions(int element, int nonemptymgi, double nne, bool use_phi_lte)
-> std::vector<double>;
void set_groundlevelpops(int nonemptymgi, int element, float nne, bool force_lte);
#endif // LTEPOP_H