| Celeritas 0.7.0-dev.170+develop.df22d2a88
    | 
Calculator for UNIFIED reflection model. More...
#include <ReflectionFormCalculator.hh>
| Public Member Functions | |
| CELER_FUNCTION | ReflectionFormCalculator (Real3 const &direction, Real3 const &polarization, Real3 const &global_normal, Real3 const &facet_normal) | 
| Construct calculator from photon and surface data. | |
| CELER_FUNCTION | ReflectionFormCalculator (Real3 const &inc_direction, ParticleTrackView const &photon, SurfacePhysicsTrackView const &surface_physics) | 
| Construct calculator from a given track's views. | |
| CELER_FUNCTION SurfaceInteraction | calc_specular_spike () const | 
| Calculate specular spike reflection. | |
| CELER_FUNCTION SurfaceInteraction | calc_specular_lobe () const | 
| Calculate specular lobe reflection. | |
| CELER_FUNCTION SurfaceInteraction | calc_backscatter () const | 
| Calculate back-scattering reflection. | |
| template<class Engine > | |
| CELER_FUNCTION SurfaceInteraction | sample_lambertian_reflection (Engine &rng) const | 
| Sample diffuse Lambertian reflection. | |
Calculator for UNIFIED reflection model.
The model specifies 4 different reflection modes:
| 
 | inline | 
Calculate back-scattering reflection.
The photon direction and polarization are reversed.
| 
 | inline | 
Calculate specular lobe reflection.
This is geometric reflection about the facet normal.
| 
 | inline | 
Calculate specular spike reflection.
This is geometric reflection about the global normal.
| 
 | inline | 
Sample diffuse Lambertian reflection.
Ideal diffuse reflection following Lambert's cosine law.