compute_ray_opacity#

exo_skryer.opacity_ray.compute_ray_opacity(state: Dict[str, Array], opac: Dict[str, Array], params: Dict[str, Array]) Array[source]#

Compute Rayleigh scattering mass opacity for the configured scatterers.

This function converts precomputed Rayleigh scattering cross-sections from exo_skryer.registry_ray into a layer-by-wavelength mass opacity in cm² g⁻¹. If no Rayleigh data are loaded, it returns zeros with the expected shape.

Parameters:
statedict[str, ndarray]

Atmospheric state dictionary containing:

  • wlndarray, shape (nwl,)

    Forward-model wavelength grid in microns.

  • nd_layndarray, shape (nlay,)

    Layer total number density in cm⁻³.

  • rho_layndarray, shape (nlay,)

    Layer mass density in g cm⁻³.

  • vmr_laydict[str, ndarray]

    Volume mixing ratios for each Rayleigh species. Keys must match registry_ray.ray_species_names(). Values may be scalars or arrays with shape (nlay,).

paramsdict[str, ndarray]

Parameter dictionary (unused; kept for API compatibility).

Returns:
kappa_rayndarray, shape (nlay, nwl)

Rayleigh scattering mass opacity in cm² g⁻¹ at each layer and wavelength.