Electrodynamica is a Mathematica package for predicting the values of electromagnetic fields for a wide variety of physical situations. It is written to be useful to both students and professional physicists and engineers.

The basic model used by Electrodynamica can represent any set of 3D volumes or bodies of any shapes and topologies, each with homogeneous permittivity ϵ and permeability μ, and arbitrary free source charge and current, at any frequency. Surfaces are represented by lists of polygons, such as Mathematica shapes. Any frequency may be used, provided the polygons are smaller than the reduced wavelength. Source charge and current may be any surface density, volume density, or combination of the two. Electrical conductors are represented using complex permittivity.

The model is based on surface integral equations resulting from the application of Green’s theorem to Maxwell’s equations, formulated using geometric algebra. For N surface polygons, a system of N linear equations for N unknowns is obtained. The solution of these equations gives the values of an auxiliary field on the surfaces, and in turn from these, the values of the electromagnetic field at any point or set of points anywhere in space can be quickly calculated.

This model can represent a great variety of practical situations and effects that arise in engineering, including magnetic, electric, and electromagnetic shielding from zero to high frequencies, scattering of waves, coupling between discretely packaged components in digital devices, such as computers and cell phones, and fields throughout passive electronic and optical integrated circuits. With minor changes, the basic model can be adapted to model bipolar transistors; with the application of perturbation theory as described in most intermediate quantum mechanics texts, FET and CMOS transistors can also be modeled.

The data generated by Electrodynamica is easily displayed or processed further using the full power of Mathematica, such as to show 3D vector plots of field values, 2D plots of an impedance versus frequency, and 3D or 2D plots of radiated power density versus spatial direction.

Errors in the predicted field values are currently proportional to 1/N for N surface polygons, for a given set of volumes. For a representative physical system with an average angle between adjacent polygons of about 30 degrees, the error varies smoothly with position from a few percent to less than one percent. Algorithm improvements are underway to eliminate 1/N errors, leaving errors proportional to 1/a. For very accurate predictions for any particular symmetric situation, alternative methods are generally known that are more appropriate than the general approach used in Electrodynamica.

The value of Electrodynamica is in its applicability to situations with irregular or complex geometry, with mixed materials, and at any frequency. Also, its systematic code structure, due to expression of the underlying theory using geometric algebra and its implementation in Mathematica, allows easy modification and augmentation for improvement and extension. For students and researchers, Electrodynamica allows accurate representation and 3D plotting of electromagnetic fields in situations that may be difficult to reliably visualize, even approximately; for engineers, it allows optimization of designs with an accuracy that may exceed that due to manufacturing variations.

The talk will describe the features of Electrodynamica, outline the theory behind it and its implementation in Mathematica, and present examples of its use and the resulting predictions. Examples will include zero and low-frequency magnetic shielding, such as might be used in a precision atomic spectroscopy experiment, high-frequency impedance between wired electronic components, and the fields and characteristics of an optical integrated circuit.