eradiate.scenes.spectra.AirScatteringCoefficientSpectrum#

class eradiate.scenes.spectra.AirScatteringCoefficientSpectrum(id=None)[source]#

Bases: Spectrum

Air scattering coefficient spectrum [air_scattering_coefficient].

Parameters:

id (str, optional) – Identifier of the current scene element.

Fields:

id (str or None) – Identifier of the current scene element.

Notes

Evaluation is as follows:

  • in mono_* modes, the spectrum is evaluated at the spectral context wavelength;

  • in ckd_* modes, the spectrum is evaluated as the average value over the spectral context bin (the integral is computed using a trapezoid rule).

eval(spectral_ctx)#

Evaluate spectrum based on a spectral context. This method dispatches evaluation to specialized methods depending on the active mode.

Parameters:

spectral_ctx (SpectralContext) – A spectral context data structure containing relevant spectral parameters (e.g. wavelength in monochromatic mode, bin and quadrature point index in CKD mode).

Returns:

value (quantity) – Evaluated spectrum as a scalar.

eval_ckd(*bindexes)[source]#

Evaluate spectrum in CKD modes.

Parameters:

*bindexes (Bindex) – One or several CKD bindexes for which to evaluate the spectrum.

Returns:

value (quantity) – Evaluated spectrum as an array with shape (len(bindexes),).

eval_mono(w)[source]#

Evaluate spectrum in monochromatic modes.

Parameters:

w (quantity) – Wavelength values at which the spectrum is to be evaluated.

Returns:

value (quantity) – Evaluated spectrum as an array with the same shape as w.

integral(wmin, wmax)[source]#

Compute the integral of the spectrum on a given interval.

Parameters:
  • wmin (quantity) – Integration interval’s lower bound.

  • wmax (quantity) – Integration interval’s upper bound.

Returns:

value (quantity) – Computed integral value.

traverse(callback)#

Traverse this scene element and collect kernel dictionary template and parameter update map contributions.

Parameters:

callback (SceneTraversal) – Callback data structure storing the collected data.

update()#

Enforce internal state consistency. This method should be called when fields are modified. It is automatically called as a post-init step.

property objects#

Map of child objects associated with this scene element.

Returns:

dict – A dictionary mapping object names to a corresponding object to be inserted in the Eradiate scene graph.

property params#
Returns:

dict[str, UpdateParameter] or None – A dictionary mapping parameter paths, consisting of dot-separated strings, to a corresponding update protocol.

property template#

Kernel dictionary template contents associated with this scene element.

Returns:

dict – A flat dictionary mapping dot-separated strings describing the path of an item in the nested scene dictionary to values. Values may be objects which can be directly used by the mitsuba.load_dict() function, or InitParameter instances which must be rendered.