Skip to main content

MagNet Toolkit

Certified Models of the MagNet Challenge

Lint and Test

This repository acts as a hub for selected power loss models that were elaborated by different competitors during the MagNet Challenge 2023. Feel free to use these loss models for your power converter design as a complement to your datasheet.

The loss models are designed such that you can request a certain frequency, temperature, material and $B$ wave (sequence), in order to be provided with a scalar power loss estimate and a corresponding $H$ wave estimate.

Disclaimer: Only steady-state and no varying DC-Bias is supported yet. Moreover, training data stemmed from measurements on toroid-shaped ferrites that had a fix size.

Supported materials:

  • ML95S
  • T37
  • 3C90
  • 3C92
  • 3C94
  • 3C95
  • 3E6
  • 3F4
  • 77
  • 78
  • 79
  • N27
  • N30
  • N49
  • N87

Installation

Python

We strongly recommend Python 3.10. Higher versions may also work.

Then install through pip:

pip install mag-net-hub

or, alternatively, clone this repo and execute

cd mag-net-hub
pip install .

Usage

Models are provided as executable code with readily trained coefficients. Hence, no training is conducted in this project.

Python

import numpy as np
import magnethub as mh

# instantiate material-specific model
mdl = mh.loss.LossModel(material="3C92", team="paderborn")

# dummy B field data (one trajectory with 1024 samples)
b_wave = np.random.randn(1024)* 200e-3  # in T
freq = 124062  # Hz
temp = 58  # °C

# get power loss in W/m³ and estimated H wave in A/m
p, h = mdl(b_wave, freq, temp)

# batch execution for 100 trajectories
b_waves = np.random.randn(100, 1024)* 200e-3  # in T
freqs = np.random.randint(100e3, 750e3, size=100)
temps = np.random.randint(20, 80, size=100)
p, h = mdl(b_waves, freqs, temps)

Contributing

Whether you want to contribute your submission to the MagNet Challenge, or you are a single contributor who wants to add an awesome model to this hub -- any contribution is welcome.

Open a pull request to directly suggest small improvements to the infrastructure or to add your model (with performance statistics preferred). For larger suggestions, please first open an issue or go to the discussion section to discuss your ideas.

See the below folder structure overview with annotations on how to contribute a model.

.
├── src_py
│   └── magnethub
│       ├── __init__.py
│       ├── loss.py
│       ├── models
│       │   ├── paderborn
│       │   │   ├── changelog.md
│       │   │   ├── cnn_3C90_experiment_1b4d8_model_f3915868_seed_0_fold_0.pt
│       │   │   ├── cnn_3C92_experiment_ea1fe_model_72510647_seed_0_fold_0.pt
|       |   |   └──  ...
│       │   ├── sydney
│       │   │   └── ...
│       │   └── <add your contributor folder here>
│       │   │   └── <add your model coefficients here>
│       ├── paderborn.py
|       ├── sydney.py
|       ├── <add your model code here>

Any number of models can be incorporated easily according to this code structure policy. If you have added model coefficients and execution logic via code, it only requires to be hooked in loss.py and you are ready to fire this pull request (PR).

If it is possible, please also consider adding tests for your model logic under tests/, writing comprehensive docstrings in your code with some comments, and discuss the performance of your model in your PR.

Other open ToDos are:

  • Matlab implementation
  • improve documentation

Thank you!

Metadata

Release files for mag-net-hub 0.0.11

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mag-net-hub 0.0.11
File Size Uploaded
mag_net_hub-0.0.11.tar.gz 1.3 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for mag-net-hub 0.0.11
File Interpreter ABI Platform
mag_net_hub-0.0.11-py3-none-any.whl Python 3 none any Details

Total release size: 1.9 MB

Release files / mag_net_hub-0.0.11.tar.gz

Download URL mag_net_hub-0.0.11.tar.gz
Size 1.3 MB
Tags Source
SHA-256 checksum
How to use checksums
35b5224f66a23337361e9b820535e3bf85f517dd638cb50b5a6afdcf8805deec
BLAKE2b-256 checksum
How to use checksums
072933e487f54a949637a7cda93efcff25cf5aaf269f3969d47cdb69dd46d99a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.9.19

Release files / mag_net_hub-0.0.11-py3-none-any.whl

Download URL mag_net_hub-0.0.11-py3-none-any.whl
Size 634.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
faa9d1832353c2316d01da2a3c22b9d8f29a64a9cf5d6c3c642905ebca9847ff
BLAKE2b-256 checksum
How to use checksums
29931f9509d5b47d5ba68b8ba34912a1c12d1079b28dcdd511d5eb59e1ec7d5c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.9.19

Release history Release notifications | RSS feed

This release

0.0.11 This release

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.6

2 release files

0.0.5

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page