- Home
- Documentation
- API reference
- Atmosphere
- hyperproc.atmos._runner
hyperproc.atmos._runner¶
Source-derived reference
Generated from the current hyperproc 0.1.2 checkout.
Implementation: hyperproc/atmos/_runner.py. Signatures, defaults, docstrings, and expandable source are extracted statically; the module is not imported or executed. Names beginning with _ are implementation details, not a stable public API.
Use the function signature as the authority for individual parameter defaults and return annotations. Original docstrings sometimes group parameter names or wrap return descriptions across lines; these descriptions are preserved rather than inferred or rewritten.
python -m hyperproc.atmos._runner: apply_oe with the config adjusted.
Usage::
python -m hyperproc.atmos._runner [--engine 6s --aerosol-model maritime --ozone 0.28]
[--set forward_model/atmosphere/statevector/AOT550/prior_sigma=1.0]
-- <every apply_oe argument, --emulator_base included>
Two things it can change that apply_oe does not expose: which engine
fills the look-up table, and any single value of the ISOFIT configuration
(--set), such as the aerosol prior.
apply_oe is driven exactly as for sRTMnet (the --emulator_base keeps it
on that code path, which also sets the one-component forward model). Two hooks
change what runs underneath:
template_construction.build_configis wrapped so that, right afterapply_oewrites a config (the water-vapour presolve and the full one), the sRTMnet engine block is replaced by a 6S or libRadtran block. Geometry and date for 6S come from the MODTRAN templateapply_oealso writes, the same way ISOFIT's own sRTMnet driver derives its 6S runs.- ISOFIT's engine registry maps
6sandLibRadTranto the hyperproc subclasses with the aerosol model exposed (:mod:hyperproc.atmos.engines).
Everything downstream (superpixel inversions, analytical line) is unchanged and reads the swapped config.
libradtran_dir() -> Path
¶
The libRadtran tree holding bin/uvspec under ISOFIT's asset base.
Source code in hyperproc/atmos/_runner.py
apply_overrides(cfg: dict, overrides: dict)
¶
Set values in a config by slash-separated path.
Returns (changed, missing). A path that this config does not have is
reported rather than raised: apply_oe writes two configs and the
water-vapour presolve has no aerosol term, so an aerosol override applies
to one of them only. The caller checks that every override reached at
least one config.
Source code in hyperproc/atmos/_runner.py
rewrite_config(cfg_path: str | Path, engine: str | None, settings: dict, overrides: dict | None = None) -> None
¶
Adjust one ISOFIT config: swap the engine block and apply --set overrides.
Source code in hyperproc/atmos/_runner.py
install(engine: str | None, settings: dict, overrides: dict | None = None) -> None
¶
Wrap build_config so every config apply_oe writes is adjusted.