Kranc: a Mathematica application to generate numerical codes for tensorial evolution equations
Sascha Husa, Ian Hinder, Christiane Lechner

TL;DR
Kranc is a Mathematica-based suite that automates the conversion of tensorial PDE systems into parallelized C or Fortran code, aiding physicists and mathematicians in rapid prototyping and efficient code generation for numerical relativity.
Contribution
It introduces a novel Mathematica toolkit that seamlessly translates complex tensorial PDEs into optimized parallel code integrated with the Cactus framework.
Findings
Successfully generates parallelized code for Einstein equations
Demonstrates efficiency and performance in numerical relativity simulations
Facilitates rapid prototyping of complex PDE systems
Abstract
We present a suite of Mathematica-based computer-algebra packages, termed "Kranc", which comprise a toolbox to convert (tensorial) systems of partial differential evolution equations to parallelized C or Fortran code. Kranc can be used as a "rapid prototyping" system for physicists or mathematicians handling very complicated systems of partial differential equations, but through integration into the Cactus computational toolkit we can also produce efficient parallelized production codes. Our work is motivated by the field of numerical relativity, where Kranc is used as a research tool by the authors. In this paper we describe the design and implementation of both the Mathematica packages and the resulting code, we discuss some example applications, and provide results on the performance of an example numerical code for the Einstein equations.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
