|
cloudy
trunk
|
#include "cddefines.h"#include "dense.h"#include "trace.h"#include "hydro_bauman.h"#include "iso.h"#include "helike.h"#include "helike_einsta.h"#include "freebound.h"#include "lines_service.h"#include "integrate.h"
Go to the source code of this file.
Functions | |
| STATIC double | helike_transprob_collapsed_to_collapsed (long nelem, long nHi, long nLo, double Enerwn) |
| STATIC double | helike_transprob_collapsed_to_resolved (long nelem, long nHi, long nLo, long lLo, long sLo, long jLo, double Enerwn) |
| 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_mac (double vv, double zz) |
| STATIC double | bessjnu (double vv, double zz) |
| STATIC double | AngerJ_asymp (double vv, double zz) |
| STATIC double | AngerJ (double vv, double zz) |
| STATIC 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, realnum *error1, realnum *error2) |
| 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 127 of file helike_einsta.cpp.
References DEBUG_ENTRY, Jint(), qg32(), vJint, and zJint.
Referenced by scqdri().

| STATIC double AngerJ_asymp | ( | double | vv, |
| double | zz | ||
| ) |
Definition at line 108 of file helike_einsta.cpp.
References bessjnu().
Referenced by scqdri().

| STATIC double AngerJ_mac | ( | double | vv, |
| double | zz | ||
| ) |
Definition at line 60 of file helike_einsta.cpp.
Referenced by scqdri().
| STATIC double bessjnu | ( | double | vv, |
| double | zz | ||
| ) |
Definition at line 90 of file helike_einsta.cpp.
Referenced by AngerJ_asymp().
| 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 1097 of file helike_einsta.cpp.
References TransitionProxy::AddLine2Stack(), ASSERT, EmissionProxy::Aul(), DEBUG_ENTRY, TransitionProxy::Emis(), TransitionProxy::EnergyWN(), fprintf(), TransitionProxy::Hi(), ioQQQ, ipHE_LIKE, iso_setOpacity(), iso_setRedisFun(), iso_sp, TransitionProxy::Lo(), POW2, t_iso_sp::QuantumNumbers2Index, t_iso_sp::st, and t_iso_sp::trans().
Referenced by iso_create().

| STATIC double ForbiddenAuls | ( | long | ipHi, |
| long | ipLo, | ||
| long | nelem | ||
| ) |
Definition at line 304 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_, POW2, pow3(), 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, | ||
| realnum * | error1, | ||
| realnum * | error2 | ||
| ) |
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 | |
| *error1 | |
| *error2 |
Definition at line 584 of file helike_einsta.cpp.
References ASSERT, DEBUG_ENTRY, ForbiddenAuls(), fprintf(), H_Einstein_A(), t_iso_sp::IndexIfAllResolved, ioQQQ, ipHE_LIKE, ipHELIUM, ipHYDROGEN, iso_ctrl, iso_sp, MAX2, MAX_TP_INDEX, pow3(), pow4(), powpq(), t_iso_sp::QuantumNumbers2Index, ritoa(), S, scqdri(), t_isoCTRL::SmallA, TotalInsanity(), and TransProbs.
Referenced by helike_transprob(), and helike_transprob_collapsed_to_resolved().

| 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 1283 of file helike_einsta.cpp.
References ASSERT, DEBUG_ENTRY, TransitionProxy::EnergyWN(), he_1trans(), helike_quantum_defect(), helike_transprob_collapsed_to_collapsed(), helike_transprob_collapsed_to_resolved(), ipHE_LIKE, IPRAD, iso_put_error(), iso_sp, J_, L_, N_, S_, and t_iso_sp::trans().
Referenced by iso_create().

| STATIC double helike_transprob_collapsed_to_collapsed | ( | long | nelem, |
| long | nHi, | ||
| long | nLo, | ||
| double | Enerwn | ||
| ) |
Definition at line 1029 of file helike_einsta.cpp.
References ASSERT, DEBUG_ENTRY, and helike_transprob_collapsed_to_resolved().
Referenced by helike_transprob().

| STATIC double helike_transprob_collapsed_to_resolved | ( | long | nelem, |
| long | nHi, | ||
| long | nLo, | ||
| long | lLo, | ||
| long | sLo, | ||
| long | jLo, | ||
| double | Enerwn | ||
| ) |
Definition at line 1047 of file helike_einsta.cpp.
References ASSERT, t_iso_sp::CachedAs, DEBUG_ENTRY, he_1trans(), helike_quantum_defect(), t_iso_sp::IndexIfAllResolved, ipHE_LIKE, iso_sp, t_iso_sp::n_HighestResolved_max, and t_iso_sp::nCollapsed_max.
Referenced by helike_transprob(), and helike_transprob_collapsed_to_collapsed().

| void HelikeTransProbSetup | ( | void | ) |
Definition at line 1333 of file helike_einsta.cpp.
References BadRead(), cdEXIT, chLine_LENGTH, DEBUG_ENTRY, EXIT_FAILURE, FFmtRead(), fprintf(), 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 | ) |
Definition at line 46 of file helike_einsta.cpp.
Referenced by AngerJ().
| STATIC double ritoa | ( | long | li, |
| long | lf, | ||
| long | nelem, | ||
| double | k, | ||
| double | RI2 | ||
| ) |
Definition at line 1251 of file helike_einsta.cpp.
References t_dense::AtomicWeight, DEBUG_ENTRY, dense, and max().
Referenced by he_1trans().

| STATIC double scqdri | ( | double | nstar, |
| long int | l, | ||
| double | npstar, | ||
| long int | lp, | ||
| double | iz | ||
| ) |
Definition at line 215 of file helike_einsta.cpp.
References AngerJ(), AngerJ_asymp(), AngerJ_mac(), ASSERT, and DEBUG_ENTRY.
Referenced by he_1trans().

|
static |
Definition at line 25 of file helike_einsta.cpp.
Referenced by he_1trans(), and HelikeTransProbSetup().
|
static |
Definition at line 43 of file helike_einsta.cpp.
|
static |
Definition at line 43 of file helike_einsta.cpp.
1.8.5