ocssw
V2022
|
#include <DtAlgorithm.h>
Public Member Functions | |
DtAlgLand () | |
~DtAlgLand () | |
int | initialize (map< string, ddata * > imap) |
vector< string > | get_products () |
map< string, ddata * > | process (vector< size_t > start, vector< size_t > count, map< string, ddata * > imap) |
Public Member Functions inherited from DtAlgorithm | |
DtAlgorithm () | |
virtual | ~DtAlgorithm () |
int | compute_gas_correction () |
int | fit_line (float x[], float y[], float sig[], int ndata, float &A, float &B) |
Public Member Functions inherited from DDAlgorithm | |
DDAlgorithm () | |
virtual | ~DDAlgorithm () |
Static Public Attributes | |
static constexpr int | NLTHET0 = 11 |
static constexpr int | NLTHE = 15 |
static constexpr int | NLPHI = 16 |
static constexpr int | NLWAV = 4 |
static constexpr int | NLTAU = 7 |
static constexpr int | NLTABLE = 5 |
static constexpr int | NLETA = 13 |
static constexpr int | NLSIZE = 2 |
static constexpr int | DTABLE = 5 |
static constexpr float | THR213MIN_1 = 0.01 |
static constexpr float | THR213MAX_1 = 0.25 |
static constexpr float | THR213MIN_2 = 0.25 |
static constexpr float | THR213MAX_2 = 0.25 |
static constexpr float | PRESSURE_P0 = 1013.0 |
static constexpr float | DLAT = 0.5 |
static constexpr float | DLON = 0.5 |
static constexpr int | QA_LAND = 5 |
Static Public Attributes inherited from DtAlgorithm | |
static constexpr int | LINE = 1 |
static constexpr int | GRIDX = LINE |
static constexpr int | GRIDY = LINE |
static constexpr int | NUM_CASES_SMALL = 4 |
static constexpr int | NUM_CASES_BIG = 5 |
static constexpr int | NUM_LUTS = 4 |
static constexpr int | NUM_LATS = 180 |
static constexpr int | NUM_LONS = 360 |
static constexpr float | MINMTHET0 =0.0 |
static constexpr float | MAXMTHET0 =80.0 |
static constexpr float | MINMTHET =0.0 |
static constexpr float | MAXMTHET =72.0 |
static constexpr float | MINMPHI =0.0 |
static constexpr float | MAXMPHI =180.0 |
static constexpr float | MAXTAU =5.0 |
static constexpr float | MINTAU =-0.01 |
static constexpr int | NUM_RFL_BANDS = 10 |
static constexpr int | DT_OWAVES = 7 |
static constexpr int | DT_LWAVES = 3 |
static constexpr int | MODIS_WAVES = 7 |
static constexpr int | VIIRS_WAVES = 3 |
static const float | wind_ [WIND_LUT_ENTRIES] |
static const float | pressure_ [P_LEVELS] |
Protected Member Functions | |
int | index_geometry (float sza, float azim, float phi) |
int | interpolate_rayleigh () |
int | interpolate_angle () |
int | interpolate_elevation () |
int | compute_average (size_t iy, size_t ix) |
int | compute_cloudmask_ndvi (size_t iy, size_t ix, int &iCldRed, int &iCldBlue) |
int | simulate_toa () |
int | retrieve_first () |
int | retrieve_second () |
int | assign_quality () |
int | store_output () |
int | fill_values () |
Protected Member Functions inherited from DtAlgorithm | |
int | interp_extrap (int num, float xin, float x[], float y[], float &yout) |
int | mean_std (int n, float *data, float &mean, float &sdev) |
int | mean_std_weighted (int n, float *data, float &mean, float &sdev, float *weight) |
int | sort_index (int numPts, float array[], int index[]) |
int | sort_inplace (int numPts, float array1[], float array2[]) |
int | set_byte (short val, short bitPos, short &target) |
int | compute_glint_angle () |
int | compute_scatter_angle (float &scat_angle) |
Protected Member Functions inherited from DDAlgorithm | |
int | get_inputs (vector< size_t > start, vector< size_t > count, map< string, ddata * > imap) |
map< string, ddata * > | set_outputs () |
map< string, ddata * > | set_fills () |
Additional Inherited Members | |
Public Types inherited from DtAlgorithm | |
enum | SIZES { ISMALL, IBIG } |
enum | STATS { IBEST, IAVG } |
Protected Attributes inherited from DtAlgorithm | |
int | SZA_0_ |
int | SZA_1_ |
int | THE_0_ |
int | THE_1_ |
int | PHI_0_ |
int | PHI_1_ |
Protected Attributes inherited from DDAlgorithm | |
size_t | lines_ |
size_t | pixels_ |
float | rfl_ [NTWL] |
float | rfla_ [NTWL][3][3] |
float | gasc_ [NTWL] |
float | lat_ |
float | lon_ |
float | solz_ |
float | senz_ |
float | raa_ |
float | height_ |
float | scatt_ |
float | ws_ |
float | pwv_ |
float | oz_ |
float | ps_ |
int | month_ |
bool | bgascorrect_ |
bool | bglintmask_ |
bool | bcloudmask_ |
bool | btest_ |
unsigned char | cloud_mask_ |
short | qual_flag_ |
short | aerosol_type_ |
short | error_flag_ |
unsigned int | l2_flags_ |
float | scatter_ang_ |
float | glint_ang_ |
float | sse_ |
float | fmf_ |
float | aot_550_ |
float | ae1_ |
float | ae2_ |
float | ndv_ |
float | chlor_ |
float | ssa_ [NLWL+1] |
float | sr_ [NLWL+1] |
float | aot_ [NOWL+1] |
Detailed Description
Definition at line 454 of file DtAlgorithm.h.
Constructor & Destructor Documentation
◆ DtAlgLand()
DtAlgLand | ( | ) |
Class constructor
Definition at line 218 of file DtAlgLand.cpp.
◆ ~DtAlgLand()
~DtAlgLand | ( | ) |
Class destructor
Definition at line 295 of file DtAlgLand.cpp.
Member Function Documentation
◆ assign_quality()
|
protected |
This subroutine assigns all quality variables to be written to output file.
Definition at line 1159 of file DtAlgLand.cpp.
◆ compute_average()
|
protected |
This subroutine processes 10*10 pixel box for cloud detection and finds the average reflectance for red and blue channels. Surface Reflectance from wavelength 2.13 . This surface Reflectance and average Reflectance for red and blue channel are send to lookup table and optical thickness is derived
Definition at line 512 of file DtAlgLand.cpp.
◆ compute_cloudmask_ndvi()
|
protected |
This subroutine finds the dark targets using a threshold in the 2.13 micron channel.it averages the cloud free pixels in red channel to the 0.5 km resolution. If too cloudy or too bright at 2.13 it leaves the value as zero.
Definition at line 606 of file DtAlgLand.cpp.
◆ fill_values()
|
protected |
This subroutine stores fill values where required.
NAME: fill_values()
This subroutine assigns fill values to output data where appropriate.
Definition at line 1468 of file DtAlgLand.cpp.
◆ get_products()
Return a list of product names generated by the algorithm
Reimplemented from DtAlgorithm.
Definition at line 575 of file DtAlgorithm.h.
◆ index_geometry()
|
protected |
Reset LUT indices based on measured geometry
Definition at line 475 of file DtAlgLand.cpp.
◆ initialize()
◆ interpolate_angle()
|
protected |
Subroutine interpolates the lookup reflectances to the measured geometry.
Definition at line 696 of file DtAlgLand.cpp.
◆ interpolate_elevation()
|
protected |
The subroutine interpolates the lookup reflectances to the target elevation. Basically it is fudge: Interpolate between wavelengths to simulate elevation by a longer wavelength
Definition at line 758 of file DtAlgLand.cpp.
◆ interpolate_rayleigh()
|
protected |
This subroutine selects look-up table (using ITABLE) used to select both the "fine" and the "coarse/dust" land model Subroutine Interpolates the lookup Rayleigh reflectances to the measured geometry.
Definition at line 649 of file DtAlgLand.cpp.
◆ process()
|
virtual |
The subroutine derives non-cloudy aerosol optical thickness from MODIS measured radiances over land, using the 0.47 (blue), 0.66 (red) and 2.13 (IR) micron channels. Input data are cloud screened and averaged reflectance at at 10 x 10 km. Inversion: A) Select fine mode model based on geography (dynamic aerosol models) B) Mix fine mode and dust mode with selected discrete mixing ratios best matches the observed spectral reflectance. The program assumes that the input data are in reflectance units of PI*L/(F0*cos(theta0)) for all channels. It also assumes that the surface reflectance in the two visible channels are functions of the surface reflectance in the IR. Nominally, red is one half of IR, and blue is one-half of red, respectively.
Reimplemented from DtAlgorithm.
Definition at line 332 of file DtAlgLand.cpp.
◆ retrieve_first()
|
protected |
This subroutine retrieves optical thickness, surface reflectance and error parameters by comparing observations and LUT data
Definition at line 887 of file DtAlgLand.cpp.
◆ retrieve_second()
|
protected |
This subroutine retrieves optical thickness, surface reflectance and error parameters by comparing observations and LUT data. The "continental" aerosol model is assumed.
Definition at line 1027 of file DtAlgLand.cpp.
◆ simulate_toa()
|
protected |
The subroutine simulates TOA reflectance
Definition at line 1100 of file DtAlgLand.cpp.
◆ store_output()
|
protected |
This subroutine stores all the output variables to be written to output file.
Definition at line 1325 of file DtAlgLand.cpp.
Member Data Documentation
◆ angstrom_
float angstrom_ |
Definition at line 521 of file DtAlgorithm.h.
◆ aot_c_
float aot_c_[NLWAV] |
Definition at line 516 of file DtAlgorithm.h.
◆ aot_d_
float aot_d_[NLWAV] |
Definition at line 514 of file DtAlgorithm.h.
◆ aot_f_
float aot_f_[NLWAV] |
Definition at line 515 of file DtAlgorithm.h.
◆ cm_
DtCloudMaskLand* cm_ |
Definition at line 481 of file DtAlgorithm.h.
◆ DLAT
|
staticconstexpr |
Definition at line 474 of file DtAlgorithm.h.
◆ DLON
|
staticconstexpr |
Definition at line 475 of file DtAlgorithm.h.
◆ DTABLE
|
staticconstexpr |
Definition at line 467 of file DtAlgorithm.h.
◆ err644_
float err644_ |
Definition at line 519 of file DtAlgorithm.h.
◆ error_
short error_ |
Definition at line 499 of file DtAlgorithm.h.
◆ errwave_
float errwave_[NLWAV] |
Definition at line 505 of file DtAlgorithm.h.
◆ eta_
float eta_ |
Definition at line 518 of file DtAlgorithm.h.
◆ eta_flag_
short eta_flag_ |
Definition at line 512 of file DtAlgorithm.h.
◆ fail_ret_
short fail_ret_ |
Definition at line 534 of file DtAlgorithm.h.
◆ fd_nl_
Definition at line 491 of file DtAlgorithm.h.
◆ fdt_nl_
Definition at line 493 of file DtAlgorithm.h.
◆ good_pixels_
int good_pixels_[NLWAV] |
Definition at line 524 of file DtAlgorithm.h.
◆ iaer_
short iaer_ |
Definition at line 523 of file DtAlgorithm.h.
◆ ifinish_
short ifinish_ |
Definition at line 529 of file DtAlgorithm.h.
◆ int_nl_
Definition at line 490 of file DtAlgorithm.h.
◆ iproc_
short iproc_ |
Definition at line 528 of file DtAlgorithm.h.
◆ lut_
dtLandAerosolLUT lut_ |
Definition at line 480 of file DtAlgorithm.h.
◆ masscon_
float masscon_ |
Definition at line 520 of file DtAlgorithm.h.
◆ mtable_
int mtable_[NLSIZE] |
Definition at line 485 of file DtAlgorithm.h.
◆ ndvi_
float ndvi_ |
Definition at line 522 of file DtAlgorithm.h.
◆ NLETA
|
staticconstexpr |
Definition at line 465 of file DtAlgorithm.h.
◆ NLPHI
|
staticconstexpr |
Definition at line 461 of file DtAlgorithm.h.
◆ NLSIZE
|
staticconstexpr |
Definition at line 466 of file DtAlgorithm.h.
◆ NLTABLE
|
staticconstexpr |
Definition at line 464 of file DtAlgorithm.h.
◆ NLTAU
|
staticconstexpr |
Definition at line 463 of file DtAlgorithm.h.
◆ NLTHE
|
staticconstexpr |
Definition at line 460 of file DtAlgorithm.h.
◆ NLTHET0
|
staticconstexpr |
Definition at line 459 of file DtAlgorithm.h.
◆ NLWAV
|
staticconstexpr |
Definition at line 462 of file DtAlgorithm.h.
◆ num_pixels_used_
int num_pixels_used_ |
Definition at line 525 of file DtAlgorithm.h.
◆ opth_nl_
Definition at line 489 of file DtAlgorithm.h.
◆ PRESSURE_P0
|
staticconstexpr |
Definition at line 473 of file DtAlgorithm.h.
◆ QA_LAND
|
staticconstexpr |
Definition at line 477 of file DtAlgorithm.h.
◆ qcontrol_special_
short qcontrol_special_ |
Definition at line 537 of file DtAlgorithm.h.
◆ quality_flag_for_joint_
short quality_flag_for_joint_[2] |
Definition at line 535 of file DtAlgorithm.h.
◆ quality_flag_for_retr_
short quality_flag_for_retr_ |
Definition at line 536 of file DtAlgorithm.h.
◆ refl_
float refl_[NLWAV] |
Definition at line 497 of file DtAlgorithm.h.
◆ refl_inter_
Definition at line 496 of file DtAlgorithm.h.
◆ refl_ray_nl_
float refl_ray_nl_[NLWAV] |
Definition at line 488 of file DtAlgorithm.h.
◆ return_quality_cirrus_
short return_quality_cirrus_ |
Definition at line 532 of file DtAlgorithm.h.
◆ rho_S212_
Definition at line 503 of file DtAlgorithm.h.
◆ rho_S212_tot_
float rho_S212_tot_[NLTAU] |
Definition at line 504 of file DtAlgorithm.h.
◆ rho_S466_
float rho_S466_ |
Definition at line 506 of file DtAlgorithm.h.
◆ rho_S644_
float rho_S644_ |
Definition at line 509 of file DtAlgorithm.h.
◆ rho_sfc_
float rho_sfc_[NLWAV] |
Definition at line 517 of file DtAlgorithm.h.
◆ rho_star_
Definition at line 501 of file DtAlgorithm.h.
◆ rho_star_tot_
Definition at line 502 of file DtAlgorithm.h.
◆ sbar_nl_
Definition at line 494 of file DtAlgorithm.h.
◆ scatter_angle_
float scatter_angle_ |
Definition at line 484 of file DtAlgorithm.h.
◆ sdev_
float sdev_[NLWAV] |
Definition at line 498 of file DtAlgorithm.h.
◆ sds_aerosol_type_
short sds_aerosol_type_ |
Definition at line 541 of file DtAlgorithm.h.
◆ sds_angs_coeff_
float sds_angs_coeff_ |
Definition at line 546 of file DtAlgorithm.h.
◆ sds_cloud_fraction_
float sds_cloud_fraction_ |
Definition at line 545 of file DtAlgorithm.h.
◆ sds_dust_weighting_
float sds_dust_weighting_ |
Definition at line 547 of file DtAlgorithm.h.
◆ sds_fitting_error_
float sds_fitting_error_ |
Definition at line 543 of file DtAlgorithm.h.
◆ sds_mass_conc_
float sds_mass_conc_ |
Definition at line 544 of file DtAlgorithm.h.
◆ sds_ndvi_
float sds_ndvi_ |
Definition at line 548 of file DtAlgorithm.h.
◆ sds_numpixels_
float sds_numpixels_[NLWAV] |
Definition at line 549 of file DtAlgorithm.h.
◆ sds_qcontrol_
short sds_qcontrol_[QA_LAND] |
Definition at line 540 of file DtAlgorithm.h.
◆ sds_refl_
float sds_refl_[NLWAV] |
Definition at line 551 of file DtAlgorithm.h.
◆ sds_refl_std_
float sds_refl_std_[NLWAV] |
Definition at line 552 of file DtAlgorithm.h.
◆ sds_scat_angle_
float sds_scat_angle_ |
Definition at line 542 of file DtAlgorithm.h.
◆ sds_surface_reflectance_
float sds_surface_reflectance_[NLWAV] |
Definition at line 555 of file DtAlgorithm.h.
◆ sds_tau_big_
float sds_tau_big_[NLWAV] |
Definition at line 554 of file DtAlgorithm.h.
◆ sds_tau_corrected_
float sds_tau_corrected_[NLWAV] |
Definition at line 550 of file DtAlgorithm.h.
◆ sds_tau_small_
float sds_tau_small_[NLWAV] |
Definition at line 553 of file DtAlgorithm.h.
◆ season_
int season_ |
Definition at line 483 of file DtAlgorithm.h.
◆ slope_466_
float slope_466_ |
Definition at line 508 of file DtAlgorithm.h.
◆ slope_644_
float slope_644_ |
Definition at line 511 of file DtAlgorithm.h.
◆ success_ret_
short success_ret_ |
Definition at line 533 of file DtAlgorithm.h.
◆ t_nl_
Definition at line 492 of file DtAlgorithm.h.
◆ THR213MAX_1
|
staticconstexpr |
Definition at line 470 of file DtAlgorithm.h.
◆ THR213MAX_2
|
staticconstexpr |
Definition at line 472 of file DtAlgorithm.h.
◆ THR213MIN_1
|
staticconstexpr |
Definition at line 469 of file DtAlgorithm.h.
◆ THR213MIN_2
|
staticconstexpr |
Definition at line 471 of file DtAlgorithm.h.
◆ thresh_max_
float thresh_max_ |
Definition at line 531 of file DtAlgorithm.h.
◆ thresh_min_
float thresh_min_ |
Definition at line 530 of file DtAlgorithm.h.
◆ yint_466_
float yint_466_ |
Definition at line 507 of file DtAlgorithm.h.
◆ yint_644_
float yint_644_ |
Definition at line 510 of file DtAlgorithm.h.
The documentation for this class was generated from the following files:
- /gfs-oceanweb/web/ocssw/ocssw_src/src/dtdb/darktarget/DtAlgorithm.h
- /gfs-oceanweb/web/ocssw/ocssw_src/src/dtdb/darktarget/DtAlgLand.cpp