Recent site activity

File formats‎ > ‎Mesh and data‎ > ‎

OpenDX scalar data

We output most discretized scalar data (e.g., potential, accessibility, etc.) from APBS in the data format used by the OpenDX software package. The OpenDX data format is very flexible; the following sections describe the application of this format for APBS multigrid and finite element datasets.

The multigrid data format has the following form:

   # Comments
   object 1 class gridpositions counts nx ny nz
   origin xmin ymin zmin
   delta hx 0.0 0.0
   delta 0.0 hy 0.0 
   delta 0.0 0.0 hz
   object 2 class gridconnections counts nx ny nz
   object 3 class array type double rank 0 items n data follows
   u(0,0,0) u(0,0,1) u(0,0,2)
   u(0,0,nz-3) u(0,0,nz-2) u(0,0,nz-1)
   u(0,1,0) u(0,1,1) u(0,1,2)
   u(0,1,nz-3) u(0,1,nz-2) u(0,1,nz-1)
   u(0,ny-1,nz-3) u(0,ny-1,nz-2) u(0,ny-1,nz-1)
   u(1,0,0) u(1,0,1) u(1,0,2)
   attribute "dep" string "positions"
   object "regular positions regular connections" class field
   component "positions" value 1
   component "connections" value 2
   component "data" value 3

The variables in this format have been shown in bold and include

Any number of comment lines, each line starting with the "#" symbol
nx ny nz
The number of grid points in the x-, y-, and z-directions.
xmin ymin zmin
The coordinates of the grid lower corner.
hx hy hz
The grid spacings in the x-, y-, and z-directions.
The total number of grid points; n = nx * ny * nz
The data values, ordered with the z-index increasing most quickly, followed by the y-index, and then the x-index.

For finite element solutions, the OpenDX format takes the following form:

   object 1 class array type float rank 1 shape 3 items N
   v1x v1y v1z
   v2x v2y v2z
   vNx vNy vNz
   object 2 class array type int rank 1 shape 4 items M
   s1a s1b s1c s1d
   s2a s2b s2c s2d
   sMa sMb sMc sMd
   attribute "element type" string "tetrahedra"
   object 3 class array type float rank 0 items N
   attribute "dep" string "positions"
   object "irregular positions irregular connections" class field
   component "positions" value 1
   component "connections" value 2
   component "data" value 3

where the variables in this format are shown in bold and defined as:

Number of vertices
vix viy viz
Coordinates of vertex i
Number of simplices
sia sib sic sid
IDs of vertices in simplex i
Data value associated with vertex i