Skip to content

Commit c616bd5

Browse files
committed
#729 setting up tests for ecker set
1 parent da2b416 commit c616bd5

File tree

10 files changed

+107
-45
lines changed

10 files changed

+107
-45
lines changed

input/parameters/lithium-ion/anodes/graphite_Ecker2015/parameters.csv

+3-1
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,10 @@ Negative electrode OCP [V],[data]graphite_ocp_Ecker2015,,
1010
# Microstructure,,,
1111
Negative electrode porosity,0.329,,
1212
Negative particle radius [m],1.37E-05,,
13+
Negative particle distribution in x,1,,
1314
Negative electrode surface area density [m-1],81548,,
14-
Negative electrode Bruggeman coefficient,N/A,,
15+
Negative electrode Bruggeman coefficient (electrolyte),1.5,Ecker paper uses tortuosity measurment instead,
16+
Negative electrode Bruggeman coefficient (electrode),1.5,Ecker paper uses tortuosity measurment instead,
1517
,,,
1618
# Interfacial reactions,,,
1719
Negative electrode cation signed stoichiometry,-1,,

input/parameters/lithium-ion/cathodes/LiNiCoO2_Ecker2015/lico2_ocp_Dualfoil1998.py

-39
This file was deleted.

input/parameters/lithium-ion/cathodes/LiNiCoO2_Ecker2015/nco_electrolyte_reaction_rate_Ecker2015.py

+8-3
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,18 @@
11
import autograd.numpy as np
22

33

4-
def lico2_electrolyte_reaction_rate_Dualfoil1998(T, T_inf, E_r, R_g):
4+
def nco_electrolyte_reaction_rate_Ecker2015(T, T_inf, E_r, R_g):
55
"""
6-
Reaction rate for Butler-Volmer reactions between lico2 and LiPF6 in EC:DMC.
6+
Reaction rate for Butler-Volmer reactions between LiNiCoO2 and LiPF6 in EC:DMC [1, 2].
77
88
References
99
----------
10-
.. [2] http://www.cchem.berkeley.edu/jsngrp/fortran.html
10+
.. [1] Ecker, Madeleine, et al. "Parameterization of a physico-chemical model of
11+
a lithium-ion battery i. determination of parameters." Journal of the
12+
Electrochemical Society 162.9 (2015): A1836-A1848.
13+
.. [2] Ecker, Madeleine, et al. "Parameterization of a physico-chemical model of
14+
a lithium-ion battery ii. model validation." Journal of The Electrochemical
15+
Society 162.9 (2015): A1849-A1857.
1116
1217
Parameters
1318
----------

input/parameters/lithium-ion/cathodes/LiNiCoO2_Ecker2015/parameters.csv

+3-1
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,10 @@ Positive electrode OCP [V],[data]nco_ocp_Ecker2015,,
1010
# Microstructure,,,
1111
Positive electrode porosity,0.296,,
1212
Positive particle radius [m],1E-05,,
13+
Positive particle distribution in x,1,,
1314
Positive electrode surface area density [m-1],188455,,
14-
Positive electrode Bruggeman coefficient,N/A,,
15+
Positive electrode Bruggeman coefficient (electrolyte),1.5,Ecker paper uses tortuosity measurment instead,
16+
Positive electrode Bruggeman coefficient (electrode),1.5, Ecker paper uses tortuosity measurment instead,
1517
,,,
1618
# Interfacial reactions,,,
1719
Positive electrode cation signed stoichiometry,-1,,

input/parameters/lithium-ion/cells/kokam_Ecker2015/parameters.csv

+2-1
Original file line numberDiff line numberDiff line change
@@ -33,4 +33,5 @@ Negative current collector thermal conductivity [W.m-1.K-1],N/A,,
3333
Positive current collector thermal conductivity [W.m-1.K-1],N/A,,
3434
,,,
3535
# Electrical,,,
36-
Cell capacity [A.h],N/A,,
36+
Cell capacity [A.h],0.326,,7.5 [A.h] cell with 23 layers
37+
Typical current [A],0.325,,1C current
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# 1C discharge from full
2+
3+
Discharge lithium-ion battery from full charge at 1C, using the initial conditions from the paper
4+
5+
>Ecker, Madeleine, et al. "Parameterization of a physico-chemical model of a lithium-ion battery II. Model validation." Journal of The Electrochemical Society 162.9 (2015): A1849-A1857..
6+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
Name [units],Value,Reference,Notes
2+
# Empty rows and rows starting with ‘#’ will be ignored,,,
3+
,,,
4+
# Temperature
5+
Reference temperature [K],296.15,23C,
6+
Heat transfer coefficient [W.m-2.K-1],N/A,,
7+
,,,
8+
# Electrical
9+
Number of electrodes connected in parallel to make a cell,1,,
10+
Number of cells connected in series to make a battery,1,,
11+
Lower voltage cut-off [V],2.8,,
12+
Upper voltage cut-off [V],4.7,,
13+
C-rate,1,,
14+
,,,
15+
# Initial conditions
16+
Initial concentration in negative electrode [mol.m-3], 26356,
17+
Initial concentration in positive electrode [mol.m-3], 2197,,
18+
Initial concentration in electrolyte [mol.m-3],1000,,
19+
Initial temperature [K],296.15,,

pybamm/parameters/parameter_sets.py

+13
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111
Chapman. "An asymptotic derivation of a single particle model with electrolyte."
1212
`arXiv preprint arXiv:1905.12553 <https://arxiv.org/abs/1905.12553>`_ (2019).
1313
14+
Ecker2015
15+
Ecker, Madeleine, et al. "Parameterization of a physico-chemical model of a lithium-ion battery i. determination of parameters." Journal of the Electrochemical Society 162.9 (2015): A1836-A1848.
16+
Ecker, Madeleine, et al. "Parameterization of a physico-chemical model of a lithium-ion battery II. Model validation." Journal of The Electrochemical Society 162.9 (2015): A1849-A1857.
1417
1518
Lead-acid
1619
---------
@@ -34,6 +37,16 @@
3437
"experiment": "1C_discharge_from_full_Marquis2019",
3538
}
3639

40+
Ecker2015 = {
41+
"chemistry": "lithium-ion",
42+
"cell": "kokam_Ecker2015",
43+
"anode": "graphite_Ecker2015",
44+
"separator": "separator_Ecker2015",
45+
"cathode": "LiNiCoO2_Ecker2015",
46+
"electrolyte": "lipf6_Ecker2015",
47+
"experiment": "1C_discharge_from_full_Ecker2015",
48+
}
49+
3750
#
3851
# Lead-acid
3952
#

tests/unit/test_parameters/test_parameter_sets/__init__.py

Whitespace-only changes.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
#
2+
# Test the Ecker 2015 NCO cell parameter set
3+
#
4+
import pybamm
5+
import numbers
6+
import unittest
7+
import numpy as np
8+
9+
10+
class TestEcker(unittest.TestCase):
11+
def test_load_params(self):
12+
anode = pybamm.ParameterValues({}).read_parameters_csv(
13+
"input/parameters/lithium-ion/anodes/graphite_Ecker2015/parameters.csv"
14+
)
15+
self.assertEqual(anode["Reference temperature [K]"], "296.15")
16+
17+
cathode = pybamm.ParameterValues({}).read_parameters_csv(
18+
"input/parameters/lithium-ion/cathodes/LiNiCoO2_Ecker2015/parameters.csv"
19+
)
20+
self.assertEqual(cathode["Reference temperature [K]"], "296.15")
21+
22+
electrolyte = pybamm.ParameterValues({}).read_parameters_csv(
23+
"input/parameters/lithium-ion/electrolytes/lipf6_Ecker2015/parameters.csv"
24+
)
25+
self.assertEqual(electrolyte["Reference temperature [K]"], "296.15")
26+
27+
cell = pybamm.ParameterValues({}).read_parameters_csv(
28+
"input/parameters/lithium-ion/cells/kokam_Ecker2015/parameters.csv"
29+
)
30+
self.assertAlmostEqual(
31+
cell["Negative current collector thickness [m]"], 1.4 * 10 ** (-5)
32+
)
33+
34+
def test_standard_lithium_parameters(self):
35+
36+
parameter_values = pybamm.ParameterValues(
37+
chemistry=pybamm.parameter_sets.Ecker2015
38+
)
39+
model = pybamm.lithium_ion.DFN()
40+
sim = pybamm.Simulation(model, parameter_values=parameter_values)
41+
sim.set_parameters()
42+
43+
# sim.build()
44+
45+
46+
if __name__ == "__main__":
47+
print("Add -v for more debug output")
48+
import sys
49+
50+
if "-v" in sys.argv:
51+
debug = True
52+
pybamm.settings.debug_mode = True
53+
unittest.main()

0 commit comments

Comments
 (0)