cloudy trunk
|
#include "cddefines.h"
#include "continuum.h"
#include "thirdparty.h"
#include "elementnames.h"
#include "physconst.h"
#include "dense.h"
#include "called.h"
#include "version.h"
#include "grainvar.h"
#include "rfield.h"
#include "atmdat.h"
#include "grains.h"
Go to the source code of this file.
Data Structures | |
class | sd_data |
class | grain_data |
Enumerations | |
enum | rfi_type { RFI_TABLE , OPC_TABLE , OPC_GREY , OPC_PAH1 , OPC_PAH2N , OPC_PAH2C , OPC_PAH3N , OPC_PAH3C } |
enum | emt_type { FARAFONOV00 , STOGNIENKO95 , BRUGGEMAN35 } |
enum | sd_type { SD_ILLEGAL , SD_SINGLE_SIZE , SD_POWERLAW , SD_EXP_CUTOFF1 , SD_EXP_CUTOFF2 , SD_EXP_CUTOFF3 , SD_LOG_NORMAL , SD_LIN_NORMAL , SD_TABLE , SD_NR_CARBON } |
Functions | |
STATIC void | mie_auxiliary (sd_data *, const grain_data *, const char *) |
STATIC bool | mie_auxiliary2 (vector< int > &, multi_arr< double, 2 > &, multi_arr< double, 2 > &, multi_arr< double, 2 > &, long, long) |
STATIC void | mie_integrate (sd_data *, double, double, double *) |
STATIC void | mie_cs_size_distr (double, sd_data *, const grain_data *, void(*)(double, const sd_data *, const grain_data *, double *, double *, double *, int *), double *, double *, double *, int *) |
STATIC void | mie_cs (double, const sd_data *, const grain_data *, double *, double *, double *, int *) |
STATIC void | ld01_fun (void(*)(double, const sd_data *, const grain_data[], double *, double *, double *, int *), double, double, double, const sd_data *, const grain_data[], double *, double *, double *, int *) |
void | car1_fun (double, const sd_data *, const grain_data[], double *, double *, double *, int *) |
STATIC void | pah1_fun (double, const sd_data *, const grain_data *, double *, double *, double *, int *) |
void | car2_fun (double, const sd_data *, const grain_data[], double *, double *, double *, int *) |
STATIC void | pah2_fun (double, const sd_data *, const grain_data *, double *, double *, double *, int *) |
void | car3_fun (double, const sd_data *, const grain_data[], double *, double *, double *, int *) |
STATIC void | pah3_fun (double, const sd_data *, const grain_data *, double *, double *, double *, int *) |
double | Drude (double, double, double, double) |
STATIC void | tbl_fun (double, const sd_data *, const grain_data *, double *, double *, double *, int *) |
STATIC double | size_distr (double, const sd_data *) |
STATIC double | search_limit (double, double, double, sd_data) |
STATIC void | mie_calc_ial (const grain_data *, long, vector< double > &, const char *, bool *) |
STATIC void | mie_repair (const char *, long, int, int, const double[], double[], vector< int > &, bool, bool *) |
STATIC double | mie_find_slope (const double[], const double[], const vector< int > &, long, long, int, bool, bool *) |
STATIC void | mie_read_rfi (const char *, grain_data *) |
STATIC void | mie_read_mix (const char *, grain_data *) |
STATIC void | init_eps (double, long, const vector< grain_data > &, vector< complex< double > > &) |
STATIC complex< double > | cnewton (void(*)(complex< double >, const vector< double > &, const vector< complex< double > > &, long, complex< double > *, double *, double *), const vector< double > &, const vector< complex< double > > &, long, complex< double >, double) |
STATIC void | Stognienko (complex< double >, const vector< double > &, const vector< complex< double > > &, long, complex< double > *, double *, double *) |
STATIC void | Bruggeman (complex< double >, const vector< double > &, const vector< complex< double > > &, long, complex< double > *, double *, double *) |
STATIC void | mie_read_szd (const char *, sd_data *) |
STATIC void | mie_read_long (const char *, const char[], long int *, bool, long int) |
STATIC void | mie_read_realnum (const char *, const char[], realnum *, bool, long int) |
STATIC void | mie_read_double (const char *, const char[], double *, bool, long int) |
STATIC void | mie_read_form (const char *, double[], double *, double *) |
STATIC void | mie_write_form (const double[], char[]) |
STATIC void | mie_read_word (const char[], char[], long, bool) |
STATIC void | mie_next_data (const char *, FILE *, char *, long int *) |
STATIC void | mie_next_line (const char *, FILE *, char *, long int *) |
STATIC void | sinpar (double, double, double, double *, double *, double *, double *, double *, long *) |
STATIC void | anomal (double, double *, double *, double *, double *, double, double) |
STATIC void | bigk (complex< double >, complex< double > *) |
STATIC void | ritodf (double, double, double *, double *) |
STATIC void | dftori (double *, double *, double, double) |
void | mie_write_opc (const char *rfi_file, const char *szd_file, long int nbin) |
void | mie_read_opc (const char *chFile, const GrainPar &gp) |
STATIC void | mie_calc_ial (const grain_data *gd, long int n, vector< double > &invlen, const char *chString, bool *lgWarning) |
STATIC void | mie_repair (const char *chString, long int n, int val, int del, const double anu[], double data[], vector< int > &ErrorIndex, bool lgRound, bool *lgWarning) |
STATIC void | mie_read_form (const char chWord[], double elmAbun[], double *no_atoms, double *mol_weight) |
STATIC void | mie_next_data (const char *chFile, FILE *io, char chLine[], long int *dl) |
STATIC void | mie_next_line (const char *chFile, FILE *io, char chLine[], long int *dl) |
void | gauss_init (long int nn, double xbot, double xtop, const vector< double > &x, const vector< double > &a, vector< double > &rr, vector< double > &ww) |
void | gauss_legendre (long int nn, vector< double > &x, vector< double > &a) |
void | find_arr (double x, const vector< double > &xa, long int n, long int *ind, bool *lgOutOfBounds) |
STATIC void | sinpar (double nre, double nim, double x, double *qext, double *qphase, double *qscat, double *ctbrqs, double *qback, long int *iflag) |
Variables | |
static const long | MAGIC_RFI = 1030103L |
static const long | MAGIC_SZD = 2010403L |
static const long | MAGIC_OPC = 3100827L |
static const long | MAGIC_MIX = 4030103L |
static const double | SMALLEST_GRAIN = 0.0001*(1.-10.*DBL_EPSILON) |
static const double | LARGEST_GRAIN = 10.*(1.+10.*DBL_EPSILON) |
static const int | NSD = 7 |
static const int | ipSize = 0 |
static const int | ipBLo = 0 |
static const int | ipBHi = 1 |
static const int | ipExp = 2 |
static const int | ipBeta = 3 |
static const int | ipSLo = 4 |
static const int | ipSHi = 5 |
static const int | ipAlpha = 6 |
static const int | ipGCen = 2 |
static const int | ipGSig = 3 |
static const int | NAX = 3 |
static const int | NDAT = 4 |
static const int | WORDLEN = 5 |
static const int | LABELSUB1 = 3 |
static const int | LABELSUB2 = 5 |
static const int | LABELSIZE = LABELSUB1 + LABELSUB2 + 4 |
static const long | MIX_TABLE_SIZE = 2000L |
static const double | pah1_strength [7] = { 1.4e-21,1.8e-21,1.2e-20,6.0e-21,4.0e-20,1.9e-20,1.9e-20 } |
static const double | pah1_wlBand [7] = { 3.3, 6.18, 7.7, 8.6, 11.3, 12.0, 13.3 } |
static const double | pah1_width [7] = { 0.024, 0.102, 0.24, 0.168, 0.086, 0.174, 0.174 } |
static const double | pah2_wavl [14] |
static const double | pah2_width [14] |
static const double | pah2n_strength [14] |
static const double | pah2c_strength [14] |
static const double | pah3_wavl [30] |
static const double | pah3_width [30] |
static const double | pah3n_strength [30] |
static const double | pah3c_strength [30] |
static const bool | pah3_hoc [30] |
const int | NPTS_DERIV = 8 |
const int | NPTS_COMB = NPTS_DERIV*(NPTS_DERIV-1)/2 |
static int | NMXLIM = 16000 |
enum emt_type |
Enumerator | |
---|---|
FARAFONOV00 | |
STOGNIENKO95 | |
BRUGGEMAN35 |
Definition at line 76 of file grains_mie.cpp.
enum rfi_type |
Enumerator | |
---|---|
RFI_TABLE | |
OPC_TABLE | |
OPC_GREY | |
OPC_PAH1 | |
OPC_PAH2N | |
OPC_PAH2C | |
OPC_PAH3N | |
OPC_PAH3C |
Definition at line 71 of file grains_mie.cpp.
enum sd_type |
Enumerator | |
---|---|
SD_ILLEGAL | |
SD_SINGLE_SIZE | |
SD_POWERLAW | |
SD_EXP_CUTOFF1 | |
SD_EXP_CUTOFF2 | |
SD_EXP_CUTOFF3 | |
SD_LOG_NORMAL | |
SD_LIN_NORMAL | |
SD_TABLE | |
SD_NR_CARBON |
Definition at line 81 of file grains_mie.cpp.
STATIC void anomal | ( | double | x, |
double * | qext, | ||
double * | qabs, | ||
double * | qphase, | ||
double * | xistar, | ||
double | delta, | ||
double | beta ) |
Definition at line 4913 of file grains_mie.cpp.
References bigk(), DEBUG_ENTRY, pow2(), and STATIC.
Referenced by mie_cs().
STATIC void bigk | ( | complex< double > | cw, |
complex< double > * | cbigk ) |
Definition at line 4955 of file grains_mie.cpp.
References DEBUG_ENTRY, and STATIC.
Referenced by anomal().
STATIC void Bruggeman | ( | complex< double > | x, |
const vector< double > & | frdelta, | ||
const vector< complex< double > > & | eps, | ||
long | sumAxes, | ||
complex< double > * | f, | ||
double * | dudx, | ||
double * | dudy ) |
Definition at line 3793 of file grains_mie.cpp.
References DEBUG_ENTRY, h2, pow2(), and STATIC.
Referenced by mie_read_mix().
|
inline |
Definition at line 1733 of file grains_mie.cpp.
References ld01_fun(), and pah1_fun().
Referenced by mie_write_opc().
|
inline |
Definition at line 1961 of file grains_mie.cpp.
References ld01_fun(), and pah2_fun().
Referenced by mie_write_opc().
|
inline |
Definition at line 2097 of file grains_mie.cpp.
References ld01_fun(), and pah3_fun().
Referenced by mie_write_opc().
STATIC complex< double > cnewton | ( | void(* | fun )(complex< double >, const vector< double > &, const vector< complex< double > > &, long, complex< double > *, double *, double *), |
const vector< double > & | frdelta, | ||
const vector< complex< double > > & | eps, | ||
long | sumAxes, | ||
complex< double > | x0, | ||
double | tol ) |
Definition at line 3701 of file grains_mie.cpp.
References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, ioQQQ, LOOP_MAX, pow2(), ShowMe(), STATIC, x0, and x1.
Referenced by mie_read_mix().
STATIC void dftori | ( | double * | nr, |
double * | ni, | ||
double | eps1, | ||
double | eps2 ) |
Definition at line 4995 of file grains_mie.cpp.
References ASSERT, DEBUG_ENTRY, and STATIC.
Referenced by mie_read_mix(), and mie_read_rfi().
|
inline |
Definition at line 2231 of file grains_mie.cpp.
Referenced by pah2_fun(), and pah3_fun().
void find_arr | ( | double | x, |
const vector< double > & | xa, | ||
long int | n, | ||
long int * | ind, | ||
bool * | lgOutOfBounds ) |
find index ind such that min(xa[ind],xa[ind+1]) <= x <= max(xa[ind],xa[ind+1]). xa is assumed to be strictly monotically increasing or decreasing. if x is outside the range spanned by xa, lgOutOfBounds is raised and ind is set to -1 n is the number of elements in xa.
x | ||
xa[] | ||
n | ||
[out] | *ind | |
[out] | *lgOutOfBounds |
Definition at line 4563 of file grains_mie.cpp.
References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, ioQQQ, max(), min(), and sign3().
Referenced by init_eps(), mie_calc_ial(), mie_cs(), size_distr(), and tbl_fun().
void gauss_init | ( | long int | nn, |
double | xbot, | ||
double | xtop, | ||
const vector< double > & | x, | ||
const vector< double > & | a, | ||
vector< double > & | rr, | ||
vector< double > & | ww ) |
set up Gaussian quadrature for arbitrary interval
nn | |
xbot | |
xtop | |
x[] | |
a[] | |
rr[] | |
ww[] |
Definition at line 4425 of file grains_mie.cpp.
References DEBUG_ENTRY.
Referenced by DebyeDeriv(), and mie_integrate().
void gauss_legendre | ( | long int | nn, |
vector< double > & | x, | ||
vector< double > & | a ) |
set up abscissas and weights for Gauss-Legendre intergration of arbitrary even order
nn | |
x[] | |
a[] |
Definition at line 4453 of file grains_mie.cpp.
References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, ioQQQ, pow2(), and SAFETY.
Referenced by DebyeDeriv(), and mie_integrate().
STATIC void init_eps | ( | double | wavlen, |
long | nMaterial, | ||
const vector< grain_data > & | gdArr, | ||
vector< complex< double > > & | eps ) |
Definition at line 3657 of file grains_mie.cpp.
References ASSERT, DEBUG_ENTRY, find_arr(), ritodf(), and STATIC.
Referenced by mie_read_mix().
STATIC void ld01_fun | ( | void(* | pah_fun )(double, const sd_data *, const grain_data[], double *, double *, double *, int *), |
double | q_gra, | ||
double | wmin, | ||
double | wavl, | ||
const sd_data * | sd, | ||
const grain_data | gdArr[], | ||
double * | cs_abs, | ||
double * | cs_sct, | ||
double * | cosb, | ||
int * | error ) |
Definition at line 1694 of file grains_mie.cpp.
References DEBUG_ENTRY, mie_cs(), min(), pow3(), and STATIC.
Referenced by car1_fun(), car2_fun(), and car3_fun().
STATIC void mie_auxiliary | ( | sd_data * | sd, |
const grain_data * | gd, | ||
const char * | auxCase ) |
Definition at line 776 of file grains_mie.cpp.
References sd_data::a, grain_data::abun, sd_data::area, ATOMIC_MASS_UNIT, cdEXIT, sd_data::clim, sd_data::cPart, DEBUG_ENTRY, grain_data::depl, grain_data::elmAbun, EXIT_FAILURE, ioQQQ, ipBHi, ipBLo, ipCARBON, ipSize, sd_data::lgLogScale, sd_data::lim, max(), mie_integrate(), min(), grain_data::mol_weight, sd_data::nCarbon, sd_data::nmul, sd_data::nPart, PI, PI4, pow2(), pow3(), radius, sd_data::radius, grain_data::rho, SD_EXP_CUTOFF1, SD_EXP_CUTOFF2, SD_EXP_CUTOFF3, SD_ILLEGAL, SD_LIN_NORMAL, SD_LOG_NORMAL, SD_NR_CARBON, SD_POWERLAW, SD_SINGLE_SIZE, SD_TABLE, sd_data::sdCase, ShowMe(), STATIC, TOLER, sd_data::unity, sd_data::unity_bin, and sd_data::vol.
Referenced by mie_write_opc().
STATIC bool mie_auxiliary2 | ( | vector< int > & | ErrorIndex, |
multi_arr< double, 2 > & | acs_abs, | ||
multi_arr< double, 2 > & | acs_sct, | ||
multi_arr< double, 2 > & | a1g, | ||
long | p, | ||
long | i ) |
Definition at line 913 of file grains_mie.cpp.
References ASSERT, cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, ioQQQ, min(), ShowMe(), and STATIC.
Referenced by mie_write_opc().
STATIC void mie_calc_ial | ( | const grain_data * | , |
long | , | ||
vector< double > & | , | ||
const char * | , | ||
bool * | ) |
References STATIC.
Referenced by mie_write_opc().
STATIC void mie_calc_ial | ( | const grain_data * | gd, |
long int | n, | ||
vector< double > & | invlen, | ||
const char * | chString, | ||
bool * | lgWarning ) |
Definition at line 2450 of file grains_mie.cpp.
References ASSERT, DEBUG_ENTRY, find_arr(), mie_repair(), grain_data::n, grain_data::nAxes, grain_data::ndata, PI4, RFI_TABLE, rfield, grain_data::rfiType, STATIC, grain_data::wavlen, WAVNRYD, and grain_data::wt.
STATIC void mie_cs | ( | double | wavlen, |
const sd_data * | sd, | ||
const grain_data * | gd, | ||
double * | cs_abs, | ||
double * | cs_sct, | ||
double * | cosb, | ||
int * | error ) |
Definition at line 1563 of file grains_mie.cpp.
References anomal(), ASSERT, grain_data::cAxis, cdEXIT, sd_data::cSize, DEBUG_ENTRY, EXIT_FAILURE, find_arr(), ioQQQ, max(), grain_data::n, grain_data::ndata, grain_data::nr1, PI, pow2(), sinpar(), STATIC, and grain_data::wavlen.
Referenced by ld01_fun(), and mie_write_opc().
STATIC void mie_cs_size_distr | ( | double | wavlen, |
sd_data * | sd, | ||
const grain_data * | gd, | ||
void(* | cs_fun )(double, const sd_data *, const grain_data *, double *, double *, double *, int *), | ||
double * | cs_abs, | ||
double * | cs_sct, | ||
double * | cosb, | ||
int * | error ) |
Definition at line 1460 of file grains_mie.cpp.
References sd_data::a, ASSERT, grain_data::cAxis, cdEXIT, sd_data::cSize, DEBUG_ENTRY, EXIT_FAILURE, g, ioQQQ, ipBHi, ipBLo, ipSize, NAX, grain_data::nAxes, SD_EXP_CUTOFF1, SD_EXP_CUTOFF2, SD_EXP_CUTOFF3, SD_ILLEGAL, SD_LIN_NORMAL, SD_LOG_NORMAL, SD_NR_CARBON, SD_POWERLAW, SD_SINGLE_SIZE, SD_TABLE, sd_data::sdCase, ShowMe(), size_distr(), and STATIC.
Referenced by mie_write_opc().
STATIC double mie_find_slope | ( | const double | anu[], |
const double | data[], | ||
const vector< int > & | ErrorIndex, | ||
long | i1, | ||
long | i2, | ||
int | val, | ||
bool | lgVerbose, | ||
bool * | lgWarning ) |
Definition at line 2669 of file grains_mie.cpp.
References ASSERT, DEBUG_ENTRY, ioQQQ, max(), NPTS_COMB, NPTS_DERIV, pow2(), and STATIC.
Referenced by mie_repair().
Definition at line 960 of file grains_mie.cpp.
References sd_data::aa, sd_data::area, sd_data::clim, DEBUG_ENTRY, gauss_init(), gauss_legendre(), ipBHi, ipBLo, sd_data::lgLogScale, max(), min(), sd_data::nmul, sd_data::nn, PI, pow2(), pow3(), sd_data::radius, sd_data::rr, size_distr(), STATIC, sd_data::vol, sd_data::ww, and sd_data::xx.
Referenced by mie_auxiliary().
STATIC void mie_next_data | ( | const char * | , |
FILE * | , | ||
char * | , | ||
long int * | ) |
References STATIC.
Referenced by mie_read_mix(), mie_read_opc(), mie_read_rfi(), and mie_read_szd().
STATIC void mie_next_data | ( | const char * | chFile, |
FILE * | io, | ||
char | chLine[], | ||
long int * | dl ) |
Definition at line 4365 of file grains_mie.cpp.
References DEBUG_ENTRY, mie_next_line(), STATIC, and strstr_s().
STATIC void mie_next_line | ( | const char * | , |
FILE * | , | ||
char * | , | ||
long int * | ) |
References STATIC.
Referenced by mie_next_data(), and mie_read_opc().
STATIC void mie_next_line | ( | const char * | chFile, |
FILE * | io, | ||
char | chLine[], | ||
long int * | dl ) |
Definition at line 4393 of file grains_mie.cpp.
References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, FILENAME_PATH_LENGTH_2, ioQQQ, read_whole_line(), and STATIC.
STATIC void mie_read_double | ( | const char * | chFile, |
const char | chLine[], | ||
double * | data, | ||
bool | lgZeroIllegal, | ||
long int | dl ) |
Definition at line 4229 of file grains_mie.cpp.
References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, ioQQQ, and STATIC.
Referenced by mie_read_mix(), mie_read_opc(), mie_read_rfi(), and mie_read_szd().
STATIC void mie_read_form | ( | const char * | , |
double | [], | ||
double * | , | ||
double * | ) |
References STATIC.
Referenced by mie_read_rfi().
STATIC void mie_read_form | ( | const char | chWord[], |
double | elmAbun[], | ||
double * | no_atoms, | ||
double * | mol_weight ) |
Definition at line 4252 of file grains_mie.cpp.
References DEBUG_ENTRY, dense, elementnames, ipHYDROGEN, LIMELM, no_atoms(), and STATIC.
STATIC void mie_read_long | ( | const char * | chFile, |
const char | chLine[], | ||
long int * | data, | ||
bool | lgZeroIllegal, | ||
long int | dl ) |
Definition at line 4181 of file grains_mie.cpp.
References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, ioQQQ, and STATIC.
Referenced by mie_read_mix(), mie_read_opc(), mie_read_rfi(), and mie_read_szd().
STATIC void mie_read_mix | ( | const char * | chFile, |
grain_data * | gd ) |
Definition at line 3249 of file grains_mie.cpp.
References a1, a2, grain_data::abun, AS_LOCAL_ONLY, ASSERT, grain_data::atom_weight, grain_data::bandgap, Bruggeman(), BRUGGEMAN35, cdEXIT, cnewton(), DEBUG_ENTRY, grain_data::depl, dftori(), grain_data::elmAbun, EXIT_FAILURE, FARAFONOV00, FILENAME_PATH_LENGTH_2, init_eps(), ioQQQ, LIMELM, grain_data::magic, MAGIC_MIX, grain_data::matType, max(), mie_next_data(), mie_read_double(), mie_read_long(), mie_read_rfi(), mie_read_word(), mie_write_form(), min(), MIX_TABLE_SIZE, grain_data::mol_weight, grain_data::n, grain_data::nAxes, grain_data::ndata, nMatch(), grain_data::nr1, open_data(), RFI_TABLE, grain_data::rfiType, grain_data::rho, ShowMe(), STATIC, Stognienko(), STOGNIENKO95, strchr_s(), grain_data::subl_temp, grain_data::therm_eff, grain_data::wavlen, WORDLEN, grain_data::work, and grain_data::wt.
Referenced by mie_write_opc().
void mie_read_opc | ( | const char * | chFile, |
const GrainPar & | gp ) |
read in the *.opc file with opacities and other relevant information
*chFile | |
gp |
Definition at line 1011 of file grains_mie.cpp.
References AS_DATA_LOCAL, ASSERT, called, cdEXIT, continuum, cpu, DEBUG_ENTRY, dense, GrainPar::dep, ELECTRIC_CONST, EXIT_FAILURE, FILENAME_PATH_LENGTH_2, fp_equal(), gv, ioQQQ, LABELSIZE, GrainPar::lgForbidQHeating, GrainPar::lgGreyGrain, GrainPar::lgRequestQHeating, LIMELM, MAGIC_OPC, mie_next_data(), mie_next_line(), mie_read_double(), mie_read_long(), mie_read_realnum(), mie_read_word(), min(), GrainPar::nDustFunc, NMD5, open_data(), PI4, pow2(), rfield, and strstr_s().
Referenced by ParseAbundances(), and ParseGrain().
STATIC void mie_read_realnum | ( | const char * | chFile, |
const char | chLine[], | ||
realnum * | data, | ||
bool | lgZeroIllegal, | ||
long int | dl ) |
Definition at line 4204 of file grains_mie.cpp.
References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, ioQQQ, and STATIC.
Referenced by mie_read_opc().
STATIC void mie_read_rfi | ( | const char * | chFile, |
grain_data * | gd ) |
Definition at line 2758 of file grains_mie.cpp.
References grain_data::abun, AS_LOCAL_ONLY, ASSERT, grain_data::atom_weight, grain_data::bandgap, cdEXIT, DEBUG_ENTRY, grain_data::depl, dftori(), grain_data::elmAbun, EXIT_FAILURE, FILENAME_PATH_LENGTH_2, ioQQQ, LIMELM, grain_data::magic, MAGIC_RFI, MAT_TOP, grain_data::matType, mie_next_data(), mie_read_double(), mie_read_form(), mie_read_long(), mie_read_word(), min(), grain_data::mol_weight, grain_data::n, NAX, grain_data::nAxes, NDAT, grain_data::ndata, nMatch(), grain_data::nOpcCols, grain_data::nOpcData, grain_data::nr1, OPC_GREY, OPC_PAH1, OPC_PAH2C, OPC_PAH2N, OPC_PAH3C, OPC_PAH3N, OPC_TABLE, grain_data::opcAnu, grain_data::opcData, open_data(), RFI_TABLE, grain_data::rfiType, grain_data::rho, ShowMe(), sign3(), STATIC, grain_data::subl_temp, grain_data::therm_eff, grain_data::wavlen, WORDLEN, grain_data::work, and grain_data::wt.
Referenced by mie_read_mix(), and mie_write_opc().
Definition at line 3826 of file grains_mie.cpp.
References sd_data::a, AS_LOCAL_ONLY, cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, FILENAME_PATH_LENGTH_2, ioQQQ, ipAlpha, ipBeta, ipBHi, ipBLo, ipExp, ipGCen, ipGSig, ipSHi, ipSize, ipSLo, LARGEST_GRAIN, sd_data::lim, sd_data::ln_a, sd_data::ln_a4dNda, sd_data::magic, MAGIC_SZD, mie_next_data(), mie_read_double(), mie_read_long(), mie_read_word(), sd_data::nCarbon, nMatch(), sd_data::npts, open_data(), pow2(), SD_EXP_CUTOFF1, SD_EXP_CUTOFF2, SD_EXP_CUTOFF3, SD_ILLEGAL, SD_LIN_NORMAL, SD_LOG_NORMAL, SD_NR_CARBON, SD_POWERLAW, SD_SINGLE_SIZE, SD_TABLE, sd_data::sdCase, search_limit(), SMALLEST_GRAIN, STATIC, and WORDLEN.
Referenced by mie_write_opc().
Definition at line 4340 of file grains_mie.cpp.
References DEBUG_ENTRY, STATIC, and toupper().
Referenced by mie_read_mix(), mie_read_opc(), mie_read_rfi(), and mie_read_szd().
STATIC void mie_repair | ( | const char * | , |
long | , | ||
int | , | ||
int | , | ||
const double | [], | ||
double | [], | ||
vector< int > & | , | ||
bool | , | ||
bool * | ) |
References STATIC.
Referenced by mie_calc_ial(), and mie_write_opc().
STATIC void mie_repair | ( | const char * | chString, |
long int | n, | ||
int | val, | ||
int | del, | ||
const double | anu[], | ||
double | data[], | ||
vector< int > & | ErrorIndex, | ||
bool | lgRound, | ||
bool * | lgWarning ) |
Definition at line 2517 of file grains_mie.cpp.
References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, ioQQQ, max(), mie_find_slope(), NPTS_DERIV, ShowMe(), and STATIC.
STATIC void mie_write_form | ( | const double | elmAbun[], |
char | chWord[] ) |
Definition at line 4303 of file grains_mie.cpp.
References ASSERT, DEBUG_ENTRY, elementnames, FILENAME_PATH_LENGTH_2, LIMELM, nint(), and STATIC.
Referenced by mie_read_mix().
void mie_write_opc | ( | const char * | rfi_file, |
const char * | szd_file, | ||
long int | nbin ) |
mie_write_opc
[in] | *rfi_file | |
[in] | *szd_file |
Definition at line 272 of file grains_mie.cpp.
References grain_data::abun, sd_data::area, AS_LOCAL_ONLY, grain_data::atom_weight, ATOMIC_MASS_UNIT, grain_data::bandgap, car1_fun(), car2_fun(), car3_fun(), grain_data::cAxis, cdEXIT, grain_data::charge, grain_data::clear(), sd_data::clim, multi_arr< T, d, ALLOC, lgBC >::clone(), continuum, sd_data::cPart, cpu, DEBUG_ENTRY, grain_data::depl, elementnames, grain_data::elmAbun, EXIT_FAILURE, FILENAME_PATH_LENGTH_2, gv, IAL_CAR, IAL_SIL, Singleton< t_version >::Inst(), ioQQQ, ipBHi, ipBLo, LABELSIZE, LABELSUB1, LABELSUB2, sd_data::lgLogScale, sd_data::lim, LIMELM, grain_data::magic, sd_data::magic, MAGIC_OPC, grain_data::matType, max(), mie_auxiliary(), mie_auxiliary2(), mie_calc_ial(), mie_cs(), mie_cs_size_distr(), mie_read_mix(), mie_read_rfi(), mie_read_szd(), mie_repair(), min(), grain_data::mol_weight, grain_data::nAxes, grain_data::norm, sd_data::nPart, OPC_GREY, OPC_PAH1, OPC_PAH2C, OPC_PAH2N, OPC_PAH3C, OPC_PAH3N, OPC_TABLE, open_data(), POW4, radius, sd_data::radius, RFI_TABLE, rfield, grain_data::rfiType, grain_data::rho, SD_NR_CARBON, SD_SINGLE_SIZE, sd_data::sdCase, ShowMe(), size_distr(), strstr_s(), grain_data::subl_temp, tbl_fun(), grain_data::therm_eff, sd_data::unity, sd_data::unity_bin, sd_data::vol, WAVNRYD, grain_data::work, and grain_data::wt.
Referenced by ParseCompile().
STATIC void pah1_fun | ( | double | wavl, |
const sd_data * | sd, | ||
const grain_data * | gd, | ||
double * | cs_abs, | ||
double * | cs_sct, | ||
double * | cosb, | ||
int * | error ) |
Definition at line 1754 of file grains_mie.cpp.
References ATOMIC_MASS_UNIT, sd_data::cSize, DEBUG_ENTRY, dense, EVRYD, Singleton< t_ADfA >::Inst(), ipCARBON, ipHYDROGEN, max(), min(), pah1_strength, pah1_width, pah1_wlBand, t_ADfA::phfit(), PHFIT95, PI, pow2(), pow3(), grain_data::rho, RYD_INF, t_ADfA::set_version(), STATIC, x1, and x2.
Referenced by car1_fun().
STATIC void pah2_fun | ( | double | wavl, |
const sd_data * | sd, | ||
const grain_data * | gd, | ||
double * | cs_abs, | ||
double * | cs_sct, | ||
double * | cosb, | ||
int * | error ) |
Definition at line 1985 of file grains_mie.cpp.
References ATOMIC_MASS_UNIT, grain_data::charge, sd_data::cSize, DEBUG_ENTRY, dense, Drude(), ipCARBON, M, pah2_wavl, pah2_width, pah2c_strength, pah2n_strength, PI, pow2(), pow3(), grain_data::rho, STATIC, and TotalInsanity().
Referenced by car2_fun().
STATIC void pah3_fun | ( | double | wavl, |
const sd_data * | sd, | ||
const grain_data * | gd, | ||
double * | cs_abs, | ||
double * | cs_sct, | ||
double * | cosb, | ||
int * | error ) |
Definition at line 2132 of file grains_mie.cpp.
References ATOMIC_MASS_UNIT, grain_data::charge, sd_data::cSize, DEBUG_ENTRY, dense, Drude(), ipCARBON, M, pah3_hoc, pah3_wavl, pah3_width, pah3c_strength, pah3n_strength, PI, pow2(), pow3(), grain_data::rho, STATIC, and TotalInsanity().
Referenced by car3_fun().
STATIC void ritodf | ( | double | nr, |
double | ni, | ||
double * | eps1, | ||
double * | eps2 ) |
Definition at line 4980 of file grains_mie.cpp.
References DEBUG_ENTRY, and STATIC.
Referenced by init_eps().
Definition at line 2368 of file grains_mie.cpp.
References ASSERT, cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, ioQQQ, ipBHi, ipBLo, sd_data::lim, max(), POW4, size_distr(), SMALLEST_GRAIN, STATIC, TOLER, x1, and x2.
Referenced by mie_read_szd().
STATIC void sinpar | ( | double | nre, |
double | nim, | ||
double | x, | ||
double * | qext, | ||
double * | qphase, | ||
double * | qscat, | ||
double * | ctbrqs, | ||
double * | qback, | ||
long int * | iflag ) |
Definition at line 4655 of file grains_mie.cpp.
References DEBUG_ENTRY, max(), MAX4, nint(), NMXLIM, pow2(), pow3(), and STATIC.
STATIC void sinpar | ( | double | , |
double | , | ||
double | , | ||
double * | , | ||
double * | , | ||
double * | , | ||
double * | , | ||
double * | , | ||
long * | ) |
Definition at line 2294 of file grains_mie.cpp.
References sd_data::a, ASSERT, cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, find_arr(), ioQQQ, ipAlpha, ipBeta, ipBHi, ipBLo, ipExp, ipGCen, ipGSig, ipSHi, ipSLo, sd_data::lim, sd_data::ln_a, sd_data::ln_a4dNda, nint(), sd_data::npts, pow2(), POW4, powi(), SD_EXP_CUTOFF1, SD_EXP_CUTOFF2, SD_EXP_CUTOFF3, SD_ILLEGAL, SD_LIN_NORMAL, SD_LOG_NORMAL, SD_NR_CARBON, SD_POWERLAW, SD_SINGLE_SIZE, SD_TABLE, sd_data::sdCase, ShowMe(), and STATIC.
Referenced by mie_cs_size_distr(), mie_integrate(), mie_write_opc(), and search_limit().
STATIC void Stognienko | ( | complex< double > | x, |
const vector< double > & | frdelta, | ||
const vector< complex< double > > & | eps, | ||
long | sumAxes, | ||
complex< double > * | f, | ||
double * | dudx, | ||
double * | dudy ) |
Definition at line 3751 of file grains_mie.cpp.
References DEBUG_ENTRY, h2, PI, pow2(), and STATIC.
Referenced by mie_read_mix().
STATIC void tbl_fun | ( | double | wavl, |
const sd_data * | sd, | ||
const grain_data * | gd, | ||
double * | cs_abs, | ||
double * | cs_sct, | ||
double * | cosb, | ||
int * | error ) |
Definition at line 2242 of file grains_mie.cpp.
References ASSERT, DEBUG_ENTRY, find_arr(), grain_data::nOpcCols, grain_data::nOpcData, grain_data::opcAnu, grain_data::opcData, STATIC, TotalInsanity(), and WAVNRYD.
Referenced by mie_write_opc().
|
static |
alpha parameter for exp. cutoff
Definition at line 66 of file grains_mie.cpp.
Referenced by mie_read_szd(), and size_distr().
|
static |
beta parameter for powerlaw
Definition at line 63 of file grains_mie.cpp.
Referenced by mie_read_szd(), and size_distr().
|
static |
upper bound
Definition at line 61 of file grains_mie.cpp.
Referenced by mie_auxiliary(), mie_cs_size_distr(), mie_integrate(), mie_read_szd(), mie_write_opc(), search_limit(), and size_distr().
|
static |
lower bound
Definition at line 60 of file grains_mie.cpp.
Referenced by mie_auxiliary(), mie_cs_size_distr(), mie_integrate(), mie_read_szd(), mie_write_opc(), search_limit(), and size_distr().
|
static |
exponent for powerlaw
Definition at line 62 of file grains_mie.cpp.
Referenced by mie_read_szd(), and size_distr().
|
static |
center of gaussian distribution
Definition at line 67 of file grains_mie.cpp.
Referenced by mie_read_szd(), and size_distr().
|
static |
1-sigma width of gaussian distribution
Definition at line 68 of file grains_mie.cpp.
Referenced by mie_read_szd(), and size_distr().
|
static |
scale size for upper exp. cutoff
Definition at line 65 of file grains_mie.cpp.
Referenced by mie_read_szd(), and size_distr().
|
static |
single size
Definition at line 59 of file grains_mie.cpp.
Referenced by mie_auxiliary(), mie_cs_size_distr(), and mie_read_szd().
|
static |
scale size for lower exp. cutoff
Definition at line 64 of file grains_mie.cpp.
Referenced by mie_read_szd(), and size_distr().
Definition at line 200 of file grains_mie.cpp.
Referenced by mie_read_opc(), and mie_write_opc().
|
static |
Definition at line 198 of file grains_mie.cpp.
Referenced by mie_write_opc().
|
static |
Definition at line 199 of file grains_mie.cpp.
Referenced by mie_write_opc().
|
static |
Definition at line 52 of file grains_mie.cpp.
Referenced by mie_read_szd().
|
static |
Definition at line 41 of file grains_mie.cpp.
Referenced by mie_read_mix().
|
static |
Definition at line 40 of file grains_mie.cpp.
Referenced by mie_read_opc(), and mie_write_opc().
|
static |
Definition at line 38 of file grains_mie.cpp.
Referenced by mie_read_rfi().
|
static |
Definition at line 39 of file grains_mie.cpp.
Referenced by mie_read_szd().
|
static |
Definition at line 203 of file grains_mie.cpp.
Referenced by mie_read_mix().
|
static |
Definition at line 132 of file grains_mie.cpp.
Referenced by mie_cs_size_distr(), mie_read_rfi(), and grain_data::p_clear1().
|
static |
Definition at line 133 of file grains_mie.cpp.
Referenced by mie_read_rfi(), and grain_data::p_clear1().
|
static |
Definition at line 4653 of file grains_mie.cpp.
Referenced by sinpar().
const int NPTS_COMB = NPTS_DERIV*(NPTS_DERIV-1)/2 |
Definition at line 2514 of file grains_mie.cpp.
Referenced by mie_find_slope().
const int NPTS_DERIV = 8 |
Definition at line 2513 of file grains_mie.cpp.
Referenced by mie_find_slope(), and mie_repair().
|
static |
Definition at line 55 of file grains_mie.cpp.
|
static |
Definition at line 1750 of file grains_mie.cpp.
Referenced by pah1_fun().
|
static |
Definition at line 1752 of file grains_mie.cpp.
Referenced by pah1_fun().
|
static |
Definition at line 1751 of file grains_mie.cpp.
Referenced by pah1_fun().
|
static |
Definition at line 1974 of file grains_mie.cpp.
Referenced by pah2_fun().
|
static |
Definition at line 1976 of file grains_mie.cpp.
Referenced by pah2_fun().
|
static |
Definition at line 1980 of file grains_mie.cpp.
Referenced by pah2_fun().
|
static |
Definition at line 1978 of file grains_mie.cpp.
Referenced by pah2_fun().
|
static |
Definition at line 2126 of file grains_mie.cpp.
Referenced by pah3_fun().
|
static |
Definition at line 2110 of file grains_mie.cpp.
Referenced by pah3_fun().
|
static |
Definition at line 2113 of file grains_mie.cpp.
Referenced by pah3_fun().
|
static |
Definition at line 2120 of file grains_mie.cpp.
Referenced by pah3_fun().
|
static |
Definition at line 2116 of file grains_mie.cpp.
Referenced by pah3_fun().
|
static |
Definition at line 51 of file grains_mie.cpp.
Referenced by mie_read_szd(), and search_limit().
|
static |
Definition at line 195 of file grains_mie.cpp.
Referenced by mie_read_mix(), mie_read_rfi(), and mie_read_szd().