Skip to main content

MagNet Toolkit - Certified Models of the MagNet Challenge

Project description

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 .

Matlab

TBD

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)

Matlab

TBD

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. Thank you!

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

mag_net_hub-0.0.5.tar.gz (1.2 MB view details)

Uploaded Source

Built Distribution

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

mag_net_hub-0.0.5-py3-none-any.whl (550.3 kB view details)

Uploaded Python 3

File details

Details for the file mag_net_hub-0.0.5.tar.gz.

File metadata

  • Download URL: mag_net_hub-0.0.5.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.19

File hashes

Hashes for mag_net_hub-0.0.5.tar.gz
Algorithm Hash digest
SHA256 a1574117ae00daa3ea3d591721526fc3245aa73a6cdb59d0a02dc1467854fd8a
MD5 e797d3a9c80a50ba5dd58a72e79ea842
BLAKE2b-256 5bb2606bd1b9f28a7805fb6c8100028105ee66d48b148bdf4fb5f7f4c357c828

See more details on using hashes here.

File details

Details for the file mag_net_hub-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: mag_net_hub-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 550.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.19

File hashes

Hashes for mag_net_hub-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 5990e98fe1084b5434a4c12ccc9d036d53ad9068e17daba150057d11860daf59
MD5 72c4ba599f552e9dd2e9091d71879edf
BLAKE2b-256 3aca2a194b87625f85fa90611999c216a762d6bc04eaae508a8160c4acdf8d11

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