{"id":13728498,"url":"https://github.com/otvam/magnetic_components_toolbox_matlab","last_synced_at":"2025-04-14T11:21:41.820Z","repository":{"id":164277131,"uuid":"425087200","full_name":"otvam/magnetic_components_toolbox_matlab","owner":"otvam","description":"MATLAB Toolbox for Power Magnetics: Model and Optimization","archived":false,"fork":false,"pushed_at":"2024-06-14T17:32:11.000Z","size":447,"stargazers_count":19,"open_issues_count":0,"forks_count":7,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-28T00:41:25.846Z","etag":null,"topics":["design","inductor","magnetic-fields","matlab","modeling","optimization","power-electronics","transformer"],"latest_commit_sha":null,"homepage":"","language":"MATLAB","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/otvam.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-11-05T21:20:21.000Z","updated_at":"2025-02-05T03:34:11.000Z","dependencies_parsed_at":"2024-06-14T18:51:50.224Z","dependency_job_id":"50b6e5c3-8a79-4285-97e2-0ceed4e3770a","html_url":"https://github.com/otvam/magnetic_components_toolbox_matlab","commit_stats":{"total_commits":15,"total_committers":1,"mean_commits":15.0,"dds":0.0,"last_synced_commit":"9106308c9be76664341b579318e889657ec94f0a"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/otvam%2Fmagnetic_components_toolbox_matlab","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/otvam%2Fmagnetic_components_toolbox_matlab/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/otvam%2Fmagnetic_components_toolbox_matlab/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/otvam%2Fmagnetic_components_toolbox_matlab/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/otvam","download_url":"https://codeload.github.com/otvam/magnetic_components_toolbox_matlab/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248868871,"owners_count":21174774,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["design","inductor","magnetic-fields","matlab","modeling","optimization","power-electronics","transformer"],"created_at":"2024-08-03T02:00:43.415Z","updated_at":"2025-04-14T11:21:41.798Z","avatar_url":"https://github.com/otvam.png","language":"MATLAB","funding_links":[],"categories":["Magnetics"],"sub_categories":[],"readme":"# MATLAB Toolbox for Power Magnetics: Model and Optimization\n\n![license - BSD](https://img.shields.io/badge/license-BSD-green)\n![language - MATLAB](https://img.shields.io/badge/language-MATLAB-blue)\n![category - power electronics](https://img.shields.io/badge/category-power%20electronics-lightgrey)\n![status - unmaintained](https://img.shields.io/badge/status-unmaintained-red)\n\nThis **MATLAB toolbox** allows for the **modeling and optimization** of power **magnetic components**:\n* medium-frequency **inductors**\n* medium-frequency **transformers**\n* computation of the **mass and volume**\n* extraction of the **equivalent circuit**\n* computation of the **core and winding losses**\n* **fast and accurate** semi-numerical methods\n* plotting of the winding and core geometries\n* brute-force **optimization** (parallel code)\n* flexible **object-oriented** design\n\nThe following methods/functionalities are provided for the **core modeling**:\n* iGSE for the core losses (with locally fitted parameters from a loss map)\n* linear reluctance solver with 3D air gap models\n* multiple air gaps are allowed\n* multiphases components are allowed\n\nThe following methods/functionalities are provided for the **winding modeling**:\n* mirroring method with inductance matrix and field evaluation (with/without air gaps)\n* solid wire windings (including skin and proximity losses)\n* stranded (Litz) wire windings (including skin and proximity losses)\n* multiple air gaps are allowed\n* multiphases components are allowed\n* model of the winding heads\n\nCurrently, the following **components are implemented**:\n* inductors and two-winding transformers with shell-type windings\n* U-core, C-core, and E-core\n\nHowever, **additional components** can be added by implementing **abtract classes**.\nMore specifically, the code could handle the following cases (without modifying the core classes):\n* multiphase components (transformers or chokes)\n* other winding geometries (core-type, matrix, etc.)\n* other core geometries (ELP, RM, etc.)\n* distributed airgaps\n\n## Getting Started\n\nTwo DC-DC converters are considered as examples:\n* a resonant converter (SRC-DCX) with a MF transformer\n* a bidirectional Buck converter (Buck DC-DC) with a MF inductor\n\nBoth converteres are operating between 400V and 100V buses with a rated power of 5kW.\nThe component geometry (core and windings) and the operating frequency are optimized.\n\nThe example consists of the following files:\n* resonant converter (SRC-DCX) with a MF transformer\n    * [run_src_dcx_1_single.m](run_src_dcx_1_single.m) - modelization of a single design\n    * [run_src_dcx_2_combine.m](run_src_dcx_2_combine.m) - brute-force optimization of the component\n    * [run_src_dcx_3_plot.m](run_src_dcx_3_plot.m) - optimization results (Pareo fronts\n* bidirectional Buck converter (Buck DC-DC) with a MF inductor\n    * [run_buck_dcdc_1_single.m](run_buck_dcdc_1_single.m) - modelization of a single design\n    * [run_buck_dcdc_2_combine.m](run_buck_dcdc_2_combine.m) - brute-force optimization of the component\n    * [run_buck_dcdc_3_plot.m](run_buck_dcdc_3_plot.m) - optimization results (Pareo fronts)\n* [example_files](example_files) - definition of the parameters, materials, and waveforms\n\n## Gallery\n\n### Buck DC-DC Inductor\n\n\u003cp float=\"middle\"\u003e\n    \u003cimg src=\"readme_img/inductor_core.png\" width=\"350\"\u003e\n    \u003cimg src=\"readme_img/inductor_window.png\" width=\"350\"\u003e\n\u003c/p\u003e\n\n### SRC-DCX Transformer\n\n\u003cp float=\"middle\"\u003e\n    \u003cimg src=\"readme_img/transformer_core.png\" width=\"350\"\u003e\n    \u003cimg src=\"readme_img/transformer_window.png\" width=\"350\"\u003e\n\u003c/p\u003e\n\n### Pareto Fronts\n\n\u003cp float=\"middle\"\u003e\n    \u003cimg src=\"readme_img/buck_dcdc.png\" width=\"350\"\u003e\n    \u003cimg src=\"readme_img/src_dcx.png\" width=\"350\"\u003e\n\u003c/p\u003e\n\n## Toolbox Organization\n\nThe power magnetic toolbox contains the following packages:\n* [add_path_mag_tb.m](magnetic_toolbox/add_path_mag_tb.m) - add the toolbox to the MATLAB path\n* [core](magnetic_toolbox/core) - core reluctance and core losses\n    * [core/README.txt](magnetic_toolbox/core/README.txt) - package documentation\n    * [core/DATA_STRUCT.txt](magnetic_toolbox/core/DATA_STRUCT.txt) - data format documentation\n    * [core/core_class.m](magnetic_toolbox/core/core_class.m) - main class\n    * [core/core_lib](magnetic_toolbox/core/core_lib) - package internal classes\n    * [core/core_example](magnetic_toolbox/core/core_example) - example/test files\n* [window](magnetic_toolbox/window) - winding window stray field and winding losses\n    * [window/README.txt](magnetic_toolbox/window/README.txt) - package documentation\n    * [window/DATA_STRUCT.txt](magnetic_toolbox/window/DATA_STRUCT.txt) - data format documentation\n    * [window/window_class.m](magnetic_toolbox/window/window_class.m) - main class\n    * [window/window_lib](magnetic_toolbox/window/window_lib) - package internal classes\n    * [window/window_example](magnetic_toolbox/window/window_example) - example/test files\n* [component](magnetic_toolbox/component) - simulation of complete components (inductor or transformer)\n    * [component/README.txt](magnetic_toolbox/component/README.txt) - package documentation\n    * [component/DATA_STRUCT.txt](magnetic_toolbox/component/DATA_STRUCT.txt) - data format documentation\n    * [component/component_class.m](magnetic_toolbox/component/component_class.m) - main class\n    * [component/component_lib](magnetic_toolbox/component/component_lib) - package internal classes\n    * [component/component_example](magnetic_toolbox/component/component_example) - example/test files\n* [sweep](magnetic_toolbox/sweep) - simulation of design sweeps (brute-force optimization)\n    * [sweep/README.txt](magnetic_toolbox/sweep/README.txt) - package documentation\n    * [sweep/get_sweep_single.m](magnetic_toolbox/sweep/get_sweep_single.m) - simulating a single parameter combination\n    * [sweep/get_sweep_combine.m](magnetic_toolbox/sweep/get_sweep_combine.m) - simulating a many parameter combinations\n    * [sweep/sweep_lib](magnetic_toolbox/sweep/sweep_lib) - package internal functions\n    * [sweep/sweep_example](magnetic_toolbox/sweep/sweep_example) - example/test files\n\n## Compatibility\n\n* Tested with MATLAB R2015b and R2021a.\n* Parallel Computing Toolbox.\n* Compatibility with GNU Octave not tested but probably problematic.\n\n## Author\n\n**Thomas Guillod** - [GitHub Profile](https://github.com/otvam)\n\nThis toolbox shares some files/ideas with the following repositories:\n* [mirroring_method_matlab](https://github.com/ethz-pes/mirroring_method_matlab) - ETH Zurich, Power Electronic Systems Laboratory, T. Guillod, BSD License\n* [litz_wire_losses_fem_matlab](https://github.com/ethz-pes/litz_wire_losses_fem_matlab) - ETH Zurich, Power Electronic Systems Laboratory, T. Guillod, BSD License\n\n## License\n\nThis project is licensed under the **BSD License**, see [LICENSE.md](LICENSE.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fotvam%2Fmagnetic_components_toolbox_matlab","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fotvam%2Fmagnetic_components_toolbox_matlab","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fotvam%2Fmagnetic_components_toolbox_matlab/lists"}