!&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
    SUBROUTINE ZERO2(ARRAY)
!     ******************************************************************
!$$$  SUBPROGRAM DOCUMENTATION BLOCK
!                .      .    .
! SUBPROGRAM:    ZERO2       ZERO OUT 2-D ARRAYS
!   PRGRMMR: BLACK           ORG: W/NP2      DATE: 96-03-28

! ABSTRACT:
!     SET THE VALUES OF THE ARTIFICIAL EXTERNAL (OUT-OF-BOUNDS) EDGES
!     TO ZERO

! PROGRAM HISTORY LOG:
!   96-03-28  BLACK      - ORIGINATOR
!   97-06-??  MEYS       - MODIFIED FOR DISTRIBUTED MEMORY
!   99-07-06  BLACK      - FULL ARRAY RATHER THAN JUST EDGES

! USAGE: CALL ZERO2 FROM ANY ROUTINE NEEDING THIS PROCEDURE
!   INPUT ARGUMENT LIST:
!       THE DUMMY ARRAY NAME

!   OUTPUT ARGUMENT LIST:
!     THE DUMMY ARRAY NAME

!   OUTPUT FILES:
!     NONE

!   SUBPROGRAMS CALLED:

!     UNIQUE: NONE

!     LIBRARY: NONE

! ATTRIBUTES:
!   LANGUAGE: FORTRAN 90
!   MACHINE : IBM SP
!$$$
!***********************************************************************
!-----------------------------------------------------------------------
    INCLUDE "parmeta.f90"
    INCLUDE "mpp.h"
#include "sp.h"
!-----------------------------------------------------------------------
    DIMENSION &
    ARRAY(IDIM1:IDIM2,JDIM1:JDIM2)
!-----------------------------------------------------------------------
!-----------------------------------------------------------------------
    DO J=JDIM1,JDIM2
        DO I=IDIM1,IDIM2
            ARRAY(I,J)=0.
        ENDDO
    ENDDO
!----------------------------------------------------------------
!----------------------------------------------------------------
    RETURN
    END SUBROUTINE ZERO2
