Cloud native EDA tools & pre-optimized hardware platforms
In photonics/optical engineering software, ray tracing is a technique used to represent the propagation of electromagnetic (optical) wavefronts through a system. Rays are lines constructed using discrete points on surfaces representing the local wavefront position as it propagates through an optical system.
These rays, which are perpendicular to the local wavefront, travel in straight lines through homogenous media. The rays will change direction at refractive boundaries per Snell's Law and reflect at boundaries per the Law of Reflection. They will change direction at diffractive interfaces according to the vector grating diffraction equation and within inhomogeneous media via equations that govern gradient index materials.
When rays interact with scattering surfaces, they will be modified according to equations that govern scatter. Additional properties can be associated with rays, such as intensity, polarization properties, and "optical path" (the physical path multiplied by the refractive index of the medium), and these can be appropriately modified at interfaces as well.