Skip to main content

PyPEEC - 3D Quasi-Magnetostatic Solver

Project description

PyPEEC - 3D Quasi-Magnetostatic Solver



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

Author

Credits

PyPEEC was created at Dartmouth College by the research group of Prof. Sullivan:

The FFT-accelerated PEEC method with voxels has been first described and implemented in:

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.


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pypeec-5.8.0.tar.gz (11.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pypeec-5.8.0-py3-none-any.whl (7.3 MB view details)

Uploaded Python 3

File details

Details for the file pypeec-5.8.0.tar.gz.

File metadata

  • Download URL: pypeec-5.8.0.tar.gz
  • Upload date:
  • Size: 11.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for pypeec-5.8.0.tar.gz
Algorithm Hash digest
SHA256 8e83883b5b3f651e1f453cd42ccd92796f04dea0e0b819184baaae5622035281
MD5 0a9e8e108e3b63aca4d3890be5c49ebd
BLAKE2b-256 925d674efb33fe856675dd38c36e112655633f2a0eaf3b3a8ab7ca5d4f843a90

See more details on using hashes here.

File details

Details for the file pypeec-5.8.0-py3-none-any.whl.

File metadata

  • Download URL: pypeec-5.8.0-py3-none-any.whl
  • Upload date:
  • Size: 7.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for pypeec-5.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1caa513b21e6d75ba1fce62f11227b8245d092113705396ff2d45e4c1aa00dcc
MD5 6a9ffc5d783a48d9ae9a3ce5937b1928
BLAKE2b-256 11e4356b7b66bb8e0392fcd14dcbce7562d4ed8c01fe512042ea8405b83325a2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page