This example has been updated. Find the latest version at MMI Coupler .
In this example, we will demonstrate how to simulate a multimode interference (MMI) coupler with the bidirection EME solver, the omnidirectional 2.5D varFDTD solver, as well the unidirectional eigenmode expansion method using the FDE solver, and compare the different methods.

The associated MMI_simple.lms simulation file contains a SOI MMI structure, as well as an EME solver, FDE solver and varFDTD simulation region.
In the MMI_simple.lms file, the EME solver region is active to start with. Run the simulation, then in the EME Analysis window click the "eme propagate" button to calculate the profile monitor results. You can rightclick on the profile monitor and visualize the "E" result to generate a plot of the electric field over the XY plane of the structure. By default, the the magnitude is plotted, so to plot the E intensity, select the "Abs^2" option under the scalar operation column in the visualizer.
Alternatively you can also use the following script to run the simulation, perform the eme propagate step and plot the E intensity from the script:
# run simulation and propagate fields
run;
emepropagate;
# collect monitor data
monitor_data = getresult("eme_profile","field profile");
E2 = monitor_data.E2;
x = monitor_data.x;
y = monitor_data.y;
# plot E intensity profile
image(x*1e6,y*1e6,E2,"x (um)","y (um)","E intensity");
The resulting E intensity profile is shown below.
The transmission and reflection of the fundamental mode can be determined from the "user smatrix" result from the EME solver region object, so you can rightclick on the EME object in the Objects Tree to visualize the result. The following image shows the absolute value squared of the user smatrix. The total transmission through port 2 from port 1 is the S21 element. Since the device is symmetric, the amount of power through each output waveguide is half the amount of the total transmission, or about 30%.
It is also possible to simulate the same MMI structure using the 2.5D varFDTD solver, which supports omnidirectional, inplane propagation.
The simulation file MMI_simple.lms also contains a 2.5D varFDTD solver region object, which can be activated by right clicking on the 2.5D varFDTD region on the Objects Tree and selecting "Set as active" from the context menu. The mode source and monitors associated with the varFDTD solver region will be activated once the solver region is active. After running the simulation the electric field intensity can be plotted by visualizing the E result from the profile monitor named "monitor":
With the mode expansion monitors, we can calculate the forward/backward transmission into the fundamental waveguide mode of the input waveguide, as well as the two output waveguides. The script MMI_expansion_results.lsf will output the results from the mode expansion monitors in the script prompt.
> MMI_expansion_results;
Reflection into the fundamental mode of input waveguide is 6.03642 %
Transmission into the fundamental mode of output waveguide 1 is 31.7462 %
Transmission into the fundamental mode of output waveguide 2 is 31.781 %
For more information on how to use mode expansion monitors for this analysis, please see Using Mode Expansion Monitors.
The script MMI_propagate.lsf will first place the FDE solver region across the input waveguide, and then calculate the modes of this input waveguide. After storing the fundamental mode as "E0", the Eigenmode solver is then moved to the center of the wider, multimode waveguide. "E0" is then decomposed onto the modes of the multimode waveguide, and propagated an arbitrary distance using the propagate command. This is repeated for 100 sections from 0 to 6 microns (ie. the length of the multimode waveguide). The final figure is created showing the electric field intensity vs x inside the multimode waveguide:
We can see that the field profile inside the coupling region is different then the profile from the EME and 2.5D varFDTD solver simulations. The reason for this discrepancy is due to the interference caused by the reflected fields, which are not accounted for by the FDE solver simulation.
Both the EME solver method and 2.5D varFDTD method give good results for the transmission, taking less than a minute to run on a standard 4 core workstation. The EME method is a fullyvectorial 3D Maxwell's equations solver, whereas the varFDTD method first collapses the structure from 3D to 2D which does involve some approximation so the EME method may give more accurate results, although convergence testing needs to be performed to verify the accuracy of the results. Since the simulations can be completed in a comparable amount of time the EME method is preferable.
The FDE solver method is not suitable for simulating the MMI coupler device as it is a unidirectional technique which does not account for reflected fields, and there is a nontrivial amount of reflection at the interfaces (between the waveguides of different widths).