# igradsf, igradsg

Given an array whose gradient is a vector function, compute its
scalar function via Spherepack.

## Synopsis

procedure igradsf(
gzx : float,
gzy : float,
z : float
)
procedure igradsg(
gzx : float,
gzy : float
z : float
)

## Arguments

*gzx, gzy*
- gradient arrays (input, two or more dimensions, last two
dimensions must be
*nlat* x *nlon* and input values must be
in ascending latitude order).
*z*
- scalar array (output, same dimensions as
*gzx, gzy*, values
will be in ascending latitude order)

## Description

*igradsf* and *igradsg* both compute a scalar function
given gradient *gzx* and *gzy* and return it in the
array *z*. *igradsf* operates on an equal (fixed) grid,
and *igradsg* operates on a Gaussian grid.
**Note**: For the arrays whose last two dimensions are *nlat*
x *nlon*, the rest of the dimensions (if any) are collectively
referred to as *nt*. If the input/output arrays are just two
dimensions, then *nt* can either be considered equal to 1 or
nothing at all.

Arrays which have dimensions *nt* x *nlat* x *nlon*
should **not** include the cyclic (wraparound) points when invoking
the procedures and functions which use spherical harmonics
(Spherepack).

For example, if an array *x* has dimensions *nlat* = 64 and
*nlon* = 129, where the "129" represents the cyclic points, then
the user should pass the data to the procedure/function via:

z = sample ( x([...],:,0:nlon-2) ) ; does not include cyclic points

## Example

## Error messages

If *jer* or *ker* is equal to:
1 : error in the specification of *nlat*

2 : error in the specification of *nlon*

4 : error in the specification of *nt* (*jer* only)

### Reference Manual Control Panel

NG4.1 Home, Index, Examples, Glossary, Feedback, Ref Contents, Ref WhereAmI?

* $Revision: 1.9 $ $Date: 1999/02/23 15:59:24 $ *