Electrical engineers often need to model electromagnetic waves that propagate from antennas or through complex structures. In the days before computers, such problems could tax the mathematics capabilities of an Einstein. Today, however, the task can be simple and even fun to do on ordinary desktop computers, thanks to packages like Femlab 3 from Comsol Inc., Burlington, Maine.
Femlab 3 is a major update of a well-established product. Originally developed as an add-on application to Matlab, an efficient computational platform published by The MathWorks, in Natick, Mass., it takes full advantage of Matlab's sophisticated graphics capabilities and simple user interfaces. This release has a welcome new addition: a stand-alone program that has its own math engine and runs independently of Matlab, along with the version that runs as an add-on to Matlab Version 6.5 or higher. The stand-alone program is much faster than the older Matlab-based versions, which will be a compelling reason for many users to upgrade. It has a host of smaller enhancements as well.
To solve field problems, Femlab 3 uses finite element analysis that subdivides the problem geometry into a two- or three-dimensional mesh. This technique is especially helpful in figuring out equations in such different fields as electrostatics, electromagnetics, fluid dynamics, and heat transport. With it, a modestly powered personal computer can usually solve 2-D problems with a mesh that is fine enough to produce reasonably accurate solutions. A 3-D problem with complex geometry can stress out a well-endowed personal computer, but it will probably run--if the user is willing to wait long enough for a solution.
Femlab 3. Comsol Inc., 8 New England Executive Park, Burlington, MA 01803, phone, +1 781 273 3322; fax, +1 781 273 6603; e-mail,
Runs on Microsoft Windows, Linux, and Unix systems. The Femlab interface to Matlab requires Matlab 6.5 or later. The company recommends a minimum of 256MB of RAM; some 3-D models require up to 1GB.
While the finite element method is flexible and efficient for calculating fields in confined spaces, it is less well suited to modeling wave propagation in infinite space. (For this kind of problem, users may find a new application called EMPLab, made by EM Photonics Inc. in Newark, Del., better suited to their needs.)
A mature product, Femlab 3 comes with 10 manuals of documentation (weighing nearly 5 kilograms) and numerous sample applications from a variety of disciplines. The program can handle 1-, 2-, and 3-D problems, which may be static or time-dependent. It also allows "multiphysics" calculations, combining, say, electromagnetic field with heat-flow calculations.
At the simplest level, engineers can use Femlab 3's built-in graphical user interfaces to adapt one of the standard problems, which will probably work for most people most of the time. Advanced users can call the program up from within Matlab, taking advantage of the powerful Matlab programming capability. But solving complex problems, particularly in three dimensions, can be a big chore and may require the user to go back to school by attending one of the vendor's training courses. Making sense of the technical manuals can require knowledge of the underlying physical theory, which might be a stretch for some users.
I installed and ran a beta version of Femlab 3 without problem on my system (Windows XP running on a 2.4-GHz processor and 512MB of RAM), and the speed enhancements were indeed apparent. The vendor's claim that there is full backward compatibility with earlier releases of Femlab needs qualification, though. Importing a model created by a previous release into Femlab 3 requires the user to run this version as an interface to Matlab. But that requires Matlab 6.5 or higher, whereas the previous version of Femlab ran under Matlab 6.0. Thus, upgrading Femlab might require a costly upgrade to Matlab as well.
The vendor told me that it would convert a user's older Femlab models into Femlab 3 format if necessary; ideally, it should fix the problem. This is, however, a small glitch in an outstanding and versatile product.