Arte SheetsLearn. Try. Understand.

Engineering & Scientific

Snell’s Law Refraction Angle & Total Internal Reflection (TIR) Critical Angle

Calculate optical refraction angle theta_2 and Total Internal Reflection critical angle theta_c = DEGREES(ASIN(n_2 / n_1)) across planar dielectric interfaces with radian-degree conversion and ASIN domain guards.

Why ASIN throws #NUM! above the critical angle when light exits a denser medium

Across a boundary between refractive indices n_1 and n_2, Snell’s law conserves tangential wavevector n_1 * sin(theta_1) = n_2 * sin(theta_2), where angles are measured from the surface normal. Because Excel and Arte Sheets trigonometric functions SIN and ASIN operate in radians, incident degrees must be wrapped in RADIANS(theta_1) and inverse sine wrapped in DEGREES(ASIN(...)).

When light propagates from high-index glass or fiber core into lower-index cladding or air (n_1 > n_2), sin(theta_2) = (n_1 / n_2) * sin(theta_1) reaches unity at critical angle theta_c = arcsin(n_2 / n_1). Any incident angle theta_1 > theta_c drives (n_1 / n_2) * sin(theta_1) > 1, causing unguarded ASIN to fail with #NUM! when physically 100% of optical power undergoes Total Internal Reflection (TIR).

Interface Casen_1 -> n_2 & Incident theta_1sin(theta_2) RatioOptical Outcome
Crown Glass -> Air (Sub-Critical)1.50 -> 1.00 at 30.00 deg0.7500Refracted at 48.59 deg (theta_c = 41.81 deg)
Crown Glass -> Air (Super-Critical)1.50 -> 1.00 at 45.00 deg1.0607 (> 1)TOTAL_INTERNAL_REFLECTION
Air -> Crown Glass (External)1.00 -> 1.50 at 30.00 deg0.3333Refracted at 19.47 deg (NO_TIR_CRITICAL)

Total Internal Reflection Critical Angle Formula (Degrees)

Check whether n_1 > n_2; if n_1 <= n_2, TIR cannot occur across any real incident angle, otherwise evaluate DEGREES(ASIN(n_2 / n_1)).

=IF(B2 <= B3, "NO_TIR_CRITICAL", ROUND(DEGREES(ASIN(B3 / B2)), 2))

Domain-Guarded Snell’s Law Refracted Angle Formula

Bind sin_ref = (n_1 / n_2) * SIN(RADIANS(theta_1)) inside LET and guard ABS(sin_ref) > 1 before calling ASIN.

=LET(sin_ref, (B2 / B3) * SIN(RADIANS(B4)), IF(ABS(sin_ref) > 1, "TOTAL_INTERNAL_REFLECTION", ROUND(DEGREES(ASIN(sin_ref)), 2)))

Try the example

Use the original values or change them to test your understanding.

Further reading