Skip to content

Commit

Permalink
Merge pull request #1797 from pybamm-team/issue-1748-stress-induced-d…
Browse files Browse the repository at this point in the history
…iffusion

Issue 1748 stress induced diffusion
  • Loading branch information
rtimms committed Nov 12, 2021
2 parents 375fd53 + 58922b5 commit b7c2ae6
Show file tree
Hide file tree
Showing 26 changed files with 529 additions and 424 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

## Features

- Stress-induced diffusion is now a separate model option instead of being automatically included when using the particle mechanics submodels ([#1797](https://github.com/pybamm-team/PyBaMM/pull/1797))
- `Experiment`s with drive cycles can be solved ([#1793](https://github.com/pybamm-team/PyBaMM/pull/1793))
- Added surface area to volume ratio as a factor to the SEI equations ([#1790](https://github.com/pybamm-team/PyBaMM/pull/1790))
- Half-cell SPM and SPMe have been implemented ([#1731](https://github.com/pybamm-team/PyBaMM/pull/1731))
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
Base Fickian Diffusion
======================

.. autoclass:: pybamm.particle.no_distribution.BaseFickian
:members:
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ No Particle-Size Distribution
.. toctree::
:maxdepth: 1

base_fickian
fickian_diffusion
x_averaged_fickian_diffusion
polynomial_profile
Expand Down

Large diffs are not rendered by default.

27 changes: 17 additions & 10 deletions examples/notebooks/models/compare-particle-diffusion-models.ipynb

Large diffs are not rendered by default.

67 changes: 42 additions & 25 deletions examples/notebooks/models/submodel_cracking_DFN_or_SPM.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,9 @@
"metadata": {},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"output_type": "stream",
"text": [
"\u001b[33mWARNING: You are using pip version 21.0.1; however, version 21.1.2 is available.\n",
"You should consider upgrading via the '/Users/vsulzer/Documents/Energy_storage/PyBaMM/.tox/dev/bin/python -m pip install --upgrade pip' command.\u001b[0m\n",
"Note: you may need to restart the kernel to use updated packages.\n"
]
}
Expand Down Expand Up @@ -88,16 +86,18 @@
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "interactive(children=(FloatSlider(value=0.0, description='t', max=1.0, step=0.01), Output()), _dom_classes=('w…",
"application/vnd.jupyter.widget-view+json": {
"model_id": "52f025d6be294882b5d4f9eedb474c34",
"version_major": 2,
"version_minor": 0,
"model_id": "653353cedea84635a916a217d9826e3c"
}
"version_minor": 0
},
"text/plain": [
"interactive(children=(FloatSlider(value=0.0, description='t', max=1.0, step=0.01), Output()), _dom_classes=('w…"
]
},
"metadata": {}
"metadata": {},
"output_type": "display_data"
}
],
"source": [
Expand Down Expand Up @@ -125,16 +125,18 @@
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "interactive(children=(FloatSlider(value=0.0, description='t', max=3600.0, step=10.0), Output()), _dom_classes=…",
"application/vnd.jupyter.widget-view+json": {
"model_id": "1a4c62376c474449863e4837e971c34a",
"version_major": 2,
"version_minor": 0,
"model_id": "a5ed452d11ce494d83f30efec6b6abb4"
}
"version_minor": 0
},
"text/plain": [
"interactive(children=(FloatSlider(value=0.0, description='t', max=3600.0, step=10.0), Output()), _dom_classes=…"
]
},
"metadata": {}
"metadata": {},
"output_type": "display_data"
}
],
"source": [
Expand Down Expand Up @@ -190,16 +192,18 @@
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "interactive(children=(FloatSlider(value=0.0, description='t', max=1.0, step=0.01), Output()), _dom_classes=('w…",
"application/vnd.jupyter.widget-view+json": {
"model_id": "70f30cf8e80d4a7a9c671844decddcdb",
"version_major": 2,
"version_minor": 0,
"model_id": "dbe2842d65ad4cbd9d0efcaf97a50b57"
}
"version_minor": 0
},
"text/plain": [
"interactive(children=(FloatSlider(value=0.0, description='t', max=1.0, step=0.01), Output()), _dom_classes=('w…"
]
},
"metadata": {}
"metadata": {},
"output_type": "display_data"
}
],
"source": [
Expand Down Expand Up @@ -229,16 +233,29 @@
"metadata": {},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"output_type": "stream",
"text": [
"[1] Weilong Ai, Ludwig Kraft, Johannes Sturm, Andreas Jossen, and Billy Wu. Electrochemical thermal-mechanical modelling of stress inhomogeneity in lithium-ion pouch cells. Journal of The Electrochemical Society, 167(1):013512, 2019. doi:10.1149/2.0122001JES.\n[2] Joel A. E. Andersson, Joris Gillis, Greg Horn, James B. Rawlings, and Moritz Diehl. CasADi – A software framework for nonlinear optimization and optimal control. Mathematical Programming Computation, 11(1):1–36, 2019. doi:10.1007/s12532-018-0139-4.\n[3] Rutooj Deshpande, Mark Verbrugge, Yang-Tse Cheng, John Wang, and Ping Liu. Battery cycle life prediction with coupled chemical degradation and fatigue mechanics. Journal of the Electrochemical Society, 159(10):A1730, 2012. doi:10.1149/2.049210jes.\n[4] Marc Doyle, Thomas F. Fuller, and John Newman. Modeling of galvanostatic charge and discharge of the lithium/polymer/insertion cell. Journal of the Electrochemical society, 140(6):1526–1533, 1993. doi:10.1149/1.2221597.\n[5] Charles R. Harris, K. Jarrod Millman, Stéfan J. van der Walt, Ralf Gommers, Pauli Virtanen, David Cournapeau, Eric Wieser, Julian Taylor, Sebastian Berg, Nathaniel J. Smith, and others. Array programming with NumPy. Nature, 585(7825):357–362, 2020. doi:10.1038/s41586-020-2649-2.\n[6] Valentin Sulzer, Scott G. Marquis, Robert Timms, Martin Robinson, and S. Jon Chapman. Python Battery Mathematical Modelling (PyBaMM). ECSarXiv. February, 2020. doi:10.1149/osf.io/67ckj.\n\n"
"[1] Weilong Ai, Ludwig Kraft, Johannes Sturm, Andreas Jossen, and Billy Wu. Electrochemical thermal-mechanical modelling of stress inhomogeneity in lithium-ion pouch cells. Journal of The Electrochemical Society, 167(1):013512, 2019. doi:10.1149/2.0122001JES.\n",
"[2] Joel A. E. Andersson, Joris Gillis, Greg Horn, James B. Rawlings, and Moritz Diehl. CasADi – A software framework for nonlinear optimization and optimal control. Mathematical Programming Computation, 11(1):1–36, 2019. doi:10.1007/s12532-018-0139-4.\n",
"[3] Rutooj Deshpande, Mark Verbrugge, Yang-Tse Cheng, John Wang, and Ping Liu. Battery cycle life prediction with coupled chemical degradation and fatigue mechanics. Journal of the Electrochemical Society, 159(10):A1730, 2012. doi:10.1149/2.049210jes.\n",
"[4] Marc Doyle, Thomas F. Fuller, and John Newman. Modeling of galvanostatic charge and discharge of the lithium/polymer/insertion cell. Journal of the Electrochemical society, 140(6):1526–1533, 1993. doi:10.1149/1.2221597.\n",
"[5] Charles R. Harris, K. Jarrod Millman, Stéfan J. van der Walt, Ralf Gommers, Pauli Virtanen, David Cournapeau, Eric Wieser, Julian Taylor, Sebastian Berg, Nathaniel J. Smith, and others. Array programming with NumPy. Nature, 585(7825):357–362, 2020. doi:10.1038/s41586-020-2649-2.\n",
"[6] Valentin Sulzer, Scott G. Marquis, Robert Timms, Martin Robinson, and S. Jon Chapman. Python Battery Mathematical Modelling (PyBaMM). Journal of Open Research Software, 9(1):14, 2021. doi:10.5334/jors.309.\n",
"\n"
]
}
],
"source": [
"pybamm.print_citations()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
Expand All @@ -257,7 +274,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.8"
"version": "3.8.12"
},
"toc": {
"base_numbering": 1,
Expand All @@ -275,4 +292,4 @@
},
"nbformat": 4,
"nbformat_minor": 2
}
}
Loading

0 comments on commit b7c2ae6

Please sign in to comment.