Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

Manuscript Title: Kranc: a Mathematica package to generate numerical codes for tensorial evolution equations
Authors: Sascha Husa, Ian Hinder, Christiane Lechner
Program title: Kranc
Catalogue identifier: ADXS_v1_0
Distribution format: tar.gz
Journal reference: Comput. Phys. Commun. 174(2006)983
Programming language: Mathematica, C, Fortran 90.
Computer: Unix/Linux computers which run Mathematica (for code generation) and Cactus (for numerical simulations).
Operating system: Unix/Linux.
Has the code been vectorised or parallelized?: The code is parallelized based on the Cactus framework.
RAM: This depends on the number of variables and gridsize, the included ADM example requires 4308 KByte.
Keywords: numerical relativity, computer algebra, code generation, partial differential equations, finite differencing.
PACS: 04.25.Dm, 2.70Bf, 2.60Cb.
Classification: 4.3.

Nature of problem:
Solution of partial differential equations in three space dimensions, which are formulated as an initial value problem. In particular, the program is geared towards handling very complex tensorial equations as they appear e.g. in numerical relativity. The worked out examples comprise the Klein-Gordon equations, the Maxwell equations, and the ADM formulation of the Einstein equations.

Solution method:
The method of numerical solution is finite differencing and method of lines time integration, the numerical code is generated through a high level Mathematica interface.

Restrictions:
Typical numerical relativity applications will contain up to several dozen evolution variables and thousands of source terms, Cactus applications have shown scaling up to several thousand processors and grid sizes exceeding 5003.

Unusual features:
Based on Mathematica and Cactus

Running time:
This depends on the number of variables and the grid size: the included ADM example takes approximately 100 seconds on a 1600 MHz Intel Pentium M processor.