stilt.config.Variant#

class stilt.config.Variant(name: 'str', met: 'str', met_config: 'Any', transport: 'TransportConfig', model: 'ModelInfo', realizations: 'int | None' = None, footprint: 'FootprintConfig | None' = None, geometry_hash: 'str | None' = None) → None[source]#

One variant, resolved: its configs, its met, the model build, and its hashes.

Get one from project.variants or sim.variant. A variant with realizations: N is an ensemble: its simulations run N times, realization k with seed + k (transport_for()), and its results share one folder, a realization=k partition each.

Variants with equal particles_hash share one run of the transport model per receptor (and realization) and differ only in their footprints. The hashes are computed once. Change a variant with dataclasses.replace(), which computes them again.

Attributes#

footprint_hash

Hash of the particles and footprint_settings, which finds the footprint folder.

footprint_settings

The settings that identify this variant's footprints, or None for particles only.

met_settings

What a run records of the met, its config's settings().

particles_hash

Hash of run_settings, which finds the particles folder.

realization_numbers

The realizations its simulations run as, from 0 to N - 1, or [None] for a single run.

run_settings

The settings that identify this variant's particles, as _settings.yaml records them.

Methods#

transport_for(realization)

Return the transport config realization realization runs with.