#include "cddefines.h"#include "atmdat.h"#include "conv.h"#include "dense.h"#include "helike.h"#include "helike_cs.h"#include "hydro_vs_rates.h"#include "iso.h"#include "opacity.h"#include "phycon.h"#include "physconst.h"#include "rfield.h"#include "taulines.h"#include "thirdparty.h"#include "trace.h"Include dependency graph for helike_cs.cpp:

Go to the source code of this file.
Defines | |
| #define | chLine_LENGTH 1000 | 
Functions | |
| STATIC double | S62_Therm_ave_coll_str (double EProjectile_eV) | 
| STATIC double | Therm_ave_coll_str_int_VF01 (double EProjectileRyd) | 
| STATIC double | collision_strength_VF01 (double velOrEner, bool lgParamIsRedVel) | 
| STATIC double | L_mix_integrand_VF01 (double alpha) | 
| STATIC double | StarkCollTransProb_VF01 (long int n, long int l, long int lp, double alpha, double deltaPhi) | 
| void | HeCollidSetup (void) | 
| realnum | HeCSInterp (long int nelem, long int ipHi, long int ipLo, long int Collider) | 
| realnum | AtomCSInterp (long int nelem, long int ipHi, long int ipLo, realnum *factor1, const char **where, long int Collider) | 
| realnum | IonCSInterp (long nelem, long ipHi, long ipLo, realnum *factor1, const char **where, long Collider) | 
| double | CS_l_mixing_S62 (long ipISO, long nelem, long ipLo, long ipHi, double temp, long Collider) | 
| double | CS_l_mixing_PS64 (long ipISO, long nelem, long ipLo, long ipHi, long Collider) | 
| double | CS_l_mixing_VF01 (long int ipISO, long int nelem, long int n, long int l, long int lp, long int s, double temp, long int Collider) | 
| STATIC double | StarkCollTransProb_VF01 (long n, long l, long lp, double alpha, double deltaPhi) | 
Variables | |
| static long int | global_ipISO | 
| static long int | global_n | 
| static long int | global_l | 
| static long int | global_l_prime | 
| static long int | global_s | 
| static long int | global_z | 
| static long int | global_Collider | 
| static double | global_bmax | 
| static double | global_red_vel | 
| static double | global_an | 
| static double | global_collider_charge | 
| static double | global_I_energy_eV | 
| static double | global_deltaE | 
| static double | global_temp | 
| static double | global_osc_str | 
| static double | global_stat_weight | 
| static double | kTRyd | 
| static double | ColliderMass [4] = {ELECTRON_MASS/PROTON_MASS, 1.0, 4.0, 4.0} | 
| static double | ColliderCharge [4] = {1.0, 1.0, 1.0, 2.0} | 
| #define chLine_LENGTH 1000 | 
Referenced by FillGFF(), GetStandardHeLines(), HeCollidSetup(), HelikeTransProbSetup(), and iso_recomb_setup().
| realnum AtomCSInterp | ( | long int | nelem, | |
| long int | ipHi, | |||
| long int | ipLo, | |||
| realnum * | factor, | |||
| const char ** | where, | |||
| long int | Collider | |||
| ) | 
AtomCSInterp do the atom
| nelem | ||
| ipHi | ||
| ipLo | ||
| *factor | ||
| **where | ||
| Collider | 
Definition at line 263 of file helike_cs.cpp.
References t_phycon::alogte, ASSERT, t_iso::CSTemp, DEBUG_ENTRY, t_iso::HeCS, ipELECTRON, ipHe2p3P0, ipHe2p3P1, ipHe2p3P2, ipHE_LIKE, ipHELIUM, iso, t_iso::lgColl_excite, t_iso::lgColl_l_mixing, t_iso::nCollapsed_max, t_iso::nCS, t_iso::numLevels_max, phycon, StatesElem, and TotalInsanity().
Referenced by HeCSInterp().
Here is the call graph for this function:

| STATIC double collision_strength_VF01 | ( | double | velOrEner, | |
| bool | lgParamIsRedVel | |||
| ) | 
Definition at line 1204 of file helike_cs.cpp.
References ASSERT, ATOMIC_MASS_UNIT, t_dense::AtomicWeight, BOHR_RADIUS_CM, BOLTZMANN, ColliderCharge, ColliderMass, cross_section(), DEBUG_ENTRY, dense, t_dense::eden, ELEM_CHARGE_ESU, EN1RYD, global_an, global_bmax, global_Collider, global_collider_charge, global_ipISO, global_l, global_l_prime, global_n, global_red_vel, global_s, global_temp, global_z, H_BAR, ipH_LIKE, ipHE_LIKE, iso, L_mix_integrand_VF01(), LIMELM, MAX2, PI, PI2, POW2, POW3, PROTON_MASS, qg32(), t_iso::QuantumNumbers2Index, SMALLFLOAT, StatesElem, TotalInsanity(), and t_iso::xIsoLevNIonRyd.
Referenced by CS_l_mixing_VF01(), and Therm_ave_coll_str_int_VF01().
Here is the call graph for this function:

| double CS_l_mixing_PS64 | ( | long | ipISO, | |
| long | nelem, | |||
| long | ipLo, | |||
| long | ipHi, | |||
| long | Collider | |||
| ) | 
Definition at line 1025 of file helike_cs.cpp.
References ASSERT, ATOMIC_MASS_UNIT, t_dense::AtomicWeight, BIGDOUBLE, COLL_CONST, ColliderCharge, ColliderMass, DEBUG_ENTRY, dense, t_dense::eden, ELECTRON_MASS, ipH1s, ipH_LIKE, MIN2, phycon, POW2, SMALLFLOAT, t_phycon::sqrte, StatesElem, t_phycon::te, and Transitions.
Referenced by HydroCSInterp(), and IonCSInterp().
| double CS_l_mixing_S62 | ( | long | ipISO, | |
| long | nelem, | |||
| long | ipLo, | |||
| long | ipHi, | |||
| double | temp, | |||
| long | Collider | |||
| ) | 
Definition at line 868 of file helike_cs.cpp.
References ASSERT, DEBUG_ENTRY, EN1EV, EVRYD, global_Collider, global_deltaE, global_I_energy_eV, global_osc_str, global_stat_weight, global_temp, iso, POW2, qg32(), S62_Therm_ave_coll_str(), StatesElem, TRANS_PROB_CONST, Transitions, WAVNRYD, and t_iso::xIsoLevNIonRyd.
Referenced by IonCSInterp().
Here is the call graph for this function:

| double CS_l_mixing_VF01 | ( | long int | ipISO, | |
| long int | nelem, | |||
| long int | n, | |||
| long int | l, | |||
| long int | lp, | |||
| long int | s, | |||
| double | temp, | |||
| long int | Collider | |||
| ) | 
CS_l_mixing_VF01 Collision treatment based on Vrinceanu and Flannery 2001
| ipISO | ||
| nelem | ||
| n | ||
| l | ||
| lp | ||
| s | ||
| temp | ||
| Collider | 
Definition at line 1133 of file helike_cs.cpp.
References ASSERT, ColliderCharge, collision_strength_VF01(), DEBUG_ENTRY, dense, t_dense::eden, global_Collider, global_collider_charge, global_ipISO, global_l, global_l_prime, global_n, global_s, global_temp, global_z, ipH_LIKE, iso, kTRyd, t_iso::lgCS_therm_ave, qg32(), TE1RYD, and Therm_ave_coll_str_int_VF01().
Referenced by HydroCSInterp(), and IonCSInterp().
Here is the call graph for this function:

| void HeCollidSetup | ( | void | ) | 
HeCollidSetup read in helium collision data files
Definition at line 43 of file helike_cs.cpp.
References cdEXIT, chLine_LENGTH, COLLISMAGIC, t_iso::CSTemp, DEBUG_ENTRY, dense, FFmtRead(), HE1CSARRAY, t_iso::HeCS, INPUT_LINE_LENGTH, ioQQQ, ipHe1s1S, ipHe2s3S, ipHE_LIKE, ipHELIUM, iso, t_dense::lgElmtOn, t_trace::lgTrace, LIMELM, t_iso::nCollapsed_max, t_iso::nCS, NISO, t_iso::numLevels_max, open_data(), read_whole_line(), and trace.
Here is the call graph for this function:

| realnum HeCSInterp | ( | long int | nelem, | |
| long int | ipHi, | |||
| long int | ipLo, | |||
| long int | Collider | |||
| ) | 
HeCSInterp interpolate on He1 collision strengths
| nelem | ||
| ipHi | ||
| ipLo | ||
| Collider | 
Definition at line 198 of file helike_cs.cpp.
References ASSERT, AtomCSInterp(), DEBUG_ENTRY, IonCSInterp(), ioQQQ, IPCOLLIS, ipHE_LIKE, ipHELIUM, ipOXYGEN, iso, iso_put_error(), t_iso::lgColl_excite, t_iso::lgCS_Vriens, MAX2, S, and StatesElem.
Referenced by AGN_He1_CS(), and iso_collide().
Here is the call graph for this function:

| realnum IonCSInterp | ( | long | nelem, | |
| long | ipHi, | |||
| long | ipLo, | |||
| realnum * | factor1, | |||
| const char ** | where, | |||
| long | Collider | |||
| ) | 
Definition at line 598 of file helike_cs.cpp.
References ASSERT, CS_l_mixing_PS64(), CS_l_mixing_S62(), CS_l_mixing_VF01(), CS_VS80(), DEBUG_ENTRY, fixit(), ipELECTRON, ipHe1s1S, ipHe2p3P0, ipHe2p3P1, ipHe2p3P2, ipHe2s1S, ipHe2s3S, ipHE_LIKE, ipHELIUM, iso, t_iso::lgColl_excite, t_iso::lgColl_l_mixing, t_iso::lgCS_Vriens, t_iso::lgCS_Vrinceanu, LIMELM, t_iso::n_HighestResolved_max, phycon, POW2, StatesElem, t_phycon::te, TotalInsanity(), and Transitions.
Referenced by HeCSInterp().
Here is the call graph for this function:

| STATIC double L_mix_integrand_VF01 | ( | double | alpha | ) | 
Definition at line 1358 of file helike_cs.cpp.
References ASSERT, DEBUG_ENTRY, global_an, global_bmax, global_collider_charge, global_l, global_l_prime, global_n, global_red_vel, PI, and StarkCollTransProb_VF01().
Referenced by collision_strength_VF01().
Here is the call graph for this function:

| STATIC double S62_Therm_ave_coll_str | ( | double | EProjectile_eV | ) | 
Definition at line 912 of file helike_cs.cpp.
References ASSERT, bessel_k0(), bessel_k1(), ColliderMass, cross_section(), DEBUG_ENTRY, EVDEGK, EVRYD, global_Collider, global_deltaE, global_I_energy_eV, global_osc_str, global_stat_weight, global_temp, ipELECTRON, phycon, PI, POW2, and t_phycon::te.
Referenced by CS_l_mixing_S62().
Here is the call graph for this function:

| STATIC double StarkCollTransProb_VF01 | ( | long | n, | |
| long | l, | |||
| long | lp, | |||
| double | alpha, | |||
| double | deltaPhi | |||
| ) | 
Definition at line 1385 of file helike_cs.cpp.
References ASSERT, DEBUG_ENTRY, ellpk(), PI, and POW2.
Here is the call graph for this function:

| STATIC double StarkCollTransProb_VF01 | ( | long int | n, | |
| long int | l, | |||
| long int | lp, | |||
| double | alpha, | |||
| double | deltaPhi | |||
| ) | 
Referenced by L_mix_integrand_VF01().
| STATIC double Therm_ave_coll_str_int_VF01 | ( | double | EProjectileRyd | ) | 
Definition at line 1193 of file helike_cs.cpp.
References collision_strength_VF01(), DEBUG_ENTRY, and kTRyd.
Referenced by CS_l_mixing_VF01().
Here is the call graph for this function:

double ColliderCharge[4] = {1.0, 1.0, 1.0, 2.0} [static]           | 
        
Definition at line 41 of file helike_cs.cpp.
Referenced by collision_strength_VF01(), CS_l_mixing_PS64(), and CS_l_mixing_VF01().
double ColliderMass[4] = {ELECTRON_MASS/PROTON_MASS, 1.0, 4.0, 4.0} [static]           | 
        
Definition at line 40 of file helike_cs.cpp.
Referenced by collision_strength_VF01(), CS_l_mixing_PS64(), hydro_vs_coll_str(), iso_collide(), and S62_Therm_ave_coll_str().
double global_an [static]           | 
        
Definition at line 35 of file helike_cs.cpp.
Referenced by collision_strength_VF01(), and L_mix_integrand_VF01().
double global_bmax [static]           | 
        
Definition at line 35 of file helike_cs.cpp.
Referenced by collision_strength_VF01(), and L_mix_integrand_VF01().
long int global_Collider [static]           | 
        
Definition at line 34 of file helike_cs.cpp.
Referenced by collision_strength_VF01(), CS_l_mixing_S62(), CS_l_mixing_VF01(), CS_VS80(), hydro_vs_coll_str(), and S62_Therm_ave_coll_str().
double global_collider_charge [static]           | 
        
Definition at line 35 of file helike_cs.cpp.
Referenced by collision_strength_VF01(), CS_l_mixing_VF01(), and L_mix_integrand_VF01().
double global_deltaE [static]           | 
        
Definition at line 36 of file helike_cs.cpp.
Referenced by CS_l_mixing_S62(), CS_PercivalRichards78(), CS_ThermAve_PR78(), and S62_Therm_ave_coll_str().
double global_I_energy_eV [static]           | 
        
Definition at line 36 of file helike_cs.cpp.
Referenced by CS_l_mixing_S62(), and S62_Therm_ave_coll_str().
long int global_ipISO [static]           | 
        
Definition at line 34 of file helike_cs.cpp.
Referenced by collision_strength_VF01(), CS_l_mixing_VF01(), CS_PercivalRichards78(), CS_ThermAve_PR78(), CS_VS80(), and hydro_vs_coll_str().
long int global_l [static]           | 
        
Definition at line 34 of file helike_cs.cpp.
Referenced by collision_strength_VF01(), CS_l_mixing_VF01(), and L_mix_integrand_VF01().
long int global_l_prime [static]           | 
        
Definition at line 34 of file helike_cs.cpp.
Referenced by collision_strength_VF01(), CS_l_mixing_VF01(), and L_mix_integrand_VF01().
long int global_n [static]           | 
        
Definition at line 34 of file helike_cs.cpp.
Referenced by collision_strength_VF01(), CS_l_mixing_VF01(), and L_mix_integrand_VF01().
double global_osc_str [static]           | 
        
Definition at line 36 of file helike_cs.cpp.
Referenced by CS_l_mixing_S62(), and S62_Therm_ave_coll_str().
double global_red_vel [static]           | 
        
Definition at line 35 of file helike_cs.cpp.
Referenced by collision_strength_VF01(), and L_mix_integrand_VF01().
long int global_s [static]           | 
        
Definition at line 34 of file helike_cs.cpp.
Referenced by collision_strength_VF01(), and CS_l_mixing_VF01().
double global_stat_weight [static]           | 
        
Definition at line 36 of file helike_cs.cpp.
Referenced by CS_l_mixing_S62(), and S62_Therm_ave_coll_str().
double global_temp [static]           | 
        
Definition at line 36 of file helike_cs.cpp.
Referenced by collision_strength_VF01(), CS_l_mixing_S62(), CS_l_mixing_VF01(), CS_VS80(), S62_Therm_ave_coll_str(), and Therm_ave_coll_str_int_VS80().
long int global_z [static]           | 
        
Definition at line 34 of file helike_cs.cpp.
Referenced by collision_strength_VF01(), and CS_l_mixing_VF01().
double kTRyd [static]           | 
        
Definition at line 37 of file helike_cs.cpp.
Referenced by CS_l_mixing_VF01(), CS_ThermAve_PR78(), helike_radrecomb_from_cross_section(), hlike_radrecomb_from_cross_section(), RecomInt(), Therm_ave_coll_str_int_PR78(), and Therm_ave_coll_str_int_VF01().
 1.4.7