Home Examples Screenshots User manual Bluesky logo YouTube
OghmaNano Simulate organic/Perovskite Solar Cells, OFETs, and OLEDs DOWNLOAD

FDTD tutorial: Integrated Photonics Ring Resonator

1. Overview: what you will simulate

This tutorial uses the built-in Integrated Photonics Ring Resonator example from the FDTD library. The simulation launches a guided mode into a straight waveguide, couples into a ring, and monitors the output with two detectors. You will run the model, inspect time snapshots of power density, and compare detector traces for continuous-wave (CW) and pulsed excitation.

2. Making a new simulation

Open the New simulation window and select the FDTD examples category (??). Then choose the Integrated Photonics Ring Resonator example (??). This loads the main interface shown in ??.

OghmaNano New simulation window showing categories including an FDTD examples option.
The New simulation window. Open FDTD examples.
FDTD example list including Integrated Photonics Ring Resonator.
FDTD examples list. Select Integrated Photonics Ring Resonator.
Main OghmaNano window showing a 3D view of a ring resonator coupled to a straight waveguide.
The main OghmaNano interface after loading the ring-resonator example.

3. Orienting yourself in the main window

The device appears in the 3D view in the Device structure tab (??). The Terminal tab streams solver output during execution, and the Output tab lists the files produced by the simulation (snapshots, detectors, and configuration exports).

For this example you will mainly use:

4. Running the simulation

Click Run simulation (▶). The Terminal tab shows the solver starting, including the mesh spacings, timestep, and OpenCL device detection (??). When finished, switch to the Output tab to see the generated files (??).

Terminal tab showing the FDTD module starting, timestep and wavelength information, and OpenCL device selection.
The Terminal tab during an FDTD run. Use this to confirm timestep, wavelength and backend selection.
Output tab listing files produced by the ring resonator simulation including detector outputs and snapshots directory.
The Output tab after the run. Open the snapshots/ folder and detector outputs from here.

5. Viewing power density snapshots

Open the snapshots/ output directory (from the Output tab) to launch the snapshot viewer. Plot the power density file (for example power_density.csv) and use the slider to step through time. Representative snapshots are shown in ????.

As the source launches into the bus waveguide, you should see energy propagating toward the coupling region, then coupling into the ring. Later snapshots show circulation and build-up in the ring, followed by steady routing to the output waveguide.

Snapshot viewer showing early-time power density in the simulation domain.
Early-time power density snapshot: initial emission and launch into the bus waveguide.
Snapshot viewer showing power density as the field reaches the coupling region.
Power reaches the coupler region and begins to interact with the ring.
Snapshot viewer showing power density circulating around part of the ring.
Circulation in the ring becomes visible as energy couples from the bus into the resonator.
Snapshot viewer showing power density in the bus and ring at a later time.
Later-time snapshot: energy distribution stabilises across bus and ring.
Snapshot viewer showing a later-time power density distribution with clear ring build-up and output routing.
Example later-time snapshot: ring build-up and routing into the output waveguide are clearly visible.

6. Viewing detector outputs

This example includes two detectors placed on the output waveguides. Open each detector file from the Output tab (see ??) and plot the recorded signal versus time. The two detector outputs are shown in ?? and ??.

(Image to be inserted: detector0-output.jpg)
(Image to be inserted: detector1-output.jpg)

In steady CW operation, you should expect the detector traces to approach a constant value after an initial transient. If you see persistent beating or a drifting baseline, it usually indicates either (i) a broadband excitation (not truly single-frequency), (ii) reflections from boundaries/ports, or (iii) an under-resolved geometry introducing dispersion.

7. Editing the light source: CW vs pulsed excitation

Open the light source editor for the simulation and locate the excitation waveform settings (??). Switch from a CW/gaussian-sine style excitation to a pulsed waveform (??). Then rerun the simulation and compare the detector outputs.

(Image to be inserted: light-src.jpg)
(Image to be inserted: pulse1.jpg)

With pulsed excitation, the detector time series should show a clear transient response: an initial rise as energy couples into the ring, followed by a decay once the pulse has passed and the stored energy leaves via coupling and loss. If you want a single-number summary of “how resonant” the device is, measure the decay constant in the detector trace after the pulse peak; it is a direct proxy for the effective cavity lifetime in this configuration.

8. Quick checks and common failure modes

👉 Next step: Once you are happy with the detector behaviour, the natural extension is a wavelength sweep (or a short broadband pulse + FFT) to extract the resonance spectrum and estimate \(Q\) from linewidth.

6. Viewing detector outputs

After the run completes, open the Output tab and locate power.csv (??). Double-clicking this file opens the detector power viewer for the selected detector.

OghmaNano Output tab showing power.csv, which opens the detector power-versus-time plot when double-clicked.
Output folder containing power.csv, which opens the detector power viewer.
Detector 0 power versus time plot. Power rises rapidly and shows oscillations as the resonator response builds up.
Detector 0: power rises quickly and oscillates during the initial build-up.
Detector 1 power versus time plot. Signal appears later than detector 0 because the monitored port is further along the coupling path.
Detector 1: delayed onset because power must propagate and couple through the structure before reaching this port.

Compare ?? and ??. The near detector responds earlier, while the downstream detector responds later because the field must propagate through the bus/ring coupling region and then reach the monitored port.

7. Switching the excitation to a pulse

The source parameters are edited from the Optical ribbon (??). Click Light Sources to open the light source editor, shown in ??.

OghmaNano Optical ribbon showing the Light Sources button and other optical tools.
The Optical ribbon. Use Light Sources to edit the FDTD excitation.

In the light source editor, open the FDTD tab and set the waveform to Gaussian sine pulse. This replaces continuous-wave excitation with a short pulse containing a carrier, allowing you to see transit delay and resonator build-up more clearly.

Light source editor with the FDTD tab selected, showing waveform set to Gaussian sine pulse and polarisation settings.
Light source editor (FDTD tab): set Waveform to Gaussian sine pulse.
Snapshot of the ring resonator simulation shortly after a pulsed excitation, showing the pulse entering and starting to couple into the ring.
Pulsed run: early-time snapshot showing the injected pulse entering the structure.
Snapshot later in time showing pulse energy circulating in the ring and coupling back into the bus waveguide.
Pulsed run: later-time snapshot showing circulation and coupling dynamics in the ring.

Rerun the simulation and then reopen the detector plots (??, ??). With a pulse, the detector signals typically show a clearer onset, a finite delay between ports, and a decay/ring-down that reflects loss and coupling strength.