H3expresso

Index : [ What is it? | History | Purpose | Implementation | Performance | Source | © Copyright ]


What is H3expresso?

H3expresso is a Numerical Relativity code that solves the full Einstein Equations in 3D using a finite differencing conservative scheme. A single source has been tailored to parallelize using either data parallel fortran (CMF, HPF, etc) or message passing with F90+MPI, allowing the code to achieve excellent performance and scalability on a variety of architectures: TMC CM5, IBM SP2, CRAY T3D, CONVEX Exemplar, SGI Power Challenge Array, CRAY C90, etc.


History

H3expresso was developed by Joan Massó from the NCSA Relativity Group and the University of the Balearic Islands Gravitation Group. The name comes from the idea that it is a "concentrated" ("espresso") and fast ("express") version of the full H3 code that solves the general relativistic Einstein's Equations in a variety of physical scenarios by using a special choice of gauge, harmonic slicing, that allows to cast the equations as a First Order Flux Conservative Hyperbolic system and thus allowing the use of advanced numerical techniques. The theoretical fundations are described in : C. Bona, J. Massó, Hyperbolic system for Numerical Relativity, Phys. Rev. Lett. 68, 1097 (1992). And also in the thesis: Joan Massó, Numerical Relativity: The Quest for a 3-D Code. Ph.D. Thesis, Universitat de les Illes Balears, 1992, where a specialized vector code Tse3 is documented in the appendix. The H code is a new, efficient parallel version of that code that has been developed since I came to NCSA in 1993.


Purpose

This "expresso" version has been developed and documented for several reasons: H3expresso simplifies the H3.3 code by reducing all the different initial conditions and numerical methods to one: the initial data are linearized waves (from a routine developed by Malcolm Tobias from Washington University) and the numerical evolution scheme is a 3d MacCormack method. The full H3 code is being tested for propagation of gravitational waves and a paper describing the results is in preparation. H3expresso also simplifies the output considerably... in fact, it simplifies output so much that there is no output at all. Also, the choice of initial parameters has been restricted.

Despite all these simplification, H3expresso does contain all the caffeine of the H3.3 code, as the Einstein Equations are implemented in its full glory.


Implementation

H3expresso has been implemented using FORTRAN 90, CMF, HPF... etc bla bla bla... soon to be completed... well, not so soon but I promise it's not gonna be that long.

Rob Gjertsen and Marc Nardulli have added MPI support for many different architectures.

Files and Routines

Input and Output

Makefile


Performance

H3expresso has an excellent performance on a variety of architectures. This is due to the high computation/communication ratio intrinsic to the Einstein equations. Flowtrace analisys reveals that the code spends most of the time computing the equations (routines Sources, Fluxes and Invert), with the finite differencing method (Method) taking almost all the rest of the time.

Check the following pages/graphs for a preliminary analysis of the code performance:


Source Code

The H3expresso code is copyrighted and can not be used without written permission from the author. However, certain collaborators of the NCSA relativity group may obtain a copy for special purposes of compiler and toolkit development. These collaborators will receive a username and password to download the source code. Please, e-mail Joan Masso for more details.


© H3expresso Copyright Statement



H3expresso home page , Joan Massó.