CF Compliance
All NetCDF outputs follow CF Conventions 1.8, so the files are readable by CDO, NCO, xarray, netCDF4, GDAL, and any other CF-aware tool without custom handling.
Encoding
netcdf_encoding:
precipitation:
dtype: "float32"
zlib: true
_FillValue: .nanfloat32keeps file size manageable (half offloat64) without losing meaningful precision for precipitation in mm.zlibcompression gives typically 3-5x reduction on precipitation fields.NaNis the fill value for ocean and outside-AOI cells. This is more portable than-9999and works directly with xarray’s masked operations.
Required CF attributes
Every output NetCDF carries the following. Note that precipitation deliberately carries no standard_name: the quantity has no controlled CF term that matches it exactly, and CF treats standard_name as optional. Omitting it is correct; asserting a term that may not match would not be. long_name carries the description, and the correction method appears in the filename and the title. units follow the IMERG-L source. time carries no attributes beyond its coordinate values.
| Variable / Global | Attribute | Example |
|---|---|---|
precipitation |
long_name |
Corrected daily mean precipitation rate estimate |
precipitation |
units |
mm/day |
precipitation |
_FillValue |
NaN |
lat |
standard_name |
latitude |
lat |
units |
degrees_north |
lon |
standard_name |
longitude |
lon |
units |
degrees_east |
| Global | Conventions |
CF-1.8 |
| Global | title |
Hybrid Bias Correction - LSEQM+DL |
| Global | source |
IMERG Late Run V07 corrected with CPC-UNI |
| Global | history |
timestamped processing record |
| Global | references |
Zenodo dataset DOI and manuscript DOI (10.3390/rs18142298) |
| Global | method |
one of ls, lseqm, lseqmdl |
Reproducibility metadata
Corrected precipitation files written by v2026.07 and later also carry non-CF attributes recording the run context:
framework_version- DateVer tag (e.g.v2026.07), orunknownif the package is not installed under its distribution namegit_commit- short SHA of the source revision, orunknownoutside a git checkoutrun_timestamp- ISO 8601blend_alpha,gpd_threshold_percentile,saturation_count- the three sensitivity parameters, read from the active config at write time
These are not required by CF but make a downstream user’s life much easier when comparing files produced months apart.
The archived Indonesia bundle on Zenodo was produced before this release, so its files do not carry these attributes. Every lookup degrades to unknown rather than failing, so a missing git binary or an uninstalled package never interrupts a run.
How to inspect
ncdump -h <file>.nc4 # full header
xr.open_dataset(<file>).attrs # all globalsOr browse interactively in Panoply for a quick visual.