An adaptive Rosenbrock method with applications in Electrophysiology
The aim of this project is to implement the Rosenbrock method ROS3P in the C++ Finite Element library LifeV for the solution of systems of ordinary differential equations arising in electrophysiology. In the domain of electrophysiology LifeV implements cardiac cell models which can require the resolution of stiff reaction-diffusion equations. To solve this system the use of implicit methods is required. We focus in particular on one step methods. Implicit methods need the solution of a non linear system at each time step. The Rosenbrock methods derive from the linearly implicit Runge Kutta methods and just requires the solution of s linear systems per time step, where s is the number of stages. Most of the implicit Runge Kutta methods suffer from order reduction when applied to parabolic problems. For this reason we have chosen the third order Rosenbrock method ROS3P, which satisfies additional order conditions to keep the same convergence order even when applied to non linear parabolic problems. In the first part of this work we derive the Rosenbrock methods from Runge Kutta methods, explaining the time adaptivity strategy and finally giving the algorithm of our implementation in LifeV. After we present the cardiac reaction-diffusion models, deriving the mono-domain model from the bi-domain model. In the following we explain the strategy that we adopt to solve these models and how we discretize them. Finally we show some numerical experiments obtained with our approach and compare our results with the ones given by other methods.