next up previous

4.2 Array Sections     continued...

An array element, which is a scalar, is of course specified by the array name and a subscript value for each dimension. The general form for this is the familiar

array-name ( subscript-1, subscript-2, subscript-3, ...)
where the number of subscripts is the dimensionality of the array and each subscript is a scalar integer expression, or scalar subscript for short. An array section is specified by replacing at least one scalar subscript by a ``section subscript". A section subscript is a sequence of scalar subscript values for that dimension, and thus a section subscript may be thought of (and constructed as) a one-dimensional array of subscript values, called a vector subscript. If (only) one scalar subscript is replaced by a vector subscript the result is a one-dimensional array section; if two scalar subscripts are replaced by vector subscripts the result is a two-dimensional array section, and so on. An array section has dimensionality equal to the number of vector subscripts it has.

It's time for an example. Consider the 5x6 array as shown.Three sections of are shown in bold: the entire second column (a one- dimensional section), the 2x2 upper right hand corner of (a two-dimensional section), and the last half of the fifth row of (a one-dimensional section).

Note that all of the vector subscripts in these examples could be written with implied-do constructs: