# FDTD Troubleshooting

Editor: messages after Check Simulation, and the run status · Python: td.Simulation

Each entry starts with what the editor shows. The messages come from the check that Check Simulation runs (see Run and Cost). Click Warning (N) or Not ready to run (why?) to read them.

# Not ready to run (why?)

Cause: The check found at least one error. The simulation cannot run until you fix it.

Fix: Click the text to read the errors. Fix each one, then click Check Simulation again.

# "… contains frequencies outside of the simulation frequency range … as defined by the sources."

Cause: A monitor records wavelengths that no source sends. The results at those wavelengths are not reliable.

Fix: Make the source's wavelength range cover the monitor's range (the source's Excitation Signal), or narrow the monitor's range. With Set the range from the global wavelength on, both use Setup › Configuration › Wavelength.

Related: Gaussian Pulse, FAQ: What source bandwidth should I use? (opens new window)

# "… was detected as being less than half of a central wavelength from a PML on side …"

Cause: A structure ends close to a PML boundary. Its near fields reach the PML, which can give wrong results or make the run diverge.

Fix: Make the simulation domain larger on that side. Or, if the structure should continue past the edge, such as a waveguide, set its size to Infinity along that axis so that it goes through the PML.

Related: Boundary, FAQ: What is the ideal distance between the geometry and absorbing layers? (opens new window)

# "Angled plane wave sources are not compatible with the absorbing boundary along dimension …"

Cause: A Plane Wave at an angle has PML (or another absorbing boundary) on its sides. The tilted wave cannot pass through these boundaries correctly.

Fix: Set Bloch boundaries that match the source angle on those sides, or set the angle to 0.

Related: Bloch Boundary, FAQ: What is the difference between Periodic and Bloch boundaries? (opens new window)

# "… different mediums detected on plane intersecting a … source. Plane must be homogeneous."

Cause: The plane of a Plane Wave or Gaussian Beam crosses more than one medium. These sources must start in one uniform medium.

Fix: Move the source plane into one medium, for example above the structures. To light a waveguide, use a Mode Source instead.

# "… is outside of the simulation domain."

Cause: A source or a monitor is outside the simulation domain.

Fix: Move it inside the domain, or make the domain larger with Domain on the canvas toolbar.

# "Simulation has … time steps, a maximum of 1.00e+07 are allowed."

Cause: The run time is too long for the grid. A finer grid makes each time step shorter, so the same run time needs more steps.

Fix: Shorten Run Time, or use a coarser grid in Grid Specification.

Related: Run Time and Shutoff Tutorial (opens new window)

# "Estimated storage of monitor … is … GB. Consider making it smaller …"

Cause: A monitor stores a lot of data, for example a large Field Monitor with many wavelengths.

Fix: Make the monitor smaller, use fewer wavelengths, or record less often with Downsampling (Field Monitor) or Time Interval (Field Time Monitor).

Related: Field Monitor

# The run status is Diverged

Cause: The fields grew without limit. This is almost always caused by the PML boundaries or by dispersive materials.

Fix: Click Troubleshoot next to the status. It opens the notebook "How to troubleshoot a diverged FDTD simulation". Common fixes: move the PML further away from the structures, or lower the Normalized Courant Factor in Setup › Configuration › Advanced.

Related: FAQ: Why is a simulation diverging? (opens new window)

# The run status is Error

Cause: The run stopped because of a problem on the server or in the setup.

Fix: Click Technical Support next to the status to send a request to support.

# The field decay has not reached the shutoff level

Cause: The run ended before the fields decayed. The results in the frequency domain may not be accurate. See FieldDecay in Monitor Datasets.

Fix: Create a new version and make the Run Time longer.

Related: FAQ: Should the fields fully decay by the end of the simulation? (opens new window)