Simple Plain Text Output with IOASCII

Thomas Radke, Gabrielle Allen

Date

Abstract

Thorn IOASCII provides I/O methods for 1D, 2D, and 3D output of grid arrays and grid functions into files in ASCII format. The precise format is designed for visualisation using the clients xgraph [1] or gnuplot [2].

1 Purpose

Thorn IOASCII registers three I/O methods named IOASCII_1D, IOASCII_2D, and IOASCII_3D with the I/O interface in the flesh.

2 IOASCII Parameters

General parameters to control all IOASCII’s I/O methods are:

Additional parameters to control the IOASCII_1D I/O method are:

Additional parameters to control the IOASCII_2D I/O method are:

3 Comments

Getting Output from IOBasic’s I/O Mehtods
You obtain output by an I/O method by either

For a description of basic I/O parameters and the I/O function interface to invoke I/O methods by application thorns please see the documentation of thorn IOUtil and the flesh.
Building Cactus configurations with IOBasic
Since IOASCII uses parameters from IOUtil it also needs this I/O helper thorn be compiled into Cactus and activated at runtime in the ActiveThorns parameter in your parameter file.

4 Examples

In this section we include example output for different parameter combinations. Note that all these examples were generated for just a couple of timesteps for an extremely small 3D grid.

4.1 One-dimensional xgraph

These options produce data suitable for using with the xgraph visualization client in the format
x f(t=fixed,x,y=fixed,z=fixed):

  IOASCII::out1D_every = 1  
  IOASCII::out1D_vars = "wavetoy::phi"  
  IOASCII::out1D_style = "xgraph"

Output File: phi_x_[1][1].xg

  "Parameter file wavetoy.par  
  "Created Sun 19 Aug 2001 16:31:43  
  "x-label x  
  "y-label WAVETOY::phi (y = 0.0000000000000, z = 0.0000000000000), (yi = 1, zi = 1)  
 
 
  "Time = 0.0000000000000  
  -0.5000000000000 0.0000000000139  
  0.0000000000000 1.0000000000000  
  0.5000000000000 0.0000000000139  
 
 
  "Time = 0.2500000000000  
  -0.5000000000000 0.0000000000000  
  0.0000000000000 0.4980695458846  
  0.5000000000000 0.0000000000000  
 
 
  "Time = 0.5000000000000  
  -0.5000000000000 0.0019304541362  
  0.0000000000000 -0.7509652270577  
  0.5000000000000 0.0019304541362

4.2 One-dimensional gnuplot

These options produce data suitable for using with the gnuplot visualization client in the format
x f(t,x,y=fixed,z=fixed):

  IOASCII::out1D_every = 1  
  IOASCII::out1D_vars = "wavetoy::phi"  
  IOASCII::out1D_style = "gnuplot f(x)"

Output File: phi_x_[1][1].asc

  #Parameter file wavetoy.par  
  #Created Sun 19 Aug 2001 16:33:07  
  #x-label x  
  #y-label WAVETOY::phi (y = 0.0000000000000, z = 0.0000000000000), (yi = 1, zi = 1)  
 
  #Time = 0.0000000000000  
  -0.5000000000000 0.0000000000139  
  0.0000000000000 1.0000000000000  
  0.5000000000000 0.0000000000139  
 
  #Time = 0.2500000000000  
  -0.5000000000000 0.0000000000000  
  0.0000000000000 0.4980695458846  
  0.5000000000000 0.0000000000000  
 
  #Time = 0.5000000000000  
  -0.5000000000000 0.0019304541362  
  0.0000000000000 -0.7509652270577  
  0.5000000000000 0.0019304541362

4.3 One-dimensional gnuplot (including time)

These options produce data suitable for using with the gnuplot visualization client in the format
t x f(t,x,y=fixed,z=fixed):

  IOASCII::out1D_every = 1  
  IOASCII::out1D_vars = "wavetoy::phi"  
  IOASCII::out1D_style = "gnuplot f(t,x)"

Output file: phi_x_[1][1].asc

  #Parameter file wavetoy.par  
  #Created Sun 19 Aug 2001 16:34:48  
  #x-label x  
  #y-label WAVETOY::phi (y = 0.0000000000000, z = 0.0000000000000), (yi = 1, zi = 1)  
 
  #Time = 0.0000000000000  
  0.0000000000000 -0.5000000000000 0.0000000000139  
  0.0000000000000 0.0000000000000 1.0000000000000  
  0.0000000000000 0.5000000000000 0.0000000000139  
 
  #Time = 0.2500000000000  
  0.2500000000000 -0.5000000000000 0.0000000000000  
  0.2500000000000 0.0000000000000 0.4980695458846  
  0.2500000000000 0.5000000000000 0.0000000000000  
 
  #Time = 0.5000000000000  
  0.5000000000000 -0.5000000000000 0.0019304541362  
  0.5000000000000 0.0000000000000 -0.7509652270577  
  0.5000000000000 0.5000000000000 0.0019304541362

4.4 Two-dimensional gnuplot

These options produce data suitable for using with the gnuplot visualization client in the format
x y f(t,x,y,z=fixed):

  IOASCII::out2D_every = 1  
  IOASCII::out2D_vars = "wavetoy::phi"  
  IOASCII::out2D_style = "gnuplot f(x,y)"

Output file: phi_xy_[1].asc

  #Parameter file wavetoy.par  
  #Created Sun 19 Aug 2001 16:31:43  
  #x-label x  
  #y-label y  
  #z-label WAVETOY::phi (z = 0.0000000000000), (zi = 1)  
 
 
  #Time = 0.0000000000000  
  -0.5000000000000 -0.5000000000000 0.0000000000000  
  0.0000000000000 -0.5000000000000 0.0000000000139  
  0.5000000000000 -0.5000000000000 0.0000000000000  
 
  -0.5000000000000 0.0000000000000 0.0000000000139  
  0.0000000000000 0.0000000000000 1.0000000000000  
  0.5000000000000 0.0000000000000 0.0000000000139  
 
  -0.5000000000000 0.5000000000000 0.0000000000000  
  0.0000000000000 0.5000000000000 0.0000000000139  
  0.5000000000000 0.5000000000000 0.0000000000000  
 
 
 
  #Time = 0.2500000000000  
  -0.5000000000000 -0.5000000000000 0.0000000000000  
  0.0000000000000 -0.5000000000000 0.0000000000000  
  0.5000000000000 -0.5000000000000 0.0000000000000  
 
  -0.5000000000000 0.0000000000000 0.0000000000000  
  0.0000000000000 0.0000000000000 0.4980695458846  
  0.5000000000000 0.0000000000000 0.0000000000000  
 
  -0.5000000000000 0.5000000000000 0.0000000000000  
  0.0000000000000 0.5000000000000 0.0000000000000  
  0.5000000000000 0.5000000000000 0.0000000000000  
 
 
 
  #Time = 0.5000000000000  
  -0.5000000000000 -0.5000000000000 0.0000000008425  
  0.0000000000000 -0.5000000000000 0.0019304541362  
  0.5000000000000 -0.5000000000000 0.0000000008425  
 
  -0.5000000000000 0.0000000000000 0.0019304541362  
  0.0000000000000 0.0000000000000 -0.7509652270577  
  0.5000000000000 0.0000000000000 0.0019304541362  
 
  -0.5000000000000 0.5000000000000 0.0000000008425  
  0.0000000000000 0.5000000000000 0.0019304541362  
  0.5000000000000 0.5000000000000 0.0000000008425

4.5 Two-dimensional gnuplot (including time)

These options produce data suitable for using with the gnuplot visualization client in the format
t x y f(t,x,y,z=fixed):

  IOASCII::out2D_every = 1  
  IOASCII::out2D_vars = "wavetoy::phi"  
  IOASCII::out2D_style = "gnuplot f(t,x,y)"

Output file: phi_xy_[1].asc

  #Parameter file wavetoy.par  
  #Created Sun 19 Aug 2001 16:33:07  
  #x-label x  
  #y-label y  
  #z-label WAVETOY::phi (z = 0.0000000000000), (zi = 1)  
 
 
  #Time = 0.0000000000000  
  0.0000000000000 -0.5000000000000 -0.5000000000000 0.0000000000000  
  0.0000000000000 0.0000000000000 -0.5000000000000 0.0000000000139  
  0.0000000000000 0.5000000000000 -0.5000000000000 0.0000000000000  
 
  0.0000000000000 -0.5000000000000 0.0000000000000 0.0000000000139  
  0.0000000000000 0.0000000000000 0.0000000000000 1.0000000000000  
  0.0000000000000 0.5000000000000 0.0000000000000 0.0000000000139  
 
  0.0000000000000 -0.5000000000000 0.5000000000000 0.0000000000000  
  0.0000000000000 0.0000000000000 0.5000000000000 0.0000000000139  
  0.0000000000000 0.5000000000000 0.5000000000000 0.0000000000000  
 
 
 
  #Time = 0.2500000000000  
  0.2500000000000 -0.5000000000000 -0.5000000000000 0.0000000000000  
  0.2500000000000 0.0000000000000 -0.5000000000000 0.0000000000000  
  0.2500000000000 0.5000000000000 -0.5000000000000 0.0000000000000  
 
  0.2500000000000 -0.5000000000000 0.0000000000000 0.0000000000000  
  0.2500000000000 0.0000000000000 0.0000000000000 0.4980695458846  
  0.2500000000000 0.5000000000000 0.0000000000000 0.0000000000000  
 
  0.2500000000000 -0.5000000000000 0.5000000000000 0.0000000000000  
  0.2500000000000 0.0000000000000 0.5000000000000 0.0000000000000  
  0.2500000000000 0.5000000000000 0.5000000000000 0.0000000000000  
 
 
 
  #Time = 0.5000000000000  
  0.5000000000000 -0.5000000000000 -0.5000000000000 0.0000000008425  
  0.5000000000000 0.0000000000000 -0.5000000000000 0.0019304541362  
  0.5000000000000 0.5000000000000 -0.5000000000000 0.0000000008425  
 
  0.5000000000000 -0.5000000000000 0.0000000000000 0.0019304541362  
  0.5000000000000 0.0000000000000 0.0000000000000 -0.7509652270577  
  0.5000000000000 0.5000000000000 0.0000000000000 0.0019304541362