You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit f743713
Browse filesBrowse the repository at this point in the historyBrowse files
fix(phase): apply the generalized Snell's law in one step
Phase.ray_reaction refracted with plain Snell's law, which drops a ray
past the ordinary critical angle, before diffract added the phase
gradient. Yu et al. (Science 2011) show the gradient shifts the critical
angle: a ray is lost only when |n1 t1 + lambda/(2 pi) grad phi| >= n2.
So a phase on glass exiting into air lost steep rays the gradient would
transmit.
diffract now takes n1 and computes n2 t2 = n1 t1 + m lambda/(2 pi) grad phi
directly (Snell's law is the grad phi = 0 case), deciding validity only
on |t2|. Docstring cites Yu 2011 and Aieta et al. (Nano Lett. 2012) for
the three-dimensional form.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
[2] Light propagation with phase discontinuities: generalized laws of reflection and refraction. Science 2011.
283
+
[2] N. Yu et al., Light propagation with phase discontinuities: generalized laws of reflection and refraction. Science 334, 333 (2011).
284
+
[3] F. Aieta et al., Out-of-plane reflection and refraction of light by anisotropic optical antenna metasurfaces with phase discontinuities. Nano Lett. 12, 1702 (2012).
0 commit comments