Home / Science / Physics / Optics and photonics / Thin-film coating simulatorTool #931

Thin-film interference and anti-reflection coating calculator: reflectance against wavelength and angle

Stack thin layers on glass and see how much light they reflect and transmit at every wavelength and angle, for s, p or unpolarised light, by the transfer-matrix method: anti-reflection coatings, Bragg mirrors, soap films and thin absorbing layers.

Keep it one tap away for everyday use.

Bookmark Thin-film coating simulator?

Press Ctrl + D now. Your browser opens its own bookmark box, where you choose the name and folder.

  1. Layers
  2. Angle
  3. Spectrum
  4. Download
Nothing is uploadedWorks offline once open

Coating

QW: a quarter-wave layer, whose optical thickness n × d is a quarter of the design wavelength (it reflects most strongly or weakly there). Indices are treated as constant across the spectrum, which is a fair first approximation for clear dielectrics in visible light. The substrate is taken as infinitely thick, so only the front surface counts; a real glass plate also reflects about 4 % from its back.

Result

Layers

Transfer (characteristic) matrix method with perfectly flat, uniform layers and sharp interfaces; no scattering, no roughness. For study and planning; real coatings need measured, wavelength-dependent indices.

Download

What it does

Light reflected from the top and bottom of a thin layer interferes with itself. If the two reflections are half a wave out of step they cancel, and the surface reflects less; if they are in step they add, and it reflects more. That is why soap bubbles shimmer, why camera lenses look purple-green, and how a stack of alternating layers can make a mirror that reflects more than 99.8 % of one colour.

This simulator works out the reflectance R, transmittance T and absorptance A of any stack of flat layers on a substrate, using the transfer-matrix (characteristic matrix) method: each layer is a 2 × 2 matrix built from its index, thickness and the angle of the light inside it, and the product of all of them gives the whole coating. It handles s and p polarisation separately, any angle of incidence, and absorbing layers through a complex index n − ik.

How to use it

  1. Pick a starting design or choose My own layers.
  2. List the layers from the side the light comes from down to the substrate. Each line is index thickness in nanometres, n k thickness for an absorbing layer, or a number of quarter waves at the design wavelength: 1.38 QW, 2.1 2QW (a half wave). You can type a material name instead of the index. TiO2 QW; SiO2 QW x 8 repeats the pair eight times.
  3. Set the design wavelength (what QW refers to), the incident medium (1 for air, 1.33 for water) and the substrate n and k.
  4. Choose the angle of incidence and the light: unpolarised is the average of s (electric field parallel to the surface) and p.
  5. Set the spectrum range for the chart, the mean and the CSV.

Worked example

The default is the classic quarter-half-quarter broadband anti-reflection coating on crown glass (n 1.52): MgF₂ quarter wave (99.6 nm), Ta₂O₅ half wave (131.0 nm), Al₂O₃ quarter wave (84.4 nm), designed for 550 nm. At normal incidence the page shows R 0.183 % (T 99.82 %) at 550 nm, against 4.26 % for bare glass. Across 400 to 800 nm the mean reflectance is 0.525 %, lowest 0.0035 % at 648 nm and highest 4.62 % at 400 nm, where the coating stops working. At 45° the s and p reflectances split to 1.39 % and 0.088 %.

For comparison, a single MgF₂ quarter wave gives 1.26 %, exactly ((1 × 1.52 − 1.38²)/(1 × 1.52 + 1.38²))². The Bragg mirror preset (8 pairs TiO₂/SiO₂) reflects 99.87 % at 550 nm, with a high-reflection band (over 90 %) from about 475 to 654 nm.

Tips

  • A single layer is a perfect anti-reflection coating when its index is √(n₀ × n_substrate): about 1.23 for glass in air, which is why MgF₂ (1.38) leaves about 1.3 %.
  • A half-wave layer is “absent” at its design wavelength: the reflectance is the same as bare substrate.
  • Tilting a coating moves its features to shorter wavelengths (blue shift) and splits s from p.
  • With k > 0 some light is absorbed, so R + T is less than 100 %.

FAQ

Why constant indices? Real materials are dispersive (the index changes with wavelength), and real values depend on how the film was made. Constant, rounded indices keep the tool honest and simple; replace them with your own measured values at the wavelength you care about.

Does it include the back of the glass? No. The substrate is treated as infinitely thick, so the result is for the coated front surface only.

Is this good enough to order a coating? It is for study and planning, not a substitute for a coating designer’s software with measured material data and manufacturing tolerances.

Where the numbers come from

  • Characteristic (transfer) matrix method for thin-film stacks, tilted admittances for s and p light: Macleod, H. A., Thin-Film Optical Filters (standard textbook result); Born, M. and Wolf, E., Principles of Optics, chapter 1.6.
  • Refractive indices of MgF₂ (1.38), SiO₂ (1.46), Al₂O₃ (1.63), Ta₂O₅ (2.1), TiO₂ and ZnS (2.35) are rounded, general textbook values for visible light, treated as constant; they are editable starting points, not data for a real coating.
  • Checked against an independent NumPy calculation with Fresnel coefficients at each interface and propagation matrices (a different formulation), plus closed forms: quarter-wave layer, bare surface, Brewster angle and total internal reflection. The example designs are made up.

Standard scientific values, such as constants, atomic weights and melting points, are facts found in every textbook; we name where ours were checked. If you are an author or publisher and want a value, a credit or a table changed or removed, tell us and we will act quickly.

Last updated 2026-11-09.

Related tools

Gaussian beam calculator #930 Put lenses and curved mirrors on an optical rail and follow a laser beam through them with the complex beam parameter q and ABCD matrices: the size and position of every new waist, Rayleigh range, divergence, beam radius and wavefront curvature anywhere, with M² for real lasers. Sellmeier fitter #935 Paste or open measured refractive index against wavelength and fit a Sellmeier (1 to 3 terms) or Cauchy equation: coefficients with standard errors, residuals, the index at any wavelength, Abbe number, group index and group-velocity dispersion, with every model compared. Beer–Lambert calculator #84 Solve A = εlc for absorbance, molar absorptivity, path length or concentration, convert to transmittance, check the reading is in the reliable range, and view UV-Vis spectra with their maxima. Polarisation calculator #936 Send polarised, partly polarised or unpolarised light through polarisers, quarter- and half-wave plates, any retarder, rotators, partial polarisers and depolarisers, and see the output intensity, Stokes vector, Jones vector, ellipse and the path on the Poincaré sphere. Publication plot maker #27 Paste columns or open a CSV or Excel file and get a clean scientific figure with error bars, sized for a journal column. Download vector SVG or PDF, or PNG at 300 or 600 dpi. Your data stays in your browser. Lens ray tracer #932 Type a lens system as a list of spherical surfaces and trace exact rays through it: focal length, f-number, image position, a spot diagram against the Airy disc, spherical aberration, ray fans, best focus, distortion and Petzval field curvature, drawn as a lens layout.