-
Notifications
You must be signed in to change notification settings - Fork 31
open source MLFMA (multi level fast multipole algorithm) or open source MLFMM (multi level fast multipole method)
License
Gjacquenot/Puma-EM
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
SHORT - parallel unified multipole algorithm for Electromagnetics (Puma-EM). Aim is providing surface Method of Moments for Electromagnetics, enhanced by using the Multilevel Fast Multipole Method. Code is parallelized and runs on Desktops and clusters. 1. Introduction --------------- This is Puma-EM, a Parallel Unified Multipole Algorithm for Electromagnetics. The aim of Puma-EM is to solve surface integral equations that arise in Computational Electromagnetics, by using boundary elements methods, namely the Method of Moments. The method is enhanced by the use of the Multilevel Fast Multipole Method, which expedites the matrix-vector multiplication required by the iterative algorithm. The term "Unified" refers to the fact that the Multipole Engine could be used for acoustics or mechanics. "Unified" should therefore be seen as a goal to reach. Hopefully the Open-Sourcing of the code is a step towards that goal. Puma-EM is distributed under the terms of the GNU General Public License v3. See COPYING for more information. For any questions/bugs/requirements, mail <vandenbosch.idesbald@gmail.com>. 2. Capabilities --------------- This code is currently capable of computing the bistatic Radar Cross Section (RCS), monostatic RCS and monostatic (Sythetic Aperture Radar) SAR of PEC targets. These targets can include junctions (i.e. plates that intersect volumes for example), therefore the code can solve complex geometries. Puma-EM has already solved problems containing more than 40 million of variables on a "modest" cluster (2 HP proliant ML350 machines, quad core and 16 GB RAM each), but it is able to solve around 1-2 million on a Desktop/laptop having 2 GBytes of RAM. Please note that Puma-EM has been developed and used only on Linux machines. Windows (R) is not supported (yet). For running Puma-EM on Windows machines, you should consider installing a virtual linux machine through VMware or any other virtualization solution. Puma-EM should work on *NIX/*BSD systems, including MacOS (R) 10.x, although it has not been tested yet. 3. Install Puma-EM ------------------ First, extract the *.tar.gz file that you downloaded in your home directory. Second, cd into Puma-EM, then type: $ ./install.sh Follow the instructions for the installation. This process will issue a lot of output at the terminal, and the code will run on a small example in order to compile the interfaces between Python and C++. For more details, or if you have to install Puma-EM locally, see the guide.pdf. 4. Ready to Go -------------- You are now ready to rock'n'roll!! Choose a master node, open a terminal, and simply type: $ ./run.sh See the doc/EXAMPLES file for other examples, then play around with the simulation_parameters.py file. 5. Code documentation --------------------- If you want to generate the documentation of the code itself, type (doxygen and LaTeX required): $ make documentation
About
open source MLFMA (multi level fast multipole algorithm) or open source MLFMM (multi level fast multipole method)
Topics
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published