eradiate.scenes.phase.HenyeyGreensteinPhaseFunction#

class eradiate.scenes.phase.HenyeyGreensteinPhaseFunction(id='phase', g=0.0)[source]#

Bases: eradiate.scenes.phase._core.PhaseFunction

Henyey-Greenstein phase function [hg].

The Henyey-Greenstein phase function [HG41] models scattering in an isotropic medium. The scattering pattern is controlled by its \(g\) parameter, which is equal to the phase function’s asymmetry parameter (the mean cosine of the scattering angle): a positive (resp. negative) value corresponds to predominant forward (resp. backward) scattering.

Parameters
  • id (str, optional, default: "phase") – User-defined object identifier.

  • g (Spectrum or dict or float, optional, default: 0.0) – Asymmetry parameter. Must be dimensionless. Must be in \(]-1, 1[\).

Fields
  • id (str or None) – User-defined object identifier.

  • g (Spectrum) – Asymmetry parameter.

kernel_dict(ctx)[source]#

Return a dictionary suitable for kernel scene configuration.

Parameters

ctx (KernelDictContext) – A context data structure containing parameters relevant for kernel dictionary generation.

Returns

KernelDict – Kernel dictionary which can be loaded as a Mitsuba object.