/home66/gary/public_html/cloudy/c13_branch/source/rt_escprob.cpp File Reference

#include "cddefines.h"
#include "physconst.h"
#include "dense.h"
#include "conv.h"
#include "rfield.h"
#include "opacity.h"
#include "lines_service.h"
#include "taulines.h"
#include "doppvel.h"
#include "pressure.h"
#include "wind.h"
#include "rt.h"
#include "iso.h"
#include "thirdparty.h"
Include dependency graph for rt_escprob.cpp:

Go to the source code of this file.

Data Structures

class  my_Integrand_escConE2
class  my_Integrand_conrec
class  k2DampArg

Functions

double tau_from_here (double tau_tot, double tau_in)
STATIC double escmase (double tau)
STATIC void RTesc_lya_1side (double taume, double beta, realnum *esc, realnum *dest, long ipLine)
double esc_PRD_1side (double tau, double a)
template<class F >
double trapezium (realnum xmin, realnum xmax, const F func)
double esc_CRDwing_1side (double tau, double a)
double RTesc_lya (double *esin, double *dest, double abund, const TransitionProxy &t, realnum DopplerWidth)
double esc_PRD (double tau, double tau_out, double damp)
double esc_CRDwing (double tau_in, double tau_out, double damp)
double esc_CRDcore (double tau_in, double tau_out)
double esca0k2 (double taume)
STATIC void FindNeg (void)
double esccon (double tau, double hnukt)
double RT_DestProb (double abund, double crsec, long int ipanu, double widl, double escp, int nCore)
double RT_LineWidth (const TransitionProxy &t, realnum DopplerWidth)
double RT_DestHummer (double beta)

Function Documentation

double esc_CRDcore ( double  tau,
double  tout 
)

esc_CRDcore escape probability CRD with no wings, for subordinate lines

Parameters:
tau 
tout 

Definition at line 445 of file rt_escprob.cpp.

References ASSERT, DEBUG_ENTRY, esca0k2(), t_rt::fracin, iteration, MIN2, rt, tau_from_here(), t_rt::wayin, and t_rt::wayout.

Referenced by RT_line_escape().

Here is the call graph for this function:

double esc_CRDwing ( double  tau,
double  tout,
double  damp 
)

esc_CRDwing escape probability CRD with wings, for subordinate lines

Parameters:
tau 
tout 
damp 

Definition at line 399 of file rt_escprob.cpp.

References ASSERT, DEBUG_ENTRY, esc_CRDwing_1side(), t_rt::fracin, iteration, MIN2, rt, tau_from_here(), t_rt::wayin, and t_rt::wayout.

Referenced by RT_line_escape().

Here is the call graph for this function:

double esc_CRDwing_1side ( double  tau,
double  a 
)

esc_CRDwing_1side fundamental escape probability radiative transfer routine, for complete redistribution

Definition at line 221 of file rt_escprob.cpp.

References DEBUG_ENTRY, esca0k2(), ioQQQ, POW2, SQRTPI, Integrator< Integrand, Method >::sum(), and trapezium().

Referenced by DrvEscP(), esc_CRDwing(), and RT_continuum_shield_fcn().

Here is the call graph for this function:

double esc_PRD ( double  tau,
double  tout,
double  damp 
)

esc_PRD escape probability radiative transfer for incomplete redistribution

Parameters:
tau 
tout 
damp 

Definition at line 363 of file rt_escprob.cpp.

References ASSERT, DEBUG_ENTRY, esc_PRD_1side(), t_rt::fracin, iteration, rt, tau_from_here(), t_rt::wayin, and t_rt::wayout.

Referenced by RT_line_escape().

Here is the call graph for this function:

double esc_PRD_1side ( double  tau,
double  a 
)

esc_PRD_1side fundamental escape probability radiative transfer routine for incomplete redistribution

Parameters:
tau 
a 

Definition at line 97 of file rt_escprob.cpp.

References ASSERT, DEBUG_ENTRY, escmase(), MIN2, pow(), and rt.

Referenced by DrvEscP(), esc_PRD(), mole_h_reactions(), RT_continuum_shield_fcn(), and RT_LineWidth().

Here is the call graph for this function:

double esca0k2 ( double  taume  ) 

esca0k2 derive Hummer's K2 escape probability for Doppler core only

Parameters:
taume 

Definition at line 490 of file rt_escprob.cpp.

References DEBUG_ENTRY, escmase(), and SQRTPI.

Referenced by DrvEscP(), esc_CRDcore(), esc_CRDwing_1side(), and RT_continuum_shield_fcn().

Here is the call graph for this function:

double esccon ( double  tau,
double  hnukt 
)

escpcn continuum escape probability

Parameters:
tau 
hnukt 

Definition at line 628 of file rt_escprob.cpp.

References my_Integrand_escConE2::chnukt_ContTkt, my_Integrand_conrec::chnukt_ContTkt, my_Integrand_escConE2::chnukt_ctau, DEBUG_ENTRY, and Integrator< Integrand, Method >::sum().

Referenced by RT_recom_effic().

Here is the call graph for this function:

STATIC double escmase ( double  tau  ) 

Definition at line 596 of file rt_escprob.cpp.

References ASSERT, cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, FindNeg(), ioQQQ, nzone, and ShowMe().

Referenced by esc_PRD_1side(), and esca0k2().

Here is the call graph for this function:

STATIC void FindNeg ( void   ) 

Definition at line 548 of file rt_escprob.cpp.

References dBaseTrans, DEBUG_ENTRY, DumpLine(), HFLines, nHFLines, NISO, nLevel1, nSpecies, nWindLine, TauLine2, and TauLines.

Referenced by escmase().

Here is the call graph for this function:

double RT_DestHummer ( double  beta  ) 
Parameters:
beta beta is ratio of continuum to mean line opacity,
Returns:
dest prob = beta F(beta)

Definition at line 1039 of file rt_escprob.cpp.

References ASSERT, and DEBUG_ENTRY.

double RT_DestProb ( double  abund,
double  crsec,
long int  ipanu,
double  widl,
double  escp,
int  nCore 
)

RT_DestProb returns line destruction probability due to continuum opacity

Parameters:
abund abundance of species
crsec its line absorption cross section
ipanu pointer to energy within continuum array, to get background opacity, this is on the f not c scale
widl line width
escp escape probability
nCore type of redistribution function

Todo:
2 this min is because there are no calculations that show what to do for beta beyound this value

Definition at line 774 of file rt_escprob.cpp.

References t_opac::albedo, t_rfield::anu, ASSERT, cdEXIT, conv, DEBUG_ENTRY, EXIT_FAILURE, fp_equal(), ioQQQ, ipDEST_INCOM, ipDEST_K2, ipDEST_SIMPL, ipH1s, ipH2p, ipH_LIKE, ipHYDROGEN, iso_sp, MIN2, t_rfield::nflux, t_conv::nTotalIoniz, nzone, opac, t_opac::opacity_abs, POW2, rfield, and SQRTPI.

Referenced by RT_line_escape().

Here is the call graph for this function:

double RT_LineWidth ( const TransitionProxy t,
realnum  DopplerWidth 
)

RT_LineWidth compute line width (cm/sec), using optical depth array information

Parameters:
t 
DopplerWidth 

Todo:
1 dynamics; this test assumes that neg vel are subsonic, so that sobolev length would overestimate the optical depth, since ion is at most present over computed slab, and possibly more.
Todo:
1 rewrite so that this checks on size not sign of windv

Definition at line 918 of file rt_escprob.cpp.

References ASSERT, EmissionProxy::damp(), EmissionProxy::dampXvel(), DEBUG_ENTRY, dense, t_dense::eden, TransitionProxy::Emis(), esc_PRD_1side(), iteration, Wind::lgBallistic(), t_pressure::lgPradDen, MAX2, MIN2, opac, EmissionProxy::Pdest(), EmissionProxy::Pelec_esc(), PI, pow(), pressure, EmissionProxy::TauIn(), t_opac::taumin, EmissionProxy::TauTot(), wind, and Wind::windv0.

Referenced by FeIIRadPress(), PressureRadiationLine(), and PresTotCurrent().

Here is the call graph for this function:

double RTesc_lya ( double *  esin,
double *  dest,
double  abund,
const TransitionProxy t,
realnum  DopplerWidth 
)

RTesc_lya escape prob for hydrogen atom Lya, using Hummer and Kunasz results

Parameters:
*esin 
*dest 
abund 
t line structure
DopplerWidth 

Definition at line 271 of file rt_escprob.cpp.

References ASSERT, DEBUG_ENTRY, TransitionProxy::Emis(), t_rt::fracin, EmissionProxy::FracInwd(), TransitionProxy::ipCont(), MAX2, MIN2, opac, EmissionProxy::opacity(), t_opac::opacity_abs, EmissionProxy::Pdest(), EmissionProxy::Pesc(), rt, RTesc_lya_1side(), SQRTPI, EmissionProxy::TauIn(), EmissionProxy::TauTot(), t_rt::wayin, and t_rt::wayout.

Referenced by RT_line_escape().

Here is the call graph for this function:

STATIC void RTesc_lya_1side ( double  taume,
double  beta,
realnum esc,
realnum dest,
long  ipLine 
)

Definition at line 676 of file rt_escprob.cpp.

References t_opac::albedo, DEBUG_ENTRY, DEST0, ioQQQ, MAX2, MIN2, opac, pow(), POW2, and SQRTPI.

Referenced by RTesc_lya().

Here is the call graph for this function:

double tau_from_here ( double  tau_tot,
double  tau_in 
) [inline]

Definition at line 28 of file rt_escprob.cpp.

Referenced by esc_CRDcore(), esc_CRDwing(), and esc_PRD().

template<class F >
double trapezium ( realnum  xmin,
realnum  xmax,
const F  func 
) [inline]

Definition at line 174 of file rt_escprob.cpp.

Referenced by esc_CRDwing_1side().

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 15 Nov 2012 for cloudy by  doxygen 1.6.1