| 1 | MODULE MODULE_ZEROX |
|---|
| 2 | !---------------------------------------------------------------------- |
|---|
| 3 | CONTAINS |
|---|
| 4 | !---------------------------------------------------------------------- |
|---|
| 5 | !********************************************************************** |
|---|
| 6 | !$$$ SUBPROGRAM DOCUMENTATION BLOCK |
|---|
| 7 | ! . . . |
|---|
| 8 | ! SUBPROGRAM: ZEROx ZERO OUT MULTI-DIMENSIONAL ARRAY |
|---|
| 9 | ! PRGRMMR: BLACK ORG: W/NP2 DATE: 01-03-20 |
|---|
| 10 | ! |
|---|
| 11 | ! ABSTRACT: |
|---|
| 12 | ! SUBROUTINE ZEROx FILLS REAL ARRAYS WITH ZEROES |
|---|
| 13 | ! |
|---|
| 14 | ! CURRENT INTERFACES: ZERO2, ZERO3 |
|---|
| 15 | ! |
|---|
| 16 | ! PROGRAM HISTORY LOG: |
|---|
| 17 | ! 01-03-20 BLACK - ORIGINATOR |
|---|
| 18 | ! |
|---|
| 19 | ! USAGE: CALL ZERO WHERE NEEDED |
|---|
| 20 | ! INPUT ARGUMENT LIST: |
|---|
| 21 | ! ARR2 - THE ARRAY TO BE FILLED |
|---|
| 22 | ! IMS - THE STARTING I VALUE FOR LOCAL MEMORY |
|---|
| 23 | ! IME - THE ENDING I VALUE FOR LOCAL MEMORY |
|---|
| 24 | ! JMS - THE STARTING J VALUE FOR LOCAL MEMORY |
|---|
| 25 | ! JME - THE ENDING J VALUE FOR LOCAL MEMORY |
|---|
| 26 | ! |
|---|
| 27 | ! OUTPUT ARGUMENT LIST: |
|---|
| 28 | ! ARR2 |
|---|
| 29 | ! |
|---|
| 30 | ! OUTPUT FILES: |
|---|
| 31 | ! NONE |
|---|
| 32 | ! |
|---|
| 33 | ! SUBPROGRAMS CALLED: |
|---|
| 34 | ! |
|---|
| 35 | ! UNIQUE: NONE |
|---|
| 36 | ! |
|---|
| 37 | ! LIBRARY: NONE |
|---|
| 38 | ! |
|---|
| 39 | ! COMMON BLOCKS: NONE |
|---|
| 40 | ! |
|---|
| 41 | ! ATTRIBUTES: |
|---|
| 42 | ! LANGUAGE: FORTRAN 90 |
|---|
| 43 | ! MACHINE : IBM SP |
|---|
| 44 | !$$$ |
|---|
| 45 | !********************************************************************** |
|---|
| 46 | SUBROUTINE ZERO2(ARR2,IS,IE,JS,JE) |
|---|
| 47 | !---------------------------------------------------------------------- |
|---|
| 48 | IMPLICIT NONE |
|---|
| 49 | !---------------------------------------------------------------------- |
|---|
| 50 | INTEGER,INTENT(IN) :: IE,IS,JE,JS |
|---|
| 51 | REAL,DIMENSION(IS:IE,JS:JE),INTENT(INOUT) :: ARR2 |
|---|
| 52 | ! |
|---|
| 53 | INTEGER :: I,J |
|---|
| 54 | !********************************************************************** |
|---|
| 55 | !---------------------------------------------------------------------- |
|---|
| 56 | DO J=JS,JE |
|---|
| 57 | DO I=IS,IE |
|---|
| 58 | ARR2(I,J)=0. |
|---|
| 59 | ENDDO |
|---|
| 60 | ENDDO |
|---|
| 61 | !---------------------------------------------------------------------- |
|---|
| 62 | END SUBROUTINE ZERO2 |
|---|
| 63 | !********************************************************************** |
|---|
| 64 | SUBROUTINE ZERO3(ARR2,IS,IE,JS,JE,KS,KE) |
|---|
| 65 | !---------------------------------------------------------------------- |
|---|
| 66 | IMPLICIT NONE |
|---|
| 67 | !---------------------------------------------------------------------- |
|---|
| 68 | INTEGER,INTENT(IN) :: IE,IS,JE,JS,KE,KS |
|---|
| 69 | REAL,DIMENSION(IS:IE,KS:KE,JS:JE),INTENT(INOUT) :: ARR2 |
|---|
| 70 | ! |
|---|
| 71 | INTEGER :: I,J,K |
|---|
| 72 | !********************************************************************** |
|---|
| 73 | !---------------------------------------------------------------------- |
|---|
| 74 | DO J=JS,JE |
|---|
| 75 | DO K=KS,KE |
|---|
| 76 | DO I=IS,IE |
|---|
| 77 | ARR2(I,K,J)=0. |
|---|
| 78 | ENDDO |
|---|
| 79 | ENDDO |
|---|
| 80 | ENDDO |
|---|
| 81 | !---------------------------------------------------------------------- |
|---|
| 82 | END SUBROUTINE ZERO3 |
|---|
| 83 | !********************************************************************** |
|---|
| 84 | !---------------------------------------------------------------------- |
|---|
| 85 | END MODULE MODULE_ZEROX |
|---|