_<rava«#*»"»-»

, l.ff. Bldg

JUN 1 8 1964

Reference book not to be

taken from tbs library.

^ecknlcui riote 242

A FORTRAN PROGRAM FOR ANALYSIS

OF ELUPSOMETER MEASUREMENTS AND

CALCULATION OF REFLECTION COEFFICIENTS

FROM THIN FILMS

FRANK L McCRACKIN

AND JAMES P. COLSON

U. S. DEPARTMENT OF COMMERCE

NATIONAL BUREAU OF STANDARDS
THE NATIONAL BUREAU OF STANDARDS

The National Bureau of Standards is a principal focal point in the Federal Government for assuring

maximum application of the physical and engineering sciences to the advancement of technology in industry and commerce. Its responsibilities include development and maintenance of the national stand- ards of measurement, and the provisions of means for making measurements consistent with those standards; determination of physical constants and properties of materials; development of methods

for testing materials, mechanisms, and structures, and making such tests as may be necessary, particularly for government agencies; cooperation in the establishment of standard practices for incorporation in codes and specifications; advisory service to government agencies on scientific and technical problems; invention and development of devices to serve special needs of the Government; assistance

to industry, business, and consumers in the development and acceptance of commercial standards and

simplified trade practice recommendations; administration of programs in cooperation with United

States business groups and standards organizations for the development of international standards of

practice; and maintenance of a clearinghouse for the collection and dissemination of scientific, technical, and engineering information. The scope of the Bureau's activities is suggested in the following

listing of its four Institutes and their organizational units. Institute for Basic Standards. Electricity. Metrology. Heat. Radiation Physics. Mechanics. Applied Mathematics. Atomic Physics. Physical Chemistry. Laboratory Astrophysics.* Radio Standards Laboratory: Radio Standards Physics; Radio Standards Engineering.** Office of Standard Ref- erence Data. Institute for Materials Research. Analytical Chemistry. Polymers. Metallurgy. Inorganic Materials. Reactor Radiations. Cryogenics.** Office of Standard Reference Materials.

Central Radio Propagation Laboratory.** Ionosphere Research and Propagation. Troposphere

and Space Telecommunications. Radio Systems. Upper Atmosphere and Space Physics.

Institute for Applied Technology. Textiles and Apparel Technology Center. Building Research.

Industrial Equipment. Information Technology. Performance Test Development. Instrumentation.

Transport Systems. Office of Technical Services. Office of Weights and Measures. Office of Engineering Standards. Office of Industrial Services.

* NBS Group, Joint Institute for Laboratory Astrophysics at the University of Colorado. ** Located at Boulder, Colorado.
NATIONAL BUREAU OF STANDARDS

Technical Note 242

ISSUED MAY 27, 1964

A FORTRAN PROGRAM FOR ANALYSIS

OF ELLIPSOMETER MEASUREMENTS AND

CALCULATION OF REFLECTION COEFFICIENTS

FROM THIN FILMS

Frank L. McCrackin

and James P. Colson

NBS Technical Notes are designed to supplement the Bureau's regular publications program. They provide a means for making available scientific data that are of transient or limited interest. Technical Notes may be

listed or referred to in the open literature.

For sale by the Superintendent of Documents, U.S. Government Printing Office Washington, D.C., 20402 - Price 30 cents
Contents

Page

1. Introduction — 1

2. Methods of Calculation- 3

2.1 Calculation of Ellipsometry Readings 6

and Reflection Coefficients for a Film

C over-ed Surf ac

2.2 Calculation of Index of Refraction for 3

Film-Free Substrate from Ellipsometer

Readings

2.3 Calculation of Film Thickness from 3

Ellipsometer Readings for Given Index

of Refraction of Film

3. Computer Instructions '-, 9

4. Functions and Subroutines for Ellipsometry 22

Program

5. Variables Used in Program 2J

6. Fortran Program 23

7. References-- 37

li
A Fortran Program for Analysis of Ellipsometer

Measurements and Calculation of Reflection

Coefficients from Thin Films

Frank L. McCrackin

A Fortran computer program to calculate the

reflection coefficients for both single and

multiple thin films and to analyze optical

measurements of such films by an ellipsometer

is presented. Both the films and the substrate

may be absorbing and have complex indexes of

refraction. The reflection coefficients of

inhomogeneous films (films of varying refractive

index) may be computed by determining the

reflection coefficients of an equivalent series

of homogeneous films.

The ellipsometer measurements for a given

film may be calculated or the index of refrac-'

tion and thickness of a film may be calculated

from ellipsometer readings. The ellipsometer

measurements ma:/ be corrected for the retardation of the compensator or for multiple

reflections of the light.

1. Introduction

The reflection of light from surfaces and thin films

has been discussed by various authors [1,2]. The reflection

is expressed in terms of the reflection coefficients R

p for

light polarized parallel to the plane of incidence and R

3

for light polarized perpendicular to the plane of incidence.

Since these coefficients are complex quantities s they

represent both the change of amplitude and phase of the

light on reflection.

The ellipsometer is an optical instrument used to study

surfaces and their films by reflection of light [3,4]. The

ellipsometer measures the ratio of the reflection coefficient:

1
R

p , . iA

p = —- = tan T[»e R

S

The ellipsometer contains a polarizer, analyzer,, and

compensator. For the commonly occurring ca.se of the

relative retardation Q of the compensator equal to 90° , and

the arrangement of components given by reference 3 , p is

related to the settings of the polarizer P and the analyzer

A by

P = A/2 - 45°

A = 4r The ratio of reflection coefficients, p, is a function

of the refractive index of the substrate, n^, (which may be

complex) the thickness d., and refractive index n. of any of

_j films on the surface, some or all of which may be complex,

the refractive index of the surrounding medium, n., , the angle

of incidence, cp , the wavelength of the light used, and the

retardation of the quarter wave plate. Hence the ellipsometer

readings P and A are related to the optical constants of a

surface and the thickness and index of refraction of films on

the surface. However, since the calculations required to

determine these quantities from ellipsometer measurements

(and also the inverse calculations) are very time consuming,

this Fortran program was consequently developed for this

purpose.

The following computations can be performed by this

program:
1) Computation of ellipsometer readings and reflection

coefficients for given refractive indexes of surrounding

medium, film and substrate and given film thickness.

2) Computation of film thickness from ellipsometer

readings for given refractive indexes of film and substrate

3) Computation of film thickness and refractive index

of film from ellipsometer readings for given refractive

index of substrate.

4) Computation of refractive index of a bare substrate

from ellipsometer readings.

2. Methods of Calculation

Host of the formulas used in this program are given

in McCrackin et al [3]. The correction of ellipsometer

readings for a compensator which has a retardation other

than quarter wave_, is given by Winter-bottom [2]. The

calculations Involved in use of multiple reflections of

the light from several surfaces as well as discussion of

increase of sensitivity and experimental technique is

given by Stromberg et al [5] . The calculation from P and A

of the thickness of a film of given refractive index

(instructions No. 903) has also been described by McCrackin

et al [3].

I will now describe briefly the manner of introducing

data and instructions into the computer and some of the

calculations which may be performed by this program; a

3
detailed discussion of the program will be found in the

'. \ 2 c t i on en t i b 1 e d

'

' G ompu t e r- I n. s truet i ons",

The first card for any calculation is a title card

that contains any desired identifying information. Following

cards start with an. instruction number in columns 1 to 3 of

the cards, followed by numbers starting in columns 10, 20,

30, 40, 50, and 60. All numbers except the instruction

number must contain a. decimal point. The Instruction

number determines the meaning of subsequent numbers and

the calculation (if any) to be performed. Instruction

numbers from 001 to 901 are used to introduce data; those

from 902 to 907 instruct the computer to perform a certain

calculate on

For a substrate without a film, the ratio of reflection

coefficients, p, depends on the angle of incidence, (j), of

the light, the refractive index, n , of the surrounding

medium, and the refractive index, nv , of the substrate.

The refractive index of the substrate, n-?, may be calculated

from the measured value of p (given by values of P and A),

(J) and ii-, . This calculation is done by the instruction

number 905 after (J) and n-, have been given by a 001

instruction.
For a film on a substrate, ellipsometer readings P and

A and the reflection coefficients may be computed from (j),

n.. j n-y, and the thickness, dp, and refractive index, n?

, of

the film. This calculation is performed by the 902 instruction after n, and <j) are given by an 001 instruction, np is

given by an 002 instruction, and n-, is given by an 003 instruction. The thickness do is given by the 902 instruction. Alternatively, the .thickness of a film, dp., may

be computed from P, A, (}>, n, , np, and n^ by instruction

903. The P and A values are given by the 903 instruction

after (j) and n, are given by an 001 instruction, Up is

given by an 002 instruction, and nv by an 003 instruction.

For a non-absorbing film, with real index of refraction,

both dp and np may be computed by the 90^-! instruction.

The P and A values are given by the 904 instruction after

(j) and n.. are given by an 001 instruction, n, by an 003

instruction, and a range of values that includes the

solution for np by the 002 instruction.

The required instructions to perform some typical

calculations for single films are now described. The

Section entitled "Computer Instructions" gives detailed

instructions for the similar calculations for multiple

films as well as the other calculations that may be

performed by this program.
2.1 Calculation of Ellipsometry Readings and Reflection.

Coefficients for a Film Covered. Surface

Instruction number 902 will cause the computer to

calculate the ellipsometer readings and reflection

coefficients for reflection of light from a film-covered

surface. The thickness of the film is given with the 902

instruction card. Before the 902 instruction, instructions

001 , 002 , and 003 must be used to give the other values

required for the calculation. The 001 instruction gives

the index of refraction of the medium above the film, the

angle of incidence of the light, and the wavelength of the

light. The 002 instruction gives the index of refraction

of the film and the 003 instruction gives the index of

refraction of the substrate. Also, every calculation must

be terminated by a 910 instruction. For example, let light

o of wavelength 4800 A be incident at 65° in air on a film

o covered surface. Let the thickness of the film be 40 A,

the refractive index of the film be 1.4, and the complex

refractive index of the substrate be 3.3l6~4.>33 ± m The

following input data computes the ellipsometer reading, P

and A, and the reflection coefficients, R

p and R :
Column No.

1 10 20 30

JONES TEST CALCULATION - 3-10-6-4

001 1. 65. 4300.

002 1 .

003 (blank) 3.316 4.333

902 4o.

910

Notice that the absolute value of the imaginary

component of the refractive index is used.

Tables of ellipsometer readings and reflection coefficients for films of different thicknesses and refractive

indexes may also be computed by the 902 instruction. In

this case, the initial value, increment, and final value to

be used are given for the thickness and refractive index of

the film. Thus, the input data:

Column No.

1 10 20 30

JONES TEST CALCULATION 3-10-64

001 1. 65. 4800.

002 1.4 0.1 1.6

003 (blank) 3.316 4.383

902 0. 20. 100.

910

will produce tables for films of refractive Index of 1.4,

1.5* and 1.6 for each table, the ellipsometer readings

and reflection coefficients villi be given for films 0.,

o 20., 40., 60., 30., and 100 A thick.

Calculations may also be performed for absorbing films

of complex refractive index, as described in the section

entitled, "Computer Instructions"

7
2.2 Calculation of Index of Refraction for Film-Free

Substrate from Ellipsometer Readings

Instruction 905 calculates the index of refraction of

a film-free surface from ellipsometer readings P and A. The

index is printed and may also be used in the following

calculations

2.3 Calculation of Film Thickness from Ellipsometer

Readings for Given Index of Refraction of Film

Instruction 903 computes the thickness of a film from

ellipsometer readings P and A. The 001 and 002 instruction

must precede this instruction and the index of the substrate

must have been either given by a 003 instruction or calculated by a 905 instruction. For example, suppose a filmfree surface was measured under water (refractive index of

1.33) to give P = 27. 32° and A =30.45°. Then an absorbing

film of refractive index 2.5 - 0.3 i was placed on the

surface and reading of P = 31.15 and A = 29. 00° were

obtained. Let the angle of incidence be 65° and the waveo length of the light be 4800 A in vacuum. The following

input data will calculate the thickness of the film:

Column No.

1 10 20 30 4o

JONES CAL FILM THICKNESS

001 1.33 65. 4800.

905 27.32 30.45

002 2.5 (blank) (blank) .3

903 31.15 29.00

910

8
If the 002 instruction specifies a series of values

for the refractive index of the film, a film thickness can

be computed using each value of the series for the

refractive index of the film.

These examples illustrate the manner in which the

input data is written. Instructions are also available to

do calculations for multiple films, to calculate the index

of refraction of adsorbed films, to determine ranges of

error of the calculated refractive index of a film, to

correct the ellipsometer readings for reflection of light

from multiple surfaces, and to correct the ellipsometer

readings for a compensator of arbitrary relative retardation. A detailed explanation of all the instruction numbers,

a list of subroutines used by the program, a list of

variables used in the program, the fortran program, and a

flow diagram of the program follow.

j5.. Computer Instructions

This program can perform calculations for reflection

of light from one to 898 films. The case of five films is

shown In Figure 1

The refractive indices are labelled n to n„ and the

thicknesses of the films are d

2 to cU. The index n, of the

medium is assumed real, but all the other indices may be

complex. The angle of incidence of the light in the medium

is (J), and is measured in degrees. The vacuum wavelength of

9
the light is X . The film thicknesses and X must be expressed

in the same units. The relative retardation of the quarterwave plate in the ellipsometer is Q, measured in degrees

and is assumed to be 90° unless otherwise specified.

The first line of the data is a title identifying the

run. Each following line (or card) of data consists of an

instruction number followed by the data. Each instruction

number determines the meaning of subsequent data and the

calculation to be performed. The instructions are as

follows

Instruction No. 001

This instruction gives values of n, , (j), X, a, number of

reflections, and Q, for use in later calculations, n is the

refractive index of the surrounding medium, (j) is the angle

of incidence, X. is the wave length of the light in vacuum,-

a is a number used to control the calculations for instruction No. 90^ and will be discussed under instruction. 904, and

Q is the relative retardation of the compensator used in the

ellipsometer. The instruction reads as follows:

Column No.

1 __10 20 3o__ 4o 50 60

001 n.1 $ X a No reflections

The computer assumes the initial values

n

l

=1

<j) = 70°

X = 5461.

10
a =

No. of Reflections - 1

Q = 90°

and If these values are to be used., the instruction 001 does

not need to be given. Also, values need be given only when

they are to be changed. Thus, to give the values n, = 1.5,

()) = 65° , y ~ 5^6l, a = 0, number of reflections = 5, and

Q = 90°, the instruction would be

Columns

1 10 20 30 40 50 60_

001 1.5 65. 5.

If later calculations were to be performed for the

same values except that (J) is changed to 75°, the required

001 instruction Is

Columns

1 10 20

001 75.

Notice that, except for instruction numbers, all numbers

given as input data must have a decimal point.

Instruction No. 002

This instruction gives values of the index of

refraction, n

2

, of the top film for use in following

calculations. If only real values of n

2 are to be used,

the arrangement of the 002 card is

11
Columns

1 10 20 30

002 Initial Increment Final

n

2 np

For example 3 to specify n

2 = 3 3 3.5 and k 3 the

instruction is

Columns

1 10 20 30

002 3. .5 4.

To specify complex values of the refractive index,, the

values to be used for the imaginary component are specified

after the real component. For example, the card:

C olumns

1 10 20 30 ho 50 60

002 3. .5 4. 0. .1 .2

will cause all following calculations to be done for these

values of n

2

:

3. 3.5 4

3-0.1 i 3.5-0.1 i 4.-0.1 i

3-0.2 i 3.5-0.2 i 4 -0.2 i

A single value for the refractive index may be given

by omitting the increment and final value for the real

and imaginary component. Thus the value n

2 = 3-i is

specified by:

Columns

1 10 20 3C) hO 50 60

002 3. 1.

12
Instructions No. 003 to 900

These instructions give the thicknesses and indices

of the films and substrate. Thus, if film number 4 was

o 100 A thick with an index of 1.4 - 2.2 i, the line of

data would be

004 100. 1.4 2.2

No thickness is given for the substrate. An instruction for a film may be repeated. For example, for five

films with medium and substrate lines with instruction

numbers 001 to 007 would be given. These would be followed

by instructions causing calculations. Then the thickness

and index of any film could be changed by repeating its

instruction number and additional calculations could be

performed with the original values for the other films.

For more than one film, the last of these cards must contain

1. starting in column 40 on the card.

Instruction No. 901

i This instruction gives values of p, , p , n , 6 P, and

i 6 A to be used in subsequent calculations. The values p,,

p and n are used to compute the mass of material per unit

area of the film for instructions 903 and 904. The values

t t 6 P and 6 A are used by instruction 904. If this instruction is used, all values must be given.

Instruction No. 902

This instruction causes the computer to calculate tables

of P, A, and reflection coefficients for the films. The

13
range of thicknesses of the upper film are given on the 1:1 Thus

902 o. 5. 15.

o will cause the calculation for dp =0., 5.j 10, and 15 A

and for all values of np given previously.

The values of dp may be omitted from the 902 instruction

if they have been previously given. For example, a section

of data may be

10. 100.

001 1.3

902 o. 001 1.4

902

001 1.5

902 100.

910

10. 200.

Tables of P and A will be printed for dp = to 100 in

steps of 10 for n =1.3 and 1.4, and for d = 100 to 200

in steps of 10 for n, =1.5.

Instruction No. 903

In this case, readings P and A are given. The computercalculates and prints a value of dp to give the best fit [3]

to the P and A readings for every n

2 given by the 002

instruction. It also computes the value of P and A

corresponding exactly to the rip and dp values and prints

the differences 6P and 6 A between these computed P and A

14
values and the P and A readings

Two solutions for dp and a measure of error for each

solution are computed by the method given in reference 3.

These solutions are obtained as solutions of a quadratic

equation by taking the plus or minus sign for the radical.

The solution with the smallest measure of error, labeled

THICK, with its measure of error, labeled ERROR, and ftP and

6 A, labeled DEL P and DEL A, are printed on the left hand

side of the printout, and the sign of the radical for this

solution is printed to the extreme right of the printout.

The other solution for the thickness with corresponding

values of 6P, 6A and measure of error are printed on the

right hand side of the printout.

If the film is not compact but is a mixture of the

surrounding medium and a material of density p and

refractive index n , the mass of material per unit area of

P

2 the film is computed in mg/cm and is printed. The value

3 3 of o-, , density of surrounding medium g/cm , p in g/cm

and n are given by the 901 instruction; the LorentzLorentz equation is used to compute the refractive index

of the film.

If compensator with retardation other than 90° is

used,> values of P,> a and a must be given (listed in this

p s

\ order) instead of merely P and A [2, 31

15
Instruction No. 90^

The measured values of P and A are given. The computerdetermines the film index, n^, and film thickness corresponding to the values of P and A, if a solution for n

2 exists in

the range of values given for n

2 by the previous 002 instruction. If n

2 = n2r

~ inp- is complex and a range of

values of n

2

. has been specified by a 002 instruction, a

value of n

2 will be computed for each of the values of

np. specified.

The computer finds the solution for n2 by computing

the film thickness for assumed values of n

2 [3]. This

computed thickness is a complex number. The real part of

the computed thickness is chosen as the film thickness and

the imaginary part, d. , as a measure of error. Then the P. and A values are calculated for this film index and real

thickness and their differences 6P, 6A from the given

values of P and A are computed. These differences are then

compared with the allowed differences 6 P and 6 'A given by

the 901 instruction. If the differences 6P and 6 A are both

smaller (in absolute value) than the allowed differences

6 P and o a, the computer prints the results of the calculation for this value of n

2

: otherwise a new value of

n2r is chosen and the calculation repeated until 6P and SA

t t are smaller than 6 P and 6 A.

16
If values of 6 P and 6 A have not been given by a 901

t T Q instruction, the computer assumes 6 P = 6 A = .0005 .

In particular, the film thickness and error terms 6P,

6 A and d. are first computed for the initial and final

i

values of n

? given by the previous 002 instruction. The

two error terms d. for the two values of n

2 are examined.

Since d. must be zero for the correct value of ^r' "^ is

expected to change sign as n

2 varies from the initial to

final value of the specified range. Therefore, if the. d.

values for the initial and final values of n

2r have the

same sign, the computer assumes that there is no solution

within the specified range of rip . The information printed

for this case is determined by the sign of a as given by a

previous 001 instruction.. If it is not specified or a is

positive, no printout Is given. However, if a has a

negative value, the comment "No solution in range of n

2

"

is printed and "the results of the calculation for the initial

and final values of n

2 are printed. If the range of

values for n

2 specified by the 002 instruction is too

large, two or more solutions for n2 may occur in the range

of n

2

, so the error term d. may have the same sign at each

end of the range of n2

. In this case, the computer will

erroneously assume that there is no solution in the range

of ngp. In practice, this has only occurred when n~ is

complex.

17
However, if d. has different signs for the initial and

final values of n2

, the computer- performs the calculations

for a value of n

2 equal to the average of the two previous

values of n

2

,-. If the error terms 6P and 6 A for this

solution are less than 6'P and 6 'Aj the computer prints the

solution. Otherwise, it determines in which half of the

range of n

2 the solution lies. If the signs of d. for

initial , average, and final values of the refractive index

of the film are + -- or -++, the solution for n

2 lies

between the initial and average values, otherwise the

solution lies between the average and final values. Using

this reduced range for n

2 the procedure is repeated until

the error terms Sp and 6A are less than 6'P and 6 » A in

absolute value. The procedure will be repeated only 20

times as a precautionary measure against use of excessive

computation time.

Thus an index of refraction n2 and thickness of a film

is computed from measured values of P and A. This value

of n2 is the best value determined from the measured P and

A values but will contain an error due to errors of measurement of the P and A values. The computer will determine

the limits of error for n

2 from the limits of error of P

and A if a value for n. has been previously given. The

upper limit of error is determined first . The increment

of n

2 (given by preceding 002 Instruction) is added to the

13
best value of n and film thickness and error terras computed

for this value. If the error term in either P (*>P) or A(6A)

is larger than the limit of experimental error of P and A,

this value of n , is taken as the upper limit for n2r .

Otherwise, the increment of n2r is again added and the

process repeated. This process is repeated until one of

three things occur:

(1) Either error term is larger than the experimental

error of P or A

(2) The value of nPr, is larger than the upper limit for

nQ (given by 002 Instruction).

(3) The process has been performed a times. (The absolute

value of a is taken, as a may be negative).

The value of a is, of course, given by the 001 instruction. A value of 20 for a has been found to be

satisfactory.

The lower limit for n^ is determined similarly with the

increment of n^ subtracted instead of added. In this case,

the calculation stops if the value of n

? is less than the

lower limit for n

?

. If a compensator with a retardation different from 90°

Is used in the ellipsometer, values of p, a , and a, (listed

In this order) instead of P and A must be given with this

instruction.

19
Instruction No. 905

This instruction calculates the index of the substrate

from P and A readings of the bare substrate. The index of

the substrate may be given by an instruction 005 to 900 or

computed by this instruction. If the retardation of the

compensator is different than 90°, values of p, a , and a,

must be given.

Instruction No. 906

The experimental errors of P and A are given. These

are used for instruction 904 when a has been given.

Instruction No. 907

Experimental values of p, a , and a are given and

p s the value Q of the compensator is calculated. The notation

and equations are given by Winterbottom [2]

Instruction No. 903

This Instruction allows another title card to follow It,

Instruction No. 909

This instruction sets all the values that have been

given by instructions 001 , 902, and 906 to their initial

values. It is followed by a title card.

The number of films may be Increased by giving

instructions 003 to 900, but may not be decreased. Suppose,

for example, the system of 5 films previously shown (with

refractive indexes np to n

7

) has been given to the computer.

Then to describe a system of 7 films (indexes n, to n

Q

)

20
instructions 003 and 009 with instructions for any other

films that are to be changed in thickness of index are all

that are required. However, to describe a system of less

than 5 films, instruction 909 must be used.

Instruction No. 910

This instruction stops the calculation. It must be

the last instruction of every set of data.

To perform calculations involving multiple reflection

of the light, or where an imperfect quarter wave plate

(Qy£90°) has been used, the number of reflections or value

of Q are given by 001 instruction. For an imperfect quarter

wave plate, values of P, a. and a_ are given with instrucp s tions 903., 904, and 905* also the value of Q may also be

computed by a 907 instruction.

Every set of data must start with a title card and

instructions 903 and 909 must be followed by a title card.

A title card may contain any information desired in columns

1 to 80.

The program is written in Fortran II for use on IBM

machines 704, 7090 or 709^ with the Bell Monitor. For use

with other Monitors, the READ, PRINT, and CALL SYSTEM

statements would have to be changed.

21
4. Functions

ABSF

SQRTF

SINF

COSF

SINDF

COSDF

LOGF

ATANDF

ATN1F(Y,X)

SYSTEM

CSR

CD

CM

CS(C3,X,FN3)

and Subroutines for Ellipsometry Program

Absolute value

Square root

Sine of argument in radians

Cosine of argument in radians

Sine of argument in degrees

Cosine of argument in degrees

Logarithm to base e Arctangent, result in degrees

Arctangent of Y/X with result in proper

quadrant in radians

End of computation

Complex square root, square root of a

complex ho.

Complex division

Complex multiplication

Cosine of angle of propagation of light

C3 = \ll - (n

1

sin ^/n-^)

2

X = n, sin (El 3 FN5 = n-?; n^ and C 3 complex

SRC(R, Tl, T2) Small reflection coefficient

R, Tl, T2 complex

p Tl- T2

K ~ Tl + T2

numbers

22
( CR, RP21, RF32, Q) Capital reflection coefficient

CR, RP21, RP52, and Q are complex

P = ^nQ

CR = RP21 + RP32 e iP

1 + RP21 * RP^2 e3TF

Q =

rio cos <j) 2

d

2

5. Variables Used in Fortran Program

Dimensional Variables

B(2)

C(2)

C2(2)

C3(3)

CI (2)

CIP1(2)

CK(2)

CNM1(2)

CRN(2)

CRN2l(2)

CRN32(2)

CRP(2)

CRP2l(2)

CRP32(2)

D(900)

D2C(2)

D2CX(2)

Coefficient in equation for y

Coefficient in equation for y

Cos (j)p Cos tyj

Cos 4). Cos d) ,-, Tn+1

Cos iT n

Cos (|) n >n-l

Total reflection coefficient (normal

polarization)

Total reflection coefficient between films 2

and 1 (normal polarization)

Total reflection coefficient between films 3

and 2 (normal polarization)

Total reflection coefficient (parallel

polarization)

Total reflection coefficient between films 2

and 1 (parallel polarization)

Total reflection coefficient between films 3

and 2 (parallel polarization)

dT - - - - thickness of film L

U - - - - computed from y_

U - - - - computed from y?

23
DFN2(2)

E(2)

FN2(2)

FN2E(2)

FN2I(2)

FN2X(2) n,

FNX(900,2)

IDT(12)

RH0(2)

Increment for film refractive index

Coefficient in equation for y

rig - - - - refractive index of upper film

Final value for film refractive index

Initial value for film refractive index

with imaginary part positive

nT - - - - refractive indexes of film

Title

R

P

RN(2)

RN2l(2)

RN32(2)

RP(2)

RP2l(2)

RP32(2)

Tl(2) to T5(2)

XX(2)

Yl(2)

Y2(2)

D =

n

R

21 , . iA

= tan tye n

21

reflection coefficient between sub3 strate and adjacent film (normal

n

21

n

32

n-l,n

,P

21

32

polarization)

- - - reflection coefficient between

films 2 and 1 (normal polarization^

- - - reflection coefficient between

films 3 and 2 (normal polarization)

reflection coefficient between substrate and adjacent film (parallel

polarization)

- reflection coefficient between

films 2 and 1 (parallel

polarization)

- reflection coefficient between

films 3 and 2 (parallel

polarization)

Temporary storage for complex numbers

Ln(-y)

-4tt. n„cos( Solutions for y = e 12

2

of equation Ey + By + C

<Ld A

24
ADX

AP

AS

AX

AXX

CI

DC

DD2

DEL

DENP

DEN1

Dl

D2

D2F

D2I

EA

EP

ERA

ERP

ER1

ER2

ER3

FN

PNP

A

A

A.

.-A

cal exp

NON-DIMENSIONAL VARIABLES

Angle of analyzer

Difference between calculated and

experimental values of A

P

Adsorption of polymer

Calculated A for single and multiple

reflections

Measured A

Cos ty 1

A

Increment of do

= 2p + 90° Relative phase retardation

Density of polymer

Density of solvent

Computed film thickness

Thickness of upper film

r P

Pi

d

d

2

Pinal do

Initial d^

AA

AP

Experimental errors In A and P, used

for calculating allowed range of

values for film thickness

Allowed errors in A and P for calculating ng

Errors in d

2 for real part of

n, X Xo, and X-,

n

P

Number of reflections

Index of polymer

25
FN1 n

l

HOLD

I

J

L

M L-900

MX

MY

N

NX N-4

P p

PDX p --P cal exp

PX

PXX p

PHI1 °1

QV/P Q or 6K

SI Sin <|) THETA1 e i

Theta2 e 2

TNA Tan A

TNPSI Tan if

V/L \

WP

X n-.Sin(f),

XM1

Refractive index of surrounding medium

Temporary storage

Index and. n-2

Index

Instruction numbers

Reduced Instruction numbers

Index for computed go to

Index for computed go to

Number of layers

Angle of polarizer

Difference between calculated and

experimental values of p

Calculated p for single and multiple

reflections

Corrected for quarter wave plate

Angle of incidence

Retardation of compensator

Phase of R

p

21

Phase of R

n

21

Vacuum wavelength of light

Used in computing DC

Ma p gnitude of R- o->

-o
XM2 Magnitude of R

n

2 , Trial values of real part of rip

Winter-bottom

Sign used in solution of quadratic eq

Temporary storage for input data

XI

Kc. X3

XXL 1

Z + or -

Zl to Z6

27
6. FORTRAN PROGRAM

10

20

3

40

560

70

89

100

101

110

13<

CRN( ? ) »CM( 2 ) -RN( ? ) , RP(?) »FNX(2 ,900) ,D(oOO) , XX(?)

FN2(2) »FN2I (2) »DFN2(2) »F.N2E(?) »FN2X(2) »C2(2 J »C3( 2)

RP21 (2 ) »RN21 12) »RP32(2) >RN32( 2)»Y1(2)»Y2(2)»E(2)»B(2)

C(2) »T1(2) »T2(2) »T3(2) »T^i (2) »T5(2) »RH0(2) »IDT(14) fCRP(2

D2C( 2) »D2CX(2 ) »CRN32(2 ) »CRP32( 2 ) »CRN21 (2) tCRP21 ( 2)

DIM EN

DIMEN

DIMEN

DIMEN

DIMEN

DIMENSION 0(2 ) »CNM1 (2)»CI(2)».CIP1(2

FN 1=1.

PHI1 = WL = 54

DEN1

DENP

FNP=1

N= 3

ION

SIGN

IS I ON

IS ION

IS I ON

70.

61 . 1.

1.

.5

ERP = . CO A -. L_ 1% H ~ • D2I=0

DD2-0

D2F = MCH = QWP='0

FN = 1.

EP=.0

EA = .0

READ

FORMA

PRINT

FORMA

READ

FORMA

PRINT

FORMA

IF(LIF(LIF(LM = L-9

I F ( MGO TO

DEN1 = DENPFNP = ERP = ERAGO TO

D(L) = FNX ( 1 F N X ( 2 N = XM

IF(Z4

X= SI

CALL

CALL

CALL

CALL

0005

0005

06

230, ID

T(13A

40, I T ( 1 H

60- L,

T( I3»

70 »L

T( 1H0

1)80,

2)90,

9 0^)1

00

9) 101

(110,

Zl

Z2

Z3

Z4

Z5

5 Zl

»L) = ,L) = AX0F4

) 1 3 , *FN1

CS(CN

CS(CN

CM(T1

CM(T2

T6,A2

DT

13A6

Z1»Z

6X,6

»Z1»

13,6

170,

290,

2 0,1

,A2,38H PROG. 10 MULTIPLE

2,Z3,Z4,Z5,Z6,Z7-Z8

F10.0,A6,A5

Z2,Z3 ,Z4,Z5,Z6,Z7,Z8

F12.5 ,3X,A6, A5 ! 80

90

2 0,100

FILM ELLIPSOMETRY)

,101 ,5 50

105 0,1 100, 1100,1 100,2070, 670, 20, 1,0) ,

Z^

-ABSF(Z?

N , L ) 5 0,130

,X,FNX( l.N)

Ml ,X ,FNX( l.N-1 ) ) »FNX(1 »N) »CNM1 )

9 \-l\
c

cc

I 140 N

ID

C

Cc

r\~c

c

c

150

160

170

180

190

200

210

220

230

240

250

260

270

275

280

290

320

321

322

323

324

325

380

390

ALL

ALL

ALL

ALL

F(N

X =

= N

1 ALL

ALL

ALL

ALL

ALL

ALL

ALL

ALL

( 1 ) (2)

ALL

ALL

= IT F(Z

Nl = F(Z

HI1

F(Z

L = F(Z

CH =

1 =

1 = F(Z

N = F(Z

WP = F(N

N2I

FN 2 N2E

N2I

FN 2 N2E

T F(Z

21 = F(Z

D2 = F(Z

2F =

T

= NRIN

ORM

ONS

SRC(CR

CMIT1 > CM(T2,

SRC(CR

4) 160,

1-4

C J = l»

CS(CIP

CS(CI 9 CMtTl,

CM(T2,

SRCtRP

CMtTl , CM(T2,

SRCfRN

:T2( 1)*

T2(2)«

RCfCRN

RCfCRP

•1 50

) 180,1

1)200, 2 72

) 22 0,2

31240.2

4

INDFfP

OSDF(P

1260,

5

) 280,

6

4) 50,

1)= AB

1)= Z2

Z3

AR

Z5

Z6

1 ) = 2) = 2) = 2) = 50

1321 ,3

Zl

)323,3

Z2

1325,

Z3+DD2

400

P,T1,T2)

FNX ( 1»N-1) ,CNM1 ) FNX ( 1 ,N) sCN)

N,T1,T2 ) 160 , 140

NX

1,X,FNX< 1,1+1))

X,FNX( 1 , I )

FNX ( 1,1 + 1 ) ,CI ) FNX (1,1) tCIPl

,T1 ,T2)

FNX ( 1 ,1 ) ,CI ) FNX(1,I + 1 ) iCIPl ) ,T1 ,T2)

D ( I + 1 ) / W L D ( I + 1 ) / W L ,RN ,CRN,0)

,RP,CRP»Q)

90, 180

10,200

30, 220

50,240

HI1 ) HI1 ) 70,260

275 ,280

130,130

SF(Zl)

+DFN2(1 ) /2.

SF(Z4)

+DFN2I2 ) /2.

22,321

24,323

00,325

/2.

390,1 ,FNX( 1,N) ,FNX(2 ,N ) ,FN,P,A

T(1H0I3,23H FILMS, INDEX SUBSTRAT

?X . ?HP=FQ . 1 . ? V . ?Hfi=FQ . 3 /QMn TH

iiinuij,<un riLi',o»iiNULA ouo o i h.m i E = 2 F 9 • 5 , 2 H I,F5.0»13H REFLECT

2X,2HP=F9.3»2X»2HA=F9.3/9H0 THIC^3X,9HA MG/CMSG4X , 5KDEL P4X

29
410

420

440

450

46'

470

480

481

482

48^

484

485

486

5 00

! »5HD

! REA

r M 2 x FN2X

FN2(

FN2(

MX = X = F CALL

C A L L Tl ( 1

r i (

T2 ( 1 T2 (2

CALL

CALL

Tl ( 1 Tl (2

CALL

I F ( N CALL

CALL

CALL

C A L L CALL

CALL

GO T CALL

CALL

CALL

CALL

CALL

CALL

CALL

T2 ( 1 T2(2

CALL

CALL

GO T GO T P R 1 N FORM

.4HFN

GO T PRIM

FORM

.X»1H

GO T P R I N D2 = CALL

T2 ( 1 T2 (2

CALL

CALL

EL

L

( 1

( ?

1 ) 2 )

iNl

r

C

A6X>5HERR0R4X»5HTHICK4X>5HDEL

N2 I MAG )

) = F N 2 I ( 1 ) )= FN2I ( 2

= FN2X( 1 ) = -FN2X(2)

P4X , 5HDLL A6X, 5HL RRGR 3 X,l 6 H,' 12

) =

) =S

-3

C

C

sc

c

s

r

r

S

C

C

sc

) =

) =RR 0(

0(

TAT

2P

TAT

N7

TD2

C

) =

) =R

R

S(

S(

F

FF

RC

M (F

RC

)5

M-( M ( RC

M(

M(

RC

4 7 M(

M(

RC

M(

M(

RC

M(

T

r C(

C(

55

48

48

( 1 5X

48

UP

( 1 X,

4 8 48

IM.( Tl

Tl

C(

C(

1C2»X*FM2 ) C 3 , X , F N X ( 1 » 3 ) ) N2(l )*C1

N2 (2 )*C1

r;i-C2( i ) N1*C2( 2 ) (RP21»T1»T2)

T2»FN2»C2)

M 1 * C ]

(RN21 » 5n,440

Tl ,FNX

T2,FN2

(CRP32

T1»FN2

T2»FNX

(CRN32

Tl i\X

T2.FN2

(RP32,

ritFN2

T2»FMX

(RN32»

Tl ,FNX

1(1) *D

1 ( 2 ) *D CRP32,

CRN 32,

0,480,

1 ,483,

2H06X»2

,4HFN2

6

4

H06X,2

4HFN2R

6

Tl ,T2 ) ,450

(1,3) »C2J

,C3)

»T1»T2 ) ,C2)

( 1 ,3) ,C3)

,T1, TZ )

( 1,3 ) ,C2)

, C 3 ) Tl ,T2 ) ,C2)

(1,3) ,C3

T 1 , T 2 )

( 1 ,3) ,C3 ) (3 ) /WL

(3) /WL

RP32,CRP,T2)

RN32»CRN» \2 ) 5 8 0,580) , M

48 5) ,MY

HD2 6X,1HP8X, 1H A9X , 6HRF . CF . 5 X , 1 HP9X , 6HRF . CF . 5 X , 1HN7X

,

I )

HD2 6X, 1HP8X,2HAP8X,2HAS8X,6HRF.CF.5X,1HP9X,6HR

5X»4HFN2I )

F . C F . 5

T1.F.M2 ,C2)

( 1 )*D2/WL

(2 )*D2'/WL

CKP21,RP21 ,CRP32,T2

CRN21 ,RN21 ,CRM32-,T2 )

jv
301

502

r n

--

504

503

506

520

5 30

540

550

560

570

580

CALL CD (RHO

PX=ATN1F (RH

AX=ATANDF (

XM1=SQRTF(C

THETA1=ATN1

XM2=SQRTF(C

THETA2=ATN1

GO TO ( 501,5

PRINT 502 »D FORMAT I1H F GO TO 506

PXX~ . 5*ATA

XL = ,5*ACO

AP = ATANDF

AS = ATANDF

PRINT 304,0

FORMAT ( iH F GO TO 506

AXX = ATANDF

PXX= (KX+45

PRINT 302,0

D2 = D2+DD2

IF(D2F-D2J 5 FN2X(2)= FN

IF(FN2-(2)-

FN2X( 1 )= FN

F.M2X(2)= FN

PRINT 540

FORMAT! IH ) IF(FN2E(1JCALL SYSTEM

RhO( i »=SHMD

RHO I 2 ) =SIlMD

TI ( 1

) =4. -SI

Tl (2 ) =4. -SI

T2 ( I

) =RHO(

T2 ( 2 ) =RHO(

CALL CM(T3i

CALL CD(T2,

Tl ( 1 ) =1.-T2

TK2J =-T2(2

CALL CSR(T2

D ( N ) = . FNX( 1 »N)= 5 FNX(2»N)= S

PRINT 570. F FORMAT (2 OHO

13)

GO TO 130

RHO( 1

) = SIN

RHO( 2 )=SIND

CALL CM(Tli

CALL CM(T2»

CALL CM(T3,

CALL 0M(T4,

,CRP21 »CRN21 1 0(2). RHO ( 1 ) J *28 .64789-45 . QRTF(RHO( i )**2+RHO(2)**2 )

R

r^21 ( 1 )**2+CRP21 (2 ) **2)

F{CRP2i(2),CRP2 1(l))*57.2956

RN21 ( 1 ) **2+CRN21

2 ) **2

F(CRN21(2) »CRN21 ( 1) )*57. 295b

03.505) »MV

2,PX»AX»XiMl,THE TA1 -XM2 » TKETA2 » F N2 ( 1 ) »F'lN2 (2 ) - . 1 »2F9.3»F12.5 ,F9.3»Flz.5>F9.3,2F9.4)

(SINDF (GWP-SlNDFt 2.*PX

/COS^F (2.P* } ) CCSDF(2.*PXX.5*COSDF(GWP) ) NDF ( AX ) *COSF ( XL ) / COSDF ( AX

/SINF ( XL } J NDF( AX >*SIMF ! XL } /COS OF ( AX ) /COSF ( XL ) )

i 2 ( I ) > F

NDF

SF ( (SI

(SI

2 »PXX»AP»AS»XM1 » i hFTAl , XM2 » ! KETA.2 i?t

9.1

(SI

. ) '' 2,P

20,

2X ( F N ? 2X(

21 (

NDF (AX/COSDF ( AX) --FN)

FN-45.

XX »AXX»XM1 »THETA1»XM2»THETA2»FN2I 1 ) »FN2(2 )

5 2 0.50

2 J+DFN2 (2 ! X( 2) ) 530,530 ,410

1 1+DFN2 ( 1 ) 2 )

F N 2 X { 1 ) ) 5 » 5 » 4 1

I- l A

F ( A **2

**2

1 + 1

)T2,

Tl,

( 1 )

)»T1

1/C

1/C

NX(

IND

DF(

F (A

CRN

Tl,

T2,

Tl,

) /COSDF ( A )*COSDF(2.*P + 90. )

) /CuSDF ( A

) -b

NDF ( 2.-P+90. ) -RHO I 1 ! *RHO( 2 i

T2 ) T3J

1-T2 (

)*FN1

1-T2(2 )*FN1

1 , N ) , F N X ( 2 , N ) , P , A EX OF SU8STRATE = F9.4,F9.4,2rl I » 2X »2HP=F9.3 ,2X »2HA :

A ) /COSDF (A ) -COSDF (2.-P + 90. )

) / COS D F ( A ) - 5 I N D F ( 2 . -P + 9 . ) 32,CRP32)

RP21 ) RHO)

RN21 )

31
90

L(1)=T3(1)-T4(1)

12)=T3(2)-T'4(2)

CALL CM( Tl »RN21 »RP21 ) CALL CM( T2,T1 ,CRP32 ) T3( 1

) =CRN?2 ( ] )+T2( 1

T3(2 ) =CRM32 (2 ) + T2(2 ) CALL CM( T4,T3»RH0)

CALL CM(T5»T1»CRN3.2)

B( 1 )=T4( 1 )-CRP32 (1)-T5( 1

B(2)=T4(2)-CRP32(2)-75(2)

CALL CM(T1»RN21»RH0)

C( 1)=T1( D-RP21 ( 1 ) C(2)=T1 (21-RP2K2)

CALL CM(T1»B»B)

CALL CM(T2»E»C)

73(1 )=T1 (1,)-4.*T2( 1 ) T3(2) -Tl (2)-4.*T2(2

CALL CSR(T4»T3)

00 590 IX= 1»2

Tl ( IX )=-R( IX ) + T4( IX ) T2 ( IX J=-B( IX )-T4( IX ) T 3 ( I X ) = 2 . * E ( I X ) CALL CD(Y1,T1»T3)

CD(Y2»T2»T3)

600

610

620

CMiTl ,FN2»C2)

-12

CALL

CALL

T3(l ) =12.56537*T1( 1 ) /WL

T3(2) =12.56637*T1(2) /WL

XX ( 1

) =ATN1F (-Y1 (2) »Y1 (1 ) ) XX (2 ) =0.5*LOGF (Yl( ] ) **2+Yl (2 ) **? 1 CALL CD(D2C,XX,T3)

XX( 1

=ATN1F(-Y2(2) »Y2( 1 )

XX (2 ) =0.5*LOGF ( Y2( 1 )**2+Y2 (2 ) **2

CALL CD(D2CX,XX,T3 ) 2=606060606020

IF( ARSF(D2C(2 ) )-ABSF(D2CX( 2) ) )610>610»600

HOLD= D2C(1)

D2C( 1 )=D2CX( 1 ) D2CX( 1 )=HOLD

HOLD = D2C(2 ) D2C(2 )=D2CX(2)

D2CX( 2)=HOLD

Z-606060606040

01= 02C( 1)

T2 ( 1

) = Tl ( 1 )*D1/WL

T2 (2 ) =T1 (2)*D1/WL

CALL RC(CRP21»RP21»CRP32»T2)

CALL RC(CRN21»RN21.CRN32»T2)

CALL CD(RHO»CRP21»CRN21)

WP=( ( FN 1**2-1. )•/ (FN 1**2 + 2. ) - ( FN2 ( 1

1 ( ( (FN2( 1 )**2-l. )/ (FN2( 1 1**2+2. ) )*

2 (FNP**2+2. )*DENl+( FN 1**2-1. )/CFNl**2+2. )*DENP

DC= WP/(WP/DENP+( l.-WP) /DEMI )*Dl*l.E~5

ADX=ATANDF(SQRTF(RHO( l)**2+RHO(2 ) **2 ) )-A

PDX = ATN1F(RH0( 2) »RHO( 1 )

) *2 8 . 64789-45 .—

T2 ( 1

) =T1 ( 1 )*D2CX( 1 ) /WL

)**2-l. )/(FN2( l)**2+2. )

(DENl-DENP)-(FNP**2~l. )/

*DENP/

52
625

630

670

680

810

3 15

820

830

840

8 50

855

856

857

860

870

880

890

900

910

920

930

T 2 ( 2 CALL

CALL

CALL

ADXX

PDXX

GO T PR IN

1 FN 2 FORM

GO T P= Z A=Z2

AP = Z TNPS

XL = A

QWP = PR IN

FORM

GO T I=NP R I N FN2X

FN2(

MX = Xl = X2 = FN2(

GO T ER2 = FN2(

MX = GO T ER1 = IF(E

IF(E

IF(E

I FIN

P R I N FORM

P R I N

1 FN2

GO T DO 9

X3=(

FN2(

MX = GO T ER3 = IF(A

IF(A

IF(E

IF(E

IF(E

Xl =

) = i 1 i a ) * 2 RC(CRP21»

RCCCRN21,

CD(RHO,CR

=ATANDF(5Q

=ATN1F ( RHO

(625,820

T 630, Dl,

( 2) ,Z

AT5 1H F8.1

520

1

CX( 1 ) /WL

RP21,CRP32,T2)

RN21»CRN32»T2 ) P21,CKN21 ) RT F ( RHO ( 1

) **2 + RH0 ( 2

) **2 ) ) -A

(2 ) ,RHO( 1 ) )*28. 64789-4 5. -P

,830, 880, 103 0,11 90, 2030), MX

DC,PDX,ADX,D2C(2) ,D2CX( 1 ) , PDXX , ADXX , D2CX (

»FN2( 1 ) » ,1PE12.4,0P2F9.3,F12.5,F8.1,2F9.3,F12.5,2F9.5,A6)

3

1 =SQ

TN1F

A COS

T 68

ATI

50

2

T 39

(2) =

2 )=-

2FN2I

FN2E

1 ) =42

D2C

1 ) =

3 42

D2C

Rl )8

R2)8

R2)

CH) 8 T 85

AT(2

T 63

(2) , 10

50 I Xl+X

1 ) = 4

42

D2C

BSF(

3SF(

Rl )9

R3)9

R3)9

X3

NDF( AJ/COSDF ( A ) *S I NDF ( AP ) /COSDF ( AP )

,SINDF (A) /COSDF (A) ) (COSF (2. -XL ) /COSDF (2.*P) ) 1-57.295 6

RTF (SI

( TNPSi

F(ABSF

0,QWP

45H0RELATIVE RETARDATION OF QUARTER WAVE PLATE =F9.3)

0,1 , FN

FN 2 I (2

FN2XI2

( 1 ) (1 ) X2

(2 ) XI

(2)

40,840

55,855

870,87

56,103

77FI0NO

0,D1,D

Z20

= 1,20

2)/2.

X3

(2)

PDX)-A

ADX)-A

10,910

30,930

40,940

X( 1,N) ,FNX(2 ,N) ,FN,P,A

)

)

,850

-,8 70

0,855

1,1031

SOLUTION IN RANGE OF N2)

C,PDX,ADX,D2C(2 ) ,D2CX( 1 ) , PDXX , ADXX , D2CX ( 2 ) ,FN2( 1 ) ,

BSF(ERP) )890,890,900

ESF(ERA) ) 1170,1170,900

,920

,940

,930

33
94

9 50

9 o 9 70

1 2 C

i o

3

':

10 31

] 050

] 060

1 7 1080

109

1 1

1 1 ]

1115

1120

113

1140

1150

: Rl= F.R3

GO TO 950

X2= X3

E R 2 = E R 3

C N T I i'm U t

P R I N i 9 7 o

F vj R MAI ( ^ 4 r i i\i GO i 10 30

;.' x

-

5 F N 2 ( 1 ) = X 2 GO TO 420

PRINT 63U-D1

1 F N 2 ( 2 ) * Z

F N 2 X ( 2 )

/ L U T I R IE:'; )

DC tPDX»ADX »D2C ( 2 ) ?.D2CX ( 1 ) »POXX >ADXX,D2CX ( 2 ) »FN2( 1 ) , FN2X(? 1+DFN2 ( 2)

IF(FN2F!2N )-FN2X(2) 150,50 6 15

!6< 1070, 1060

>0, 320,1090

TF (OWP

MY = 2 GO TU 108C

M Y = 1

I F ( F.N - 1 . ) 1 MY = 3

s GO TO 32

P = Z1

A = Z2

IF (QWP) 1110,1120,11x0

XL=AC05F(ABSF( COSDF (QWP ) *C0SDF(2.#P) ) )/?•

DEL = ATN1F(SINDF{QWP) »-SINDF-{2-*^)/C0SDF( 2.*P ) ) A=ATNlF(SINDF( A )/COSDF( A) ,COSF(XL} /SINF(XL) )*5 7.2956

AX = ATN1F(SINDF (Z3i /COSDF (Z3 ) * S I NF ( XL ) /C.OSF ( XL) ) #5.7. 29 56

P R I N T 1 1 1 5 , A , A X FORMAT i 14H0CALCULATED A = f- 15.4,.

P=DEL*28. 6473-45.

A= ( A + AX ) /2.

IF( FN-1. 11130, 1160, 1130

TNA=SINDF ( A) /COSDF ( A)

IF (TNA) 1140,1150,1150

' F 1 5 • 4 )

I N. TNA

,D2CX( PDXX,ADXX,D2CX(2 ) , FN2( 1 ) ,

P=P+90.

P= (P+45. ) /FN-45.

A=ATANDF( rNA**(l./FN)

1160 GO TO ( 550,550 ,380,810,560 ) ,M

1 170 I F(NCH) 11 75 ,1030,1175

1175 PRINT 630,D1,DC,PDX,ADX,D2C (2

1 FN2(2),Z

NPCH = XABSF(NCH)

DO 2011 I=1,NPCH

1180 FN2( 1 )=FN2( 1 )-DFN2( 1

MX = 6

GO TO 420

1190 IF( ARSFfPDX ) -EP ) 2000 , 2000 » 20 1

2000 IF(ABSF(ADX)-FA ) 2010 , 2010 ,201

2010 IF(FN?(1)-FN2I(1))2015, 2015, 2011

2011 CONTINUE

2015 PRINT 630,D1,DC,PDX,ADX,D2C(2) ,D2CX(1 ) ,PDXX » ADXX »D2CX ( 2 ) ,FN2 (

1 FN2( 2) ,Z

54
N2

n. 2020 FN2

GO ' ?C

2 04 r IF(

2 050 IF ! 2 060 COM

GO

2070 EP = EA

GO

EN

SUB

D I M

Tl ( Tl ( CAL

CAL

Tl ( Tl ( CAL

X = N RETi

END

SUB

DIM

DO

T3(

1 T4i

CAL

RET

END

SUB

MCC

D I M

P( I P(2

T2(

T2 ( CAL

CAL

Tl : Tl ( T3(

CAL

RET

END

SUB

DIM

SRX

SRX

IF(

1 IF(

1 )=X3

060 I=1»NPCH

1 J=FN2( 1 I+DFN2I 1 )

420

'•SF(P^X)- r P)2 n 4^.2O^0,lO3n

B ?j F (" A D X ! - E A ) 2 5 C • 2 5 » 10 30

N2( 1)-FN2F( 1 ) ) 2060*2 06 » 1030

INi if" 1030

Zl

Z2

50

OUT I N S 1

) = X

). = 0.

CD(

CM{

) =1.

) =-T

CSR

-SIN

RN

NE CS(C3»Xil

N C3(2 ) »FN3

T2,T1,FN3)

T 3 , T 2 » T 2 ) -T3 ( 1 ) 3(2 ) CC3»T1 ) (PHI 1

2 ) •> T 1 ( 2 ) • T 2 ( 2 ) > T 3 ( 2 )

ROUTINE SRC(R»T1>

ENSIGN R (2 ) .Tl (2 )

1 1 = 1 «2

I )=T1 { H-T2 ( I )

I ) = T ". ( I ) + T 2 ( I ) L CD(R. »T3»T4)

URN

2)

T2 2) »T3(2) >T4(

ROUT I RACKI

ENS 10

J = 12.

) = 1 2 .

1 )=EX

2 ) =-E

L CM(

L CM(

1 ) =RP

2 ) =RP

1 ) =1.

L CD(

URN

NE RC

N R

N CR ( 566 3 7 56637

PF(P(

XPF(P

T 1 , T 2 T3.T1

21(1)

21(2)

+ T3 ( 1 CR»T1

(CR

EFL

2 ) » *Q(

*Q(

2 ) )

( 2 ) »RP

»RP

+ T1

+ T1

) T3

»RP

ECT

RP2

1 ) 2)

---co

) * S

32)

21 ) (1 ) (2 )

21,RP32»Q)

ION COEFFICIENT OF A FILM U=N2*C0S(PH

1 ( 2 ) » RP 32 ( 2-) » Q ( 2 ) » Tl { 2 ) » T2 ( 2 ) » T3 ( 2 ) »P !

SF(P( 1 ) ) INF(P(1 )

12 ) *D/WL

2 1

ROUTINE CSR(SRX»X)

ENSION SRX ( 2 ) »X( 2

= COMPLEX SORT X»IF SRX ( 2 ) =0 »SRX ( 1

) =POS IT I VE » IF SRX ( 1 ) =

(2). = NEGATIVE»0TERWISE SRX ( 1 ) =POSI T I VE AND SRX(2)=C0RRE

X( 2) )4,1 ,4

X ( 1 ) ) 2 » 2 » 3

0»

CT SIGN

55
5R

GO

SR

SR

GO

R = SR

SR

RE

EN

SU

DI

E = T2

T2

RE

EN

SU

DI

T3

T3

RE

EN

x : i

X ( ? ) To

X( 1 ) X<2 ) TO

SORT

X ( 1 ) X(2 ) TURN

DBROU

MENS

T3( 1 (1 ) = (2 ) = TURN

DBROU

MENS

(1 ) = (2) = TURN

D

= U , SGRTF( £B3F(X( 1 ) )

= SQRTF(X ( 1 )

F(X(1 )**.2+"X( 2)**2)

=SQRTF( (R + X( 1 ) ) /2. ) =SI6NF(SQRTFt ' R-X

1 ) / 2 . ) » X { 2 ) )

TINE CD(T2»T1»T3)

ION TK2) »T2(2) ,T3(2)

)**2 + T3( 2 )* "^2

( T 1 ( 1 ) * T 3 ( 1 ) + T 1 ( 2 ) * T 3 ( 2 ) ) / E

( T 1 ( 2 )

-

;;-T 3 ( 1 ) ~T 1 ( 1 ) "-T 3 ( 2 ) ) /E

TIME CM(T3»T1»T2)

ION TK2) »T2(2) »T3(2)

Tl ( 1J*T21 )-Ti (2)-T2 (2 ) Tl(l )*T2 (2J+T1 (2)*T2 (1 )

36
7. References

[1] 0. Heavens , Optical Properties of Thin Solid Films

(1955) Butterworth Scientific Publications , London

[21 A. B. JInterbottom, Optical Studies of Metal Surfaees,

The Royal Norwegian Scientific Society Report No. 1,

(1955) published by F. Bruns, Trondheirn, Norway

[3] F. L. McCrackin, E. Passaglla, R. R. Stromberg and

II. L. Steinberg , Measurement of the Thickness and

Refractive Index of Very Thin Films and the Optical

Properties of Surfaces by Ellipsometry, J. Research

NBS A 67, 363, July- August 1963

[h] Proceedings of the Symposium on the Ellipsometer and

its Use In the Measurement of Surfaces and Thin Films,

National Bureau of Standards, Sept. 5, S, 1963, to be

published by NBS, for sale by the Supt . of Documents

U.S. Government Printing Office, Washington, D. C.

[5] R. R. Stromberg, E. Passaglla and D. Tutas,

J. Research NBS 67A, (Phys. and Chem.) 4jl (1963)

37
Refractive

Index

n,

n

n

n

n

Surrounding

Medium

$

i*-

\

Fig.•o • 1. Schematic diagram of 5 films on a substrate. Refractive Indices of films are U2 to ng, thicknesses

of films are dp to cLr. angle of incidence is ((), and

refractive indices o

strate are n

2

uu iJ 6>

, angle of incidence is

surrounding medium and sub-

-j_ ana n~.
) 1 Q cd •H 3 a

S>—

H -;_> >—

G cd

CO -P

C3 CD o 13

JO

CO

O

.p -P

"0

Ph o

_!-3 '4-i

S-i Ph

(D

v-( CO © © H P-l

CO H 3 : .0 CO >O r; G

81

CO

Ih T5

CD

a o CO

... •

!-< »\ GO ^ i-H © n P-i =5 * »» \y~\

c-*5

n •H

CO lin M

aU

O bi)

O

G

m •\ •H QhC ^O

>_J •\ !—

e*—

rH -p O 3 Cm a • p F* © o cd cj o m -p

aQ

ffH

OG o H

ft

H

J—

cd

G *•£ ,lH cd o m P-i £! td-p CO H P-t M o CO

I+H dj £ cd o G p-i H H b()

@

#ilK% cvj w
oo

hLU

LU<

coo

1-

Ll

<MQ

g CM" O Q 1- ~

COM

COQi 1 1 i - - a

ro

ii >§

oAo i

•H- 1 II 2

/S\ Ll /CO

LU

\-

-z. LU

m o

CD Cm — C5 rH CO 5 H bO

lu <Vhg S -H y mt5 < o to • \i Cm 0)^^ ^ mS o oo ix.

h- m--' I 3

rH -P 00 * 4 CO G > s o i—o O-H

^cc Cm 00 -P *o z o a o

•HHrH

aOH Cm of G

SI > CO !h /^K H 00 1 - 1 ° -P Cm 1 ii 00 O O z

Ll

U

M ?H

V

y o Sh ^r^ -p o n

oo o a

-*« ^

13 ••

G

g cq 1 1 CO T3G

>H • CO

h- Si CM

RREC POR 00 ON^-i © 3. O ~ G O' o •H O — 5 G i i !h iH G O -POP o

-H CO

Q -P 00 Ik O G

(^ ° L • • m

©

CL>

Ii P s ^i " * OJ O o • G O

v_/ T ^

T3 54

O i LU«

CC

Q

O 2

c0 ^m

GO

<! oo -h

1- < 00 -P ^a 00 CO S G T5 u CO ^ in

P-l

O CO bO-H -p

TO id

00 -H -P Ph O

cr

L±J ^— hf\ LU

•H

40
ENTER C

MY

@>

PRINT TITLEPRINT TITLE

PRINT TITLE

D2=D2I

CAL : N

2C0S$ 2

CAL: PX,AX,RP2| ,RN 2|

MY

CAL:PXX,AP,AS

CORRECT FOR Q

/V

PRINT

D2=D2 + DD2

D2F- D2

-,o TO STATEMENT 520

CAL:PX,AX

FOR

MULTIPLE

REFLECTION

,, @

PRINT

fig. 4. Diagram G. Calculates and print's ellipsometer readings (PX and Ax or PXK, Ap and A3) and reflection

coefficients (RPp-i and RN -.).i
NTER

0,^nchJ

-.+

PRINT LINE

N PCH = NCH

DOI = l,N PCH

FIM2(|)=FI\I2(I)-DFN2I(|)

M X = 6

GO TO 420

P DX - EP

I

)

+

.0

( |ADX | - EA \t-

-,o

(pN2(l)-FN2I(l))-L-« i

+ i

PRINT LINE

FN 2(I)=X3

DO I =1,NPCH

FN 2(I) = FN2(I) + DFN2I(I)

MX = 7

GO TO 420

I

D2

Q

|PDX| - EP J

+

-,o (£04§) T

C | ADX|- EA ") + -o

( FN 2(l)-FN2I(lj)—"

TO STATEMENT 1030

Fig. 5. Diagram D. Interprets NCH. If NCH is zero, do calculation is performed, if NCH is not zero, the

limits of error for FW2(l) are determined and

printed.

i? * U.S. GOVERNMENT PRINTING OFFICE : 1964 0—730-636