Physics Theory
This section describes the physical principles and equations implemented in L-SURF.
Electromagnetic Wave Propagation
Light as Rays
L-SURF uses geometric optics (ray tracing) which is valid when:
where \(\lambda\) is the wavelength and \(L\) is the characteristic size of obstacles. For visible light (400-700 nm) interacting with surfaces at meter scales, this is well satisfied.
Refractive Index
The refractive index \(n\) relates the speed of light in a medium to the vacuum speed:
where:
\(c\) = speed of light in vacuum (2.998 × 10⁸ m/s)
\(v\) = phase velocity in the medium
\(\lambda\) = wavelength
\(\vec{r}\) = position (for spatially-varying media)
Dispersion Models
Sellmeier Formula (for optical glasses):
where \(B_i\) and \(C_i\) are material-specific coefficients.
Cauchy Formula (empirical approximation):
Fresnel Equations
At an interface between two media, light splits into reflected and transmitted components. The amplitudes are governed by the Fresnel equations.
Geometry
↓ incident (θᵢ) ↑ reflected (θᵣ)
\ /
\ /
\ /
\ n₁ /
═════════════════════════════════ interface
n₂
|
| transmitted (θₜ)
↓
\(\theta_i\) = incident angle (from normal)
\(\theta_r\) = reflected angle (from normal)
\(\theta_t\) = transmitted (refracted) angle
\(n_1\) = refractive index of first medium
\(n_2\) = refractive index of second medium
Snell’s Law
The refraction angle is determined by Snell’s law:
Total Internal Reflection
When \(n_1 > n_2\) and \(\sin\theta_i > n_2/n_1\), total internal reflection occurs and no light is transmitted.
Fresnel Reflection Coefficients
The Fresnel equations give the amplitude reflection coefficients for s and p polarizations:
S-polarization (perpendicular to plane of incidence):
P-polarization (parallel to plane of incidence):
Reflectance (intensity ratios):
Fresnel Transmission Coefficients
Transmittance (accounting for energy flux):
Energy Conservation
Unpolarized Light
For unpolarized or randomly polarized light:
Brewster’s Angle
At Brewster’s angle, p-polarized light has zero reflection:
For air-water interface: \(\theta_B \approx 53.1°\)
Polarization Tracking
L-SURF supports polarization tracking for more accurate simulations.
Polarization State
A ray’s polarization is described by:
S-component intensity: \(I_s\)
P-component intensity: \(I_p\)
Total intensity: \(I = I_s + I_p\)
At each interface, components are multiplied by Fresnel coefficients:
Multiple Scattering
Ray Splitting
At each surface interaction, L-SURF can:
Single mode: Generate only reflected OR refracted ray
Splitting mode: Generate both reflected AND refracted rays
Splitting mode accurately tracks energy flow through multiple bounces.
Intensity Tracking
Ray intensity is tracked through propagation:
where:
\(I_0\) = initial intensity
\(R_i\) = reflectance at bounce \(i\)
\(\alpha_i\) = absorption coefficient in medium \(i\)
\(d_i\) = distance traveled in medium \(i\)
\(N\) = number of bounces
Termination Criteria
Rays are terminated when:
Intensity drops below threshold (typically 10⁻⁶ of initial)
Maximum bounce count reached
Ray exits simulation domain
Ray trapped in total internal reflection cycle
Time-of-Flight
Ray Timing
Each ray tracks its accumulated time-of-flight:
where:
\(t_0\) = initial time (emission time)
\(d_i\) = path length in segment \(i\)
\(v_i = c/n_i\) = phase velocity in segment \(i\)
\(c\) = speed of light in vacuum
Temporal Coherence
For pulsed sources, the initial time \(t_0\) can vary across the beam to model:
Pulse duration
Wavefront curvature
Beam divergence effects
Detection Time
At a detector, the time-of-arrival is:
This enables:
Time-resolved detection
Pulse spreading analysis
Group velocity dispersion studies
Wave Surface Interaction
Normal Vector Calculation
For curved surfaces (e.g., Gerstner waves), the local normal is computed from the surface gradient:
where \(f(\vec{r}) = 0\) defines the surface.
For Gerstner waves:
The normal vector includes contributions from all wave components:
Shadowing and Blocking
For rough surfaces, geometric shadowing/blocking occurs when:
Shadowing: Incident ray blocked by surface feature
Blocking: Reflected/refracted ray blocked by surface
L-SURF handles this through accurate ray-surface intersection testing.
Implementation References
The implementation follows standard texts:
Born & Wolf - Principles of Optics (7th ed.) - Fresnel equations
Hecht - Optics (5th ed.) - Electromagnetic wave theory
Ishimaru - Wave Propagation and Scattering in Random Media - Rough surface scattering
Tessendorf - Simulating Ocean Water (2001) - Gerstner waves