Skip to content

Commit

Permalink
Merge pull request #1287 from DrSOKane/LithiumPlating
Browse files Browse the repository at this point in the history
Lithium plating
  • Loading branch information
brosaplanella committed Feb 3, 2021
2 parents ee3d67c + 145d9a0 commit 7fb6040
Show file tree
Hide file tree
Showing 35 changed files with 1,562 additions and 75 deletions.
2 changes: 1 addition & 1 deletion examples/notebooks/compare-ecker-data.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -266,4 +266,4 @@
},
"nbformat": 4,
"nbformat_minor": 2
}
}
505 changes: 505 additions & 0 deletions examples/notebooks/lithium-plating.ipynb

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -274,4 +274,4 @@
},
"nbformat": 4,
"nbformat_minor": 2
}
}
135 changes: 64 additions & 71 deletions examples/notebooks/using-submodels.ipynb

Large diffs are not rendered by default.

6 changes: 6 additions & 0 deletions examples/scripts/custom_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,12 @@
] = pybamm.electrolyte_conductivity.LeadingOrder(model.param)
model.submodels["negative sei"] = pybamm.sei.NoSEI(model.param, "Negative")
model.submodels["positive sei"] = pybamm.sei.NoSEI(model.param, "Positive")
model.submodels[
"negative lithium plating"
] = pybamm.lithium_plating.NoPlating(model.param, "Negative")
model.submodels[
"positive lithium plating"
] = pybamm.lithium_plating.NoPlating(model.param, "Positive")

# build model
model.build_model()
Expand Down
26 changes: 26 additions & 0 deletions pybamm/CITATIONS.txt
Original file line number Diff line number Diff line change
Expand Up @@ -310,6 +310,32 @@ primaryClass = {physics.app-ph},
doi = {10.1149/2.0281914jes},
}

@article{OKane2020,
doi = {10.1149/1945-7111/ab90ac},
url = {https://doi.org/10.1149/1945-7111/ab90ac},
year = {2020},
month = {may},
publisher = {The Electrochemical Society},
volume = {167},
number = {9},
pages = {090540},
author = {Simon E. J. O'Kane and Ian D. Campbell and Mohamed W. J. Marzook and Gregory J. Offer and Monica Marinescu},
title = {Physical Origin of the Differential Voltage Minimum Associated with Lithium Plating in Li-Ion Batteries},
journal = {Journal of The Electrochemical Society}
}

@article{Ren2018,
author={Ren, Dongsheng and Smith, Kandler and Guo, Dongxu and Han, Xuebing and Feng, Xuning and Lu, Languang and Ouyang, Minggao},
title={Investigation of Lithium Plating-Stripping Process in Li-Ion Batteries at Low Temperature Using an Electrochemical Model},
journal={Journal of the Electrochemistry Society},
year={2018},
volume={165},
pages={A2167-A2178},
publisher={The Electrochemical Society},
doi={10.1149/2.0661810jes}
}


@article{Wang2002,
title = {Spectral (Finite) Volume Method for Conservation Laws on Unstructured Grids},
author = {Wang, Z. J.},
Expand Down
1 change: 1 addition & 0 deletions pybamm/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,7 @@ def version(formatted=False):
particle_cracking,
)
from .models.submodels.interface import sei
from .models.submodels.interface import lithium_plating

#
# Geometry
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# LG M50 Graphite anode parameters

Parameters for a LG M50 graphite anode, from the paper

> Chang-Hui Chen, Ferran Brosa Planella, Kieran O’Regan, Dominika Gastol, W. Dhammika Widanage, and Emma Kendrick. ["Development of Experimental Techniques for Parameterization of Multi-scale Lithium-ion Battery Models."](https://iopscience.iop.org/article/10.1149/1945-7111/ab9050) Journal of the Electrochemical Society 167 (2020): 080534
and references therein.

Speculative parameters for lithium plating have also been added.
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
from pybamm import exp, constants


def graphite_LGM50_diffusivity_Chen2020(sto, T):
"""
LG M50 Graphite diffusivity as a function of stochiometry, in this case the
diffusivity is taken to be a constant. The value is taken from [1].
References
----------
.. [1] Chang-Hui Chen, Ferran Brosa Planella, Kieran O’Regan, Dominika Gastol, W.
Dhammika Widanage, and Emma Kendrick. "Development of Experimental Techniques for
Parameterization of Multi-scale Lithium-ion Battery Models." Journal of the
Electrochemical Society 167 (2020): 080534.
Parameters
----------
sto: :class:`pybamm.Symbol`
Electrode stochiometry
T: :class:`pybamm.Symbol`
Dimensional temperature
Returns
-------
:class:`pybamm.Symbol`
Solid diffusivity
"""

D_ref = 3.3e-14
E_D_s = 3.03e4
# E_D_s not given by Chen et al (2020), so taken from Ecker et al. (2015) instead
arrhenius = exp(E_D_s / constants.R * (1 / 298.15 - 1 / T))

return D_ref * arrhenius
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
from pybamm import exp, constants, Parameter


def graphite_LGM50_electrolyte_exchange_current_density_Chen2020(c_e, c_s_surf, T):
"""
Exchange-current density for Butler-Volmer reactions between graphite and LiPF6 in
EC:DMC.
References
----------
.. [1] Chang-Hui Chen, Ferran Brosa Planella, Kieran O’Regan, Dominika Gastol, W.
Dhammika Widanage, and Emma Kendrick. "Development of Experimental Techniques for
Parameterization of Multi-scale Lithium-ion Battery Models." Journal of the
Electrochemical Society 167 (2020): 080534.
Parameters
----------
c_e : :class:`pybamm.Symbol`
Electrolyte concentration [mol.m-3]
c_s_surf : :class:`pybamm.Symbol`
Particle concentration [mol.m-3]
T : :class:`pybamm.Symbol`
Temperature [K]
Returns
-------
:class:`pybamm.Symbol`
Exchange-current density [A.m-2]
"""

m_ref = 6.48e-7 # (A/m2)(mol/m3)**1.5 - includes ref concentrations
E_r = 35000
arrhenius = exp(E_r / constants.R * (1 / 298.15 - 1 / T))

c_n_max = Parameter("Maximum concentration in negative electrode [mol.m-3]")

return (
m_ref * arrhenius * c_e ** 0.5 * c_s_surf ** 0.5 * (c_n_max - c_s_surf) ** 0.5
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,243 @@
# OCP data for LG M50 graphite anode
# sto,ocp
# extra point to avoid extrapolation
0,1.81772748379334
# experimentally measured data
0.0312962309919435,1.08288070000000
0.0349990174231383,0.995937940000000
0.0387017984426739,0.900233980000000
0.0424045760400907,0.796494310000000
0.0461073567667969,0.733544290000000
0.0498101472864833,0.666643140000000
0.0535129169550513,0.641371490000000
0.0572156800080452,0.598138690000000
0.0609184495648372,0.567083600000000
0.0646212178896581,0.547461810000000
0.0683239899372943,0.530683990000000
0.0720267516206726,0.513047340000000
0.0757295119643203,0.493940920000000
0.0794322723972667,0.479262740000000
0.0831350309398288,0.460652590000000
0.0868377862970441,0.459927260000000
0.0905405444092937,0.438015010000000
0.0942433124962634,0.424386650000000
0.0979460700715639,0.411502690000000
0.101648825029857,0.400336590000000
0.105351579051700,0.389571340000000
0.109054336366249,0.377565380000000
0.112757097430127,0.362925410000000
0.116459849153289,0.343570860000000
0.120162608086248,0.340631400000000
0.123865356984332,0.322994680000000
0.127568112208028,0.313794580000000
0.131270864460474,0.307953860000000
0.134973620696607,0.292073190000000
0.138676382618935,0.286976870000000
0.142379130218803,0.274054770000000
0.146081890204289,0.267049700000000
0.149784649866357,0.258574930000000
0.153487405398072,0.252657830000000
0.157190175658005,0.248267770000000
0.160892939040625,0.241434500000000
0.164595700624986,0.233627780000000
0.168298470128353,0.229562180000000
0.172001223759462,0.223702360000000
0.175703987585269,0.221812710000000
0.179406738528351,0.220896510000000
0.183109501186799,0.219426800000000
0.186812285743759,0.218300640000000
0.190515043988865,0.218453330000000
0.194217798449951,0.217537150000000
0.197920560933317,0.217193570000000
0.201623337530448,0.216353730000000
0.205326099907333,0.216678220000000
0.209028863421514,0.217384440000000
0.212731637811268,0.214693130000000
0.216434400018689,0.215418460000000
0.220137158758552,0.214654950000000
0.223839932905728,0.213547900000000
0.227542704859571,0.213929640000000
0.231245472941435,0.210742060000000
0.234948246608884,0.208737880000000
0.238651007030528,0.204653190000000
0.242353771096756,0.202057320000000
0.246056534779736,0.197743580000000
0.249759296042551,0.194441470000000
0.253462075305427,0.191902850000000
0.257164855541649,0.188505310000000
0.260867623398810,0.185813990000000
0.264570388343682,0.183275370000000
0.268273141960127,0.181576590000000
0.271975899008113,0.178140880000000
0.275678670804876,0.175296860000000
0.279381437563501,0.171937500000000
0.283084208890615,0.169341610000000
0.286786983838099,0.167566490000000
0.290489741421874,0.166096760000000
0.294192511321947,0.164149850000000
0.297895287824777,0.162603780000000
0.301598064066139,0.162241130000000
0.305300829766264,0.160027000000000
0.309003605818808,0.158270960000000
0.312706366234020,0.158805400000000
0.316409128935726,0.155522380000000
0.320111892208735,0.155808690000000
0.323814657710233,0.152201180000000
0.327517439807890,0.151113200000000
0.331220205464159,0.149872530000000
0.334922968466154,0.148746370000000
0.338625750725335,0.146780370000000
0.342328527763104,0.146207760000000
0.346031309868876,0.145558790000000
0.349734084397854,0.143898190000000
0.353436854897322,0.143592790000000
0.357139627707061,0.142428460000000
0.360842411597988,0.140386120000000
0.364545174861915,0.138820960000000
0.368247948241878,0.139546280000000
0.371950714867844,0.139469920000000
0.375653482399388,0.137809340000000
0.379356259818551,0.139737140000000
0.383059044551139,0.136988580000000
0.386761819665088,0.135232540000000
0.390464596573676,0.134411780000000
0.394167374371778,0.135289800000000
0.397870146744550,0.135079850000000
0.401572911082096,0.136473210000000
0.405275673810652,0.136015120000000
0.408978444047454,0.134354520000000
0.412681205117036,0.133476500000000
0.416383982346429,0.134831700000000
0.420086760850234,0.132751180000000
0.423789528171715,0.132865710000000
0.427492295549261,0.132636670000000
0.431195060865253,0.134564470000000
0.434897836788305,0.134717180000000
0.438600610939060,0.133953690000000
0.442303381655562,0.134488140000000
0.446006148119762,0.133476500000000
0.449708925504862,0.132980230000000
0.453411684191202,0.132598490000000
0.457114440916438,0.133381070000000
0.460817193028781,0.133094760000000
0.464519943384457,0.132751180000000
0.468222694005807,0.134430870000000
0.471925449273306,0.133152020000000
0.475628214901007,0.132713000000000
0.479330982475788,0.133018400000000
0.483033746549207,0.132789360000000
0.486736511451955,0.132254910000000
0.490439263445418,0.133171110000000
0.494142032545160,0.132636670000000
0.497844816626510,0.131873160000000
0.501547587896339,0.132655740000000
0.505250356183052,0.132503050000000
0.508953105923419,0.133247450000000
0.512655855186197,0.132044960000000
0.516358614974852,0.132426690000000
0.520061385641280,0.132331270000000
0.523764153672818,0.131987690000000
0.527466921773724,0.132541220000000
0.531169691411363,0.131453250000000
0.534872451405134,0.132980230000000
0.538575207372981,0.131682290000000
0.542277974391093,0.131357800000000
0.545980740352798,0.132350360000000
0.549683501204733,0.131205110000000
0.553386270215891,0.130899710000000
0.557089019988434,0.131090580000000
0.560791784265352,0.130823360000000
0.564494537080197,0.130117130000000
0.568197299191212,0.129869000000000
0.571900057449854,0.129926260000000
0.575602818473649,0.129429980000000
0.579305581898489,0.127960260000000
0.583008351078542,0.128628310000000
0.586711119160506,0.126566890000000
0.590413885866284,0.127349470000000
0.594116641691466,0.125097160000000
0.597819411981392,0.121107910000000
0.601522182187787,0.118397510000000
0.605224955391117,0.112442260000000
0.608927723682774,0.113072140000000
0.612630478412401,0.109216500000000
0.616333249893282,0.106830580000000
0.620036027033193,0.104330140000000
0.623738797952401,0.105303590000000
0.627441562394607,0.100569930000000
0.631144325925059,0.0995010440000000
0.634847114512325,0.0985466760000000
0.638549884221743,0.0992147330000000
0.642252650586067,0.0954163520000000
0.645955430101924,0.0998064350000000
0.649658231687418,0.0986611990000000
0.653361004502960,0.0956072210000000
0.657063774662737,0.0975541320000000
0.660766563716793,0.0961225850000000
0.664469339353229,0.0943092850000000
0.668172119080598,0.0966188540000000
0.671874891156802,0.0936603170000000
0.675577670252883,0.0952254760000000
0.679280441499295,0.0953590870000000
0.682983220191922,0.0931640420000000
0.686686001640506,0.0945001620000000
0.690388778900278,0.0930876960000000
0.694091555474028,0.0934312640000000
0.697794325005044,0.0932403950000000
0.701497093656894,0.0935076180000000
0.705199875232905,0.0933930950000000
0.708902639071993,0.0929159080000000
0.712605404436496,0.0930304300000000
0.716308184771416,0.0926295970000000
0.720010954088915,0.0932403950000000
0.723713711354927,0.0926105160000000
0.727416483536807,0.0924959850000000
0.731119252071337,0.0924005510000000
0.734822035630127,0.0925341620000000
0.738524799807680,0.0920951520000000
0.742227568105003,0.0923432860000000
0.745930339816929,0.0936603170000000
0.749633118921535,0.0933358300000000
0.753335891546580,0.0932213070000000
0.757038684517004,0.0926486850000000
0.760741459961769,0.0925341620000000
0.764444224136151,0.0924387280000000
0.768146984167905,0.0923051160000000
0.771849759741077,0.0931067840000000
0.775552533080109,0.0916561480000000
0.779255307772044,0.0915988830000000
0.782958072926225,0.0920760630000000
0.786660852552783,0.0917515830000000
0.790363639414952,0.0917706710000000
0.794066406798143,0.0923623740000000
0.797769180570730,0.0924196390000000
0.801471972061922,0.0932022180000000
0.805174740205057,0.0919997170000000
0.808877513470830,0.0916752290000000
0.812580278330776,0.0932213070000000
0.816283043054478,0.0919042830000000
0.819985807095308,0.0916752290000000
0.823688581889439,0.0928586500000000
0.827391362903273,0.0918088410000000
0.831094111514778,0.0915034490000000
0.834796875363559,0.0918661060000000
0.838499653966946,0.0920188050000000
0.842202418107843,0.0932022180000000
0.845905185427703,0.0913125720000000
0.849607966269499,0.0911789610000000
0.853310746424072,0.0913316610000000
0.857013527063463,0.0908926500000000
0.860716308996327,0.0905872510000000
0.864419073626463,0.0905109050000000
0.868121860558204,0.0903391170000000
0.871824644664188,0.0904154700000000
0.875527415820355,0.0911216960000000
0.879230192607003,0.0894611030000000
0.882932957631799,0.0899955480000000
0.886635727806255,0.0892129690000000
0.890338494102966,0.0888121280000000
0.894041256363904,0.0879722910000000
0.897744036942199,0.0870942700000000
0.901446800739041,0.0850328360000000
# extra point to avoid extrapolation
1,0.0760153081792987
Loading

0 comments on commit 7fb6040

Please sign in to comment.