Fatode is a Fortran library for the integration of ordinary differential equations with direct and adjoint sensitivity analysis capabilities. The paper describes the capabilities, implementation, code organization, and usage of this package. Fatode implements four families of methods: explicit Runge--Kutta for nonstiff problems, fully implicit Runge--Kutta, singly diagonally implicit Runge--Kutta, and Rosenbrock for stiff problems. Each family contains several methods with different orders of accuracy; users can add new methods by simply providing their coefficients. For each family the forward, adjoint, and tangent linear models are implemented. General purpose solvers for dense and sparse linear algebra are used; users can easily incorporate problem-tailored linear algebra routines. The performance of the package is demonstrated on several test problems. To the best of our knowledge Fatode is the first publicly available general purpose package that offers forward and adjoint sensitivity analysis capabilities in the context of Runge--Kutta methods. A wide range of applications is expected to benefit from its use; examples include parameter estimation, data assimilation, optimal control, and uncertainty quantification.
28 January 2014 in Journal of Scientific Computing
This work develops new implicit-explicit time integrators based on two-step Runge--Kutta methods. The class of schemes of interest is characterized by linear invariant preservation and high stage orders. Theoretical consistency, stability, and stiff convergence analyses are performed to reveal the excellent properties of these methods. The new framework offers extreme flexibility in the construction of partitioned integrators since no coupling conditions are necessary. Practical schemes of orders three, four, and six are constructed and are used to solve several test problems. Numerical results confirm the theoretical findings.
The solution of chemical kinetics is one of the most computationally intensivetasks in atmospheric chemical transport simulations. Due to the stiff nature of the system,implicit time stepping algorithms which repeatedly solve linear systems of equations arenecessary. This paper reviews the issues and challenges associated with the construction ofefficient chemical solvers, discusses several families of algorithms, presents strategies forincreasing computational efficiency, and gives insight into implementing chemical solverson accelerated computer architectures.
1 January 2016 in SIAM Journal on Scientific Computing
In the numerical solution of partial differential equations using a method-of-lines approach, the availability of high order spatial discretization schemes motivates the development of sophisticate...