User Tools

Surface chemistry reactions

With plain reactions, particle absorptions and transformations are defined without considering the state of the surface. A more advanced approach allows to define similar reactions in dependency of the actual surface material coverage. Fig. 1 below shows an example of a surface coated with two different material components, which is exposed to the gas and/or plasma.

Fig. 1: Reactive plasma-wall interaction model.

According to this representation, the advanced surface chemistry model considers three different regions:

  1. The gas phase and/or plasma
  2. The first atomic layer of the surface
  3. The deeper atomic layers which are in total representing the deposited layer material.

As already indicated, the surface layer and the deposited layer consists of multiple material compounds. A reasonable reactive model should comprise at least two different surface materials e. g. “Al” as metallic aluminum and “AlOx” as metal-oxide in a reactive deposition model.

Specification of wall materials and initial coverages

If we stick to the reactive AlOx deposition model, the first step is to declare two different names for the metal and metal-oxide:

add_material("Al", 1e19);
add_material("AlOx", 1e19);
set_initial_coverage("AlOx", 0.5);

The involved commands are

  • Declare material name with bond density
    add_material("material_name", bond_density);
  • Declare initial surface coverage of a material
    set_initial_coverage("material_name", initial_coverage);

The bond_density parameter represents the surface density of bond sites of the material in [1/m2]. For realistic molecular distances, the bond density typically is in the 1019 [1/m2] range. However it is possible to chose a smaller value in the simulation (e. g. 1017) in order to speed things up. If the wall is in equilibrium with the gas/plasma, the actual bond density has no influence on the result - it only influences the time required to reach the equilibrium state.

Note: In the current version, different bond density values for different materials are not yet supported and lead to undefined behaviour.

In order to get the deposition in the right unit you need to calculate the bond density depending on your material. The example calculation for AlOx is the following:

$\rho_{Al_2O_3} = 3.94~g\,cm^{-3}$

$m_{Al_2O_3} = 102~u = 1.7\cdot10^{-22}~g$

$\rho_{Al_2O_3}^{'} = \rho / m = 2.3\cdot10^{22}~cm^{-3} = 2.3\cdot10^{28}~m^{-3}$

$\rho_{Al_2O_3}^{''} = {\rho^'}^{2/3} = 8\cdot10^{18}~m^{-2}$

$\rho_{AlOx}^{''} = 2\cdot\rho_{Al_2O_3}^{''} = 1.6\cdot10^{19}~m^{-2}$

In the example given above it is sufficient to specify the initial coverage of only one material, e. g. AlOx. The coverage of Al will be automatically adjusted in a way that the sum of all coverages is 1.0. This works also for more than two materials.


add_material("Ti", 1e19);
add_material("TiO", 1e19);
add_material("TiO2", 1e19);
set_initial_coverage("TiO2", 0.9);

Here, the surface consists by 90% of “TiO2” (i. e. it is almost fully oxidized). The remaining 10% of the surface coverage is equally distributed amongst “TiO” and “Ti”. If we write

add_material("Ti", 1e19);
add_material("TiO", 1e19);
add_material("TiO2", 1e19);
set_initial_coverage("TiO2", 0.9);
set_initial_coverage("TiO", 0.1);

then the initial coverage of “Ti” will be zero.

Surface reaction involving no deposition

add_surface_reaction("species", flag, amount, probability, "material_before", "material_after", ["rp1", "rp2", ...], [n1, n2, ...]);

This is the syntax for a surface reaction without deposition. The parameters are

  • species ⇒ String specifying the gas species
  • flag ⇒ Specifies, if gas particle is absorbed (flag==1) or not (flag==0)
  • amount ⇒ Number of gas particles required to accomplish one reaction (can be non-integer)
  • probability ⇒ The reaction probability
  • material_before, material_after: Strings specifying the required initial surface material and resulting surface material.
  • [“rp1”, “rp2”, …], [n1, n2, …]: Reaction products and their amounts. As always their emission characteristics is Maxwellian by default and can be modified via set_emission_sputter, set_emission_energy etc.

Still sticking to the reactive AlOx example, the oxidation of Aluminum can be described by Al + 0.75 O2→AlOx. The number 0.75 comes from the chemical formula Al2O3 of aluminum oxide 1). Translated to the command syntax and assuming a reaction probability of 50%, this yields

add_surface_reaction("O2", 1, 0.75, 0.5, "Al", "AlOx", [], []);

Surface reaction involving deposition

While the surface oxidation of Al described above leads to a change in the surface material coverage, it does not increase the deposited film thickness. In contrast, if metallic Al is absorbed on the surface this leads to film growth. For that purpose, a modified syntax is required:

add_surface_deposition("species", amount, probability, "material_before", "material_after", "material_deposited", amount_deposited, ["rp1", ...], [n1, ...]);

Here, an additional parameter material_deposited describes the material component which contributes to the deposition zone. With the parameter amount_deposited the amount of surface sites per reaction can be controlled. There is no flag for the incoming gas species, since it is assumed that for a deposition process it will be always absorbed. Thus, the complete reactive AlOx example would look like follows (for Al with a deposition probability of 100%):

add_surface_reaction("O2", 1, 0.75, 0.5, "Al", "AlOx", [], []);
add_surface_deposition("Al", 1, 1.0, "Al", "Al", "Al", 1, [], []);
add_surface_deposition("Al", 1, 1.0, "AlOx", "Al", "AlOx", 1, [], []);

Please note that surface oxidation by “O2” only works if there is a non-zero metal fraction of “Al” present at the surface. “Al” deposition works for both possible surface materials.

Surface cover deposition

Many deposition reactions such as deposition of sputtered metal work equally on all possible surface materials. In all of these cases, the deposited metal “covers” the actual surface layer component and replaces it by itself. The surface layer component will then contribute to the deposited film. A visualization of this process is given in Fig. 2.

Fig. 2: Deposition sequence in the view of the wall reaction model.

For this “covering” deposition, a special command can be used:

add_cover_deposition("species", amount, probability, "deposition_material", ["rp1", "rp2", ...], [n1, n2, ...]);

Here, the deposition_material parameter specifies, which material is deposited on top of all possible surface materials. In the reactive AlOx example, the following definitions are equivalent:

add_surface_deposition("Al", 1, 1.0, "Al", "Al", "Al", 1, [], []);
add_surface_deposition("Al", 1, 1.0, "AlOx", "Al", "AlOx", 1, [], []);

… and …

add_cover_deposition("Al", 1, 1.0, "Al", [], []);


A third deposition mechanism performs deposition by implantation, i. e. without modifying the state of the top surface layer:

add_implantation("species", amount, probability, "deposition_material", ["rp1", "rp2", ...], [n1, n2, ...]);

Here, the deposited_material is implanted into the layer through the top surface layer and without altering the surface coverage configuration. A visualization of such process in given in Fig. 3.

Fig. 3: Implantation in the view of the reactive wall model

The accordant command for introducing Ar implantation by fast Ar+ bombardment with 20% probability is

add_implantation("Arplus", 1, 0.2, "Ar", ["e"], [0.05]);
set_emission_energy("e", 0, 10, 1.0);

Here, additionally a low-energy secondary electron (E=0..10 eV) can be emitted with 5% probability during such process.

Example for a surface chemistry model for reactive ZnO:Al deposition

In this example, the reactive deposition of doped ZnO:Al layers is analyzed2). Especially the doping efficiency of the Al dopant is investigated. For this purpose, a simplified DSMC reactor model consisting of two Zn:Al sputter sources, an Ar gas inlet, an O2 gas inlet as well as a substrate is considered (see Fig. 4).

Fig. 4: Sketch of a 2D reactor model for reactive deposition of ZnO:Al

For the inclusion of Al into the ZnO, the following hypothetical model is constructed (see Fig. 5):

  • On the one hand, metallic Zn coated on the substrate has a low binding energy (in fact, metallic Zn has a high vapor pressure). Thus, it should be rather easy for an incoming Al atom to replace one Zn atom on the surface thereby creating a Zn:Al mixed site.
  • We assume that oxidation of a Zn:Al mixed site leads to a ZnO:AlO site, where the Al atom can act as dopant
  • If the substrate is covered by ZnO on the other hand, the binding energy is rather high. Thus, an incoming Al atom is not able to replace a Zn atom and is rather being deposited as a separate Al site.
  • The oxidation of separate Al sites leads to formation of separated, insulating AlOx clusters, which do not contribute to the doping process.
Fig. 5: Hypothetical model for the reactive deposition of doped ZnO:Al layers.

With four gas species “Ar”, “O2”, “Zn”, “Al” the above described growth model can be implemented via the wall reaction model as shown in the following:

  # Initialize six possible surface material compounds:
  add_material("Zn2",      2e17);      
  add_material("Al2",      2e17);
  add_material("Zn2O2",    2e17);
  add_material("ZnAl",     2e17);
  add_material("ZnOAlO",   2e17);
  add_material("Al2O3",    2e17);
  set_initial_coverage("Zn2",      0.5);
  set_initial_coverage("Zn2O2",    0.5);
  # Oxidation of Zn (gettering coefficient 50%)
  add_surface_reaction("O2",  1, 1, 0.5, "Zn2", "Zn2O2", [], []);
  # Exchange reaction Al (gas) + Zn2 (solid) --> ZnAl (solid) + Zn (gas)
  add_surface_reaction("Al",  1, 1, 1.0, "Zn2", "ZnAl", ["Zn"], [1]);
  # Exchange reaction Zn (gas) + Al2 (solid) --> ZnAl (solid) + Al (gas)
  add_surface_reaction("Zn",  1, 1, 1.0, "Al2", "ZnAl", ["Al"], [1]); 
  # This is the insulating  species (gettering coefficient 70%)
  add_surface_reaction("O2", 1, 1.5, 0.7, "Al2", "Al2O3", [], []);
  # This is the doped oxide species (gettering coefficient 70%)
  add_surface_reaction("O2", 1, 1, 0.7, "ZnAl", "ZnOAlO", [], []);
  # Film growth by Zn or Al covering deposition
  add_cover_deposition("Zn", 2, 1, "Zn2", [], []);
  add_cover_deposition("Al", 2, 1, "Al2", [], []);
i. e. “AlOx” stands for a “half Al2O3 molecule”
Pflug, A.; Siemers, M.; Melzig, T.; Sittinger, V.; Schäfer, L.: Heuristic modelling of the doping efficiency in sputtered TCO layers, In: Surface and Coatings Technology 267 (2015) 81-89.