skyscapes.physical_model.exojax.components.clouds#
Cloud opacity components.
Attributes#
Classes#
Module Contents#
- skyscapes.physical_model.exojax.components.clouds.DEFAULT_CLOUD_SSA = 1.0#
- skyscapes.physical_model.exojax.components.clouds.DEFAULT_CLOUD_ASYMMETRY_G = 0.85#
- skyscapes.physical_model.exojax.components.clouds.DEFAULT_CLOUD_LOG_SIGMA = 0.3#
- class skyscapes.physical_model.exojax.components.clouds.GrayCloud[source]#
Bases:
skyscapes.physical_model.exojax.components.base.AbstractCloudsSingle-layer gray-scattering cloud.
The total cloud scattering optical depth is distributed across layers via a Gaussian in log-pressure (softmax-normalised so the weights are well-defined even when the cloud pressure is far outside the layer grid – useful for ablation runs with
log_opt_depth = -inf).Wavelength-grey: the cloud’s cross-section is constant across the spectrum. A Mie cloud with composition-dependent scattering would be a separate component implementing the same contract.
- Attributes (PyTree leaves, fittable):
log_pressure_bar: Log10 cloud-deck pressure [bar], shape
(K,). log_opt_depth: Log10 of the vertically-integrated cloudscattering optical depth, shape
(K,).- Static attributes (configuration):
ssa: Single-scattering albedo (default 1.0, pure scattering). g: Asymmetry parameter (default 0.85, forward-peaked). log_sigma: Vertical-distribution width in log10(P) [dex].
- log_pressure_bar: jaxtyping.Array#
- log_opt_depth: jaxtyping.Array#
- compute(log_pressure_bar_scalar, log_opt_depth_scalar, pressure, n_nu)[source]#
Gray cloud contribution at a single pressure level.
- Parameters:
log_pressure_bar_scalar (jaxtyping.Array)
log_opt_depth_scalar (jaxtyping.Array)
pressure (jaxtyping.Array)
n_nu (int)
- Return type:
skyscapes.physical_model.exojax.components.base.Contribution
- class skyscapes.physical_model.exojax.components.clouds.NoCloud[source]#
Bases:
skyscapes.physical_model.exojax.components.base.AbstractCloudsDisable cloud opacity: zero contribution.
Equivalent to a
GrayCloudwithlog_opt_depth = -infbut structurally explicit, so thatisinstance(atm.clouds, NoCloud)documents intent in code that builds cloud-free atmospheres.- compute(log_pressure_bar_scalar, log_opt_depth_scalar, pressure, n_nu)[source]#
Return zero-everywhere cloud contribution.
log_pressure_bar_scalarandlog_opt_depth_scalarare accepted for parity withGrayCloudbut unused.- Parameters:
log_pressure_bar_scalar (jaxtyping.Array)
log_opt_depth_scalar (jaxtyping.Array)
pressure (jaxtyping.Array)
n_nu (int)
- Return type:
skyscapes.physical_model.exojax.components.base.Contribution