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 machines. While ETVAP3D 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 production simulations, involving 100,000 unknowns, can take a week to complete on time-sharing machines at computation centers. To reduce simulation time, a parallel implementation of the EMAPSD program has been undertaken. While vector parallel programming is straightforward and a reasonable approach, access to more than 16 vector processors is limited. The availability, low cost, and scalability of massively parallel processing (MPP) make MPP computing more attractive than vector-parallel processing. The number of MPP 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. The authors have decoupled the matrix generation and components of the FE algorithm, 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 EMAPSD problems, a sparse matrix solver is ideal. Hence, their parallel implementation uses the sparse iterative solvers of PETSc (Portable Extensible Toolkit for Scientific Computing). Here, they report the performance, scalability and use of PETSc preconditioners and solver algorithms as a solution engine for real EMAP3D simulations and test cases.
Read full abstract