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.
Metadata
Release files for pypeec 5.8.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| pypeec-5.8.0.tar.gz | 11.4 MB | Without provenance | Details for pypeec-5.8.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| pypeec-5.8.0-py3-none-any.whl | Python 3 | none | any | Details for pypeec-5.8.0-py3-none-any.whl |
Total release size: 18.6 MB
Release files / pypeec-5.8.0.tar.gz
| Download URL | pypeec-5.8.0.tar.gz |
|---|---|
| Size | 11.4 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8e83883b5b3f651e1f453cd42ccd92796f04dea0e0b819184baaae5622035281
|
|
BLAKE2b-256 checksum How to use checksums |
925d674efb33fe856675dd38c36e112655633f2a0eaf3b3a8ab7ca5d4f843a90
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.9
|
Release files / pypeec-5.8.0-py3-none-any.whl
| Download URL | pypeec-5.8.0-py3-none-any.whl |
|---|---|
| Size | 7.3 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1caa513b21e6d75ba1fce62f11227b8245d092113705396ff2d45e4c1aa00dcc
|
|
BLAKE2b-256 checksum How to use checksums |
11e4356b7b66bb8e0392fcd14dcbce7562d4ed8c01fe512042ea8405b83325a2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.9
|
Security for pypeec 5.8.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.