Description:  Returns the product of all the elements in an entire array or in a specified dimension of an array.  
Class:  Transformational function; Generic  
Arguments:  ARRAY  Must be an array of type integer or real.  
DIM (opt)  Must be a scalar integer with a value in the range 1 to n, where n is the rank of ARRAY.  
MASK  Must be of type logical and conformable with ARRAY.  
Results:  The result is an array or a scalar of the
same data type as ARRAY.
The result is scalar if DIM is omitted or ARRAY has rank one. The following rules apply if DIM is omitted:
The following rules apply if DIM is specified:

Examples
PRODUCT ((/2, 3, 4/)) returns the value 24 (the product of 2 * 3 * 4). PRODUCT ((/2, 3, 4/), DIM=1) returns the same result.
PRODUCT (C, MASK=C .LT. 0.0) returns the product of the negative elements of C.
A is the array
[ 1 4 7 ] [ 2 3 5 ].
PRODUCT (A, DIM=1) returns the value (2, 12, 35), which is the product of all elements in each column. 2 is the product of 1 * 2 in column 1. 12 is the product of 4 * 3 in column 2, and so forth.
PRODUCT (A, DIM=2) returns the value (28, 30), which is the product of all elements in each row. 28 is the product of 1 * 4 * 7 in row 1. 30 is the product of 2 * 3 * 5 in row 2.