Category Archives: Optical constants

What makes the difference between a good and a very good optical model?

Answering some recent questions about optical modelling, I dug out some old slides. They explain some model improvements that were implemented a long time ago. Combined with today’s fast computer hardware they provide the basis of high quality modelling.

Optical constant models describe the response of matter to the electric fields of a light wave. The main mechanisms are

  • acceleration of free charge carriers in conductive materials (free charge carrier absorption)
  • exciting oscillations of bound charges (vibrational modes)
  • lifting up electrons from an occupied electronic state to an empty state (interband transitions)

Interband transitions

Electronic transitions can be roughly described by simple harmonic oscillators. However, these are not very realistic and should be used far away from the resonance frequency of the oscillator only. For band transitions of crystalline materials the Tauc-Lorentz model is appropriate:

Be prepared to superimpose several of these terms since crystalline materials may have feature many interband transitions, like AlGaAs:

Amorphous semiconductors and almost all oxides and nitrides used in thin film applications can be described by the so-called OJL model. It is based on some very simple assumptions about the interband  transition and states within the band gap which are caused by disorder:

For many materials the OJL model produces the correct shape of n and k with a few parameters only:

This makes fitting optical constants rather easy. In addition, the band gap parameter as well as the tail state exponent (also called ‘disorder parameter’) have physical meaning and characterize the state of the material.

Vibrational modes

Although harmonic oscillators should be the right tool to describe vibrating parts of molecules or crystal lattices they are simplifying too much. Here is an attempt to describe 2 strong and a weak side band of molecules on a metal surface:

The model is ok but the overall shape of the absorption bands is not reproduced very well. The reason is that the harmonic oscillator has a constant damping parameter, i.e. the vibration is slowed down in the same way in the center (where the absorption is strong) as in the regions of small absorption. As the amplitude of whatever vibration we might have is certainly stronger in the resonance region the interaction with the outside world is certainly stronger. So whatever causes the damping will be stronger close to the resonance frequency and weaker far away from it – at least this is very likely. The so-called ‘Kim oscillator’ model uses a Gaussian decay of the damping with distance from the center of the oscillator and it fits many absorption bands very nicely, much better than the harmonic oscillator:

Besides describing vibrational modes the Kim oscillator can also model high energy interband transitions above the OJL model and the broad band absorption of confined charge carriers (which are almost free but are blocked to leave a microcrystal).

Free charge carrier excitation

The absorption of light by the acceleration of free charges in a metal or doped semiconductor can be described by the classical Drude model. It has 2 parameters only – the plasma frequency is directly related to the concentration of charge carriers whereas the damping constant is connected to the mobility (or the inverse mean free path).

The only class of materials for which we need more than the Drude model is that of highly doped semiconductors, i.e. those materials which are used for transparent but conductive layers (TCOs). The following example shows the difference – the transmission spectrum of a ITO layer is not adequately reproduced by the (in this case too simple) Drude model:

Again, like in the harmonic oscillator case, we need to introduce frequency dependent damping. As it turns out we need to have a smooth transition between 2 levels of damping – high in the mid infrared, and low in the near infrared:

The 3 extra parameters of this model describe the difference of the damping constants, the width as well as the spectral position of the transition zone.

For many applications TCOs need to be rather thick (a few hundred nm). Be prepared to face inhomogeneity in depth of such layers. In this case you need to use 2 or more sublayers which differ in the concentration of charge carriers.

Mixed materials

Surface roughness, porous materials or mixtures of 2 phases require the computation of effective optical constants.

Unfortunately, there is not a unique way of mixing optical constants. Our software packages have the following implementations for effective material properties:

  • Bruggeman model (also known as EMA = Effective Medium Approximation)
  • Maxwell Garnett model
  • Looyenga model
  • Bergman representation (very general, very powerful, but very difficult to apply). In fact, the Bergman representation includes all simple concepts, i.e. Bruggeman, Maxwell Garnett and Looyenga are special cases within the Bergman formalism.

For some composites it does not really matter which approach you take. Here is the reflectance of a SiO2-air mixture, computed using the simple expressions given above:

That should not lead to the wrong conclusion that this is always the case. Especially metals show a large variety of mixed properties. For a silver-air mixture the simple solutions give very different results (in fact, all of them will be quite wrong and you have to use the difficult Bergman approach):

Which model should I use?

Finally, here are some recommendations which model to choose:

 

How to develop flexible optical constant models based on given n and k tables

Materials used in thin films may differ in their optical constants n and k from the corresponding bulk versions. Even if you find optical constant tables in literature for your application you may need to make some adjustments to the n and k values. This is certainly difficult if you have just a table of fixed values – what you need is a flexible model which can adjust the spectral shape of n and k by modifying a few key parameters only. This short tutorial shows how to proceed in such a case.

Crystalline silicon is used as example. The database of our SCOUT and CODE software packages contain several silicon versions. Here I have selected the item ‘Silicon (crystalline, MIR-VUV)’. These are the n and k data, featuring several interband transitions and a slow decay of k towards the indirect band gap around 1.1 eV:

If you change the temperature of a silicon wafer or deposit poly-crystalline silicon thin films you may observe similar structures but not exactly the same n and k – a flexible model would be nice to have. Our strategy to develop such a model will be this: First, we generate ‘measured data’ which are computed using the existing n and k table values. Then, in the second step, we setup a suitable model and adjust its parameters to reproduce the ‘measured’ data. If the ‘measurements’ provide enough information the n and k values of the model should be almost the same as those of the original table.

Since we will simulate the measurements we can easily work with a system which would be almost impossible to realize. In order to clearly ‘see’ the weak silicon absorption in the visible we use a 2 micron thick free standing layer – this layer is quite transparent and it will generate a nice interference pattern. To match the amplitude of the fringes will be difficult with wrong k values – so this setup ensures good n and k data of the model in the visible and NIR. The layer stack is this:

Using this layer stack we could now generate several reflectance and transmittance spectra, taken at various angles of incidence. This would make a nice set of ‘measured data’ for the fit procedure. However, to make our life as easy as possible we can use an ellipsometry object in the list of spectra. Objects of this type have the option to compute so-called ‘Pseudo n and k’ values. With this option the ellipsometric angles Psi and Delta are represented by pseudo n and k values of a virtual single interface. In spectral regions where our silicon layer is opaque the pseudo n and k values are the same as the real ones. In the transparent region the pseudo n and k values reflect the interference structures – this looks strange, and one could certainly question the usefulness of the concept ‘Pseudo n and k’. However, the interference pattern is what we go for to get good small k values in the model. The blue curves below show the generated pseudo n and k values. Within this example we will work in the spectral range 200 … 1000 nm:

Ellipsometry objects offer the local menu command ‘Actions / Use simulated data as measured data’ which is what we need now. The blue curves are now copied to the red measurement data as if we had imported measured data.

We can now replace the material object by our first model in the layer stack. I have started with a very simple model which consists of a constant real part of the refractive index and a Tauc-Lorentz model (inside a KKR susceptibility object). It is a good idea to generate a new item of type ‘Multiple spectra view’ which can show both the original table values of n and k and the model values in one graph (lower left side). With this simple model, you cannot expect a good match since  silicon shows several interband transitions in the range 200 … 1000 nm:

However, if we limit the range to 400 … 1000 nm the simple model works quite well:

For the full range (200 … 1000 nm) we need more interband transitions. Sticking to the Tauc-Lorentz oscillator type, I have added 2 more which brings up to a new level (still not satisfying, though):

Depending on your patience (and the needs of the final application) you can add more features as you like, approaching the former table values of n and k more and more. I stopped my example at this level:

The model developed for silicon this way can now be saved to the optical constant database for future use. You can use it for studies of systematic variations of deposition conditions and generate tables like ‘resonance frequency vs deposition temperature’.

You can follow the strategy shown in this tutorial for all kinds of materials, as long as you get good tabulated values of n and k to start with.

Leng model for optical constants

We have implemented (starting with object generation 4.99) the Leng oscillator which has been developed to model optical constants of semiconductors. As shown in the original article (Thin Solid Films 313-314 (1988) 132-136) it works well for crystalline silicon:


Warning: While the model works fine in the vicinity of strong spectral features (critical points in the joint density of states) it may generate non-physical n and k values in regions of small absorption.

Store to database

How do I store optical constants in the database?

Make sure that the material object you want to store to the database is in good shape: It will appear in the database like it is formatted at this time. Select a proper name and color for the object.

In the treeview, open the subbranches of ‘Materials’ by clicking on the small ‘+’ sign. The materials in your configuration are now visible as treeview items, including the one you want to enter into the database.

Now right-click the treeview item ‘Optical constant database’ so that the content of the database appears on the right side.

Finally, drag the treeview line of the wanted material to the area on the right which displays the database items, and drop it there. You will have to answer a few questions about the object generation (i.e. program version) of the database item (select a version that every potential user of the database can read), your name and a database comment. Once you have answered all questions the new database item is available for future use.

Absorption

How does the software compute the absorption coefficient?

When the software re-computes optical constants, the so-called dielectric function is computed first. This material quantity (a complex number with real and imaginary part) connects the electric field of the light wave to the polarization that is caused in the material.

In order to compute the reflection and transmission properties of interfaces between two adjacent materials, the complex square root of the dielectric function is needed. This is called the refractive index. The real part is usually denoted as n, the imaginary part as k. Whereas the real part contains information about the speed of light in the material, the imaginary part is responsible for absorption.

The absorption coefficient alpha, finally, is the exponent of the intensity decay of a light wave traveling through the material, i.e. the intensity decays proportional to exp(-alpha*x) where alpha = 4*pi*k*wavenumber. The wavenumber is the inverse of the wavelength, usually measured in cm.

Master model

The list of materials offers the object type ‘Master model’. What’s that?

Master models are based on the object type ‘Dielectric function model’, i.e. they are used to compute optical constants using a user-defined set of susceptibility terms. In addition, master models have built-in so-called master parameters (you can use up to 6 of them) which can be used to compute selected parameters of the optical constant model as ‘slave parameters’.

A typical application of a master model is this: Suppose you are producing an oxide by a deposition process which can end up in various oxygen concentrations in a layer. If you describe the optical constants with an OJL model, the OJL parameters like bandgap or strength will then depend on the oxygen content of your material. In such a case you can define a master parameter ‘Oxygen content’ and compute the values for the bandgap and strength based on the oxygen content of a particular sample. In order to do this you must know the relations, of course. You can apply user-defined formulas (bandgap vs. oxygen content, for example) or lookup tables which you can generate after a batch analysis of several samples with different oxygen content.
Sometimes it is convenient to apply master parameters just to re-scale parameters. For example, if you do not like to enter bandgaps in wavenumbers, you can define a master parameter that gives the bandgap in eV, and then re-compute the OJL bandgap (which must be specified in wavenumbers for historical reasons) as a slave parameter (like OJL_bandgap = bandgap_eV* 8065).

Warning:
The SCOUT and CODE software contain a list of global master parameters in their treeview which are used to connect and control any parameter of the optical model in these programs. Please try not to mix up global master parameters and the individual master parameters of master models.

Model selection

How do I select the right model for the optical constants?

Selecting appropriate optical constant models with the right number of parameters is difficult and requires some experience. The choice depends – first of all – on the material and also on the spectral range of interest.

In the infrared the choice is rather easy: Use a constant refractive index, and add for each clearly visible vibrational mode a Kim oscillator. If you have free charge carriers (i.e. you deal with a metal or a doped semiconductor) you should add a simple Drude model (in case of highly doped semiconductors use an enhanced Drude model instead).

In the NIR, visible or UV the right choice is not so simple. Here you can be guided by the following rules of thumb:

Metals:
Use a constant to represent high energy interband transitiions. For every interband transition causing structure in the wanted spectral range use a Tauc-Lorentz or an OJL term. Take a Drude model for the free electrons.

Semiconductors (crystalline):
Combine a constant and Tauc-Lorentz terms for interband transitions. Add a Drude model for low doped materials. In the case of high doping levels use an extended Drude model.

Semiconductors (amorphous):
Setup a model like for crystalline semiconductors (see above) but replace the Tauc-Lorentz terms by OJL terms.

Oxides and Nitrides:
Combine a constant and an OJL term. If the OJL term alone cannot generate the right absorption and dispersion, you should add a harmonic oscillator in the far UV (resonance frequency 60000 1/cm, oscillator strength in the range 10000 … 100000 1/cm, damping 1 1/cm). In the fitting procedure the harmonic oscillator parameters should be kept fixed with the exception of the oscillator strength.

Organic materials:
Combine a constant, an OJL model and Kim oscillators. Whereas the OJL model is used to describe the ‘fundamental absorption’ in the UV, the Kim oscillators should represent absorption bands in the visible and NIR.

!!! Please note that OJL and Tauc-Lorentz terms may not be inserted in the susceptibility list as the other models. Instead, they have to be used within a KKR susceptibility object. !!!

Import n and k data

How can I import tables of n and k data and use them in SCOUT or CODE?

Open the list of materials and generate a new object of type ‘Imported dielectric function’.

If you have a text file with 3 columns (like wavelength, n, k or energy, n, k) open the new object and execute the local command ‘Import’. In the file dialog you should set the file type to ‘n and k from data table (x,n,k)’. You will be asked to specify the spectral unit (nm, eV, 1/cm, …). After the data import you should use the menu command ‘Property/Refractive index’ to visulize the imported data.
If you have an Excel table of the data (a data block with columns of the spectral position, n and k), you can import the Excel table into the workbook. In the object tree view, right-click the workbook and use the ‘File/Open’ command of the workbook (or copy & paste from Excel directly). Select the cell in the workbook where you want to start reading the data – this should be the first spectral position (usually the first wavelength, wavenumber or energy value). Go back in the treeview to the material object that wants to read the data (right click on the corresponding treeview line) and execute the lcoal menu command ‘Workbook/ Import x,n,k’ of the material object.

When you are finished importing the data and you have adjusted the graphics of the object (set an appropriate title, …) you can enter the new material into the database. First right-click the treeview item ‘Optical constant database’ and then drag&drop the material from the treeview into the database window on the right side.