Multiscale modeling of OLED devices¶
Introduction¶
The Amsterdam Modeling Suite, together with Bumblebee, provides a fully integrated multiscale simulation platform for the digital screening and prediction of successful OLED materials and devices.

This tutorial teaches you how to:
AMS: Simulate physical vapor deposition to deposit thin films of organic materials: an emissive host-guest layer (EML) consisting of 95% CBP and 5% fac-Ir(ppy)3, a hole transport layer (HTL) of TAPC, and an electron transport layer (ETL) of TPBi.
AMS: Calculate the distribution of properties such as ionization potential, electron affinity and dipole moments for molecules in the film.
Bumblebee: Transfer the data to the Bumblebee kinetic Monte Carlo (kMC) code for OLED device simulations.
Bumblebee: Build an OLED stack from these virtual materials and perform a voltage sweep to calculate the J-V curve and investigate the roll-off in device efficiency at higher voltages.
It is recommended to run this tutorial with an HPC (compute cluster) system.
Optional: You can load results from the OLED material database to skip steps 1 and/or 2 and jump directly to the device-level modeling.
See also
Description of the methods in steps 1 and 2: OLED workflows documentation.
Description of the methods in steps 3 and 4: Bumblebee documentation.
The OLED workflows are developed and validated in close collaboration with the Eindhoven University of Technology
Step 1: Deposition of the materials¶
We want to generate morphologies of
the emissive host-guest layer (EML) of 95% CBP and 5% fac-Ir(ppy)3,
the hole transport layer of TAPC, and
the electron transport layer of TPBi,
Here, we show the first step of how to generate the EML morphology with physical vapor deposition. Depositions of the hole and electron transport layers are done in the same way.




Import the CBP molecular structure¶
We need the 3D structures, including bonds, of the molecules we want to deposit.
Both CBP and fac-Ir(ppy)3 can be found through the search box in AMSinput, as can all other molecules from the OLED material database.

CBP
and select CBP from the list.
If you want to deposit a molecule for which you do not yet have the 3D structure, you can
build it using the tools in AMSinput, or
copy-paste the SMILES string of the molecule (e.g. from PubChem) into AMSinput. This will try to generate a 3D structure using RDKit, which should work quite well for organic molecules.
Pre-optimize with GFN1-xTB¶
No matter how you obtain the initial structure, we recommend that you do a quick pre-optimization with the fast quantum-mechanical GFN1-xTB method.

If you loaded the CBP structure through the search box, the pre-optimization will not change much, since all molecules from the OLED material database have already been optimized with GFN1-xTB. In general this step is important though, as it will also update the bond orders to the ones calculated from the GFN1-xTB orbitals.
Check atom types¶
The deposition is done with the ForceField engine using the UFF4MOF-II force field. It will use the bonds and atom types as they are set up in AMSinput, so it is important to get them right at this point. We should therefore also check the atom types that will be used:

For CBP, the automatically determined atom types are fine.
Repeat for fac-Ir(ppy)3¶
We will now add the emitter molecule Ir(ppy)3 and define the composition of the host-guest layer.


Irppy3
and select fac-Irppy3 from the list.fac-Irppy3
.

We will not change any of the deposition settings from their default values. By running with all default settings, the results we get should match those in the OLED material database.
Optional: Enable LAMMPS offload¶
Tip
You can significantly accelerate the deposition by enabling the LAMMPS offload option.
In order to do so, you must first
build LAMMPS on the system where you want to run the deposition.
ensure that the
lmp
executable is available on your PATH
Then:
OMP
package.GPU
package.
Run the deposition and monitor the progress¶
We are now ready to run the calculation.
EML_deposition
.The first step in the deposition workflow is a DFT geometry optimization of CBP and Ir(ppy)3. This is done to determine the atomic charges that will be used for modeling the electrostatics with the force field. See the OLED workflows manual for more information.
You can also monitor the progress of the workflow in AMSmovie, which will open the latest or currently running job.

After the initial DFT calculations have finished, the molecules are equilibrated to the deposition temperature. At this point the workflow script will also print some information about the estimated number of molecules to deposit in order to grow a slab of the desired thickness.
After this, the actual simulated physical vapor deposition will begin.

Growing a 120 Å layer in the simulated physical vapor deposition will take a while:
With LAMMPS offload enabled and a capable GPU: < 1 day.
With LAMMPS offload, but without a GPU: ~2 days
Not using the LAMMPS offload: significantly slower
We therefore recommend running these jobs using a remote queue. If you have access to a compute cluster, but have not yet set up remote queues for it, we recommend doing this before running real depositions. You can find instructions on how to set up remote queues in the installation guide and the AMSjobs manual.
If you monitor the logfile of the deposition for a while, you will see that the entire deposition is split into a number of cycles. This is done to improve computational efficiency, as it focuses the simulations on the region containing the growing surface. Details can be found in the OLED workflows manual. Once the required film thickness is achieved, the entire system is annealed down to room temperature and then completely frozen in a geometry optimization. The full process can be seen in the video on the right.
Output morphology: morphology.in¶
The output of the deposition workflow is described in detail in the manual.
The morphology.in
file contains the optimized morphology.
If you do not want to wait for the deposition to finish, you can also find the morphology of 95% CBP + 5% Ir(ppy)3 from this tutorial
in the OLED material database as
host+guest/CBP+fac-Irppy3/morphology.in
, oravailable for download
CBP+Irppy3_morphology.in
.
The .in
file can be opened with AMSinput.
Deposition of hole and electron transport layers¶
At this point you can either deposit the hole transport layer (TAPC) and electron transport layer (TPBi) yourself by repeating the instructions above, or grab the finished morphologies from the pure
folder in the OLED material database .
Step 2: Calculation of material properties¶
Once we have obtained the morphology, we can use it to run the OLED properties workflow and obtain material properties such as ionization potential and electron affinity.
Import morphology¶



The OLED properties workflow has a number of settings, which we will mostly leave at their default values in this tutorial. The data from the OLED material database has been generated with the default settings, so we will obtain results that can directly be compared to the materials from the database.
The only real input we will need to provide is the morphology itself.
If you did not run through the first part of this tutorial, we suggest you download
the 95% CBP + 5% Ir(ppy)3 morphology now or take it from the database, which you can open by clicking the Import button on the right panel.
morphology.in
(or CBP+Irppy3_morphology.in
) file for 95% CBP + 5% Ir(ppy)3.Select subset of molecules¶
Be default, the workflow would calculate the molecular properties for all ~500 molecules in the morphology. This yields the best statistics, but is also quite computationally expensive. Since we really only need good mean values \(\bar x\) and distribution widths \(\sigma_x\) (standard deviations) as input for Bumblebee, it is sufficient to just select a (random) subset of molecules for each species. After all, the standard error of the mean \(SE_{\bar x}\) can be estimated from the standard deviation \(\sigma_x\) and sample size \(N\):
Taking typical values of \(\sigma_\text{IP/EA} = 0.1~\text{eV}\) for ionization potential and electron affinity and a sample size of \(N = 50\), gives an error of the mean of \(SE_\text{IP/EA} < 0.015~\text{eV}\). This is far below any methodological error in these workflows, and therefore completely sufficient for providing input to Bumblebee.
Since Bumblebee does not yet use the transfer integrals calculated by the OLED properties workflow, you may consider disabling their calculation. (Transfer integrals are only calculated between dimers of the selected subset of molecules. With our small sample size they would be relatively few and inexpensive, and skipping them does not make a big difference.)
50
.None
.
This is all the setup we need. We can now save and run the job.
Run the OLED Properties workflow¶
EML_properties
.The OLED properties workflow is computationally very expensive, and it is not practical to run it on your local machine: we will need to use some HPC facilities to run these jobs. You can do so from AMSjobs by using a remote queue. You can find instructions on how to set up remote queues in the installation guide and the AMSjobs manual. The OLED properties workflow consists of many independent chains of calculations for the individual molecules in the morphology, making it scale very well up to hundreds of CPU cores.
Note
Multi-node OLED properties jobs are currently only supported for SLURM-based clusters. For other batch systems, you will be limited to running the jobs on a single node.
Once you have configured a suitable remote queue for your job, we are ready to run.
EML_properties
job.Monitor the progress and results¶

You will first see some information about your morphology printed: the number of molecules of each separate species, as well as the total number of atoms, and the number of dimers considered in the calculation of the transfer integrals.
The workflow script will periodically print a progress update. You will see that it loops over all molecules twice: first to quickly calculate the atomic charges that will later be used as the environment, and then again to calculate the properties of each molecule in its environment. Finally there is a loop over dimers of neighboring molecules, which calculates the transfer integrals. Depending on the machine you are running on, it may take around a day to finish all calculations.
View the finished OLED Properties results¶

When the job has finished, it will print a quick summary of the most important results. The workflow script will also produce small HDF5 and YAML files. The HDF5 file contains data for all the individual molecules. It can be opened in AMSview or analyzed with our Python environment. The YAML file contains only a summary of the distribution means and widths. We will later use it to import these results into the Bumblebee web interface.
If you do not want to wait for the calculation to finish, you can download the files here (HDF5)
and here (YAML)
or take them from the OLED material database, where it is stored as host+guest/CBP+fac-Irppy3/properties.{hdf5,yml}
.
You will be greeted by a view of a box that is filled with disconnected spheres. Note that these spheres do not represent atoms, but individual molecules from the morphology. The spheres representing host CBP and guest Ir(ppy)3 molecules have a different color. We can visualize the properties we calculated via the Properties menu in the top bar.

We can also visualize vector properties as arrows overlaid onto the spheres, and plot histograms of the vector magnitudes as well as angles against the z-axis (the growth direction of the thin film in the deposition).

With the limited number of molecules we calculated per species, our statistics are not good enough to say much about a possible anisotropy of the dipole moments. If such spatial properties are desired, it is recommended to run calculations on all molecules in the morphology. (For comparison you can load the HDF5 files from the material database, which include data for all molecules.)
Detailed analysis of the data from the HDF5 file is best done from Python. See the manual section for details.
Step 3: Import materials for Bumblebee device simulations¶
The layer morphologies (and their properties) can be imported into the Bumblebee web interface. The layers can then be combined into a microscale OLED stack, representative of a real device. Bumblebee allows the user to perform 3D kinetic Monte Carlo simulations of the electron transport through the stack. This provides detailed information on the efficiency of the OLED device. We can use this information to identify loss processes and find desirable material parameters to improve the stack design.
Note
Bumblebee is provided as a standalone program from AMS, with its own GUI. Installation instructions can be found in the Bumblebee manual.
Compositions¶
We will start by importing the three layers created during the previous step. If you skipped the property calculations, you can obtain the necessary files from the OLED material database, or through the links below.
See also
95% CBP + 5% Ir(ppy)3
Host-guest emissive layerTAPC
Hole transport layerTPBi
Electron transport layer
Open the Bumblebee web interface and navigate to the Compositions tab.

Clicking the Import Composition button will bring up a dialog box where you can browse to the .yml files of the layer materials.

After selecting a file, click the Import compositions button to load it into Bumblebee. You will see the new composition appear in the list. Click on the name of the composition to view the details.

Perform this process for all three layers: CBP-Ir(ppy)3, TAPC and TPBi.
Step 4: Set up and run an OLED stack simulation¶
Materials¶
By default, new layer materials will be created. You can view the material properties in the Materials tab.

At this point, we do not yet have the emissive characteristics of Ir(ppy)3 included in the material properties. While the rates for radiative emission, non-radiative emission and intersystem crossing can be calculated using AMS, these parameters are not included in the OLED properties workflow. Instead, they are typically calculated for single molecules. Environmental effects and amorphous disorder for the rates are then estimated by Bumblebee based on the morphology data.
Photophysics: Specify decay rates for Ir(ppy)3¶
In order to include emission from Ir(ppy)3 in the simulation, we need to specify the decay rates in the Materials tab. We will use the experimental parameters provided in the Bumblebee tutorials.
610000
s-119000
s-11e10
or 10000000000.0
You should see an estimated PLQY of 97% (based on a rate equation model). This provides an indication of the molecular emitter efficiency.

Stack¶
We will create an OLED stack containing the hole transport layer, emissive layer and electron transport layer.
You will be brought to the Stack Editor. Here, you are asked to specify the layers of the device.
The energy level diagram of the stack will be shown at the top of the page.

We can now define additional processes for our stack, such as degradation mechanisms or exciplex interactions. Because we are using a phosphorescent emitter, we want to include the Förster interactions here. We will have Bumblebee automatically generate these interactions for our stack by clicking the Add default Förster interactions button. This populates a table with pair-wise interaction parameters for the materials in our stack.

Parameter set¶
We will set up the Bumblebee simulation by creating a parameter set.
1000000000
Simulation¶
Bumblebee jobs are managed from the Simulations menu.
Note
Before simulations can be submitted, make sure that you have configured a server connection for running jobs. See the Bumblebee manual for more details.
We are going to perform a voltage sweep. Multiple kMC simulations will be started at different voltages in order to construct the J-V curve for the device. Later, we can analyze the processes inside the stack at each of these voltages.

This will start a simulation of the OLED stack at each of the given voltages. We can monitor the progress of the simulation from the Jobs menu.
Analyzing the results¶
Once the simulation has finished, we can analyze the output by selecting our simulation in the Simulations menu and heading to the Reports tab.
The trajectory reports provide details on individual trajectories such as morphologies and event statistics.
The sweep reports provide details for each single point calculation by averaging over the trajectories.
The device reports summarize results from multiple single-point calculations to see how the OLED performance changes under various conditions.
We performed the same simulation using experimental parameters as part of the Bumblebee tutorials. Close agreement is found for the device behavior predicted by the OLED Workflow, despite there being quite some differences in the actual parameter values. This is caused by a favorable cancellation of errors, as shifts in the energy levels are compensated by changes in overall mobility.

Digital OLED design¶
In our results, we have seen how the primary losses in the device originate from exciton-exciton annihilation. We could now go and make changes to the stack design to see if this can improve the device efficiency. Here, we can make use of various pre-provided materials in the Bumblebee OLED database (accessible from the Import materials menu), which were obtained both through experiment and simulations.
Alternatively, we could make modifications to the material parameters ourselves in order to find idealized OLED molecules. These materials can be used in combination with e.g. molecule screening in AMS to help discover new materials through inverse design.
Consult the Bumblebee manual for additional examples on the various simulation options and optimization tools provided in Bumblebee.