SUBROUTINE RESPW(DRPTPW,DPW,RMAXERR,TTYPES,MPWDAT) C$$$ SUBPROGRAM DOCUMENTATION BLOCK C . . . . C SUBPROGRAM: RESPW CHECK FOR GROSS ERRORS AND PRINT STATS C PRGMMR: DERBER ORG: W/NMC23 DATE: 91-02-25 C C ABSTRACT: CHECK P.W. FOR GROSS ERRORS AND PRINT STATS. C C PROGRAM HISTORY LOG: C 91-03-25 DERBER C C INPUT ARGUMENT LIST: C DRPTPW - OBS TYPE IN, OBS ERROR OUT (MM UNITS) C DPW - P.W. (MM; FULL VALUE IN, RESIDUAL OUT) C RMAXERR - MAXIMUM ERROR C TTYPES - PREPDA OBSERVATION TYPES C MPWDAT - NUMBER OF OBSERVATIONS C C OUTPUT ARGUMENT LIST: C AS INDICATED ABOVE C C ATTRIBUTES: C LANGUAGE: CFT77 C MACHINE: CRAY YMP C C$$$ C-------- C C-CRA DIMENSION DRPTPW(MPWDAT) C-CRA DIMENSION DPW(MPWDAT) C-CRA DIMENSION TTYPES(MPWDAT) C-CRA DIMENSION RMAXERR(MPWDAT) C-CRA DIMENSION RSPRES(MPWDAT) C DIMENSION DRPTPW(_MPWDAT_) C DIMENSION DPW(_MPWDAT_) C DIMENSION TTYPES(_MPWDAT_) C DIMENSION RMAXERR(_MPWDAT_) C DIMENSION RSPRES(_MPWDAT_) DIMENSION DRPTPW(1) DIMENSION DPW(1) DIMENSION TTYPES(1) DIMENSION RMAXERR(1) DIMENSION RSPRES(1) C-------- C-------- LOCAL ARRAYS C-------- C-------- C-------- CHECK FOR GROSS ERRORS IN THE PRECIPITABLE WATER C-------- NGROSS=0 GRSMLT=3. DO 118 I=1,MPWDAT IF(ABS(DPW(I)).GT.GRSMLT*RMAXERR(I))THEN DRPTPW(I)=0.0 NGROSS=NGROSS+1 END IF 118 CONTINUE IF(NGROSS .GT. 0)WRITE(6,950)GRSMLT,NGROSS 950 FORMAT(' GRSMLT=',F7.1,' NUMBER OF BAD P.W. OBS=',I8) C-------- C-------- NOW DO STATISTICS SUMMARY C-------- SCALE=1 PTOP=0. PBOT=2000. C-CRA RSPRES=1. C DIMENSION RSPRES(MPWDAT) DO ITMP=1,MPWDAT RSPRES(ITMP)=1. ENDDO CALL DTAST(TTYPES,DPW,SCALE,MPWDAT,RSPRES,PBOT,PTOP, * 'CURRENT FIT OF PRECIP. WATER DATA, RANGES IN MM$') RETURN END