cloudy  trunk
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Functions | Variables
helike_einsta.cpp File Reference
#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"
Include dependency graph for helike_einsta.cpp:

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
 

Function Documentation

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

Here is the call graph for this function:

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 821 of file helike_einsta.cpp.

References ASSERT, DEBUG_ENTRY, ioQQQ, ipHE_LIKE, iso, PI, POW2, t_iso::QuantumNumbers2Index, StatesElem, TRANS_PROB_CONST, and Transitions.

Referenced by iso_create().

STATIC double ForbiddenAuls ( long  ipHi,
long  ipLo,
long  nelem 
)
Todo:
2 find a transition probability for this 2^3P0 - 2^3P1 transition. It will require a bit of trickery to insert into the rate matrix, because of the fact that the lower level has a higher index. See discussion "Energy order within 2 3P" near the top of helike.c
Todo:
2 find a transition probability for this 2^3P1 - 2^3P2 transition. It will require a bit of trickery to insert into the rate matrix, because of the fact that the lower level has a higher index. See discussion "Energy order within 2 3P" near the top of helike.c

Definition at line 221 of file helike_einsta.cpp.

References ASSERT, DEBUG_ENTRY, fixit(), ipARGON, ipHe1s1S, ipHe2p1P, ipHe2p3P0, ipHe2p3P2, ipHe2s3S, ipHe3s3S, ipHE_LIKE, ipHELIUM, ipNEON, IPRAD, iso, iso_put_error(), L_, N_, S_, t_iso::SmallA, and TotalInsanity().

Referenced by he_1trans().

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

Definition at line 417 of file helike_einsta.cpp.

References ASSERT, DEBUG_ENTRY, ForbiddenAuls(), H_Einstein_A(), ioQQQ, ipHe1s1S, ipHe2p1P, ipHe2p3P0, ipHe2p3P1, ipHe2p3P2, ipHe2s1S, ipHe2s3S, ipHe3s3S, ipHe4s3S, ipHE_LIKE, ipHELIUM, ipHYDROGEN, IPRAD, iso, iso_put_error(), MAX2, MAX_TP_INDEX, N_, t_iso::n_HighestResolved_max, t_iso::nCollapsed_max, t_iso::numLevels_max, t_iso::QuantumNumbers2Index, ritoa(), RYD_INF, S, scqdri(), t_iso::SmallA, StatesElem, TotalInsanity(), TRANS_PROB_CONST, TransProbs, and t_iso::xIsoLevNIonRyd.

Referenced by helike_transprob().

Here is the call graph for this function:

realnum helike_transprob ( long  nelem,
long  ipHi,
long  ipLo 
)

helike_transprob get transition probability for helium-like transition [s-1]

Parameters
nelem
ipHi
ipLo

Definition at line 986 of file helike_einsta.cpp.

References ASSERT, t_iso::CachedAs, DEBUG_ENTRY, he_1trans(), helike_quantum_defect(), HydroEinstA(), ipHE_LIKE, IPRAD, iso, iso_put_error(), L_, N_, t_iso::n_HighestResolved_max, t_iso::nCollapsed_max, t_iso::numLevels_max, POW2, S_, and Transitions.

Referenced by iso_create().

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 1059 of file helike_einsta.cpp.

References BadRead(), cdEXIT, chLine_LENGTH, DEBUG_ENTRY, FFmtRead(), INPUT_LINE_LENGTH, ioQQQ, ipHe1s1S, ipHELIUM, t_trace::lgTrace, LIMELM, MALLOC, MAX_TP_INDEX, N_HE1_TRANS_PROB, open_data(), read_whole_line(), trace, TRANSPROBMAGIC, and TransProbs.

Referenced by iso_create().

Here is the call graph for this function:

STATIC double Jint ( double  theta)

Definition at line 43 of file helike_einsta.cpp.

References PI, vJint, and zJint.

Referenced by AngerJ().

STATIC double ritoa ( long  li,
long  lf,
long  nelem,
double  k,
double  RI2 
)
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, and PI.

Referenced by he_1trans().

Here is the call graph for this function:

Variable Documentation

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.

Referenced by AngerJ(), and Jint().

double zJint
static

Definition at line 40 of file helike_einsta.cpp.

Referenced by AngerJ(), and Jint().


Generated for cloudy by doxygen 1.8.4