A fresh approach has come to computer modeling of electromagnetic waves, thanks to EM Photonics, a start-up company based in Newark, Del. The field is currently dominated by three-dimensional modeling programs such as XFDTD by Remcom, State College, Pa., but EM Photonics's innovative two-dimensional approach could win it a seat at the table. (Disclaimer: the founder of EM Photonics, Mark S. Mirotznik, is a former Ph.D. student of mine.)
EM Photonics's first product is EMPLab, intended for modeling electromagnetic waves as they propagate through space and interact with materials, which runs as an interface to Matlab Version 6.0 or later. EMPLab uses the finite-difference time-domain (FDTD) method instead of the finite-element method used in other field-modeling software, such as Femlab by Comsol Inc., Burlington, Mass. [see IEEE Spectrum, July, Software]. FDTD, an efficient but memory-intensive method for solving Maxwell's equations, is particularly well suited for dealing with problems in infinite space, such as those involving cellphone antennas, while Femlab is better suited for problems in confined spaces, such as those involving waveguides.
Of the several commercially available FDTD programs, EMPLab is the only one designed for 2-D calculations. A 2-D model makes sense if the problem has enough symmetry, and it is far easier to manage than a full 3-D model.
EMPLab is straightforward to use. With a simple but effective drawing module, the user defines the geometry of the program, the electrical properties of the materials in it, and the sources of fields. Sources can include plane waves, Gaussian beams, or point sources. The program uses absorbing boundary conditions that let you simulate propagation in infinite space. By inserting field "probes" into the problem, you can record the variation in field quantities at discrete points in time.
To solve a problem, you launch a wave from the source. The program steps through a solution of the field equations, showing the wave as it travels through the structure you have defined. In most cases, you'll allow the calculation to continue long enough for the field to reach the steady state, which yields the reflections at the various interfaces and diffraction patterns.
Using a post-processing module, you can graph the output or save the results as Matlab files. The field calculator, a nice feature, allows you to perform various mathematical functions on the fields and to plot the results in various ways or save them to Matlab files. EMPLab also lets you tackle problems involving photonic crystals, diffractive lenses, and other specialized applications. I used it to model the reflection of millimeter waves from the eye.
I have been using EMPLab for nearly a year, most recently on a Windows XP system with a 2.4-GHz processor and 512MB of random access memory. The program runs quickly, taking just a few minutes to solve most problems, and it is pleasant and even fun to use. The documentation is minimal (40 help files in HTML that are linked to the program and a PDF file of the manual), but the operation of the program is intuitive.
The vendor says that an educational version of EMPLab and a quasi-three- dimensional version will be released shortly. This latter version will let users stack slices of a problem geometry, creating a 3-D structure. This approach (which I have not tried) would be cumbersome for complex objects but should be effective for simple objects.
The most obvious limitation of EMPLab is its restriction to 2-D problems. While real-world problems are naturally 3-D, users have a powerful incentive to approximate them in 2-D if possible, given the fact that a full 3-D problem is a big chore to set up and requires a powerful computer to solve effectively. The projects I attempted ran nicely on a couple of low-end desktop computers that I used. The program is not cheap, but neither are most other field-modeling programs, which have limited markets and large development costs.
EMPLab Version 1.1. EM Photonics Inc.; 51 East Main St., Suite 203, Newark, DE 19711; phone, +1 302 456 9003, e-mail,