Skip to content

Commit

Permalink
pybamm-team#1048 added base Landesfeind functions
Browse files Browse the repository at this point in the history
  • Loading branch information
brosaplanella committed Jun 23, 2020
1 parent db2f502 commit 583fd6f
Show file tree
Hide file tree
Showing 6 changed files with 151 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# LiPF6 in solvent_X electrolyte parameters

Functional forms for which parameters are fitted for a LiPF6 in solvent_X electrolyte, from the paper

> Johannes Landesfeind and Hubert A. Gasteiger, ["Temperature and Concentration Dependence of the Ionic Transport Properties of Lithium-Ion Battery Electrolytes."](https://iopscience.iop.org/article/10.1149/2.0571912jes) Journal of the Electrochemical Society 166 (2019): A3079.
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
from .electrolyte_conductivity_base_Landesfeind2019 import (
electrolyte_conductivity_base_Landesfeind2019,
)
from .electrolyte_diffusivity_base_Landesfeind2019 import (
electrolyte_diffusivity_base_Landesfeind2019,
)
from .electrolyte_TDF_base_Landesfeind2019 import electrolyte_TDF_base_Landesfeind2019
from .electrolyte_transference_number_base_Landesfeind2019 import (
electrolyte_transference_number_base_Landesfeind2019,
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
def electrolyte_TDF_base_Landesfeind2019(c_e, T, coeffs):
"""
Thermodynamic factor (TDF) of LiPF6 in solvent_X as a function of ion concentration
and temperature. The data comes from [1].
References
----------
.. [1] Landesfeind, J. and Gasteiger, H.A., 2019. Temperature and Concentration
Dependence of the Ionic Transport Properties of Lithium-Ion Battery Electrolytes.
Journal of The Electrochemical Society, 166(14), pp.A3079-A3097.
----------
c_e: :class:`pybamm.Symbol`
Dimensional electrolyte concentration
T: :class:`pybamm.Symbol`
Dimensional temperature
coeffs: :class:`pybamm.Symbol`
Fitting parameter coefficients
Returns
-------
:class:`pybamm.Symbol`
Electrolyte thermodynamic factor
"""
c = c_e / 1000 # mol.m-3 -> mol.l
p1, p2, p3, p4, p5, p6, p7, p8, p9 = coeffs
tdf = (
p1
+ p2 * c
+ p3 * T
+ p4 * c ** 2
+ p5 * c * T
+ p6 * T ** 2
+ p7 * c ** 3
+ p8 * c ** 2 * T
+ p9 * c * T ** 2
)

return tdf
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
from pybamm import exp, sqrt


def electrolyte_conductivity_base_Landesfeind2019(c_e, T, coeffs):
"""
Conductivity of LiPF6 in solvent_X as a function of ion concentration and
temperature. The data comes from [1].
References
----------
.. [1] Landesfeind, J. and Gasteiger, H.A., 2019. Temperature and Concentration
Dependence of the Ionic Transport Properties of Lithium-Ion Battery Electrolytes.
Journal of The Electrochemical Society, 166(14), pp.A3079-A3097.
----------
c_e: :class:`pybamm.Symbol`
Dimensional electrolyte concentration
T: :class:`pybamm.Symbol`
Dimensional temperature
coeffs: :class:`pybamm.Symbol`
Fitting parameter coefficients
Returns
-------
:class:`pybamm.Symbol`
Electrolyte conductivity
"""
c = c_e / 1000 # mol.m-3 -> mol.l
p1, p2, p3, p4, p5, p6 = coeffs
A = p1 * (1 + (T - p2))
B = 1 + p3 * sqrt(c) + p4 * (1 + p5 * exp(1000 / T)) * c
C = 1 + c ** 4 * (p6 * exp(1000 / T))
sigma_e = A * c * B / C # mS.cm-1

return sigma_e / 10
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
from pybamm import exp


def electrolyte_diffusivity_base_Landesfeind2019(c_e, T, coeffs):
"""
Diffusivity of LiPF6 in solvent_X as a function of ion concentration and
temperature. The data comes from [1].
References
----------
.. [1] Landesfeind, J. and Gasteiger, H.A., 2019. Temperature and Concentration
Dependence of the Ionic Transport Properties of Lithium-Ion Battery Electrolytes.
Journal of The Electrochemical Society, 166(14), pp.A3079-A3097.
----------
c_e: :class:`pybamm.Symbol`
Dimensional electrolyte concentration
T: :class:`pybamm.Symbol`
Dimensional temperature
coeffs: :class:`pybamm.Symbol`
Fitting parameter coefficients
Returns
-------
:class:`pybamm.Symbol`
Electrolyte diffusivity
"""
c = c_e / 1000 # mol.m-3 -> mol.l
p1, p2, p3, p4 = coeffs
A = p1 * exp(p2 * c)
B = exp(p3 / T)
C = exp(p4 * c / T)
D_e = A * B * C * 1e-10 # m2/s

return D_e
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
def electrolyte_transference_number_base_Landesfeind2019(c_e, T, coeffs):
"""
Transference number of LiPF6 in solvent_X as a function of ion concentration and
temperature. The data comes from [1].
References
----------
.. [1] Landesfeind, J. and Gasteiger, H.A., 2019. Temperature and Concentration
Dependence of the Ionic Transport Properties of Lithium-Ion Battery Electrolytes.
Journal of The Electrochemical Society, 166(14), pp.A3079-A3097.
----------
c_e: :class:`pybamm.Symbol`
Dimensional electrolyte concentration
T: :class:`pybamm.Symbol`
Dimensional temperature
coeffs: :class:`pybamm.Symbol`
Fitting parameter coefficients
Returns
-------
:class:`pybamm.Symbol`
Electrolyte transference number
"""
c = c_e / 1000 # mol.m-3 -> mol.l
p1, p2, p3, p4, p5, p6, p7, p8, p9 = coeffs
tplus = (
p1
+ p2 * c
+ p3 * T
+ p4 * c ** 2
+ p5 * c * T
+ p6 * T ** 2
+ p7 * c ** 3
+ p8 * c ** 2 * T
+ p9 * c * T ** 2
)

return tplus

0 comments on commit 583fd6f

Please sign in to comment.