Optics

Total Internal Reflection

Above critical angle, 100% of light reflects back — the physics behind fiber optics

Total internal reflection (TIR) occurs when light traveling in a denser medium hits a boundary with a less dense medium at an angle steeper than the critical angle θ_c. Beyond θ_c, no light transmits — it all reflects internally. The basis of fiber optics, prisms in cameras and binoculars, and why diamonds sparkle. sin θ_c = n_rare / n_dense.

  • ConditionLight in denser medium → less dense, angle > critical
  • Critical anglesin θ_c = n_rare / n_dense
  • Glass-air θ_c~41.8°
  • Water-air θ_c~48.6°
  • Diamond-air θ_c~24.4°
  • Reflection at θ_c100% — no transmission

Interactive visualization

Press play, or step through manually. The visualization is yours to drive — try it before reading on.

Open visualization fullscreen ↗

Watch the 60-second explainer

A condensed visual walkthrough — narrated, captioned, under a minute.

Critical angle

For light traveling from a denser medium (n₁) to a less dense medium (n₂ < n₁):

sin θ_c = n₂ / n₁

For incidence angles greater than θ_c, all light reflects internally — no transmission.

Boundaryθ_c (degrees)
Water → air (n_water = 1.33)48.8°
Glass → air (n = 1.5)41.8°
Diamond → air (n = 2.42)24.4°
Optical fiber core/cladding (n = 1.46/1.45)~83° (very near grazing)

Real-world TIR applications

SystemHow TIR is used
Optical fiberLight bounces along fiber core via TIR
BinocularsTIR prisms invert image and shorten optical path
SLR camerasPentaprism uses TIR for viewfinder image inversion
PeriscopeTwo right-angle TIR prisms (more efficient than mirrors)
Diamond's "fire"Multiple TIRs inside the diamond create dazzle
Plant leaf opticsTIR channels light into deeper cells
Bicycle reflectorsCube-corner geometry uses 3 TIRs to retro-reflect
EndoscopesOptical fiber bundles for medical imaging

JavaScript — TIR calculations

// Critical angle
function criticalAngle(n_dense, n_rare = 1.0) {
  return Math.asin(n_rare / n_dense) * 180 / Math.PI;
}

console.log(`Glass-air: ${criticalAngle(1.5).toFixed(2)}°`);     // 41.8
console.log(`Water-air: ${criticalAngle(1.33).toFixed(2)}°`);    // 48.8
console.log(`Diamond-air: ${criticalAngle(2.42).toFixed(2)}°`);  // 24.4

// Check if TIR will occur
function isTIR(angle_incident_deg, n_dense, n_rare) {
  return angle_incident_deg >= criticalAngle(n_dense, n_rare);
}

console.log(`Glass at 50°: ${isTIR(50, 1.5, 1) ? 'TIR' : 'refracts'}`); // TIR
console.log(`Glass at 30°: ${isTIR(30, 1.5, 1) ? 'TIR' : 'refracts'}`); // refracts

// Acceptance angle for optical fiber
function fiberNA(n_core, n_cladding) {
  // Numerical aperture: NA = √(n_core² - n_cladding²)
  return Math.sqrt(n_core*n_core - n_cladding*n_cladding);
}

function acceptanceAngle(NA, n_outside = 1) {
  // sin θ_max = NA / n_outside
  return Math.asin(NA / n_outside) * 180 / Math.PI;
}

const NA = fiberNA(1.46, 1.45);
console.log(`Fiber NA: ${NA.toFixed(3)}`);  // ~0.171
console.log(`Acceptance angle: ${acceptanceAngle(NA).toFixed(2)}°`); // ~9.84°

// Light path in a fiber: how many bounces per meter?
function bouncesPerMeter(coreRadius_m, angleFromAxis_deg) {
  // For small angles, distance per bounce ≈ 2·R/tan(θ_axis)
  const angleRad = angleFromAxis_deg * Math.PI / 180;
  const distancePerBounce = 2 * coreRadius_m / Math.tan(angleRad);
  return 1 / distancePerBounce;
}

// 50 µm core, 5° from axis
console.log(`Bounces per meter: ${bouncesPerMeter(50e-6, 5).toFixed(0)}`);  // ~875

// Diamond simulation: probability of light escaping after N internal reflections
function diamondLight(angleEntry_deg) {
  // Simplified: each reflection has 4% probability of refracting out (at small angles)
  // After N bounces, P(still inside) ~ 0.96^N
  return Math.pow(0.96, 10);  // 10 bounces typical
}

console.log(`Light surviving 10 internal bounces: ${(diamondLight() * 100).toFixed(0)}%`);
// ~66%, but each bounce off TIR adds dispersion → "fire"

Where TIR matters

  • Telecommunications. Optical fiber networks rely on TIR — internet, phone, TV.
  • Medical. Endoscopes use fiber bundles for imaging inside the body.
  • Photography. SLR/DSLR pentaprisms use TIR for viewfinder image.
  • Optics. Right-angle prisms in lab equipment, microscopes, periscopes.
  • Gem industry. Cuts of diamonds and gems designed to maximize TIR for sparkle.
  • Bioluminescence. Some animals use TIR to channel light from internal sources.
  • Architecture. "Light pipes" use TIR to channel daylight from rooftop to interior.

Common mistakes

  • Wrong direction. TIR occurs when light goes from DENSE to RARE. Light from rare to dense never has TIR (smaller refracted angles).
  • Forgetting angle is from normal. Critical angle is measured from normal, not from surface. 41.8° critical angle for glass means anything STEEPER (i.e., closer to grazing) than 41.8° from normal causes TIR.
  • Treating below-critical as no reflection. Some reflection always occurs (Fresnel coefficients). Below critical, partial reflection + transmission. At and above critical, 100% reflection.
  • Ignoring evanescent waves. TIR has 100% reflection of energy, but a small evanescent field penetrates the rarer medium. Important for FTIR (frustrated TIR) and biosensors.
  • Confusing with regular reflection. TIR is a special case at the boundary. Regular reflection happens at any angle (just partial). TIR is total — only beyond critical.
  • Treating TIR as wavelength-independent. Critical angle depends on n, which depends on wavelength (dispersion). Different colors have slightly different θ_c.

Frequently asked questions

Why does TIR happen?

From Snell's law — n₁·sin θ₁ = n₂·sin θ₂. For light going from dense (n₁) to rare (n₂), the refracted angle θ₂ is larger than incident. As θ₁ increases, θ₂ approaches 90°. At a critical angle θ_c where sin θ_c = n₂/n₁, refracted ray is exactly along surface. Beyond θ_c, no real solution — all light reflects. Mathematically, sin θ₂ &gt; 1 is impossible.

How are fiber optics designed for TIR?

Fiber has a high-n core (typical 1.46-1.48) and lower-n cladding (1.45). Light entering the core at small angles reflects off the core/cladding boundary via TIR — propagates along the fiber. Critical angle determines the acceptance cone (numerical aperture). Long fibers transmit data over kilometers with minimal loss (~0.2 dB/km).

Why do diamonds sparkle so much?

High refractive index (n = 2.42) gives diamond a very small critical angle (~24.4°). Light entering a diamond is highly likely to reflect internally MULTIPLE times before exiting. Each internal reflection is a 100% bounce — the diamond acts like a prism with multiple bounces. The high dispersion (different colors at different angles) plus the multiple bounces create the characteristic "fire."

How are TIR prisms used?

A right-angle prism uses two TIR bounces to invert and rotate an image — used in binoculars, periscopes, single-lens reflex cameras. More efficient than mirrors (no reflective coating losses) and more durable. Pentaprisms in SLR cameras use multiple TIRs for image inversion.

What's an evanescent wave?

Even at TIR, an evanescent (exponentially decaying) wave penetrates into the rarer medium for a fraction of a wavelength. Doesn't carry energy in the rare medium (decays too fast), but if a third medium is brought close enough (within the decay length), light can "tunnel" across — frustrated total internal reflection. Used in prism couplers and biosensors.

How is TIR used in plant leaves?

Some plants have transparent epidermis cells that channel sunlight into deeper photosynthetic tissue via TIR. Allows photosynthesis in cells that wouldn't normally receive direct light. Similar effects in gemstones, cat eyes (reflecting cells), some fish (silver scales).

Why doesn't 100% reflection happen at normal incidence?

Because angle of incidence (0° at normal) is less than the critical angle. At normal incidence, ~4-8% of light reflects (depends on n contrast); the rest transmits. Only at angles beyond critical does 100% reflection occur. Critical angle requires "grazing" geometry typically.