#include "cddefines.h"
#include "physconst.h"
#include "taulines.h"
#include "dense.h"
#include "trace.h"
#include "hydro_bauman.h"
#include "iso.h"
#include "helike.h"
#include "helike_einsta.h"
#include "hydroeinsta.h"
Go to the source code of this file.
Functions | |
STATIC double | ritoa (long li, long lf, long nelem, double k, double RI2) |
STATIC double | ForbiddenAuls (long ipHi, long ipLo, long nelem) |
STATIC double | Jint (double theta) |
STATIC double | AngerJ (double vv, double zz) |
double | scqdri (double nstar, long int l, double npstar, long int lp, double iz) |
double | he_1trans (long nelem, double Enerwn, double Eff_nupper, long lHi, long sHi, long jHi, double Eff_nlower, long lLo, long sLo, long jLo) |
void | DoFSMixing (long nelem, long ipLoSing, long ipHiSing) |
realnum | helike_transprob (long nelem, long ipHi, long ipLo) |
void | HelikeTransProbSetup (void) |
Variables | |
static double *** | TransProbs |
static double | vJint |
static double | zJint |
STATIC double AngerJ | ( | double | vv, | |
double | zz | |||
) |
Definition at line 58 of file helike_einsta.cpp.
References DEBUG_ENTRY, Jint(), PI, qg32(), vJint, and zJint.
Referenced by scqdri().
void DoFSMixing | ( | long | nelem, | |
long | ipLoSing, | |||
long | ipHiSing | |||
) |
Every bit of this routine is based upon the singlet-triplet mixing formalism given in >>refer He FSM Drake, G. W. F. 1996, in Atomic, Molecular, & Optical Physics Handbook, >>refercon ed. G. W. F. Drake (New York: AIP Press). That formalism mixes the levels themselves, but since this code is not J-resolved, we simulate that by mixing only the transition probabilities. We find results comparable to those calculated in the fully J-resolved model spearheaded by Rob Bauman, and described in >>refer He FSM Bauman, R. P., Porter, R. L., Ferland, G. J., & MacAdam, K. B. 2005, ApJ, accepted
nelem | ||
ipLoSing | ||
ipHiSing |
Definition at line 894 of file helike_einsta.cpp.
References ASSERT, EmissionProxy::Aul(), DEBUG_ENTRY, TransitionProxy::Emis(), TransitionProxy::EnergyWN(), g, TransitionProxy::Hi(), ioQQQ, ipHE_LIKE, iso_sp, TransitionProxy::Lo(), PI, POW2, t_iso_sp::QuantumNumbers2Index, t_iso_sp::st, t_iso_sp::trans(), and TRANS_PROB_CONST.
Referenced by iso_create().
STATIC double ForbiddenAuls | ( | long | ipHi, | |
long | ipLo, | |||
long | nelem | |||
) |
Definition at line 221 of file helike_einsta.cpp.
References ASSERT, DEBUG_ENTRY, eina(), TransitionProxy::EnergyWN(), fixit(), ipARGON, ipHe1s1S, ipHe2p1P, ipHe2p3P0, ipHe2p3P1, ipHe2p3P2, ipHe2s1S, ipHe2s3S, ipHe3p1P, ipHe3p3P, ipHe3s1S, ipHe3s3S, ipHE_LIKE, ipHELIUM, ipNEON, IPRAD, iso_ctrl, iso_put_error(), iso_sp, L_, MIN2, N_, pow(), POW2, S_, t_isoCTRL::SmallA, t_iso_sp::st, TotalInsanity(), and t_iso_sp::trans().
Referenced by he_1trans().
double he_1trans | ( | long | nelem, | |
double | Enerwn, | |||
double | Eff_nupper, | |||
long | lHi, | |||
long | sHi, | |||
long | jHi, | |||
double | Eff_nlower, | |||
long | lLo, | |||
long | sLo, | |||
long | jLo | |||
) |
compute energy diffference in wn and Aul for given line return is 0 for success, 1 for failure
nelem | charge on the C scale, 1 is helium | |
Enerwn | energy difference in wavenumber | |
Eff_nupper | upper quantum numbers | |
Eff_nlower | lower quantum numbers | |
lHi | ||
sHi | ||
jHi | ||
lLo | ||
sLo | ||
jLo |
Definition at line 501 of file helike_einsta.cpp.
References ASSERT, DEBUG_ENTRY, ForbiddenAuls(), H_Einstein_A(), ioQQQ, ipHe1s1S, ipHe2p1P, ipHe2p3P0, ipHe2p3P1, ipHe2p3P2, ipHe2s1S, ipHe2s3S, ipHe3s3S, ipHE_LIKE, ipHELIUM, ipHYDROGEN, IPRAD, iso_ctrl, iso_put_error(), iso_sp, MAX2, MAX_TP_INDEX, N_, pow(), t_iso_sp::QuantumNumbers2Index, ritoa(), RYD_INF, S, scqdri(), t_isoCTRL::SmallA, TotalInsanity(), TRANS_PROB_CONST, and TransProbs.
Referenced by helike_transprob().
realnum helike_transprob | ( | long | nelem, | |
long | ipHi, | |||
long | ipLo | |||
) |
helike_transprob get transition probability for helium-like transition [s-1]
nelem | ||
ipHi | ||
ipLo |
Definition at line 1059 of file helike_einsta.cpp.
References ASSERT, t_iso_sp::CachedAs, DEBUG_ENTRY, TransitionProxy::EnergyWN(), he_1trans(), helike_quantum_defect(), HydroEinstA(), ipHE_LIKE, IPRAD, iso_put_error(), iso_sp, L_, N_, t_iso_sp::n_HighestResolved_max, POW2, S_, and t_iso_sp::trans().
Referenced by iso_create().
void HelikeTransProbSetup | ( | void | ) |
Definition at line 1132 of file helike_einsta.cpp.
References BadRead(), cdEXIT, chLine_LENGTH, DEBUG_ENTRY, EXIT_FAILURE, FFmtRead(), ioQQQ, ipHe1s1S, ipHELIUM, t_trace::lgTrace, LIMELM, MALLOC, MAX_TP_INDEX, N_HE1_TRANS_PROB, open_data(), read_whole_line(), strchr_s(), trace, TRANSPROBMAGIC, and TransProbs.
Referenced by iso_create().
STATIC double Jint | ( | double | theta | ) |
STATIC double ritoa | ( | long | li, | |
long | lf, | |||
long | nelem, | |||
double | k, | |||
double | RI2 | |||
) |
Definition at line 1027 of file helike_einsta.cpp.
References ATOMIC_MASS_UNIT, t_dense::AtomicWeight, BOHR_RADIUS_CM, DEBUG_ENTRY, dense, ELECTRON_MASS, H_BAR, PI, SPEEDLIGHT, and TRANS_PROB_CONST.
Referenced by he_1trans().
double scqdri | ( | double | nstar, | |
long int | l, | |||
double | npstar, | |||
long int | lp, | |||
double | iz | |||
) |
Definition at line 146 of file helike_einsta.cpp.
References AngerJ(), ASSERT, DEBUG_ENTRY, g, and PI.
Referenced by he_1trans().
double*** TransProbs [static] |
Definition at line 25 of file helike_einsta.cpp.
Referenced by he_1trans(), and HelikeTransProbSetup().
double vJint [static] |
Definition at line 40 of file helike_einsta.cpp.
double zJint [static] |
Definition at line 40 of file helike_einsta.cpp.