# pyoptmat: statistical inference for material models
[![Run test suite](https://github.com/Argonne-National-Laboratory/pyoptmat/actions/workflows/tests.yml/badge.svg?branch=master)](https://github.com/Argonne-National-Laboratory/pyoptmat/actions/workflows/tests.yml) [![Documentation Status](https://readthedocs.org/projects/pyoptmat/badge/?version=stable)](https://pyoptmat.readthedocs.io/en/stable/)
pyoptmat is a package for calibrating statistical material
models to data. The package is based on [pytorch](https://pytorch.org/)
and [pyro](https://pyro.ai/) and provides a framework for using machine-learning
techniques to calibrate deterministic and statistical models against
experimental data.
A “material model” is mathematically a parameterized system of ordinary
differential equations which, integrated through the experimental conditions,
returns some simulated output that can be compared to the test measurements.
pyoptmat uses Bayesian inference with the pyro package to find statistical
distributions of the model parameters to explain the variation in the
experimental data.
As an example, consider a collection of tension test data on several samples
of a material. The test measurements have some variation caused by
manufacturing variability and uncertainty in the experimental controls and
measurements.
![Example of fitting a statistical model to data](doc/sphinx/figures/demonstration.png)
pyoptmat aims to make training a statistical model to capture these
variations easy. The image shows the results of training a simple material
model to the test data. The trained statistical model captures the
variability in the experimental data and can then be used to translate
this uncertainty to models of engineering components. Transferring
uncertainty quantified in experimental measurements to predictions of
uncertainty in engineering applications is the main reason pyoptmat was
developed.
The software is provided under an [MIT license](LICENSE). Full
documentation is available [here](https://pyoptmat.readthedocs.io).
Raw data
{
"_id": null,
"home_page": "https://github.com/Argonne-National-Laboratory/pyoptmat",
"name": "pyoptmat",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "materials inference modeling",
"author": "Argonne National Laboratory",
"author_email": "messner@anl.gov",
"download_url": "https://files.pythonhosted.org/packages/fd/42/bdcecca1866b134131e997748ef123cc97cbd32032ec9675148bb0dcd713/pyoptmat-1.3.5.tar.gz",
"platform": null,
"description": "# pyoptmat: statistical inference for material models \n\n[![Run test suite](https://github.com/Argonne-National-Laboratory/pyoptmat/actions/workflows/tests.yml/badge.svg?branch=master)](https://github.com/Argonne-National-Laboratory/pyoptmat/actions/workflows/tests.yml) [![Documentation Status](https://readthedocs.org/projects/pyoptmat/badge/?version=stable)](https://pyoptmat.readthedocs.io/en/stable/)\n\npyoptmat is a package for calibrating statistical material\nmodels to data. The package is based on [pytorch](https://pytorch.org/)\nand [pyro](https://pyro.ai/) and provides a framework for using machine-learning\ntechniques to calibrate deterministic and statistical models against\nexperimental data.\n\nA \u201cmaterial model\u201d is mathematically a parameterized system of ordinary \ndifferential equations which, integrated through the experimental conditions, \nreturns some simulated output that can be compared to the test measurements.\npyoptmat uses Bayesian inference with the pyro package to find statistical\ndistributions of the model parameters to explain the variation in the \nexperimental data.\n\nAs an example, consider a collection of tension test data on several samples \nof a material. The test measurements have some variation caused by \nmanufacturing variability and uncertainty in the experimental controls and \nmeasurements.\n\n![Example of fitting a statistical model to data](doc/sphinx/figures/demonstration.png)\n\npyoptmat aims to make training a statistical model to capture these \nvariations easy. The image shows the results of training a simple material \nmodel to the test data. The trained statistical model captures the \nvariability in the experimental data and can then be used to translate \nthis uncertainty to models of engineering components. Transferring \nuncertainty quantified in experimental measurements to predictions of \nuncertainty in engineering applications is the main reason pyoptmat was \ndeveloped.\n\nThe software is provided under an [MIT license](LICENSE). Full\ndocumentation is available [here](https://pyoptmat.readthedocs.io).\n\n\n",
"bugtrack_url": null,
"license": "",
"summary": "Statistical inference for material models",
"version": "1.3.5",
"project_urls": {
"Homepage": "https://github.com/Argonne-National-Laboratory/pyoptmat"
},
"split_keywords": [
"materials",
"inference",
"modeling"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "fd42bdcecca1866b134131e997748ef123cc97cbd32032ec9675148bb0dcd713",
"md5": "6ffeeb2fe0b9494b856fa6bd086c0dc9",
"sha256": "19e69c935a10f9b79d894079af54ef34de8f458dc649dcb22bf4a1c0062a0c6c"
},
"downloads": -1,
"filename": "pyoptmat-1.3.5.tar.gz",
"has_sig": false,
"md5_digest": "6ffeeb2fe0b9494b856fa6bd086c0dc9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 61582,
"upload_time": "2023-09-22T16:58:19",
"upload_time_iso_8601": "2023-09-22T16:58:19.468093Z",
"url": "https://files.pythonhosted.org/packages/fd/42/bdcecca1866b134131e997748ef123cc97cbd32032ec9675148bb0dcd713/pyoptmat-1.3.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-09-22 16:58:19",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Argonne-National-Laboratory",
"github_project": "pyoptmat",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "torch",
"specs": []
},
{
"name": "numpy",
"specs": []
},
{
"name": "scipy",
"specs": []
},
{
"name": "pyro-ppl",
"specs": []
},
{
"name": "tqdm",
"specs": []
},
{
"name": "matplotlib",
"specs": []
},
{
"name": "netCDF4",
"specs": []
},
{
"name": "pandas",
"specs": []
},
{
"name": "xarray",
"specs": []
},
{
"name": "xarray",
"specs": []
},
{
"name": "click",
"specs": [
[
"==",
"8.0.4"
]
]
},
{
"name": "black",
"specs": [
[
"==",
"22.1.0"
]
]
},
{
"name": "nose2",
"specs": []
},
{
"name": "pylint",
"specs": [
[
"==",
"2.15.5"
]
]
},
{
"name": "functorch",
"specs": []
}
],
"lcname": "pyoptmat"
}