Chapter A2
Getting and looking at output

A2.1 Screen output

As your Cactus executable runs, standard output and standard error are usually written to the screen. Standard output provides you with information about the run, and standard error reports warnings and errors from the flesh and thorns.

As the program runs, the normal output provides the following information:

Active thorns

A report is made as each of the thorns in the ActiveThorns parameters from the parameter file (see Section B3.2) is attempted to be activated. This report shows whether the thorn activation was successful, and if successful gives the thorn’s implementation. For example

Activating thorn idscalarwave...Success -> active implementation idscalarwave

Failed parameters

If any of the parameters in the parameter file does not belong to any of the active thorns, or if the parameter value is not in the allowed range (see Section C1.4.1), an error is registered. For example, if the parameter is not recognised

Unknown parameter time::ddtfac

or if the parameter value is not in the allowed range

Unable to set keyword CartGrid3D::type - ByMouth not in any active range

Scheduling information

The scheduled routines (see Section C1.5), are listed, in the order that they will be executed. For example

----------------------------------------------------------------------  
  Startup routines  
    Cactus: Register banner for Cactus  
    CartGrid3D: Register GH Extension for GridSymmetry  
    CartGrid3D: Register coordinates for the Cartesian grid  
    IOASCII: Startup routine  
    IOBasic: Startup routine  
    IOUtil: IOUtil startup routine  
    PUGH: Startup routine  
    WaveToyC: Register banner  
 
  Parameter checking routines  
    CartGrid3D: Check coordinates for CartGrid3D  
    IDScalarWave: Check parameters  
 
  Initialisation  
    CartGrid3D: Set up spatial 3D Cartesian coordinates on the GH  
    PUGH: Report on PUGH set up  
    Time: Set timestep based on speed one Courant condition  
    WaveToyC: Schedule symmetries  
    IDScalarWave: Initial data for 3D wave equation  
 
  do loop over timesteps  
    WaveToyC: Evolution of 3D wave equation  
    t = t+dt  
    if (analysis)  
    endif  
  enddo  
----------------------------------------------------------------------

Thorn banners

Usually a thorn registers a short piece of text as a banner. This banner of each thorn is displayed in the standard output when the thorn is initialised.

A2.2 File output

Output methods in Cactus are all provided by thorns. Any number of output methods can be used for each run. The behaviour of the output thorns in the standard arrangements are described in those thorns’ documentation.

In general, output thorns decide what to output by parsing a string parameter containing the names of those grid variables, or groups of variables, for which output is required. The names should be fully qualified with the implementation and group or variable names.

There is usually a parameter for each method to denote how often, in evolution iterations, this output should be performed. There is also usually a parameter to define the directory in which the output should be placed, defaulting to the directory from which the executable is run.

See Chapter C2.7 for details on creating your own IO method.