EMAP3D (Electromechanical Analysis Program in Three Dimensions) is a single
-processor (serial) program that uses finite element (FE) methods to solve
coupled electromagnetic, thermal and structural problems for high velocity
conductors in transient electromagnetic fields. Its primary application has
been the simulation of electromagnetic launchers and pulsed rotating machi
nes. While EMAP3D has been applied successfully to a wide range of problems
, its serial execution time limits the achievement of finer detail in large
problems, even on high performance vector machines. The present class of p
roduction simulations, involving 100 000 unknowns, can take a week to compl
ete on time-sharing machines at computation centers, To reduce simulation t
ime, a parallel implementation of the EMAP3D program has been undertaken. W
hile vector parallel programming is straightforward and a reasonable approa
ch, access to more than 16 vector processors is limited.
The availability, low cost, and scalability of Massively Parallel Processin
g (MPP) make MPP computing more attractive than vector-parallel processing,
The number of R IPP processors on PC Beowulf clusters usually ranges from
8 to 100 and can be as high as several thousand on IBM (SP) and Gray (T3E)
systems.
We have decoupled the matrix generation and solution components of the FE a
lgorithm, thereby allowing us to use any of the new MPP-parallel solvers on
the matrix equations, Since the number of zero matrix elements is high for
EMAP3D problems, a sparse matrix solver is ideal. Hence, our parallel impl
ementation uses the sparse iterative solvers of PETSc (Portable Extensible
Toolkit for Scientific Computing). Here we report the performance, scalabil
ity, and use of PETSc preconditioners and solver algorithms as a "solution
engine" for real EMAP3D simulations and test cases.