FDTD++ has minimal requirements, but can optionally utilize sophisticated features of well-developed libraries for additional efficiency and usefulness.

FDTD++ has  been developed to be minimally-dependent on external libraries1. However, it can also utilize sophisticated features available in well-developed libraries, by invoking specific flags at compile time (see the FDTD++ wiki). The complete list of requirements (required and optional) is given below.



List of Requirements

The list of requirements for FDTD++ is as follows. Given today’s (average) computing power, no requirement on CPU, RAM, etc. is specified.

  • Unix-like (Linux, Mac OS X, etc.) or Windows2 environment
  • C++ 11 compiler (GCC 4.8 fully tested)
  • (Temporarily required3) Boost C++ libraries (version 1.55 fully tested)
  • (Optional4) MPI library and compiler (Open MPI and LLVM-GCC 4.2 tested)
  • (Optional5) The HDF5 library and the SILO library
  • (Optional) Computer-aided design software for geometric modeling, such as the open source software SALOME
  • (Optional) Storage space for data files (electromagnetic fields, etc.)
  • (Optional) Scientific visualization software that supports the SILO format, such as VisIt or Paraview


Notes and References

  1.  Future releases of FDTD++ will not require any external libraries.
  2. A Windows environment should work without problem, but support for this is in the experimental stage. If any issues are found, please report them to the support forums.
  3. A couple of features of the Boost C++ libraries are scheduled to be included in future releases of C++. Until then, FDTD++ requires Boost.
  4. MPI is required for parallel simulations.
  5. In order to output electromagnetic fields, the HDF5 library and the SILO library are required.