OB.DAAC Logo
NASA Logo
Ocean Color Science Software

ocssw V2022
AfrtProcess.cpp File Reference
#include <AfrtProcess.h>
#include <libgen.h>
#include <new>
#include <fstream>
#include <algorithm>
#include <iostream>
#include <functional>
#include <vector>
#include <netcdf>
#include <sys/time.h>
#include <AfrtOptions.h>
#include <afrt.h>
Include dependency graph for AfrtProcess.cpp:

Go to the source code of this file.

Functions

void af_phs_read_ (char *infile, int *nlam, int *nsd, int *ilam1, int *ilam2, int *isd1, int *isd2, int *ifunc, int *jnorm, int *jrgm, int *mfunc, int *irh, int *iset, char *xtitle, double *xww, double *xn1, double *xn2, double *xrg, double *xsig, double *xnpar, double *xdx, double *epar)
 
void af_phs_process_ (char *phsdir, int *ilam, int *isd, int *isd1, int *isd2, int *ifunc, int *jnorm, int *jrgm, int *mfunc, int *irh, int *iset, char *xtitle, double *xww, double *refr, double *refi, double *xrg, double *xsig, double *xnpar, double *xdx, double *epar, double *rmin, double *rmax, double *deltar, double *deltax, double *r11, double *r22, double *r33, double *r44, double *reff, double *veff, double *ccnsml, double *bsr, double *salb, double *asf, double *qscat, double *qext, double *angl, double *phfu, double *pol, double *thd, double *t, double *rbar, double *dnzp, double *dnp, double *dvp, double *sumnp, double *wt)
 
void af_ocn_read_ (char *infile, int *nww, int *iopt, int *isig, int *isolz, int *nsza, int *nthe, int *nphi, int *nsig, int *ibgn, int *iend, double *dlth, double *dlph, double *xr, double *xi, double *v, double *thcel, double *phcel, double *wav, double *tha, double *sig_hg, double *solz)
 
void af_ocn_process_ (char *ocndir, int *alam, int *asig, int *iopt, int *isig, int *isolz, int *nsza, int *ntha, int *nphi, double *dlth, double *dlph, double *xr, double *xi, double *v, double *thcel, double *phcel, double *wav, double *tha, double *sig_hg, double *solz, int *iprob, double *thp, double *phcnd, double *thcnd, double *txx, double *pti, double *xinlpi, double *xi_hgpi, double *xin2pi, double *xin2top)
 
void af_rt1_read_ (char *infile, char *phsdir, char *rt1dir, char *ozone_lut, char *atm_lut, char *coeff_lut, int *nsd, int *iair, int *iprin, int *ipsudo, int *ioptn, int *idust, int *iaprof, int *iblyr, int *icld, int *nch, int *nt55, int *nrh, int *kset, int *ilam1, int *ilam2, int *isd1, int *isd2, int *itau1, int *itau2, int *kznum, int *krhum, double *deltau, double *psrfc, double *ht_dust, double *sigma_dust, double *pcldtop, double *pcldbtm, double *taum55, double *xlamb, double *c0, double *c1, double *c2, double *beta, double *rho, double *ppo, double *x101, double *temp101, double *htdd, double *ppodd, double *dxdd, double *znpdd, int *nortau, int *ioznab, int *nrmww, double *qst, double *qtt, double *qst5, double *qtt5)
 
void af_rt1_process_ (char *rt1dir, int *ailam, int *aisd, int *airh, int *aitau, int *aiair, int *aiprin, int *aipsudo, int *aioptn, int *aidust, int *aiaprof, int *aiblyr, int *aicld, int *anch, int *ant55, int *ansd, int *anrh, int *akset, int *akznum, int *akrhum, double *adeltau, double *apsrfc, double *aht_dust, double *asigma_dust, double *apcldtop, double *apcldbtm, double *ataum55, double *axlamb, double *ac0, double *ac1, double *ac2, double *abeta, double *arho, double *appo, double *ax101, double *atemp101, double *ahtdd, double *appodd, double *adxdd, double *aznpdd, int *anortau, int *aioznab, int *anrmww, double *aqst, double *aqtt, double *aqst5, double *aqtt5, double *htlvl, double *pplvl, double *fr, double *fn, double *fa, double *ftot, double *dtrr, double *dtmm, double *dtaa, double *dtot, double *trp, double *tmp, double *tap, double *salb, double *turbhl, double *dx, double *x, double *tozn101, double *htdv, double *pdv, double *taur, double *taum, double *taua, double *tau, double *wvlth, double *psrfc, double *rho, double *xozn, double *tautot, double *dtau1, int *nolyr, double *tcar, double *twat, double *tozn, int *ifc, int *nmodl)
 
void af_rt2_input_ (char *infile, int *iref, int *itrans, int *iset, int *irh1, int *irh2, int *ilm1, int *ilm2, int *isd1, int *isd2, int *itau1, int *itau2, int *ithe01, int *ithe02, int *iwnd1, int *iwnd2, int *nx, int *nthe0, int *nwl, int *nrh, int *iww, int *krhum, int *iprin, int *ipol, int *npass1, int *npass2, int *icrft, int *iactflx, int *isurf, int *iglint, int *iocn, int *ifoam, int *iwatr, int *iconc, double *dtheta, double *dphi, double *hcrft, double *rx, double *the0in, double *wwl, double *albwat)
 
void af_rt2_read_ (char *adir1, char *adir2, char *adir3, char *adir4, char *adir5, int *ailm, int *aisd, int *airh, int *aiwind, int *aitau, int *aiset, int *airef, int *aipol, int *aiww, int *akrhum, double *awwl, double *aalbwat, int *ifunc, int *mfunc, double *refr, double *refi, double *rmin, double *rmax, double *deltar, double *deltax, double *rg, double *sig, double *npar, double *r11, double *r22, double *r33, double *r44, double *reff, double *veff, double *ccn, double *bsr, double *salb, double *asf, double *qscat, double *qext, double *t, double *thd, double *xr, double *xi, double *v, double *thcel, double *phcel, double *txx, double *pti, double *wvlth, double *psrfc, double *rho, double *xozn, double *tautot, double *deltau, double *trp, double *tmp, double *tap, double *tcar, double *twat, double *tozn, double *htlvl, double *pplvl, double *dtrr, double *dtmm, double *dtaa, double *dtot, double *htdv, double *pdv, double *taur, double *taum, double *taua, int *ifc, int *nmodl, int *nolyr, float *bfr)
 
void af_rt2_process_ (char *odir, int *ailm, int *aisd, int *airh, int *aitau, int *aiwnd, int *airef, int *aitrans, int *aiset, int *airh1, int *airh2, int *ailm1, int *ailm2, int *aisd1, int *aisd2, int *aitau1, int *aitau2, int *aithe01, int *aithe02, int *aiwnd1, int *aiwnd2, int *anx, int *anthe0, int *anwl, int *anrh, int *ansd, int *aiww, int *akrhum, int *aiprin, int *aipol, int *anpass1, int *anpass2, int *aicrft, int *aiactflx, int *aisurf, int *aiglint, int *aiocn, int *aifoam, int *aiwatr, int *aiconc, double *adtheta, double *adphi, double *ahcrft, double *arx, double *athe0in, double *awwl, double *aalbwat, int *ifunc, int *mfunc, double *arefr, double *arefi, double *armin, double *armax, double *adeltar, double *adeltax, double *arg, double *asig, double *anpar, double *ar11, double *ar22, double *ar33, double *ar44, double *areff, double *aveff, double *accn, double *absr, double *asalb, double *aasf, double *aqscat, double *aqext, double *at, double *athd, double *xr, double *xi, double *v, double *thcel, double *phcel, double *atxx, double *apti, double *awvlth, double *apsrfc, double *arho, double *axozn, double *atautot, double *adeltau, double *atrp, double *atmp, double *atap, double *atcar, double *atwat, double *atozn, double *ahtlvl, double *applvl, double *adtrr, double *adtmm, double *adtaa, double *adtot, double *ahtdv, double *apdv, double *ataur, double *ataum, double *ataua, int *aifc, int *anmodl, int *anolyr, int *apsudo, float *abfr, double *tma, double *tmb, double *tmc, double *tmfd, double *tmfu, double *tms, double *tmg, double *tmh, double *tmp, double *tmq, double *tmt, double *tmpp, double *tmqq, double *tmrr, double *tmss, double *transm, double *tmcfd, double *tmcfu, double *tmf1, double *tmf2, double *xzeroz, double *xzerod, double *tupz, double *tdwnz)
 

Variables

const double pace_wavelengths [NUM_PACE_BANDS]
 

Function Documentation

◆ af_ocn_process_()

void af_ocn_process_ ( char *  ocndir,
int *  alam,
int *  asig,
int *  iopt,
int *  isig,
int *  isolz,
int *  nsza,
int *  ntha,
int *  nphi,
double *  dlth,
double *  dlph,
double *  xr,
double *  xi,
double *  v,
double *  thcel,
double *  phcel,
double *  wav,
double *  tha,
double *  sig_hg,
double *  solz,
int *  iprob,
double *  thp,
double *  phcnd,
double *  thcnd,
double *  txx,
double *  pti,
double *  xinlpi,
double *  xi_hgpi,
double *  xin2pi,
double *  xin2top 
)

◆ af_ocn_read_()

void af_ocn_read_ ( char *  infile,
int *  nww,
int *  iopt,
int *  isig,
int *  isolz,
int *  nsza,
int *  nthe,
int *  nphi,
int *  nsig,
int *  ibgn,
int *  iend,
double *  dlth,
double *  dlph,
double *  xr,
double *  xi,
double *  v,
double *  thcel,
double *  phcel,
double *  wav,
double *  tha,
double *  sig_hg,
double *  solz 
)

◆ af_phs_process_()

void af_phs_process_ ( char *  phsdir,
int *  ilam,
int *  isd,
int *  isd1,
int *  isd2,
int *  ifunc,
int *  jnorm,
int *  jrgm,
int *  mfunc,
int *  irh,
int *  iset,
char *  xtitle,
double *  xww,
double *  refr,
double *  refi,
double *  xrg,
double *  xsig,
double *  xnpar,
double *  xdx,
double *  epar,
double *  rmin,
double *  rmax,
double *  deltar,
double *  deltax,
double *  r11,
double *  r22,
double *  r33,
double *  r44,
double *  reff,
double *  veff,
double *  ccnsml,
double *  bsr,
double *  salb,
double *  asf,
double *  qscat,
double *  qext,
double *  angl,
double *  phfu,
double *  pol,
double *  thd,
double *  t,
double *  rbar,
double *  dnzp,
double *  dnp,
double *  dvp,
double *  sumnp,
double *  wt 
)

◆ af_phs_read_()

void af_phs_read_ ( char *  infile,
int *  nlam,
int *  nsd,
int *  ilam1,
int *  ilam2,
int *  isd1,
int *  isd2,
int *  ifunc,
int *  jnorm,
int *  jrgm,
int *  mfunc,
int *  irh,
int *  iset,
char *  xtitle,
double *  xww,
double *  xn1,
double *  xn2,
double *  xrg,
double *  xsig,
double *  xnpar,
double *  xdx,
double *  epar 
)

◆ af_rt1_process_()

void af_rt1_process_ ( char *  rt1dir,
int *  ailam,
int *  aisd,
int *  airh,
int *  aitau,
int *  aiair,
int *  aiprin,
int *  aipsudo,
int *  aioptn,
int *  aidust,
int *  aiaprof,
int *  aiblyr,
int *  aicld,
int *  anch,
int *  ant55,
int *  ansd,
int *  anrh,
int *  akset,
int *  akznum,
int *  akrhum,
double *  adeltau,
double *  apsrfc,
double *  aht_dust,
double *  asigma_dust,
double *  apcldtop,
double *  apcldbtm,
double *  ataum55,
double *  axlamb,
double *  ac0,
double *  ac1,
double *  ac2,
double *  abeta,
double *  arho,
double *  appo,
double *  ax101,
double *  atemp101,
double *  ahtdd,
double *  appodd,
double *  adxdd,
double *  aznpdd,
int *  anortau,
int *  aioznab,
int *  anrmww,
double *  aqst,
double *  aqtt,
double *  aqst5,
double *  aqtt5,
double *  htlvl,
double *  pplvl,
double *  fr,
double *  fn,
double *  fa,
double *  ftot,
double *  dtrr,
double *  dtmm,
double *  dtaa,
double *  dtot,
double *  trp,
double *  tmp,
double *  tap,
double *  salb,
double *  turbhl,
double *  dx,
double *  x,
double *  tozn101,
double *  htdv,
double *  pdv,
double *  taur,
double *  taum,
double *  taua,
double *  tau,
double *  wvlth,
double *  psrfc,
double *  rho,
double *  xozn,
double *  tautot,
double *  dtau1,
int *  nolyr,
double *  tcar,
double *  twat,
double *  tozn,
int *  ifc,
int *  nmodl 
)

◆ af_rt1_read_()

void af_rt1_read_ ( char *  infile,
char *  phsdir,
char *  rt1dir,
char *  ozone_lut,
char *  atm_lut,
char *  coeff_lut,
int *  nsd,
int *  iair,
int *  iprin,
int *  ipsudo,
int *  ioptn,
int *  idust,
int *  iaprof,
int *  iblyr,
int *  icld,
int *  nch,
int *  nt55,
int *  nrh,
int *  kset,
int *  ilam1,
int *  ilam2,
int *  isd1,
int *  isd2,
int *  itau1,
int *  itau2,
int *  kznum,
int *  krhum,
double *  deltau,
double *  psrfc,
double *  ht_dust,
double *  sigma_dust,
double *  pcldtop,
double *  pcldbtm,
double *  taum55,
double *  xlamb,
double *  c0,
double *  c1,
double *  c2,
double *  beta,
double *  rho,
double *  ppo,
double *  x101,
double *  temp101,
double *  htdd,
double *  ppodd,
double *  dxdd,
double *  znpdd,
int *  nortau,
int *  ioznab,
int *  nrmww,
double *  qst,
double *  qtt,
double *  qst5,
double *  qtt5 
)

◆ af_rt2_input_()

void af_rt2_input_ ( char *  infile,
int *  iref,
int *  itrans,
int *  iset,
int *  irh1,
int *  irh2,
int *  ilm1,
int *  ilm2,
int *  isd1,
int *  isd2,
int *  itau1,
int *  itau2,
int *  ithe01,
int *  ithe02,
int *  iwnd1,
int *  iwnd2,
int *  nx,
int *  nthe0,
int *  nwl,
int *  nrh,
int *  iww,
int *  krhum,
int *  iprin,
int *  ipol,
int *  npass1,
int *  npass2,
int *  icrft,
int *  iactflx,
int *  isurf,
int *  iglint,
int *  iocn,
int *  ifoam,
int *  iwatr,
int *  iconc,
double *  dtheta,
double *  dphi,
double *  hcrft,
double *  rx,
double *  the0in,
double *  wwl,
double *  albwat 
)

◆ af_rt2_process_()

void af_rt2_process_ ( char *  odir,
int *  ailm,
int *  aisd,
int *  airh,
int *  aitau,
int *  aiwnd,
int *  airef,
int *  aitrans,
int *  aiset,
int *  airh1,
int *  airh2,
int *  ailm1,
int *  ailm2,
int *  aisd1,
int *  aisd2,
int *  aitau1,
int *  aitau2,
int *  aithe01,
int *  aithe02,
int *  aiwnd1,
int *  aiwnd2,
int *  anx,
int *  anthe0,
int *  anwl,
int *  anrh,
int *  ansd,
int *  aiww,
int *  akrhum,
int *  aiprin,
int *  aipol,
int *  anpass1,
int *  anpass2,
int *  aicrft,
int *  aiactflx,
int *  aisurf,
int *  aiglint,
int *  aiocn,
int *  aifoam,
int *  aiwatr,
int *  aiconc,
double *  adtheta,
double *  adphi,
double *  ahcrft,
double *  arx,
double *  athe0in,
double *  awwl,
double *  aalbwat,
int *  ifunc,
int *  mfunc,
double *  arefr,
double *  arefi,
double *  armin,
double *  armax,
double *  adeltar,
double *  adeltax,
double *  arg,
double *  asig,
double *  anpar,
double *  ar11,
double *  ar22,
double *  ar33,
double *  ar44,
double *  areff,
double *  aveff,
double *  accn,
double *  absr,
double *  asalb,
double *  aasf,
double *  aqscat,
double *  aqext,
double *  at,
double *  athd,
double *  xr,
double *  xi,
double *  v,
double *  thcel,
double *  phcel,
double *  atxx,
double *  apti,
double *  awvlth,
double *  apsrfc,
double *  arho,
double *  axozn,
double *  atautot,
double *  adeltau,
double *  atrp,
double *  atmp,
double *  atap,
double *  atcar,
double *  atwat,
double *  atozn,
double *  ahtlvl,
double *  applvl,
double *  adtrr,
double *  adtmm,
double *  adtaa,
double *  adtot,
double *  ahtdv,
double *  apdv,
double *  ataur,
double *  ataum,
double *  ataua,
int *  aifc,
int *  anmodl,
int *  anolyr,
int *  apsudo,
float *  abfr,
double *  tma,
double *  tmb,
double *  tmc,
double *  tmfd,
double *  tmfu,
double *  tms,
double *  tmg,
double *  tmh,
double *  tmp,
double *  tmq,
double *  tmt,
double *  tmpp,
double *  tmqq,
double *  tmrr,
double *  tmss,
double *  transm,
double *  tmcfd,
double *  tmcfu,
double *  tmf1,
double *  tmf2,
double *  xzeroz,
double *  xzerod,
double *  tupz,
double *  tdwnz 
)

◆ af_rt2_read_()

void af_rt2_read_ ( char *  adir1,
char *  adir2,
char *  adir3,
char *  adir4,
char *  adir5,
int *  ailm,
int *  aisd,
int *  airh,
int *  aiwind,
int *  aitau,
int *  aiset,
int *  airef,
int *  aipol,
int *  aiww,
int *  akrhum,
double *  awwl,
double *  aalbwat,
int *  ifunc,
int *  mfunc,
double *  refr,
double *  refi,
double *  rmin,
double *  rmax,
double *  deltar,
double *  deltax,
double *  rg,
double *  sig,
double *  npar,
double *  r11,
double *  r22,
double *  r33,
double *  r44,
double *  reff,
double *  veff,
double *  ccn,
double *  bsr,
double *  salb,
double *  asf,
double *  qscat,
double *  qext,
double *  t,
double *  thd,
double *  xr,
double *  xi,
double *  v,
double *  thcel,
double *  phcel,
double *  txx,
double *  pti,
double *  wvlth,
double *  psrfc,
double *  rho,
double *  xozn,
double *  tautot,
double *  deltau,
double *  trp,
double *  tmp,
double *  tap,
double *  tcar,
double *  twat,
double *  tozn,
double *  htlvl,
double *  pplvl,
double *  dtrr,
double *  dtmm,
double *  dtaa,
double *  dtot,
double *  htdv,
double *  pdv,
double *  taur,
double *  taum,
double *  taua,
int *  ifc,
int *  nmodl,
int *  nolyr,
float *  bfr 
)

Variable Documentation

◆ pace_wavelengths

const double pace_wavelengths[NUM_PACE_BANDS]
Initial value:
=
{365.9298, 375.594, 385.2625, 394.9355, 404.6129, 414.2946, 423.9808, 433.6713,
443.3662, 453.0655, 462.7692, 472.4773, 482.1898, 491.9066, 501.6279, 511.3535,
521.0836, 530.818, 540.5568, 550.3, 560.0477, 569.7996, 579.556, 589.3168,
599.0819, 608.8515, 618.6254, 628.4037, 638.1865, 647.9736, 657.7651, 665.5994,
675.4012, 685.1979, 694.9894, 704.7756, 714.5566, 724.3325, 734.1031, 743.8685,
753.6287, 763.3837, 773.1335, 782.8781, 792.6174, 802.3516, 812.0805, 821.8043,
831.5228, 841.2361, 850.9442, 860.6471, 870.3448, 880.0372, 889.7245, 936.646,
1238.75, 1383.0, 1641.53, 2126.795, 2246.658
}

Definition at line 150 of file AfrtProcess.cpp.