TL;DR: Why does titanium oxide layer produce visible thin-film interference at thicknesses 10x smaller than the wavelengths of light?

Background: I am currently trying to model thin film interference for hobby computer graphics purposes. I'm a CSE student, not a physicist, so I have lacking terminology for finding and understanding papers about the subject. I am computing optical path length difference as $x=2dn\cos\beta$, where $n=\frac{n_{film}}{n_{air}}$, $d$ is film thickness and $\beta$ the angle of refracted light. Then for each RGB channel using 650, 530, 460 nm wavelength, $\mid \cos \left ( \frac{x\pi}{\lambda} \right )\mid$ gives the intensity.

A test result for a thickness $d$ gradient from $0$nm to $700$nm with $n=1.3$:

enter image description here

Photo reference of soap film with similar $n$:

enter image description here

Those colours look as expected (ignoring the nonlinear thickness of soap films and environment lighting).

The same 0-700 thickness gradient but for anodized titanium, so having a $\rm TiO_2$ film with $n\approx 2.6$ produces:

enter image description here

However, according to any source I found online the colours should resemble:

enter image description here

Note how the upper scale only goes from 0 to 90 nm. The gradient I produced using 0-700 nm seems to be located in just the 0-70 nm range on the chart. Since the soap result approximates the reference very well it is hard to believe that a calculation oversight scaled the result. What material property causes this difference? And if possible, how can I add this to the model?

From what little knowledge I have of waves, it seems like the visible light would either not interact with the thin oxide layer at all, or experience a phase shift so small that the colours are barely altered.

  • $\begingroup$ From just a first glance it looks like you might be dividing by $n$ when you should be multiplying (or vice versa). For $n=2.6$ that would give a factor of $6.76$, which is quite close to the ratio of the scales $700/90 = 7.77$. $\endgroup$ – noah Feb 2 at 13:07
  • $\begingroup$ @noah Thank you. I'm a bit surprised, but it does seem to give the correct result when I calculate path length difference by dividing by n instead of multiplying. I assumed that a larger n meant a "longer" traversal of the film so a larger phase shift. Maybe that assumption is incorrect? $\endgroup$ – Emiel Witting Feb 2 at 13:44
  • $\begingroup$ Yeah, it does imply that for larger $n$ you only need a thinner film for the same effect. But comparing your plots for soap and TiO$_2$, the color varies slower with increasing thickness for TiO$_2$ where it should actually be varying faster (because a thinner film of TiO$_2$ should yield the same as a thicker film of soap). So without taking anything else into account, the plots you are producing are inconsistent with the theory you are applying. Hence a coding error is likely. $\endgroup$ – noah Feb 2 at 14:09
  • 1
    $\begingroup$ Somehow it's anticlimactic to find that a simple miscalculation caused what seemed to be an interesting problem. I inverted $n$ once for multiplying in snell's law when I didn't know It was needed for OPL yet., Accidentally used that variable for OPL a few days later when I had forgotten that it was inverted. Thanks for confirming that it could only be a bug. $\endgroup$ – Emiel Witting Feb 2 at 15:43

It was a software bug that purely by accident gave the correct result for the soap plot ($n$ was $\frac{1}{n}$). It seemed strange at first that there was interference with layers of $90 nm$ for blue light waves of $460nm$. But considering that path length is at least twice the thickness depending on angle and optically much longer when $n=2.6$, so at least $2\cdot2.6\cdot 90=468$ this did conform to the existing model.


As the comments suggest, you need to calculate the "optical path length" thru the thin film. First, look at the entrance angle $\beta$ , use Snell's law to calculate the angle of the light inside the thin film, calculate the physical path length at that angle to reach the substrate and reflect back, and multiply that physical path length by $n$, the index of refraction of the thin film at that wavelength.

Certainly you won't get much dispersion/interference for incident light near normal (perpendicular).

  • $\begingroup$ Why would there be no interference for light normal to the interface? $\endgroup$ – noah Feb 2 at 15:06
  • $\begingroup$ Thanks for the suggestion but that is already what 2dn * cos(beta) does. Beta is the refraction/inside film angle and 2d * cos(beta) is physical path length. For incident light near normal, cos(beta)=cos(0)=1 and there would still be path length difference. I think in that case the large majority of the light is refracted instead of reflected, so the interference is between vastly different intensities and they don't "cancel out". $\endgroup$ – Emiel Witting Feb 2 at 15:10
  • $\begingroup$ @noah there would be interference, but the phase shift will be relatively small and thus not lead to amplification or cancellation of a given wavelength $\endgroup$ – Carl Witthoft Feb 2 at 19:52
  • $\begingroup$ @EmielWitting Maybe check out the equations for a Fabry-Perot etalon. that'll give a bit more insight as to relative intensities $\endgroup$ – Carl Witthoft Feb 2 at 19:53
  • $\begingroup$ @CarlWitthoft That doesn't sound right. Anti-reflective coating is often tuned to light coming in perpendicular to the surface. The phase shift just depends on the thickness of the layer then and can easily be a full or half wavelength (or multiples thereof). $\endgroup$ – noah Feb 2 at 20:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.