Extremum structures

Extremum structures are spatial data structures that store local majorant and minorant bounds of a heterogeneous medium’s extinction coefficient. They are used to implement tracking estimators with locally adaptive majorants, which significantly reduce wasted null-collision samples compared to using a global majorant.

Added in version 0.5.0.

Extremum grid structure (extremum_grid)

Parameter

Type

Description

Flags

volume

volume

Extinction coefficient volume to build extremum grid from.

P

to_world

transform

Specifies the 4×4 transformation matrix of the underlying volume.

scale

float

Scale factor for the extremum values. Default: 1.0

resolution

vector

Grid resolution along the XYZ axis. Does not have to be a multiple of the underlying volume. Set to [0,0,0] to trigger an adaptive resolution routine. Default: [1,1,1]

This plugin creates a regular grid structure storing local extremum values for efficient delta tracking in heterogeneous media. The grid is constructed by querying the extinction volume’s extrema over each grid cell.

At runtime, DDA (Digital Differential Analyzer) traversal through the grid provides tight-fitting local extrema, dramatically reducing null collisions in media with high spatial variance (e.g. clouds, fog).

Extremum spherical structure (extremum_spherical)

Parameter

Type

Description

Flags

volume

volume

Spherical-coordinates volume to build extremum from

P

to_world

transform

Specifies an optional 4×4 transformation matrix that will be applied to volume coordinates.

rmin

float

Inner shell radius. It should preferably match the underlying volume. Default: 0

rmax

float

Outer shell radius. It should preferably match the underlying volume. Default: 1

resolution

vector

Grid resolution as \((r, \theta, \phi)\). Grids with variations on only the radial resolution have optimized traversal. Default: [1,1,1]

scale

float

Scale factor for extinction coefficients. Default: 1.0

This plugin creates a spherical extremum structure storing local extremum values for efficient delta tracking in spherical media. The grid is constructed by querying the underlying volume’s extrema over each spherical cell.

At runtime, concentric shell traversal provides tight-fitting local extremum for radially-varying media such as planetary atmospheres.

Warning

This extremum only implements radial extremum variations.

Extremum global structure (extremum_global)

Parameter

Type

Description

Flags

volume

volume

Extinction coefficient volume to build extremum grid from.

P

scale

float

Scale factor for the extremum values. Default: 1.0

This plugin holds the global minorant and majorant values of a volume. At runtime, traversal is performed via a single segment determined by the passed mint and maxt values.