Films setup in FLEUR
Objectives
- Learning the specifics of a film calculation in FLEUR
- Setting up a film
- Understanding film specific output
Introduction
MoS2 is a transition metal dichalcogenide that crystallizes in a layered structure in which each layer is represented as a honeycomb lattice with a 3-atomic basis. The interlayer-bonding has a Van-der-Waals nature which translates into a large interlayer distance. Single layers of this material can also be exfoliated to obtain a 2D material. In this exercise we consider such a single MoS2 layer as a thin film system.
In addition to bulk
calculations, FLEUR can use a specific film
mode in which we only use 2D-periodicity and have semi-infinite vacua attached on both sides of the film. This allows a very efficient simulation with no interactions between repeated slabs.
Info
To calculate a film the following steps are needed: 1. Use an input with only 2D periodicity 2. Run inpgen 3. Run FLEUR.
## FLEUR steps
### Prepare the input
The `inpMoS2.txt` inpgen input in the MoS2 subdirectory describes the unit cell starting point we use for the calculations. Change into the subdirectory and display the file.
```bash
cd MoS2/
cat inpMoS2.txt
The &input
namelist here specifies that this is a film system (film=T
). Next comes the Bravais matrix which is scaled according to the two lines following it. The first line is a general scaling parameter for the Bravais matrix, the second line specifies scaling parameters for each column of the matrix separately. Note that a scaling of '-3' actually means a scaling with . The last entry ('30.00') is just a large number which only ensures that the film fits into the here-specified unit cell. It is automatically reduced to a reasonable value by the program.
Warning
For film systems the last atom coordinate is always cartesian. This is why we have larger numbers in comparison to the other two coordinates which are provided in terms of Bravais lattice vectors. There are more scaling parameters for the atom positions below the last atom position entry. The atom positions are divided by these numbers. Here these scaling parameters are .
Note that the x and y atom positions are supposed to be at and . We provide these numbers with a precision better than . With such a precision they are automatically turned into the exact values. A less precise specification of the atom positions will lead to a reduced set of symmetry operations being detected. A consequence of this is the generation of a k-point set that breaks the non-detected symmetries resulting, e.g., in the calculaton of inaccurate forces that are not compatible with all symmetries actually present in the system. Of course, such a problem can be overcome by using a very fine k-point mesh, but it is more efficient and precise to make sure that all relevant symmetry operations are included in the calculation. You can also directly provide the exact fractions by using the scaling factors. With this the atom positions would look like:
42 1.0 2.0 0.0 16 2.0 1.0 2.85 16 2.0 1.0 -2.85 &factor 3.0 3.0 1.0 /
The z-position of the sulfur atoms provided in this inpgen input is only a guess. In a later tutorial we will optimize this position with respect to the forces on the atoms.
Use the inpgen input to generate a Fleur input for the MoS2 monolayer.
inpgen -f inpMoS2.txt
Inspecting the inp.xml
will reveal film-specific parametrization. For example:
- the
/cell/bulkLattice
element we see in a bulk setup is being replaced by/cell/filmLattice
. - the attributes
dVac
anddTilda
defining the film thickness and the virtual periodicity of interstitial region part of the LAPW basis-functions in z direction, respectively. - the vacuum energy parameters are specified in the
/cell/filmLattice/vacuumEnergyParameters
tag relative to the vacuum level at an infinite distance from the film.
We now can start FLEUR as usual. Please remember to restart FLEUR if you do not reach a self-consistent solution in the first run.
fleur_MPI
Obtaining the work function
For a Kohn-Sham system the eigenenergy of the highest occupied state has a strict physical meaning. In Fleur the definition of the Fermi energy at 0K (grep Fermi out.xml
) coincides with this quantity. For thin films we can relate this to the vacuum level at an infinite distance from the surface (grep vzInf out.xml
) to calculate the work function
for a material. If possible Fleur sets the vacuum level to , but this can only happen if the vacua on both sides of the film are equivalent.
grep Fermi out.xml
grep vzInf out.xml
Thin film calculations can be used to calculate the properties of surfaces of bulk systems. For this the film thickness has to be increased until the quantities of interest reach stable values. Depending on the material one may either need only few atomic layers or even more than 20 or 30.
Learn more
Of course the self-consistency could also be performed using aiida-fleur, but no changes with respect to the bulk case would occur.
- https://www.flapw.de/MaX-7.0/documentation/filmBasis/