Welcome to the L3 Harris Geospatial documentation center. Here you will find reference guides and help documents.
﻿
>  Docs Center  >  Libraries  >  Motley  >  MGH_STAGGER

MGH_STAGGER

MGH_STAGGER

## Purpose

This function is designed to be used for calculations on staggered
rectangular grids of arbitrary dimension. It interpolates or
extrapolates scalar values between cell centres, faces and vertices.

## Category

Finite-diffeence grids.

## Calling Sequence

Result = MGH_STAGGER(X, DELTA=delta])

## Positional Parameters

X (input, numeric array)
An array representing values on the grid.

## Keyword Parameters

DELTA (input, integer scalar or vector)
An integer specifying the amount by which each dimension is to
be contracted or expanded. If DELTA is scalar, the same
expansion/contraction is applied to every dimension. If DELTA is
a vector, the number of elements must be greater than or equal to the
number of dimensions in the input (greater being permitted to allow
for omitted trailing unit dimensions).

## Return Value

The function returns a numeric array of floating, double or
complex type, with each dimension in the input unchanged or
expanded/contracted according to the corresponding element in
DELTA.

## Procedure

Linear interpolation & extrapolation.
PERFORMANCE:
Time is propertional to number of elements and number of dimensions.
On my Pentium 3 800 MHz machine, MGH_STAGGER times for a 2D 1-million
element array are:
DELTA Time (s)
-2 0.19
-1 0.61
0 0.06
1 0.88
2 0.29

## To Do

Generalise so that DELTA can take any integer value?
###########################################################################
This software is provided subject to the following conditions:
1. NIWA makes no representations or warranties regarding the
accuracy of the software, the use to which the software may
be put or the results to be obtained from the use of the
software. Accordingly NIWA accepts no liability for any loss
or damage (whether direct of indirect) incurred by any person
through the use of or reliance on the software.
2. NIWA is to be acknowledged as the original author of the
software where the software is used or presented in any form.
###########################################################################

## Modification History

Written for a single dimension only.
Extended to multiple dimensions.
Fixed bug: expanding a dimension of size 2 gives wrong
* DELTA can now take values in the range [-2,2].
* Now allowing scalar DELTA to apply to all dimensions
Speeded code up by removing [*] subscripts from
LHS of assignments. This improves speed by 25-50 % where
applicable but readability suffers a bit.