Variable Presets Reference#

When you pass -l2a default or -l2a minimal on the command line, gedih3 expands that keyword into a concrete list of HDF5 variable names. This page documents exactly which variables each keyword selects, for every supported product and GEDI data version.


Preset Levels#

Keyword

What it selects

minimal / min

Smallest usable set per product/version — primary science variables and quality flag. Geolocation, time, elevation, and degrade flag always come from L2A essentials. Hardcoded in config.py.

default / def

Expert-curated science-ready set, loaded from the bundled .txt file in src/gedih3/data/. Designed to cover common research workflows without requiring HDF5 expertise.

all / * / bare flag

Every variable present in the HDF5 file for that product (all beams). Use with caution — there are 100+ variables per beam for each product.

/path/to/file.txt

Plain-text file with one HDF5 variable name per line; #-prefixed lines are treated as comments.

explicit names

One or more exact HDF5 variable names inline, e.g. -l2a rh quality_flag land_cover_data/pft_class -l4a agbd.

wildcard pattern

Shell-style pattern using *, ?, [seq], [!seq] to match multiple variables at once (see below).


L2A Essentials — Always Present#

Regardless of which products or presets you select, the build pipeline always includes L2A essentials. These variables are guaranteed to be in every database:

shot_number
delta_time
quality_flag
degrade_flag
sensitivity
lat_lowestmode
lon_lowestmode
elev_lowestmode
shot_number
delta_time
l2a_quality_flag_rel3
degrade_flag
sensitivity
lat_lowestmode
lon_lowestmode
elev_lowestmode

Because L2A provides coordinates, time, elevation, and quality context for all shots, downstream products (L2B, L4A, L4C) do not duplicate these variables in their preset lists.


Wildcard Patterns#

All tools that accept variable names also support shell-style wildcard patterns. This works across all stages — download, build, extract, and aggregate.

Pattern

Matches

rh_*

All RH percentiles (rh_000 through rh_100)

geolocation/sensitivity_a*

sensitivity_a1, sensitivity_a2, sensitivity_a5, …

geolocation/*_a[125]

All algorithm a1/a2/a5 geolocation variables

wsci_*

All WSCI variables

agbd_prediction/agbd_?e_a*

agbd_se_a1, agbd_se_a2, agbd_se_a5, …

# Build with only algorithm-a1 geolocation variables
gh3_build -r "-51,0,-50,1" -l2a "geolocation/*_a1" -l4a default -s3

# Extract all RH percentiles
gh3_extract -d /path/to/database -l2a "rh_*" -o output/

# Aggregate all AGBD variables
gh3_aggregate -d /path/to/database -h3 6 -l4a "agbd*" -o output/

# Use --list with suffixed wildcard
gh3_extract -d /path/to/database -l "rh_*_l2a" -o output/

Important

Quote wildcard patterns to prevent shell expansion: use -l2a "rh_*" or -l2a 'rh_*', not -l2a rh_*.


CLI Usage#

# Minimal set (fastest build, smallest files)
gh3_build -r "-51,0,-50,1" -l2a minimal -l4a minimal -s3

# Default science-ready set
gh3_build -r "-51,0,-50,1" -l2a default -l4a default

# Explicit variables
gh3_build -r "-51,0,-50,1" -l2a rh quality_flag lat_lowestmode lon_lowestmode -l2b cover -l4a agbd

# From a custom file (one variable per line, # comments allowed)
gh3_build -r "-51,0,-50,1" -l2a /path/to/my_l2a_vars.txt

# All variables (use with caution)
gh3_build -r "-51,0,-50,1" -l2a all

L1B — Geolocated Waveforms#

minimal#

shot_number
stale_return_flag
noise_mean_corrected
rx_sample_start_index
rx_sample_count
rxwaveform
geolocation/elevation_bin0
geolocation/elevation_lastbin
shot_number
stale_return_flag
rx_clipflag
noise_mean_corrected
rx_sample_start_index
rx_sample_count
rxwaveform
geolocation/elevation_bin0
geolocation/elevation_lastbin

default#

# Receive waveform (8)
shot_number
stale_return_flag
noise_mean_corrected
noise_stddev_corrected
rx_sample_start_index
rx_sample_count
rx_energy
rxwaveform

# Transmit pulse flag (1)
tx_pulseflag

# Geolocation (20) — position, elevation, errors, DEM, solar, beam angles
geolocation/degrade
geolocation/latitude_bin0
geolocation/longitude_bin0
geolocation/elevation_bin0
geolocation/latitude_lastbin
geolocation/longitude_lastbin
geolocation/elevation_lastbin
geolocation/latitude_bin0_error
geolocation/longitude_bin0_error
geolocation/elevation_bin0_error
geolocation/latitude_lastbin_error
geolocation/longitude_lastbin_error
geolocation/elevation_lastbin_error
geolocation/digital_elevation_model
geolocation/digital_elevation_model_srtm
geolocation/solar_elevation
geolocation/local_beam_elevation
geolocation/local_beam_elevation_error
geolocation/local_beam_azimuth
geolocation/local_beam_azimuth_error
# Receive waveform (12) — new: rx_clip*, mean_64kadjusted
shot_number
stale_return_flag
noise_mean_corrected
noise_stddev_corrected
mean_64kadjusted
rx_clipbin0
rx_clipbin_count
rx_clipflag
rx_sample_start_index
rx_sample_count
rx_energy
rxwaveform

# Transmit pulse flag (1)
tx_pulseflag

# Geolocation (20) — position, elevation, errors, DEM, solar, beam angles
geolocation/degrade
geolocation/latitude_bin0
geolocation/longitude_bin0
geolocation/elevation_bin0
geolocation/latitude_lastbin
geolocation/longitude_lastbin
geolocation/elevation_lastbin
geolocation/latitude_bin0_error
geolocation/longitude_bin0_error
geolocation/elevation_bin0_error
geolocation/latitude_lastbin_error
geolocation/longitude_lastbin_error
geolocation/elevation_lastbin_error
geolocation/digital_elevation_model
geolocation/digital_elevation_model_srtm
geolocation/solar_elevation
geolocation/local_beam_elevation
geolocation/local_beam_elevation_error
geolocation/local_beam_azimuth
geolocation/local_beam_azimuth_error

L2A — Elevation and Height Metrics#

minimal#

shot_number
delta_time
quality_flag
degrade_flag
sensitivity
lat_lowestmode
lon_lowestmode
elev_lowestmode
rh
shot_number
delta_time
l2a_quality_flag_rel3
degrade_flag
sensitivity
lat_lowestmode
lon_lowestmode
elev_lowestmode
rh

default#

# Core (20)
beam
channel
degrade_flag
delta_time
digital_elevation_model
digital_elevation_model_srtm
elevation_bias_flag
selected_algorithm
selected_mode
num_detectedmodes
shot_number
solar_azimuth
solar_elevation
surface_flag
lat_lowestmode
lon_lowestmode
elev_lowestmode
quality_flag
rh
sensitivity

# Geolocation — stale flag (1)
geolocation/stale_return_flag

# Geolocation — algorithm a1 (13)
geolocation/elev_highestreturn_a1
geolocation/elev_lowestmode_a1
geolocation/elev_lowestreturn_a1
geolocation/lat_highestreturn_a1
geolocation/lat_lowestmode_a1
geolocation/lat_lowestreturn_a1
geolocation/lon_highestreturn_a1
geolocation/lon_lowestmode_a1
geolocation/lon_lowestreturn_a1
geolocation/num_detectedmodes_a1
geolocation/quality_flag_a1
geolocation/rh_a1
geolocation/sensitivity_a1

# Geolocation — algorithm a2 (13)
geolocation/elev_highestreturn_a2
geolocation/elev_lowestmode_a2
geolocation/elev_lowestreturn_a2
geolocation/lat_highestreturn_a2
geolocation/lat_lowestmode_a2
geolocation/lat_lowestreturn_a2
geolocation/lon_highestreturn_a2
geolocation/lon_lowestmode_a2
geolocation/lon_lowestreturn_a2
geolocation/num_detectedmodes_a2
geolocation/quality_flag_a2
geolocation/rh_a2
geolocation/sensitivity_a2

# Geolocation — algorithm a5 (13)
geolocation/elev_highestreturn_a5
geolocation/elev_lowestmode_a5
geolocation/elev_lowestreturn_a5
geolocation/lat_highestreturn_a5
geolocation/lat_lowestmode_a5
geolocation/lat_lowestreturn_a5
geolocation/lon_highestreturn_a5
geolocation/lon_lowestmode_a5
geolocation/lon_lowestreturn_a5
geolocation/num_detectedmodes_a5
geolocation/quality_flag_a5
geolocation/rh_a5
geolocation/sensitivity_a5

# rx_assess (7)
rx_assess/mean_64kadjusted
rx_assess/mean
rx_assess/sd_corrected
rx_assess/quality_flag
rx_assess/rx_assess_flag
rx_assess/rx_maxamp
rx_assess/rx_energy

# rx_processing — algorithm a1 (5)
rx_processing_a1/zcross
rx_processing_a1/toploc
rx_processing_a1/botloc
rx_processing_a1/rx_algrunflag
rx_processing_a1/selected_mode_flag

# rx_processing — algorithm a2 (5)
rx_processing_a2/zcross
rx_processing_a2/toploc
rx_processing_a2/botloc
rx_processing_a2/rx_algrunflag
rx_processing_a2/selected_mode_flag

# rx_processing — algorithm a5 (5)
rx_processing_a5/zcross
rx_processing_a5/toploc
rx_processing_a5/botloc
rx_processing_a5/rx_algrunflag
rx_processing_a5/selected_mode_flag

# land_cover_data (6)
land_cover_data/landsat_treecover
land_cover_data/landsat_water_persistence
land_cover_data/leaf_off_flag
land_cover_data/pft_class
land_cover_data/region_class
land_cover_data/urban_proportion
# Core (21) — dual quality flags; num_detectedmodes added
beam
channel
degrade_flag
delta_time
digital_elevation_model
digital_elevation_model_srtm
elevation_bias_flag
selected_algorithm
selected_mode
num_detectedmodes
shot_number
solar_azimuth
solar_elevation
surface_flag
lat_lowestmode
lon_lowestmode
elev_lowestmode
l2a_quality_flag_rel2
l2a_quality_flag_rel3
rh
sensitivity

# Geolocation — stale flag (1)
geolocation/stale_return_flag

# Geolocation — algorithm a1 (13)
geolocation/elev_highestreturn_a1
geolocation/elev_lowestmode_a1
geolocation/elev_lowestreturn_a1
geolocation/lat_highestreturn_a1
geolocation/lat_lowestmode_a1
geolocation/lat_lowestreturn_a1
geolocation/lon_highestreturn_a1
geolocation/lon_lowestmode_a1
geolocation/lon_lowestreturn_a1
geolocation/num_detectedmodes_a1
geolocation/l2a_quality_flag_rel3_a1
geolocation/rh_a1
geolocation/sensitivity_a1

# Geolocation — algorithm a2 (13)
geolocation/elev_highestreturn_a2
geolocation/elev_lowestmode_a2
geolocation/elev_lowestreturn_a2
geolocation/lat_highestreturn_a2
geolocation/lat_lowestmode_a2
geolocation/lat_lowestreturn_a2
geolocation/lon_highestreturn_a2
geolocation/lon_lowestmode_a2
geolocation/lon_lowestreturn_a2
geolocation/num_detectedmodes_a2
geolocation/l2a_quality_flag_rel3_a2
geolocation/rh_a2
geolocation/sensitivity_a2

# Geolocation — algorithm a5 (13)
geolocation/elev_highestreturn_a5
geolocation/elev_lowestmode_a5
geolocation/elev_lowestreturn_a5
geolocation/lat_highestreturn_a5
geolocation/lat_lowestmode_a5
geolocation/lat_lowestreturn_a5
geolocation/lon_highestreturn_a5
geolocation/lon_lowestmode_a5
geolocation/lon_lowestreturn_a5
geolocation/num_detectedmodes_a5
geolocation/l2a_quality_flag_rel3_a5
geolocation/rh_a5
geolocation/sensitivity_a5

# Geolocation — algorithm a10 (13) — new in v3
geolocation/elev_highestreturn_a10
geolocation/elev_lowestmode_a10
geolocation/elev_lowestreturn_a10
geolocation/lat_highestreturn_a10
geolocation/lat_lowestmode_a10
geolocation/lat_lowestreturn_a10
geolocation/lon_highestreturn_a10
geolocation/lon_lowestmode_a10
geolocation/lon_lowestreturn_a10
geolocation/num_detectedmodes_a10
geolocation/l2a_quality_flag_rel3_a10
geolocation/rh_a10
geolocation/sensitivity_a10

# rx_assess (7)
rx_assess/mean_64kadjusted
rx_assess/mean
rx_assess/sd_corrected
rx_assess/quality_flag
rx_assess/rx_assess_flag
rx_assess/rx_maxamp
rx_assess/rx_energy

# rx_processing — algorithm a1 (5)
rx_processing_a1/zcross
rx_processing_a1/toploc
rx_processing_a1/botloc
rx_processing_a1/rx_algrunflag
rx_processing_a1/selected_mode_flag

# rx_processing — algorithm a2 (5)
rx_processing_a2/zcross
rx_processing_a2/toploc
rx_processing_a2/botloc
rx_processing_a2/rx_algrunflag
rx_processing_a2/selected_mode_flag

# rx_processing — algorithm a5 (5)
rx_processing_a5/zcross
rx_processing_a5/toploc
rx_processing_a5/botloc
rx_processing_a5/rx_algrunflag
rx_processing_a5/selected_mode_flag

# rx_processing — algorithm a10 (5) — new in v3
rx_processing_a10/zcross
rx_processing_a10/toploc
rx_processing_a10/botloc
rx_processing_a10/rx_algrunflag
rx_processing_a10/selected_mode_flag

# land_cover_data (9) — adds phenology_phase, phenology_year, worldcover_class
land_cover_data/landsat_treecover
land_cover_data/landsat_water_persistence
land_cover_data/leaf_off_flag
land_cover_data/pft_class
land_cover_data/region_class
land_cover_data/urban_proportion
land_cover_data/phenology_phase
land_cover_data/phenology_year
land_cover_data/worldcover_class

L2B — Canopy Cover and Vertical Structure#

minimal#

shot_number
l2b_quality_flag
cover_z
fhd_normal
pai_z
pavd_z
cover
pai
shot_number
l2b_quality_flag_rel3
cover_z
fhd_normal
pai_z
pavd_z
cover
pai
rch

default#

# Core (22) — includes total cover, pai, omega, pgap_theta
algorithmrun_flag
cover
cover_z
fhd_normal
l2b_quality_flag
omega
pai
pai_z
pavd_z
pgap_theta
pgap_theta_error
rg
rossg
rv
rh100
rx_range_highestreturn
selected_rg_algorithm
selected_l2a_algorithm
sensitivity
shot_number
stale_return_flag
surface_flag

# geolocation (6) — no L2A duplicates
geolocation/digital_elevation_model
geolocation/elev_highestreturn
geolocation/lat_highestreturn
geolocation/local_beam_elevation
geolocation/lon_highestreturn
geolocation/solar_elevation

# land_cover_data (6)
land_cover_data/landsat_treecover
land_cover_data/landsat_water_persistence
land_cover_data/urban_proportion
land_cover_data/leaf_off_flag
land_cover_data/pft_class
land_cover_data/region_class

# rx_processing — algorithm a1 (6)
rx_processing/algorithmrun_flag_a1
rx_processing/pgap_theta_a1
rx_processing/rg_a1
rx_processing/rg_error_a1
rx_processing/rv_a1
rx_processing/rx_energy_a1

# rx_processing — algorithm a2 (6)
rx_processing/algorithmrun_flag_a2
rx_processing/pgap_theta_a2
rx_processing/rg_a2
rx_processing/rg_error_a2
rx_processing/rv_a2
rx_processing/rx_energy_a2

# rx_processing — algorithm a5 (6)
rx_processing/algorithmrun_flag_a5
rx_processing/pgap_theta_a5
rx_processing/rg_a5
rx_processing/rg_error_a5
rx_processing/rv_a5
rx_processing/rx_energy_a5
# Core (27) — dual quality flags; new metrics rch, rhov_rhog, rv_rg_r; sensitivity retained
cover
cover_z
fhd_normal
l2_algrunflag
l2b_quality_flag_rel2
l2b_quality_flag_rel3
omega
pai
pai_z
pavd_z
pgap_theta
pgap_theta_error
rch
rg
rhov_rhog
rhov_rhog_se
rossg
rv
rv_rg_r
rh100
rx_range_highestreturn
selected_rg_algorithm
selected_l2a_algorithm
sensitivity
shot_number
stale_return_flag
surface_flag

# geolocation (4) — v3 removes DEM and highestreturn fields; adds solar_azimuth
geolocation/local_beam_azimuth
geolocation/local_beam_elevation
geolocation/solar_azimuth
geolocation/solar_elevation

# land_cover_data (9) — adds phenology_phase, phenology_year, worldcover_class
land_cover_data/landsat_treecover
land_cover_data/landsat_water_persistence
land_cover_data/urban_proportion
land_cover_data/leaf_off_flag
land_cover_data/phenology_phase
land_cover_data/phenology_year
land_cover_data/pft_class
land_cover_data/region_class
land_cover_data/worldcover_class

# rx_processing — algorithms a1, a2, a5, a10 (7 each) — adds fhd_normal, rch per algo
rx_processing/fhd_normal_a1
rx_processing/l2_algrunflag_a1
rx_processing/rch_a1
rx_processing/rg_a1
rx_processing/rg_error_a1
rx_processing/rv_a1
rx_processing/rx_energy_a1
rx_processing/fhd_normal_a2
rx_processing/l2_algrunflag_a2
rx_processing/rch_a2
rx_processing/rg_a2
rx_processing/rg_error_a2
rx_processing/rv_a2
rx_processing/rx_energy_a2
rx_processing/fhd_normal_a5
rx_processing/l2_algrunflag_a5
rx_processing/rch_a5
rx_processing/rg_a5
rx_processing/rg_error_a5
rx_processing/rv_a5
rx_processing/rx_energy_a5
rx_processing/fhd_normal_a10
rx_processing/l2_algrunflag_a10
rx_processing/rch_a10
rx_processing/rg_a10
rx_processing/rg_error_a10
rx_processing/rv_a10
rx_processing/rx_energy_a10

v3 adds dual quality flags (l2b_quality_flag_rel2/rel3), new metrics (rch, rhov_rhog, rv_rg_r), restructures geolocation, expands land cover, and adds fhd_normal_aX/rch_aX to rx_processing.


L4A — Footprint-Level Aboveground Biomass#

minimal#

shot_number
agbd
agbd_se
l4_quality_flag
shot_number
agbd
agbd_se
l4a_quality_flag_rel3
elev_highestreturn_outlier_flag

default#

# Core (16) — no L2A duplicates (coords/time/degrade from L2A)
agbd
agbd_se
agbd_t
agbd_t_se
algorithm_run_flag
l2_quality_flag
l4_quality_flag
predict_stratum
predictor_limit_flag
response_limit_flag
selected_algorithm
sensitivity
shot_number
solar_elevation
surface_flag
xvar

# land_cover_data (6)
land_cover_data/landsat_treecover
land_cover_data/landsat_water_persistence
land_cover_data/leaf_off_flag
land_cover_data/pft_class
land_cover_data/region_class
land_cover_data/urban_proportion

# geolocation — algorithms a1, a2, a5 (4 each)
geolocation/elev_lowestmode_a1
geolocation/lat_lowestmode_a1
geolocation/lon_lowestmode_a1
geolocation/sensitivity_a1
geolocation/elev_lowestmode_a2
geolocation/lat_lowestmode_a2
geolocation/lon_lowestmode_a2
geolocation/sensitivity_a2
geolocation/elev_lowestmode_a5
geolocation/lat_lowestmode_a5
geolocation/lon_lowestmode_a5
geolocation/sensitivity_a5

# agbd_prediction — algorithms a1, a2, a5 (12 each)
agbd_prediction/agbd_a1
agbd_prediction/agbd_se_a1
agbd_prediction/agbd_t_a1
agbd_prediction/agbd_t_se_a1
agbd_prediction/algorithm_run_flag_a1
agbd_prediction/l2_quality_flag_a1
agbd_prediction/l4_quality_flag_a1
agbd_prediction/predictor_limit_flag_a1
agbd_prediction/response_limit_flag_a1
agbd_prediction/selected_mode_a1
agbd_prediction/selected_mode_flag_a1
agbd_prediction/xvar_a1
agbd_prediction/agbd_a2
agbd_prediction/agbd_se_a2
agbd_prediction/agbd_t_a2
agbd_prediction/agbd_t_se_a2
agbd_prediction/algorithm_run_flag_a2
agbd_prediction/l2_quality_flag_a2
agbd_prediction/l4_quality_flag_a2
agbd_prediction/predictor_limit_flag_a2
agbd_prediction/response_limit_flag_a2
agbd_prediction/selected_mode_a2
agbd_prediction/selected_mode_flag_a2
agbd_prediction/xvar_a2
agbd_prediction/agbd_a5
agbd_prediction/agbd_se_a5
agbd_prediction/agbd_t_a5
agbd_prediction/agbd_t_se_a5
agbd_prediction/algorithm_run_flag_a5
agbd_prediction/l2_quality_flag_a5
agbd_prediction/l4_quality_flag_a5
agbd_prediction/predictor_limit_flag_a5
agbd_prediction/response_limit_flag_a5
agbd_prediction/selected_mode_a5
agbd_prediction/selected_mode_flag_a5
agbd_prediction/xvar_a5
# Core (20) — no L2A duplicates; new v3 flags and prediction intervals; sensitivity retained
agbd
agbd_pi_lower
agbd_pi_upper
agbd_se
agbd_t
agbd_t_se
degrade_include_flag
elev_highestreturn_outlier_flag
l2_algrunflag
l4a_quality_flag_rel3
predict_stratum
predictor_limit_flag
response_limit_flag
selected_algorithm
selected_mode_flag
sensitivity
shot_number
solar_elevation
surface_flag
xvar

# land_cover_data (10) — new: pft_infilled_class, worldcover_class, phenology
land_cover_data/landsat_treecover
land_cover_data/landsat_water_persistence
land_cover_data/leaf_off_flag
land_cover_data/phenology_phase
land_cover_data/phenology_year
land_cover_data/pft_class
land_cover_data/pft_infilled_class
land_cover_data/region_class
land_cover_data/urban_proportion
land_cover_data/worldcover_class

# geolocation — algorithms a1, a2, a5, a10 (4 each)
geolocation/elev_lowestmode_a1
geolocation/lat_lowestmode_a1
geolocation/lon_lowestmode_a1
geolocation/sensitivity_a1
geolocation/elev_lowestmode_a2
geolocation/lat_lowestmode_a2
geolocation/lon_lowestmode_a2
geolocation/sensitivity_a2
geolocation/elev_lowestmode_a5
geolocation/lat_lowestmode_a5
geolocation/lon_lowestmode_a5
geolocation/sensitivity_a5
geolocation/elev_lowestmode_a10
geolocation/lat_lowestmode_a10
geolocation/lon_lowestmode_a10
geolocation/sensitivity_a10

# agbd_prediction — algorithms a1, a2, a5, a10 (11 each)
# v3: adds prediction intervals; removes algorithm_run_flag_a*, l2/l4_quality_flag_a*,
#     selected_mode_a*; renames to l2_algrunflag_a*
agbd_prediction/agbd_a1
agbd_prediction/agbd_pi_lower_a1
agbd_prediction/agbd_pi_upper_a1
agbd_prediction/agbd_se_a1
agbd_prediction/agbd_t_a1
agbd_prediction/agbd_t_se_a1
agbd_prediction/l2_algrunflag_a1
agbd_prediction/predictor_limit_flag_a1
agbd_prediction/response_limit_flag_a1
agbd_prediction/selected_mode_flag_a1
agbd_prediction/xvar_a1
agbd_prediction/agbd_a2
agbd_prediction/agbd_pi_lower_a2
agbd_prediction/agbd_pi_upper_a2
agbd_prediction/agbd_se_a2
agbd_prediction/agbd_t_a2
agbd_prediction/agbd_t_se_a2
agbd_prediction/l2_algrunflag_a2
agbd_prediction/predictor_limit_flag_a2
agbd_prediction/response_limit_flag_a2
agbd_prediction/selected_mode_flag_a2
agbd_prediction/xvar_a2
agbd_prediction/agbd_a5
agbd_prediction/agbd_pi_lower_a5
agbd_prediction/agbd_pi_upper_a5
agbd_prediction/agbd_se_a5
agbd_prediction/agbd_t_a5
agbd_prediction/agbd_t_se_a5
agbd_prediction/l2_algrunflag_a5
agbd_prediction/predictor_limit_flag_a5
agbd_prediction/response_limit_flag_a5
agbd_prediction/selected_mode_flag_a5
agbd_prediction/xvar_a5
agbd_prediction/agbd_a10
agbd_prediction/agbd_pi_lower_a10
agbd_prediction/agbd_pi_upper_a10
agbd_prediction/agbd_se_a10
agbd_prediction/agbd_t_a10
agbd_prediction/agbd_t_se_a10
agbd_prediction/l2_algrunflag_a10
agbd_prediction/predictor_limit_flag_a10
agbd_prediction/response_limit_flag_a10
agbd_prediction/selected_mode_flag_a10
agbd_prediction/xvar_a10

v3 renames algorithm_run_flagl2_algrunflag, adds prediction intervals (agbd_pi_lower/upper), and expands land cover with phenology and PFT infilled class.


L4C — Footprint-Level Structural Complexity#

minimal#

shot_number
wsci
wsci_xy
wsci_z
wsci_pi_lower
wsci_pi_upper
wsci_quality_flag
land_cover_data/worldcover_class
shot_number
wsci
wsci_xy
wsci_z
wsci_pi_lower
wsci_pi_upper
l4c_quality_flag_rel3
land_cover_data/worldcover_class
elev_highestreturn_outlier_flag

default#

# Core (18)
shot_number
wsci
wsci_xy
wsci_z
wsci_pi_lower
wsci_pi_upper
wsci_xy_pi_lower
wsci_xy_pi_upper
wsci_z_pi_lower
wsci_z_pi_upper
wsci_quality_flag
l2_quality_flag
algorithm_run_flag
sensitivity
surface_flag
selected_algorithm
solar_elevation
fhd_normal

# Land cover (7)
land_cover_data/landsat_treecover
land_cover_data/landsat_water_persistence
land_cover_data/leaf_off_flag
land_cover_data/pft_class
land_cover_data/region_class
land_cover_data/urban_proportion
land_cover_data/worldcover_class

# wsci_prediction — algorithms a1, a2, a5, a10 (11 each)
wsci_prediction/algorithm_run_flag_a1
wsci_prediction/wsci_quality_flag_a1
wsci_prediction/wsci_a1
wsci_prediction/wsci_pi_lower_a1
wsci_prediction/wsci_pi_upper_a1
wsci_prediction/wsci_xy_a1
wsci_prediction/wsci_xy_pi_lower_a1
wsci_prediction/wsci_xy_pi_upper_a1
wsci_prediction/wsci_z_a1
wsci_prediction/wsci_z_pi_lower_a1
wsci_prediction/wsci_z_pi_upper_a1
wsci_prediction/algorithm_run_flag_a2
wsci_prediction/wsci_quality_flag_a2
wsci_prediction/wsci_a2
wsci_prediction/wsci_pi_lower_a2
wsci_prediction/wsci_pi_upper_a2
wsci_prediction/wsci_xy_a2
wsci_prediction/wsci_xy_pi_lower_a2
wsci_prediction/wsci_xy_pi_upper_a2
wsci_prediction/wsci_z_a2
wsci_prediction/wsci_z_pi_lower_a2
wsci_prediction/wsci_z_pi_upper_a2
wsci_prediction/algorithm_run_flag_a5
wsci_prediction/wsci_quality_flag_a5
wsci_prediction/wsci_a5
wsci_prediction/wsci_pi_lower_a5
wsci_prediction/wsci_pi_upper_a5
wsci_prediction/wsci_xy_a5
wsci_prediction/wsci_xy_pi_lower_a5
wsci_prediction/wsci_xy_pi_upper_a5
wsci_prediction/wsci_z_a5
wsci_prediction/wsci_z_pi_lower_a5
wsci_prediction/wsci_z_pi_upper_a5
wsci_prediction/algorithm_run_flag_a10
wsci_prediction/wsci_quality_flag_a10
wsci_prediction/wsci_a10
wsci_prediction/wsci_pi_lower_a10
wsci_prediction/wsci_pi_upper_a10
wsci_prediction/wsci_xy_a10
wsci_prediction/wsci_xy_pi_lower_a10
wsci_prediction/wsci_xy_pi_upper_a10
wsci_prediction/wsci_z_a10
wsci_prediction/wsci_z_pi_lower_a10
wsci_prediction/wsci_z_pi_upper_a10
# Core (20) — dual quality flags; new v3-specific flags
shot_number
wsci
wsci_xy
wsci_z
wsci_pi_lower
wsci_pi_upper
wsci_xy_pi_lower
wsci_xy_pi_upper
wsci_z_pi_lower
wsci_z_pi_upper
l4c_quality_flag_rel2
l4c_quality_flag_rel3
l2_algrunflag
algorithm_run_flag
elev_highestreturn_outlier_flag
degrade_include_flag
surface_flag
selected_algorithm
solar_elevation
fhd_normal

# Land cover (9) — adds phenology_phase, phenology_year
land_cover_data/landsat_treecover
land_cover_data/landsat_water_persistence
land_cover_data/leaf_off_flag
land_cover_data/phenology_phase
land_cover_data/phenology_year
land_cover_data/pft_class
land_cover_data/region_class
land_cover_data/urban_proportion
land_cover_data/worldcover_class

# wsci_prediction — algorithms a1, a2, a5, a10 (11 each) — wsci_quality_flag_aX → l4c_quality_flag_rel3_aX
wsci_prediction/algorithm_run_flag_a1
wsci_prediction/l4c_quality_flag_rel3_a1
wsci_prediction/wsci_a1
wsci_prediction/wsci_pi_lower_a1
wsci_prediction/wsci_pi_upper_a1
wsci_prediction/wsci_xy_a1
wsci_prediction/wsci_xy_pi_lower_a1
wsci_prediction/wsci_xy_pi_upper_a1
wsci_prediction/wsci_z_a1
wsci_prediction/wsci_z_pi_lower_a1
wsci_prediction/wsci_z_pi_upper_a1
wsci_prediction/algorithm_run_flag_a2
wsci_prediction/l4c_quality_flag_rel3_a2
wsci_prediction/wsci_a2
wsci_prediction/wsci_pi_lower_a2
wsci_prediction/wsci_pi_upper_a2
wsci_prediction/wsci_xy_a2
wsci_prediction/wsci_xy_pi_lower_a2
wsci_prediction/wsci_xy_pi_upper_a2
wsci_prediction/wsci_z_a2
wsci_prediction/wsci_z_pi_lower_a2
wsci_prediction/wsci_z_pi_upper_a2
wsci_prediction/algorithm_run_flag_a5
wsci_prediction/l4c_quality_flag_rel3_a5
wsci_prediction/wsci_a5
wsci_prediction/wsci_pi_lower_a5
wsci_prediction/wsci_pi_upper_a5
wsci_prediction/wsci_xy_a5
wsci_prediction/wsci_xy_pi_lower_a5
wsci_prediction/wsci_xy_pi_upper_a5
wsci_prediction/wsci_z_a5
wsci_prediction/wsci_z_pi_lower_a5
wsci_prediction/wsci_z_pi_upper_a5
wsci_prediction/algorithm_run_flag_a10
wsci_prediction/l4c_quality_flag_rel3_a10
wsci_prediction/wsci_a10
wsci_prediction/wsci_pi_lower_a10
wsci_prediction/wsci_pi_upper_a10
wsci_prediction/wsci_xy_a10
wsci_prediction/wsci_xy_pi_lower_a10
wsci_prediction/wsci_xy_pi_upper_a10
wsci_prediction/wsci_z_a10
wsci_prediction/wsci_z_pi_lower_a10
wsci_prediction/wsci_z_pi_upper_a10

v3 adds dual quality flags, drops sensitivity (from L2A v3 essentials), expands land cover with phenology, and renames wsci_quality_flag_aXl4c_quality_flag_rel3_aX in wsci_prediction.


Quality Filtering#

The --quality / -y flag applies recommended quality conditions for each product present in your query. L2A conditions (including degrade_flag == 0) are always applied since L2A data is present in every database.

Product

Version

Conditions Applied

L1B

v2

stale_return_flag == 0

L1B

v3

stale_return_flag == 0 AND rx_clipflag == 0

L2A (always)

v2

quality_flag == 1 AND degrade_flag == 0

L2A (always)

v3

l2a_quality_flag_rel3 == 1 AND degrade_flag == 0

L2B

v2

l2b_quality_flag == 1

L2B

v3

l2b_quality_flag_rel3 == 1

L4A

v2

l4_quality_flag == 1

L4A

v3

l4a_quality_flag_rel3 == 1 AND elev_highestreturn_outlier_flag == 0

L4C

v2

wsci_quality_flag == 1 (includes degrade+sensitivity+surface internally)

L4C

v3

l4c_quality_flag_rel3 == 1 AND elev_highestreturn_outlier_flag == 0

degrade_flag == 0 is always applied through L2A regardless of which products are selected. L4C v2’s wsci_quality_flag already encapsulates degrade, sensitivity, and surface checks internally.


Source Files#

The default preset for each product/version is loaded directly from a plain-text file shipped with the package. You can inspect or copy these as a starting point for custom variable lists:

Product

Version

Source file

L1B

v2

src/gedih3/data/GEDI01_B_DATASETS_002.txt

L1B

v3

src/gedih3/data/GEDI01_B_DATASETS_003.txt

L2A

v2

src/gedih3/data/GEDI02_A_DATASETS_002.txt

L2A

v3

src/gedih3/data/GEDI02_A_DATASETS_003.txt

L2B

v2

src/gedih3/data/GEDI02_B_DATASETS_002.txt

L2B

v3

src/gedih3/data/GEDI02_B_DATASETS_003.txt

L4A

v2

src/gedih3/data/GEDI04_A_DATASETS_002.txt

L4A

v3

src/gedih3/data/GEDI04_A_DATASETS_003.txt

L4C

v2

src/gedih3/data/GEDI04_C_DATASETS_002.txt

L4C

v3

src/gedih3/data/GEDI04_C_DATASETS_003.txt

The minimal preset is hardcoded in src/gedih3/config.py under _GEDI_MIN_VARS.