Python implementation of PME-toolkit with PME, PI-PME, and PD-PME workflows
Project description
PME-toolkit (Python)
Python implementation of PME-toolkit for design-space dimensionality reduction in parametric shape optimization.
Supports:
- PME (Parametric Model Embedding)
- PI-PME (Physics-Informed PME)
- PD-PME (Physics-Driven PME)
- analytical backmapping to original design variables
Overview
The Python package provides a fully functional implementation of PME-based workflows using a JSON-driven interface for reproducible studies.
It is aligned with the MATLAB implementation and validated through cross-language regression tests.
Installation
From PyPI
pip install pme-toolkit
From source (development mode)
pip install -e python/
Command-line interface
Run a PME case:
pme-run tests/cases/test_glider.json
Run backmapping:
pme-back tests/cases/test_glider_back.json
The CLI:
- parses the JSON configuration
- executes the PME workflow
- writes outputs to the specified
outdir - ensures consistency with MATLAB results
Programmatic usage
Example:
from pme_toolkit.model import fit_from_case
model = fit_from_case("tests/cases/test_glider.json")
print(model.nconf)
print(model.alpha_train.shape)
Repository integration
The Python implementation is part of the full PME-toolkit repository:
- shared JSON configuration format
- shared datasets
- shared benchmark definitions
- validated against MATLAB through regression testing
Testing
From repository root:
pytest tests/python -q
Test suite covers:
- configuration loading
- PME workflows
- backmapping
- regression against MATLAB reference
Datasets
-
lightweight test dataset:
tests/data/
-
benchmark datasets:
databases/
Status
The Python implementation is fully functional for PME, PI-PME, and PD-PME within the current scope.
It is actively maintained and serves as a production-ready interface for reproducible PME workflows.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pme_toolkit-1.2.0.tar.gz.
File metadata
- Download URL: pme_toolkit-1.2.0.tar.gz
- Upload date:
- Size: 31.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5a8bf1df9f31f11bc8704e5bc1d17a1dbc25879785fa9783dae3c337ea64cb23
|
|
| MD5 |
95f73b3ed776f9a3388020f9109a7a08
|
|
| BLAKE2b-256 |
0ec4c3a789d77e074a10b3026cf706ef8fd68a26aaf4d98ade85ec4b3c370e50
|
File details
Details for the file pme_toolkit-1.2.0-py3-none-any.whl.
File metadata
- Download URL: pme_toolkit-1.2.0-py3-none-any.whl
- Upload date:
- Size: 36.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
80b350979e45729dcad6340bff6bc56f459f11ac7f3bc750328307da9702337f
|
|
| MD5 |
64fe64b72332832d85b6af8ccb105b36
|
|
| BLAKE2b-256 |
c86ff34a7888bb38f1f8c41f786b74a857550610badd32f2427c5a5a42946aa7
|