|
Celeritas 0.7.0-dev.169+develop.bdc0041f6
|
Parameterization of the UNIFIED reflection model. More...
#include <SurfacePhysics.hh>
Public Types | |
Type aliases | |
| using | Mode = optical::ReflectionMode |
| using | ReflectionGrids = EnumArray< Mode, Grid > |
Public Member Functions | |
| operator bool () const | |
Static Public Member Functions | |
| static ReflectionForm | from_spike () |
| Return a specular spike reflection form. | |
| static ReflectionForm | from_lobe () |
| Return a specular lobe reflection form. | |
| static ReflectionForm | from_lambertian () |
| Return a Lambertian (diffuse) reflection form. | |
| static ReflectionForm | from_mode (Mode only_mode) |
| Construct a reflection form with only one active grid. | |
Public Attributes | |
| ReflectionGrids | reflection_grids |
| Probability of reflection for each reflection mode. | |
Parameterization of the UNIFIED reflection model.
The reflection grids store the probability of each angular distribution in the UNIFIED model:
specular_spike : Reflection probability at the average surface normal.specular_lobe : Reflection probability at the micro facet normal.backscatter : Probability of backscattering after reflecting within a deep groove.The sum of all three parameters must be <= 1 at every grid point, with the remainder being the probability of diffuse scattering.