Abstract

Radia 3D magnetostatics code has been used for the design of insertion devices for light sources over more than two decades. The code uses the magnetization integral approach that is efficient for solving permanent magnet and hybrid magnet structures. The initial version of the Radia code was sequential, its core written in C++ and interface in the Mathematica language. This paper describes a new Python interfaced parallel version of Radia and its applications. The parallelization of the code was implemented on C++ level, where the semi-analytical calculations of interaction matrix elements and resultant magnetic fields were parallelized using the Message Passing Interface. The parallel performance results are encouraging, particularly for magnetic field calculation post relaxation where a ∼600 speedup with respect to sequential execution was obtained. The new parallel Radia version facilitates designs of insertion devices and lattice magnets for novel particle accelerators.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.