cloudy  trunk
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Macros | Functions
helike_einsta.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define N_HE1_TRANS_PROB   651
 
#define MAX_TP_INDEX   110
 

Functions

void HelikeTransProbSetup (void)
 
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)
 

Macro Definition Documentation

#define MAX_TP_INDEX   110

Definition at line 9 of file helike_einsta.h.

Referenced by he_1trans(), and HelikeTransProbSetup().

#define N_HE1_TRANS_PROB   651

Definition at line 7 of file helike_einsta.h.

Referenced by HelikeTransProbSetup().

Function Documentation

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

Parameters
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().

Here is the call graph for this function:

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

Parameters
nelemcharge on the C scale, 1 is helium
Enerwnenergy difference in wavenumber
Eff_nupperupper quantum numbers
Eff_nlowerlower 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().

Here is the call graph for this function:

void HelikeTransProbSetup ( void  )
Todo:
2 this test is out of place, where should it go?

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().

Here is the call graph for this function: