Related papers: Using a template engine as a computer algebra tool
When one wishes to numerically solve an initial value problem, it is customary to rewrite it as an equivalent first-order system to which a method, usually from the class of Runge-Kutta methods, is applied. Directly treating higher-order…
Few-shot learning with large-scale, pre-trained language models is a powerful way to answer questions about code, e.g., how to complete a given code example, or even generate code snippets from scratch. The success of these models raises…
A new approach for the construction of high order A-stable explicit integrators for ordinary differential equations (ODEs) is theoretically studied. Basically, the integrators are obtained by splitting, at each time step, the solution of…
Runge-Kutta methods are a popular class of numerical methods for solving ordinary differential equations. Every Runge-Kutta method is characterized by two basic parameters: its order, which measures the accuracy of the solution it produces,…
We study the learning of numerical algorithms for scientific computing, which combines mathematically driven, handcrafted design of general algorithm structure with a data-driven adaptation to specific classes of tasks. This represents a…
We present a novel numerical routine (oscode) with a C++ and Python interface for the efficient solution of one-dimensional, second-order, ordinary differential equations with rapidly oscillating solutions. The method is based on a…
In this technical note a general procedure is described to construct internally consistent splitting methods for the numerical solution of differential equations, starting from matching pairs of explicit and diagonally implicit Runge-Kutta…
Gamma distributed delay differential equations (DDEs) arise naturally in many modelling applications. However, appropriate numerical methods for generic Gamma distributed DDEs are not currently available. Accordingly, modellers often resort…
We present a C++ library, TLoops, which uses a hierarchy of expression templates to represent operations upon tensorial quantities in single lines of C++ code that resemble analytic equations. These expressions may be run as-is, but may…
A semi-implicit-explicit (semi-IMEX) Runge-Kutta (RK) method is proposed for the numerical integration of ordinary differential equations (ODEs) of the form $\mathbf{u}' = \mathbf{f}(t,\mathbf{u}) + G(t,\mathbf{u}) \mathbf{u}$, where…
The article deals with a kind of recursive function templates in C++, where the recursion is realized corresponding template parameters to achieve better computational performance. Some specialization of these template functions ends the…
The development of a high performance PDE solver requires the combined expertise of interdisciplinary teams with respect to application domain, numerical scheme and low-level optimization. In this paper, we present how the ExaHyPE engine…
A methodology that can generate the optimal coefficients of a numerical method with the use of an artificial neural network is presented in this work. The network can be designed to produce a finite difference algorithm that solves a…
In this paper a new Runge-Kutta type scheme is introduced for nonlinear stochastic partial differential equations (SPDEs) with multiplicative trace class noise. The proposed scheme converges with respect to the computational effort with a…
Singly-TASE operators for the numerical solution of stiff differential equations were proposed by Calvo et al. in J.Sci. Comput. 2023 to reduce the computational cost of Runge-Kutta-TASE (RKTASE) methods when the involved linear systems are…
Errors due to hardware or low level software problems, if detected, can be fixed by various schemes, such as recomputation from a checkpoint. Silent errors are errors in application state that have escaped low-level error detection. At…
We present a C++ implementation of a fifth order semi-implicit Runge-Kutta algorithm for solving Ordinary Differential Equations. This algorithm can be used for studying many different problems and in particular it can be applied for…
Regular expressions (regexes) are widely used in different fields of computer science, such as programming languages, string processing, and databases. However, existing tools for synthesizing or repairing regexes always assume that the…
Implicit Runge--Kutta (IRK) methods are highly effective for solving stiff ordinary differential equations (ODEs) but can be computationally expensive for large-scale problems due to the need of solving coupled algebraic equations at each…
This paper demonstrates how certified computational tools can be used to address various problems in control theory. In particular, we introduce PACE.jl, a Julia package that implements symbolic elimination techniques, including (among…