Laser modulation bandwidth simulation


We extend the traveling wave laser model (TWLM) in INTERCONNECT to accurately simulate the directly modulated laser bandwidth and create custom script functions to post-process the time-domain simulation results and calculate the RF response and 3dB bandwidth.

The carrier capture/escape rate model [1] is implemented to enable more accurate modeling of carrier transport effects across the separate confinement heterostructure. These transport effects are important to accurately model the laser modulation bandwidth.

Two equivalent simulation methods are performed and compared:

  • Small signal model transfer function informed by the steady state results. The small signal model is implemented in script and corresponds to the full time-domain model implemented in TWLM under small signal approximation. Since TWLM is a time-domain laser solver, to get the steady state results we do a transient simulation with a DC source until it reaches steady state.
  • Transient simulation with a delayed small signal step excitation superimposed on the DC source. The bandwidth is then calculated by filtering and Fourier transforming the transient output power for times t >= small signal step source delay time.

This example requires 2020a R7 software version.

Run and results

The simulations are based on our Fabry-Perot getting started laser example Below we give the simulation steps for both bandwidth simulation methods.

METHOD I. Small signal model

  1. Upload files modulation_bandwidth_small_signal.lsf (2.0 KB) , small_signal_bandwidth.lsf (3.0 KB) , and TWLMexampleLaserFP300umCF353THzR3R3nel100_small_signal.icp (205.2 KB) to your working folder. File small_signal_bandwidth.lsf contains the custom function that implements the small signal model.

  2. Open and run modulation_bandwidth_small_signal.lsf in INTERCONNECT. This will run TWLMexampleLaserFP300umCF353THzR3R3nel100_small_signal.icp and calculate the RF response and bandwidth.

  3. Observe the plotted figure showing the RF response and the 3dB cut-off line.

Small signal model workflow:

  • Transient simulation with DC source
  • Extract steady state parameters
  • Calculate small signal model transfer function
  • Extract RF bandwidth

METHOD II. Transient simulation with superimposed delayed small signal source

  1. Upload files modulation_bandwidth_transient.lsf (2.2 KB) , transient_bandwidth.lsf (2.9 KB) , nuderiv.lsf (531 Bytes) , and TWLMexampleLaserFP300umCF353THzR3R3nel100_transient.icp (612.4 KB) to your working folder. File transient_bandwidth.lsf contains the custom function for post-processing the time domain output power to calculate the RF response.
  2. Open and run modulation_bandwidth_transient.lsf. This will run TWLMexampleLaserFP300umCF353THzR3R3nel100_transient.icp and calculate the RF response and bandwidth.
  3. Observe the plotted figure showing the RF response and the 3dB cut-off line.

Transient simulation with superimposed delayed small signal source workflow:

  • Transient simulation with DC source + delayed small signal step source
  • Postprocess the time domain output power to obtain RF response
  • Extract RF bandwidth

The comparison of bandwidths from small signal model and transient simulation with superimposed delayed small signal source is given in the figure below. They show a very good agreement verifying the model.

Important model settings

For typical laser options important for accurate simulations, please refer to our many existing laser examples. Here, we focus on the options necessary for an accurate bandwidth simulation. For more details about the ways to derive the carrier capture/escape rates refer to ref. [1].

Both methods:

  • enable SCH (TWLM) – this option enables the carrier capture/escape rate model.
  • well carrier capture rate (TWLM) – The rate at which the carriers are captured by quantum wells. This includes the diffusion transport time across the total barrier thickness and the actual capture time into the quantum well once the carrier reaches the quantum well boundary (the latter is usually much smaller than the former).
  • well carrier escape rate (TWLM) – The rate at which the carriers escape the quantum wells.
  • total well thickness (TWLM) – The total cumulative thickness of all quantum wells. Usually the same as active region thickness option.
  • total barrier thickness (TWLM) – The total cumulative thickness of all the barriers in the multi-quantum well stack contained between the two separate confinement heterostructure barriers.
  • time window (Root element) – total simulation duration. For method I, it should be sufficiently large for the simulation with a DC source to reach the steady state. For method II, it should be sufficiently larger than the delay of the superimposed small signal step to ensure the second steady state is reached after adding small signal to the DC source.

NOTE: In TWLM, multi-quantum well active regions are treated as single quantum well active region with the quantum well and left/right barrier thicknesses equal to the respective total cumulative thicknesses.

Method I:

  • maxFreq (ss_bandwidth function from small_signal_bandwidth.lsf) – same as previous
  • numPoints (ss_bandwidth function from small_signal_bandwidth.lsf) - number of frequency points in the RF response.
  • run diagnostic , longitudinal profiles downsample factor , record carrier density profile , record photon density profile , record recombination rates profile (TWLM, method I only) – set these options to generate the required steady state result for the small signal model transfer function.

Method II:

  • spontaneous emission factor 1 (TWLM, method II only) – this factor represents the portion of the total spontaneous emission that is coupled into the waveguide and contributes to the optical power. In transient simulation with superimposed delayed small signal source, this factor is set to a very small value, big enough to act as a spark for lasing, but small enough not to pollute the optical power with noise and make the RF response extraction difficult. The modulation bandwidth does not depend significantly on the spontaneous emission [1], so this is a good approximation.
  • box_filter_window (rf_bandwidth_postprocess function from transient_bandwidth.lsf) - time window for box filtering. Current example uses 25 ps, which should be enough for most cases.
  • maxFreq (rf_bandwidth_postprocess function from transient_bandwidth.lsf) - maximum frequency for the RF response.
  • delay (STEP, method II only) – when to turn on the superimposed small step source. This time should be chosen so that the initial large signal transient simulation with a DC source reached steady state.

Updating the model with your parameters

In addition to the parameters listed in Important model settings section, other typical laser parameters that have to be modified to create your own device simulation can be found in our other laser examples.

Taking the model further

  • Different laser topologies – For calculating bandwidth of lasers other then Fabry-Perot please refer to this example and combine it with our other examples illustrating DFB and external cavity laser simulations that can be found here if you filter by application Laser and Gain.
  • User defined gain and spontaneous emission - Instead of using Lorentzian shapes the user can import gain and spontaneous emission profiles from simulation (e.g. Ansys Lumerical MQW gain solver) or measurement. Only method II can be used with imported profiles currently, since small signal model currently assumes Lorentzian profile.


[1] R. Nagarajan, M. Ishikawa, T. Fukushima, R. S. Geels and J. E. Bowers, “High Speed Quantum-Well Lasers and Carrier Transport Effects,” IEEE JOURNAL OF QUANTUM ELECTRONICS, vol. 28, no. 10, p. 1990, 1992.

1 Like

Hello. I tried taking this example as a starting point for my simulation, and I noticed a strange thing. At the first run, once I just downloaded the file, the output power on OOSC_1 looks adequate.

I tried to change frequency of the laser. I did it both in "Standard"section and in “Gain” section put the same value for gain shape center frequency (as initially in the file they were also the same). However even with a small change in frequency the output power looks like a strong noise around 0:

Moreover, when I try to change it back to initial values (it was 352.571 THz), the output power once again looks very different from initial plot…

Is it a bug or I am doing something wrong, or the setup is extremely sensitive to frequency change?
Here’s the file after my manipulations: please make sure that all settings are the same as in your example, and the OOSC_1 looks still like on my picture #3 after simulation.
TWLMexampleLaserFP300umCF353THzR3R3nel100_small_signal_after_freq_change.icp (595.9 KB)

Hi @a.zozulia,

This seems to be just the way you visualize the results of OOSC. It is currently set in the “rectangular” mode, so it will plot complex amplitude. So this contains phase information. If you set scalar operation to Abs^2 in the visualizer window it will plot power and then the results will be similar when you change the frequency slightly (I tried with 350 THz). And the results are the same when you change back to the original frequency.

You can also get power directly from OOSC if you set it to “power” mode (in OOSC’s options frame).

Let me know if this helps answer your question.

1 Like

Thank you! Now it’s more clear.

I have another question regarding this model. I have the following stack: SCH - 150 nm, then MQW, starting with the barrier, which contains 5 barriers of 12 nm and 4 QW layers of 6 nm respectively, and then another SCH of 150 nm. How do I calculate total well thickness and total barrier thickness in this case? Am I right that it will be: total well thickness = active region thickness = 4QW thickness = 46 = 24 nm, and total barrier thickness = 5*12 = 60 nm?

It seems to me that in MQW example the active region thickness is calculated in a different way, it’s a total thickness of the whole MQW region with all QW and barriers summed together and with refractive index averaged over them, right?

If I followed the algorithm from the MQW example, and now I wish to use the function from this example to calculate the bandwidth, how do I set total well thickness and total barrier thickness in this case?

Hi @a.zozulia,

Your calculation of the total well and barrier thicknesses is correct. Note that enabling the SCH model and capture escape rates is mainly important for dynamic response. If you are mainly interested in steady state LI and spectrum you do not have to use this model for now. If you do want to use this model the active layer thickness option in TWLM should be defined excluding barriers.

If in your case you use measured gain you essentially have a product of material gain and mode confinement factor and this product is independent of the definition of the thickness of the active layer. The definition of the thickness then mainly affects the carrier density and recombination coefficients, so you have to take that into account when calculating these quantities.

The MQW laser example you cited did indeed use a definition of the active layer thickness including barriers. This example will soon be updated to a new version where barriers are excluded from the definition of active layer thickness to ensure that the SCH model can be used easily with this example.

Just to summarize if you want to enable the SCH model and capture escape rates as explained in the main example in this topic you need to exclude barriers from the definition of active layer thickness.