|Scroll Prev Top Next More|
This section shows how a 3D multi-layer OLED structure with hexagonal PC patterning can be simulated efficiently with FDTD. In this hexagonal OLED example, two simulation approaches are discussed: 1) using a parameter sweep to sweep the over the distributed dipole locations in the entire hexagonal unit cell. 2) using an unfolding method to make use of the hexagonal lattice symmetry.
This example assumes that the user has read and understood the contents in Simulation methodology, Simple 2D OLED, and Using symmetry to reduce the number of simulations in detail. To learn a similar but simpler 3D case, please visit 3D OLED with no symmetry.
In this approach, we will try to assign multiple dipoles to the entire unit cell. The reason to pick these dipole locations (instead of simple uniform 4x4 distribution) is to make it easier to understand and compare it with the folding method discussed in the following section. Parameter sweep is employed to run multiple simulations for each dipole location. In the figures shown below, the unit cell is divided into several regions, i.e., 1, 2, ... ,6 and A, C. The "x" and "o" indicate the dipole locations (without the unfolding method, we will run simulations with all dipole locations). In the file OLED_3D_hex.fsp, it sweeps over the dipole locations in the 1, 2, ... ,6 and A, C regions. In each region, there are two dipole locations. At each dipole location, three simulations are run - each with an x, y and z polarized dipole source. There are altogether 48 (8x2x3) simulations. For more information on how these regions are divided, please see Using symmetry to reduce the number of simulations for details.
Dipole locations for parameter sweep
The dipole locations are generated based on the following script: The first twelve points in region 1 to 6 are generated based on a radius from the center of the PC. The following four points are then spatially transformed, i.e., 1', 1'' to C', C'' and 4', 4'' to A', A'' respectively. This allows dipoles to distribute to the entire unit cell. The xr and yr are not the actual positions, but the parameters normalized to the period of the PC lattice. The last line of this script can generate a plot that shows all sixteen dipole locations.
xr=matrix(16); # x positions of the dipoles
yr=matrix(16); # y positions of the dipoles
p= getnamed("OLED structure","pc period"); # period of PC
theta=linspace(15,345,12); # representing region 1', 1'', 2',...,6''
xr(1:12) = 0.15e-6*cos(theta*pi/180)/p; # forming a circular distribution
yr(1:12) = 0.15e-6*sin(theta*pi/180)/p;
xr(13:14)=xr(1:2)-3/4; # transform from region 1', 1'' to C', C'' in x-direction
yr(13:14)=yr(1:2)-sqrt(3)/4; # y-direction
xr(15:16)=xr(7:8)+3/4; # transform from region 4', 4'' to A', A'' in x-direction
yr(15:16)=yr(7:8)+sqrt(3)/4; # y-direction
plot(xr,yr,"","","Dipole locations","plot type = point"); # the parametrized dipole locations
The extraction efficiency enhancement and angular distribution plots
The plots below are the results generated by OLED_3D_farfield.lsf (this is the same script file from the simple 3D OLED example). Users will have to change "project_in_air" to "1" or "0" in the script file in order to view the enhancement in air or glass. The results are averaged by the "mean" option in the parameter sweep. Note that the results are sensitive to the dipole locations. Testing convergence is encouraged, for example, changing the dipole distribution would noticeably change the pattern of the plot. This behavior should converge when there are more number of dipoles distributed in the unit cell. Moreover, some hotspots may be observed in the far field plots. This could be due to not enough dipole locations. In addition, region B, D and etc can also be added to the sweep, if needed. Users can modify the above script to change the dipole locations.
Users are strongly encouraged to look at the above method (using the parameter sweep), before employing this advanced method.
In this approach, we are taking the advantage of the hexagonal lattice symmetry. Instead of running simulations at all dipole locations in the above section, only dipole locations in a particular region are run to reduce the number of simulation needed. Then the results are unfolded using the lattice symmetry. The unfolding process is a post-processing carried out via Lumerical's powerful scripting environment. Referring to Using symmetry to reduce the number of simulations, we can use region 1' and A' to represent the entire unit cell due to the given lattice symmetry. Therefore, we only need to set up dipoles in these two regions. Each time the script is run, a dipole location is chosen based on a random number. The dipole can fall into either region 1' or A'. Then the results are unfolded, from 1' to 1'', 2', 2''...6'', and from A' to A'', C', C'', accordingly. If you would like to have more accurate results, you can set up more dipole locations in these two regions. The setup instructions below allow you to have as many dipole locations as you want, in a random distribution.
We will start with the same simulation setup using the same fsp file. To make use of this lattice symmetry, we will follow a modified process using script to "sweep" through the randomly picked dipole locations.
1.Open the file OLED_3D_hex.fsp and verify that the parallel settings are correct for your computer system.
2.The script file OLED_3D_hex_simulations.lsf is based on the description in PC with hexagonal symmetry. In the User Input, users can choose the total number of dipole locations, and the random seed. A different random seed with a low number of dipole location (<10) can significantly affect the results. The user should make sure that the settings under "User Input" are correct. This file will generate the values for the dipole positions using the following technique:
Symmetry unfolding operations
1. After all the jobs are completed, run the script file OLED_3D_hex_analysis.lsf. This file will load all the individual simulations and calculate the angular distribution of the light in either the substrate (glass) or the air (refer to the far_field_change_index analysis group). This script uses the results of the small number of simulations and, through symmetry unfolding operations, reconstructs the angular distribution from the incoherent superposition of all the dipole locations in the unit cell. This advanced process can take up to several hours depending on the size of the simulation used. Users can reduce the angular resolution to speed up the script initially, but will need reasonable resolution to generate the plots below.
2. Once the calculations for the angular distributions are complete, the script will generate a figure plotting the extraction efficiency enhancement and angular distributions. The analysis script will also save the unfolded data to a .ldf file.
Results and Discussion
The figures below show some properties of the enhancement of the extraction efficiency and far field pattern with different number of dipole locations distributed in regions 1’ and A’. More number of dipoles should in principal lead to more converged results. Note the color bar scale changes because the far field plots are summed while unfolding.
As the case for the rectangular lattice, only a modest enhancement can be seen here for the hexagonal PC lattice, but could be improved with some design modifications.