PyPEEC
PyPEEC: A 3D Quasi-Magnetostatic Solver using an FFT-Accelerated PEEC Method with Voxelization - Published in JOSS (2025)
Science Score: 98.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 16 DOI reference(s) in README and JOSS metadata -
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords
Repository
PyPEEC - 3D Quasi-Magnetostatic FFT/PEEC Solver
Basic Info
- Host: GitHub
- Owner: otvam
- License: mpl-2.0
- Language: Python
- Default Branch: main
- Homepage: https://pypeec.otvam.ch
- Size: 14.7 MB
Statistics
- Stars: 34
- Watchers: 3
- Forks: 4
- Open Issues: 0
- Releases: 74
Topics
Metadata Files
README.md
PyPEEC - 3D Quasi-Magnetostatic Solver

- Website: pypeec.otvam.ch
- Repository: github.com/otvam/pypeec
- Paper: doi.org/10.21105/joss.06644
- Conda: anaconda.org/conda-forge/pypeec
* PyPI: pypi.org/project/pypeec
Summary
PyPEEC is a 3D quasi-magnetostatic PEEC solver developed at Dartmouth College within the Power Management Integration Center (PMIC). PyPEEC is a fast solver (FFT and GPU accelerated) that can simulate a large variety of magnetic components (inductors, transformers, chokes, IPT coils, busbars, etc.). The tool contains a mesher (STL, PNG, and GERBER formats), a solver (static and frequency domain), and advanced plotting capabilities. The code is written in Python and is fully open source!
Capabilities
PyPEEC features the following characteristics:
- PEEC method with FFT acceleration.
- Fast with moderate memory requirements.
- Representation of the geometry with 3D voxels.
- Parallel processing and GPU acceleration are available.
- Import the geometry from STL, PNG, and GERBER files.
- Draw the geometry with stacked 2D vector shapes or voxel indices.
- Pure Python and open source implementation.
- Can be used from the command line or with an API.
- Advanced plotting and visualization capabilities.
- Compatible with Jupyter notebooks.
- Compatible with ParaView.
PyPEEC solves the following 3D quasi-magnetostatic problems:
- Frequency domain solution (DC and AC).
- Conductive and magnetic domains (ideal or lossy).
- Isotropic, anisotropic, lumped, and distributed materials.
- Connection of current and voltage sources.
- Extraction of the current density, flux density, and potential.
- Extraction of the terminal voltage, current, and power.
- Computation of the free-space magnetic field .
PyPEEC has the following limitations:
- No capacitive effects.
- No dielectric domains.
- No force computations.
- No advanced boundary conditions.
- No domain decomposition techniques.
- No hierarchical matrix techniques.
- No model order reduction techniques.
- Limited to voxel geometries.
The PyPEEC package contains the following tools:
- mesher - Create a 3D voxel structure from the geometry.
- viewer - Visualization of the 3D voxel structure.
- solver - Solve the quasi-magnetostatic problem.
- plotter - Visualization of the problem solution.
Warning
The geometry is meshed with a regular voxel structure (uniform grid). Some geometries/problems are not suited for voxel structures (inefficient meshing). For such cases, PyPEEC can be very slow and consume a lot of memory.
Project Links
PyPEEC
Releases
Documentation
Author
- Name: Thomas Guillod
- Affiliation: Dartmouth College
- Email: guillod@otvam.ch
- Website: https://otvam.ch
Credits
PyPEEC was created at Dartmouth College by the research group of Prof. Sullivan:
- Dartmouth College, NH, USA: https://dartmouth.edu
- Dartmouth Engineering: https://engineering.dartmouth.edu
- NSF/PMIC: https://pmic.engineering.dartmouth.edu
The FFT-accelerated PEEC method with voxels has been first described and implemented in:
- Torchio, R., IEEE TPEL, 10.1109/TPEL.2021.3092431, 2022
- Torchio, R., https://github.com/UniPD-DII-ETCOMP/FFT-PEEC
Copyright
(c) 2023-2025 / Thomas Guillod / Dartmouth College
This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
In order to facilitate the redistribution, this source code is multi-licensed under the following additional licenses: LGPLv2, LGPLv3, GPLv2, and GPLv3.

Owner
- Name: Thomas Guillod
- Login: otvam
- Kind: user
- Location: NH, USA
- Company: Dartmouth College
- Website: otvam.ch
- Repositories: 1
- Profile: https://github.com/otvam
Open source projects, mainly for science and power electronics!
JOSS Publication
PyPEEC: A 3D Quasi-Magnetostatic Solver using an FFT-Accelerated PEEC Method with Voxelization
Tags
fft acceleration quasi magnetostatic power electronics peec voxel maxwell python magneticsCitation (CITATION.cff)
cff-version: "1.2.0"
authors:
- family-names: Guillod
given-names: Thomas
orcid: "https://orcid.org/0000-0003-0738-5823"
- family-names: Sullivan
given-names: Charles R.
orcid: "https://orcid.org/0000-0001-7492-9005"
contact:
- family-names: Guillod
given-names: Thomas
orcid: "https://orcid.org/0000-0003-0738-5823"
doi: 10.5281/zenodo.16764265
message: If you use this software, please cite our article in the
Journal of Open Source Software.
preferred-citation:
authors:
- family-names: Guillod
given-names: Thomas
orcid: "https://orcid.org/0000-0003-0738-5823"
- family-names: Sullivan
given-names: Charles R.
orcid: "https://orcid.org/0000-0001-7492-9005"
date-published: 2025-09-02
doi: 10.21105/joss.06644
issn: 2475-9066
issue: 113
journal: Journal of Open Source Software
publisher:
name: Open Journals
start: 6644
title: "PyPEEC: A 3D Quasi-Magnetostatic Solver using an
FFT-Accelerated PEEC Method with Voxelization"
type: article
url: "https://joss.theoj.org/papers/10.21105/joss.06644"
volume: 10
title: "PyPEEC: A 3D Quasi-Magnetostatic Solver using an FFT-Accelerated
PEEC Method with Voxelization"
GitHub Events
Total
- Create event: 48
- Issues event: 6
- Release event: 22
- Watch event: 15
- Delete event: 1
- Issue comment event: 5
- Push event: 426
- Fork event: 2
Last Year
- Create event: 48
- Issues event: 6
- Release event: 22
- Watch event: 15
- Delete event: 1
- Issue comment event: 5
- Push event: 426
- Fork event: 2
Committers
Last synced: almost 2 years ago
Top Committers
| Name | Commits | |
|---|---|---|
| Thomas Guillod | g****d@o****h | 1,034 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 12
- Total pull requests: 0
- Average time to close issues: 3 months
- Average time to close pull requests: N/A
- Total issue authors: 3
- Total pull request authors: 0
- Average comments per issue: 2.17
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 4
- Pull requests: 0
- Average time to close issues: 2 days
- Average time to close pull requests: N/A
- Issue authors: 2
- Pull request authors: 0
- Average comments per issue: 1.25
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- otvam (7)
- Pimss (2)
- thelfer (2)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 587 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 57
- Total maintainers: 1
pypi.org: pypeec
PyPEEC - 3D Quasi-Magnetostatic Solver
- Homepage: https://pypeec.otvam.ch
- Documentation: https://pypeec.readthedocs.io/
- License: mpl-2.0
-
Latest release: 5.7.4
published 4 months ago
Rankings
Maintainers (1)
Dependencies
- actions/checkout v3 composite
- actions/setup-python v4 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- Pillow >=10.0
- PyQt5 >=5.15
- PyYAML >=6.0
- joblib >=1.3
- matplotlib >=3.7
- numpy >=1.24
- pyvista >=0.40
- pyvistaqt >=0.11
- rasterio >=1.3
- scipy >=1.9
- shapely >=2.0
- vtk >=9.2
