eradiate.scenes.bsdfs.RPVBSDF
eradiate.scenes.bsdfs.RPVBSDF#
- class eradiate.scenes.bsdfs.RPVBSDF(id='bsdf', rho_0=0.183, rho_c=None, k=0.78, g=- 0.1)[source]#
Bases:
eradiate.scenes.bsdfs._core.BSDF
RPV BSDF [
rpv
].This BSDF implements the Rahman-Pinty-Verstraete (RPV) reflection model [PRV+00, RPV93]. It notably features a controllable back-scattering lobe (hot spot) characteristic of many natural land surfaces and is frequently used in Earth observation because of its simple parametrisation.
- Parameters
id (
str
, optional, default:"bsdf"
) – User-defined object identifier.rho_0 (
Spectrum
ordict
orfloat
, optional, default:0.183
) – Amplitude parameter. Must be dimensionless. Should be in \([0, 1]\).rho_c (
Spectrum
ordict
orfloat
orNone
, optional, default:None
) – Hot spot parameter. Must be dimensionless. Should be in \([0, 1]\). If unset, \(\rho_\mathrm{c}\) defaults to the kernel plugin default (equal to \(\rho_0\)).k (
Spectrum
ordict
orfloat
, optional, default:0.780
) – Bowl-shape parameter. Must be dimensionless. Should be in \([0, 2]\).g (
Spectrum
ordict
orfloat
, optional, default:-0.1
) – Asymmetry parameter. Must be dimensionless. Should be in \([-1, 1]\).
- Fields
Notes
The default configuration is typical of grassland in the visible domain ([RPV93], Table 1).
Parameter names are defined as per the symbols used in the Eradiate Scientific Handbook [Tea20].
- 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.