# Array

Some parameters require an array of integers, floating point numbers, or a mixture of both.

For example,
in

```
GRAVITY( "simple gravity" ) {
gravity = { 0, -9.81, 0 }
}
```

the gravity parameter requires a three-component vector of floating point
numbers. This parameter requires exactly three numbers separated by commas. An array
may be two dimensional. For example,
in

```
PERIODIC_BOUNDARY_CONDITION( "a PBC" ) {
rotation_axis = { 0, 0, 0 ; 0, 0, 1 }
}
```

rotation_axis is defined by two points in space. The axis of rotation is in
the z-direction, passing through the points (0,0,0) and (0,0,1). The rows of a two
dimensional array are separated by semicolons. In the above example,
rotation_axis is a 2x3 array. The array may also have mixed
integer and floating point values. For
example,

```
COORDINATE {
coordinates = { 1, 0.0, 0.0, 0.0 ;
2, -1.5, -1.5, -1.5 ;
... }
}
```

defines the nodal coordinates of the problem. Here the first column is the node number and
columns two, three, and four define the x, y, and z components of the coordinates.
The number of columns must be at least four and the number of rows defines the
number of nodes in the system. The values of an array may be read from an ASCII
file:

```
COORDINATE {
coordinates = Read( "channel.crd" )
}
```

where each line of the file "channel.crd" must contain an integer followed
by three floating point numbers separated by white space (one or more spaces or
tabs). No commas or semicolons may be embedded in the file. For example, the file
"channel.crd" may
contain:

```
1 0.0 0.0 0.0
2 -1.5 -1.5 -1.5
...
```