Computational electromagnetic software packages based on a variety of techniques have been available for many years to the practicing engineer. These tools are used for antenna and microwave circuit design, gauging compliance of devices for biological exposure, and a variety of other tasks. For the most part, these EM software tools were primarily for the analysis or validation of a well developed design or perhaps for the fine tuning of a design to improve performance without costly hardware prototyping. In this mode, a representation of the device is entered into the software environment and simulated to give a result for that specifi c design. When the results do not turn out as desired, the user must modify the device representation in the software and rerun the simulation, possibly repeating this process numerous times, until the desired results are obtained. This approach is helpful to the engineer, but requires userfeedback at each step in the process.

As technology has advanced, tools have been developed that go beyond merely analyzing devices to tools that design devices. These tools allow the user to select basic structures with variable dimensions, size constraints, and performance goals and then iterate automatically until the best possible design is found. The user is freed from the burden of monitoring the progress of each individual simulation and can devote time to other tasks. This evolutionary step in simulation software is improving the productivity of engineers developing next generation devices in a variety of fields.

There are several components required to convert an analysis tool into a design tool. First is the ability to create a design with variable dimensions which may be adjusted automatically by the software and constrained in a manner that avoids creating an invalid structure. This capability is generally referred to as parameterization, as each variable in the device design is considered a parameter. These variables might be the dimensions of the device, the electrical parameters of the materials used, or perhaps some simulation value such as the frequency of excitation. The next component needed by the software is the ability to modify the parameter values in a logical manner based on an analysis of the output of previous simulations of the design and the goals entered by the user. This is the optimization capability which may be implemented using one of numerous approaches available. Since most optimization techniques require multiple simulations to reach a converged result, and since EM software is computationally intensive, another component needed for the design process is high performance computing. The current state-of-the-art for high speed computing accessible to the typical user is the graphics processing unit or GPU. These powerful hardware boards are the offspring of computer graphics cards but are now designed specifi cally for highly parallel computations. Fortunately, some methods of EM analysis are exceptionally well suited for use on these boards and the speed increases possible over typical desktop computer processors are astounding. The complete package with the three components of parameterization, optimization, and high speed computing, combined with the insight of the user, can significantly decrease the design time for a new device and greatly increase the productivity of the engineer.