pybamm.
BaseSolver
(method=None, rtol=1e-06, atol=1e-06, root_method=None, root_tol=1e-06, max_steps='deprecated')[source]¶Solve a discretised model.
Parameters: |
|
---|
calculate_consistent_state
(model, time=0, inputs=None)[source]¶Calculate consistent state for the algebraic equations through root-finding. model.y0 is used as the initial guess for rootfinding
Parameters: |
|
---|---|
Returns: | y0_consistent – Initial conditions that are consistent with the algebraic equations (roots of the algebraic equations) |
Return type: | array-like, same shape as y0_guess |
get_termination_reason
(solution, events)[source]¶Identify the cause for termination. In particular, if the solver terminated due to an event, (try to) pinpoint which event was responsible. Note that the current approach (evaluating all the events and then finding which one is smallest at the final timestep) is pretty crude, but is the easiest one that works for all the different solvers.
Parameters: |
|
---|
set_up
(model, inputs=None)[source]¶Unpack model, perform checks, simplify and calculate jacobian.
Parameters: |
|
---|
solve
(model, t_eval=None, external_variables=None, inputs=None)[source]¶Execute the solver setup and calculate the solution of the model at specified times.
Parameters: |
|
---|---|
Raises: |
|
step
(old_solution, model, dt, npts=2, external_variables=None, inputs=None, save=True)[source]¶Step the solution of the model forward by a given time increment. The first time this method is called it executes the necessary setup by calling self.set_up(model).
Parameters: |
|
---|---|
Raises: |
|