Kariba
|
#include <Kappa.hpp>
Public Member Functions | |
Kappa (size_t size) | |
Class constructor to initialize object. | |
void | set_p (double ucom, double bfield, double betaeff, double r, double fsc) |
Methods to set momentum/energy arrays and number density arrays. | |
void | set_p (double max) |
Same as above, but assuming a fixed maximum Lorentz factor. | |
void | set_ndens () |
void | set_kappa (double k) |
void | set_temp_kev (double T) |
Method to set the temperature, using ergs as input. | |
void | set_norm (double n) |
void | cooling_steadystate (double ucom, double n0, double bfield, double r, double gshift) |
double | max_p (double ucom, double bfield, double betaeff, double r, double fsc) |
void | test () |
![]() | |
Particles (size_t size) | |
void | set_mass (double m) |
void | initialize_gdens () |
void | initialize_pdens () |
Same as above but the other way around. | |
void | gdens_differentiate () |
const std::vector< double > & | get_p () const |
const std::vector< double > & | get_pdens () const |
const std::vector< double > & | get_gamma () const |
const std::vector< double > & | get_gdens () const |
const std::vector< double > & | get_gdens_diff () const |
double | count_particles () |
Simple numerical integrals /w trapeze method. | |
double | count_particles_energy () |
double | av_p () |
double | av_gamma () |
double | av_psq () |
double | av_gammasq () |
void | test_arrays () |
simple method to check arrays; only meant for debugging | |
Protected Attributes | |
double | theta |
double | kappa |
double | knorm |
double | pmin |
double | pmax |
![]() | |
double | mass_gr |
particle mass in grams | |
double | mass_kev |
same as above but in keV, using electrons as "reference" | |
std::vector< double > | p |
array of particle momenta | |
std::vector< double > | ndens |
array of number density per unit volume, per unit momentum | |
std::vector< double > | gamma |
array of particle kinetic energies for each momentum | |
std::vector< double > | gdens |
array of number density per unit volume, per unit gamma | |
std::vector< double > | gdens_diff |
Friends | |
double | norm_kappa_int (double x, void *p) |
Methods to calculate the normalization of the function. | |
double | injection_kappa_int (double x, void *p) |
Class for kappa distribution of particles, inherited from the generic Particles class in Particles.hh
kariba::Kappa::Kappa | ( | size_t | size | ) |
Class constructor to initialize object.
void kariba::Kappa::cooling_steadystate | ( | double | ucom, |
double | n0, | ||
double | bfield, | ||
double | r, | ||
double | gshift | ||
) |
double kariba::Kappa::max_p | ( | double | ucom, |
double | bfield, | ||
double | betaeff, | ||
double | r, | ||
double | fsc | ||
) |
Method to calculate maximum momentum of non thermal particles based on acceleration and cooling timescales
void kariba::Kappa::set_kappa | ( | double | k | ) |
void kariba::Kappa::set_ndens | ( | ) |
void kariba::Kappa::set_norm | ( | double | n | ) |
void kariba::Kappa::set_p | ( | double | max | ) |
Same as above, but assuming a fixed maximum Lorentz factor.
void kariba::Kappa::set_p | ( | double | ucom, |
double | bfield, | ||
double | betaeff, | ||
double | r, | ||
double | fsc | ||
) |
Methods to set momentum/energy arrays and number density arrays.
void kariba::Kappa::set_temp_kev | ( | double | T | ) |
Method to set the temperature, using ergs as input.
< minimum energy in kev, 1/100 lower than peak
< maximum energy in kev, 20 higher than peak
void kariba::Kappa::test | ( | ) |
|
friend |
Method to solve steady state continuity equation. NOTE: KN cross section not included in IC cooling
|
friend |
Methods to calculate the normalization of the function.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |