vdem_synthesis#

muse.synthesis.vdem_synthesis(
raster,
response,
*,
sum_over=('logT', 'vdop', 'slit'),
cuda_device=None,
backend='numpy',
)#

Given a VDEM raster, and response function(s) synthesize observables by computing the tensor product.

Parameters:
  • raster (Dataset) – VDEM raster. vdem must define units in the attrs.

  • response (Dataset) – Response functions. SG_resp, line_wvl, and SG_wvl must define units in the attrs.

  • sum_over (Sequence[str]) – Dimensions to sum over, by default DEFAULTS_MUSE.sum_over_dims_synthesis=('logT', 'vdop', 'slit').

  • cuda_device (int | None) – CUDA device index for GPU use (requires backend="jax" or "torch"), defaults to None (CPU).

  • backend (str) – "numpy" (default), "jax", or "torch". JAX and Torch are opt-in: neither is selected implicitly, so results do not change with what is installed. The JAX and Torch paths downcast float64 inputs to float32; the NumPy path keeps the input dtype.

Returns:

Dataset of the spectrum on the detector.

Return type:

Dataset