You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I declared a sim_func to enable using PyBaMM's SPM model, but it ended up shifting to ElectrodeSOH model anyway. The function declares the parameters, model and solver configuration just as I used when doing a single cell, and I return the simulation object and parameters.
Note that this same thing happened even with the format given in tutorial 8 of the liionpack website. More annoyingly, I get a capacity related error that was not an issue with the SPM or DFN with the same inputs in PyBaMM.
Traceback (most recent call last):
File "/mnt/c/Users/Knight/Documents/PyBaMM/lptp/lib/python3.9/site-packages/pybamm/models/full_battery_models/lithium_ion/electrode_soh.py", line 237, in solve
sol = self._solve_full(inputs, ics)
File "/mnt/c/Users/Knight/Documents/PyBaMM/lptp/lib/python3.9/site-packages/pybamm/models/full_battery_models/lithium_ion/electrode_soh.py", line 303, in _solve_full
sol = sim.solve([0], inputs=inputs)
File "/mnt/c/Users/Knight/Documents/PyBaMM/lptp/lib/python3.9/site-packages/pybamm/simulation.py", line 608, in solve
self._solution = solver.solve(self.built_model, t_eval, **kwargs)
File "/mnt/c/Users/Knight/Documents/PyBaMM/lptp/lib/python3.9/site-packages/pybamm/solvers/base_solver.py", line 875, in solve
new_solution = self._integrate(
File "/mnt/c/Users/Knight/Documents/PyBaMM/lptp/lib/python3.9/site-packages/pybamm/solvers/algebraic_solver.py", line 224, in _integrate
raise pybamm.SolverError(
pybamm.expression_tree.exceptions.SolverError: Could not find acceptable solution: solver terminated successfully, but maximum solution error (0.2535227622370124) above tolerance (1e-06)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/mnt/f/Programming/Computation/Battery/CEC/liionpack/examples/try2.py", line 140, in
output = lp.solve(
File "/mnt/f/Programming/Computation/Battery/CEC/liionpack-power-trial/liionpack/solver_utils.py", line 428, in solve
output = rm.solve(
File "/mnt/f/Programming/Computation/Battery/CEC/liionpack-power-trial/liionpack/solvers.py", line 371, in solve
self.setup_actors(nproc, self.inputs_dict, initial_soc)
File "/mnt/f/Programming/Computation/Battery/CEC/liionpack-power-trial/liionpack/solvers.py", line 669, in setup_actors
a.setup(
File "/mnt/f/Programming/Computation/Battery/CEC/liionpack-power-trial/liionpack/solvers.py", line 47, in setup
_, _ = lp.update_init_conc(parameter_values, initial_soc, update=True)
File "/mnt/f/Programming/Computation/Battery/CEC/liionpack-power-trial/liionpack/sim_utils.py", line 53, in update_init_conc
x, y = lp.get_initial_stoichiometries(SoC, param)
File "/mnt/f/Programming/Computation/Battery/CEC/liionpack-power-trial/liionpack/sim_utils.py", line 31, in get_initial_stoichiometries
return esoh_solver.get_initial_stoichiometries(initial_soc)
File "/mnt/c/Users/Knight/Documents/PyBaMM/lptp/lib/python3.9/site-packages/pybamm/models/full_battery_models/lithium_ion/electrode_soh.py", line 442, in get_initial_stoichiometries
x_0, x_100, y_100, y_0 = self.get_min_max_stoichiometries()
File "/mnt/c/Users/Knight/Documents/PyBaMM/lptp/lib/python3.9/site-packages/pybamm/models/full_battery_models/lithium_ion/electrode_soh.py", line 510, in get_min_max_stoichiometries
sol = self.solve(inputs)
File "/mnt/c/Users/Knight/Documents/PyBaMM/lptp/lib/python3.9/site-packages/pybamm/models/full_battery_models/lithium_ion/electrode_soh.py", line 246, in solve
raise split_error
File "/mnt/c/Users/Knight/Documents/PyBaMM/lptp/lib/python3.9/site-packages/pybamm/models/full_battery_models/lithium_ion/electrode_soh.py", line 241, in solve
sol = self._solve_split(inputs, ics)
File "/mnt/c/Users/Knight/Documents/PyBaMM/lptp/lib/python3.9/site-packages/pybamm/models/full_battery_models/lithium_ion/electrode_soh.py", line 316, in _solve_split
x0_sol = x0_sim.solve([0], inputs=inputs)
File "/mnt/c/Users/Knight/Documents/PyBaMM/lptp/lib/python3.9/site-packages/pybamm/simulation.py", line 608, in solve
self._solution = solver.solve(self.built_model, t_eval, **kwargs)
File "/mnt/c/Users/Knight/Documents/PyBaMM/lptp/lib/python3.9/site-packages/pybamm/solvers/base_solver.py", line 875, in solve
new_solution = self._integrate(
File "/mnt/c/Users/Knight/Documents/PyBaMM/lptp/lib/python3.9/site-packages/pybamm/solvers/algebraic_solver.py", line 224, in _integrate
raise pybamm.SolverError(
pybamm.expression_tree.exceptions.SolverError: Could not find acceptable solution: solver terminated successfully, but maximum solution error (0.2534958140144239) above tolerance (1e-06)
ElectrodeSOH model is used in simulation class for calculating SOC so is pretty standard. Post the full script you are running and I'll take a look. Might be an issue with your parameters
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
I declared a sim_func to enable using PyBaMM's SPM model, but it ended up shifting to ElectrodeSOH model anyway. The function declares the parameters, model and solver configuration just as I used when doing a single cell, and I return the simulation object and parameters.
Note that this same thing happened even with the format given in tutorial 8 of the liionpack website. More annoyingly, I get a capacity related error that was not an issue with the SPM or DFN with the same inputs in PyBaMM.
The error messages:
The output fuction and sim_func call:
Beta Was this translation helpful? Give feedback.
All reactions