RSoft Enewsletter

April 30, 2014

Techniques for Reducing FDTD Simulation Times in FullWAVE

FullWAVE, RSoft’s finite-difference time-domain (FDTD) Maxwell equation solver, is an extremely powerful tool for modeling small photonic structures. While FDTD simulations can have very long runtimes and large memory/processor requirements, it is possible to greatly shorten simulation times in FullWAVE by simply following a few key steps.

1. Use clustering.
A clustered FullWAVE simulation employs multiple cores/CPU’s, and can dramatically increase simulation speeds. The exact speed increase depends on your specific hardware, but for a small number of processes, a roughly linear speed increase can be expected.

2. Don't use an excessively large computational domain.
The simulation time can be reduced by not including parts of the structure where fields are not present. Also, make full use of the different boundary conditions in FullWAVE in order to maximize computational efficiency. 

3. Use the largest grid possible that produces accurate results.
While it is absolutely necessary to validate results using a fine grid, use the largest grids that produce acceptably accurate results. Using unnecessarily fine grids only creates longer simulations with no extra benefit.

4. Use a non-uniform grid.
Using a non-uniform grid can often greatly increase simulation speeds. Instead of using a fine (and computationally taxing) grid everywhere, use the non-uniform grid settings to establish a fine grid around the structures in the simulation, and a coarser grid in the “bulk” regions of the simulation. To gain the best numerical accuracy, it is important to use the “Grid-Grading” function to ensure that the non-uniform grid transitions smoothly between the fine and coarser grids. 

Non-uniform grid

Non-uniform grids can provide optimal simulation time by using a fine grid only where needed, and a coarser grid elsewhere

5. Use symmetric boundary conditions when possible.
It is highly beneficial to use symmetric boundary conditions when possible to reduce the size of the simulation domain. 

6. Increase the Time Grid "Update Time" value.
Using the GUI to watch the fields evolve in time can be informative, but takes CPU time from the actual simulation. Increasing the “Update Time” value decreases the GUI refresh rate, and increases simulation speed.

7. Disable monitors that cover large volumes when not needed.
If these monitor results are not specifically needed, don’t output them to save computation time.

8. Output spatial fields on a coarser grid than the simulation grid if possible.
When saving spatial field slices, the simulation grid may provide more resolution than necessary. Depending on the intended use of the data, it may be possible to use a coarser grid, which will increase the simulation speed.

9. Output spatial field slices sparingly.
Output only the spatial field slices that are needed. Saving unneeded slices results in a slower simulation.

10. Set the monitor time optimally when using DFT/FFT analysis.
The monitor time controls the time interval at which measurements are made. Choosing an unnecessarily small monitor time can result in increased memory usage and simulation time.

Following the key FullWAVE steps outlined above can greatly shorten simulation times; simulations otherwise taking days have been seen to reduce to minutes! For more information about optimizing FullWAVE simulations, please refer to the RSoft FullWAVE manual or contact RSoft technical support at

Important Changes to RSoft Products Platform Support in 2014

In April 2014, Microsoft stopped supporting Windows XP. In addition, usage of several other platforms currently supported by the RSoft products, such as Windows Vista, has drastically decreased. Therefore, RSoft products versioned 2013.12 are the last versions to officially support the following operating systems:

  • Windows XP
  • Windows Vista
  • Red Hat Enterprise Linux (RHEL) 4
  • All 32-bit Windows and Linux versions

Please note that service releases for RSoft products versioned 2013.12 will also support Windows XP, Windows Vista, RHEL 4, and 32-bit versions of Windows and Linux.

Beginning in mid-2014, RSoft products beyond version 2013.12 will only officially support the following platforms:

  • 64-bit Windows 7
  • 64-bit Linux

We encourage you to migrate to 64-bit Windows or Linux computers, since official support for 32-bit versions of these operating systems will end in mid-2014. If you have any questions, please contact