PyOpenMagnetics 1.7.38__tar.gz → 1.7.39__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/CMakeLists.txt +5 -3
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/PKG-INFO +1 -1
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/pyproject.toml +1 -1
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/.github/workflows/ci.yml +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/.github/workflows/publish.yml +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/.gitignore +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/AGENTS.md +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/LICENSE +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/PyOpenMagnetics.pyi +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/README.md +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/_packaging/__init__.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/_packaging/_build_info.py.in +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/api/MAS.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/api/mas_db_reader.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/api/validation.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/clear_cibuildwheel_cache.sh +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/docs/compatibility.md +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/docs/errors.md +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/docs/performance.md +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/README.md +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/buck_inductor.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/complete_simulation_example.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/converter_design_example.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/debug_bobbin.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/debug_coil.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/debug_core.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/debug_plotting.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/flyback_220v_12v_1a.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/flyback_220v_12v_2a_complete.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/flyback_bh_curve.png +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/flyback_core.png +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/flyback_design.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/flyback_summary.png +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/flyback_waveforms.png +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/list_plot_funcs.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/plot_flyback_design.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/plot_flyback_pyom.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/test_field_calc.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/examples/test_field_plot.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/force_fresh_build.sh +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/llms.txt +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/notebooks/01_getting_started.ipynb +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/notebooks/02_buck_inductor.ipynb +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/notebooks/03_core_losses.ipynb +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/notebooks/README.md +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/requirements.txt +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/advisers.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/advisers.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/bobbin.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/bobbin.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/cmc.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/cmc.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/common.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/converter.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/converter.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/core.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/core.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/crossref.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/crossref.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/database.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/database.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/logging.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/logging.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/losses.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/losses.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/module.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/plotting.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/plotting.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/settings.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/settings.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/simulation.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/simulation.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/utils.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/utils.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/winding.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/winding.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/wire.cpp +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/src/wire.h +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/test.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/__init__.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/conftest.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/test_converter_endpoints.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/test_core.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/test_core_adviser.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/test_datasheet_only_catalogue.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/test_examples_integration.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/test_inputs.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/test_logging.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/test_losses_not_evaluable_catalogue.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/test_magnetic_adviser.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/test_magnetics_catalogue_load.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/test_mas_schema_walk.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/test_material_validator.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/test_plotting.py +0 -0
- {pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/test_winding.py +0 -0
|
@@ -31,14 +31,16 @@ else ()
|
|
|
31
31
|
# Enable Link Time Optimization to reduce binary size
|
|
32
32
|
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION FALSE) # TEMP: disable LTO (OOM)
|
|
33
33
|
|
|
34
|
-
# Wheel/CI build: -
|
|
34
|
+
# Wheel/CI build: -O2 (Alf, 2026-10-28, ABT #2124: at -O1 the thermal network's elimination ran as a
|
|
35
|
+
# scalar loop and was 43% of a catalogue search). Still the baseline x86-64 target with no -march, so no
|
|
36
|
+
# FMA contraction: results are not expected to change from -O1. -g is
|
|
35
37
|
# intentionally dropped — full debug info on the large pybind11 + json
|
|
36
38
|
# translation units (converter.cpp is ~6k lines) balloons RAM during
|
|
37
39
|
# compile and OOM-kills CI runners (exit 143). Frame pointers are kept
|
|
38
40
|
# for usable backtraces. We REPLACE (not append) the flags so the -g in
|
|
39
41
|
# the default RelWithDebInfo flags is stripped too. For local debugging
|
|
40
42
|
# with symbols, re-add -g here.
|
|
41
|
-
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-
|
|
43
|
+
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -DNDEBUG -fno-omit-frame-pointer")
|
|
42
44
|
endif()
|
|
43
45
|
|
|
44
46
|
SET(MAS_DIRECTORY "${CMAKE_BINARY_DIR}/MAS/")
|
|
@@ -142,7 +144,7 @@ if(NOT LOCAL_MKF_MAS)
|
|
|
142
144
|
set(MKF_GIT_TAG "main"
|
|
143
145
|
CACHE STRING "MKF git ref for the vendored PyOM build")
|
|
144
146
|
# Force fresh clone by using a unique timestamp - update this when the pin changes
|
|
145
|
-
set(MKF_FORCE_REFRESH "2026-10-28-mkf-
|
|
147
|
+
set(MKF_FORCE_REFRESH "2026-10-28-mkf-ff429ce0")
|
|
146
148
|
# Tell MKF to disable matplotplusplus and use SVG-based Painter instead
|
|
147
149
|
set(INCLUDE_PYMKF ON CACHE BOOL "Build Python interface" FORCE)
|
|
148
150
|
# GIT_SUBMODULES_RECURSE pulls in CAS/PEAS (added 2026-04 alongside the
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pyopenmagnetics-1.7.38 → pyopenmagnetics-1.7.39}/tests/test_losses_not_evaluable_catalogue.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|