Dymoval is a Python package for analyzing measurements data and validate models.
Project description
Build status
Tools
What is it?
Dymoval is a Python package for analyzing measurement data and validating models.
Dymoval validates models based only on measurements and simulated data, and it is completely independent of the used modeling tool. That means that it does not matter if a model has been developed with Simulink, Modelica, etc., dymoval will only look at the produced data from the model.
If you are tracking your models changes in a CI/CD environment, then dymoval API can be easily used to run tests in Jenkins or GitHub Actions pipelines as it enables unit-testing on models.
Finally, dymoval provides a number of functions for for handling measurements data, addressing common issues such as noise, missing data, and varying sampling intervals.
Installation
Dymoval exists on both pip and conda, so you can choose between the
following:
pip install dymoval
conda install -c conda-forge dymoval
Getting started
Suppose you want to validate a model and you have the simulated out y_sim
the measured input u_meas, and the measured out y_meas time-series sampled
with period sampled_period. Just call the following function:
from dymoval.validation import validate_models
validate_models(
measured_in=u_meas,
measured_out=y_meas,
simulated_out=y_sim,
sampling_period = sampling_period
)
to get something like the following:
Input whiteness (abs_mean-max) 0.3532
R-Squared (%) 65.9009
Residuals whiteness (abs_mean-max) 0.1087
Input-Res whiteness (abs_mean-max) 0.2053
My_Model
Outcome: PASS
Congrats! Your model passed the test!
But what if the test didn't pass? Don't worry, it might not be the model's fault.
For example, you could be dealing with noisy measurements, over-sampled signals, missing data, and other factors that might affect the results. Take a look at the tutorial to learn how to address such issues:
import dymoval as dmv
dmv.open_tutorial()
The above commands create a dymoval_tutorial folder containing all the files
needed to run the tutorial in your home folder. All you have to do is to run
Jupyter notebook named dymoval_tutorial.ipynb. You need an app for opening
.ipynb files.
And if you want to discover more on model validation and Dymoval check out the docs.
Main Features
Model validation
- Validation metrics:
- R-square fit
- Residuals auto-correlation statistics
- Input-Residuals cross-correlation statistics
- Coverage region
- MIMO models
- Independence of the modeling tool used.
- API suitable for model unit-tests
Measurement data analysis and manipulation
- Time and frequency analysis
- Easy plotting
- Missing data handling
- Linear filtering
- Means and offsets removal
- Re-sampling
- Physical units
License
Dymoval is licensed under BSD 3 license.
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
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 dymoval-0.9.0.tar.gz.
File metadata
- Download URL: dymoval-0.9.0.tar.gz
- Upload date:
- Size: 4.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: pdm/2.21.0 CPython/3.11.3 Darwin/24.1.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f843cfe24388ec4cf27f92335114511917697445f9aa3ce4da8fbafba9851462
|
|
| MD5 |
f480389e60824c10e82e8468114bbcdc
|
|
| BLAKE2b-256 |
2656fa03101ce74aa407ed77daa6c9748d420ccd52cafd6283433b90bd8f8aad
|
File details
Details for the file dymoval-0.9.0-py3-none-any.whl.
File metadata
- Download URL: dymoval-0.9.0-py3-none-any.whl
- Upload date:
- Size: 4.5 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: pdm/2.21.0 CPython/3.11.3 Darwin/24.1.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1da92f0b7f62ad93f17277ad3fa13a5f14988e3c45008baa7d457c51f47c1cb1
|
|
| MD5 |
744659142afaca2fb166d1a54065a7a8
|
|
| BLAKE2b-256 |
19b527692639fc3b57625ed90e2c343f8090ee81387eb7550b62f63c2ac12083
|