diff --git a/sorc/prepobs_cqcbufr.fd/cqcbufr.f b/sorc/prepobs_cqcbufr.fd/cqcbufr.f index 0a12ac6..aa96f5e 100644 --- a/sorc/prepobs_cqcbufr.fd/cqcbufr.f +++ b/sorc/prepobs_cqcbufr.fd/cqcbufr.f @@ -409,6 +409,7 @@ PROGRAM PREPOBS_CQCBUFR CALL TMPCHK ! Perform temporal check ELSE CALL SETTMP + ENDIF CALL HORRES ! Calculate horizontal residuals CALL STAT(ITIME) ! Calculate & print statistics @@ -482,9 +483,7 @@ PROGRAM PREPOBS_CQCBUFR CALL WTISO CALL CLOSBF(NFIN) CALL CLOSBF(NFOUT) - CALL W3TAGE('PREPOBS_CQCBUFR') - STOP END C********************************************************************** @@ -927,7 +926,7 @@ SUBROUTINE AREA(IA,X,Y) C$$$ SUBROUTINE AUXLEVS(SKIP,SAME,WIND,SINGLE,ANYS) - PARAMETER (NST=999) + PARAMETER (NST=2499) COMMON /HEADER/ SID(NST), DHR(NST), XOB(NST), YOB(NST), & ELV(NST), SQN(NST), ITP(NST), NLV, @@ -1127,7 +1126,7 @@ SUBROUTINE CHANGE(ANY,SINGLE,SEQLP) REAL(8) BMISS SAVE IEVOLD - PARAMETER (NST=999) + PARAMETER (NST=2499) COMMON /HEADER/ SID(NST), DHR(NST), XOB(NST), YOB(NST), & ELV(NST), SQN(NST), ITP(NST), NLV, & NEV, ISF(NST), NLVM, NLVW @@ -1691,7 +1690,7 @@ SUBROUTINE CHKTMP(A,C,R,ICK) C$$$ SUBROUTINE CKPS - PARAMETER (NST=999) + PARAMETER (NST=2499) COMMON /HEADER/ SID(NST), DHR(NST), XOB(NST), YOB(NST), & ELV(NST), SQN(NST), ITP(NST), NLV, @@ -1790,7 +1789,7 @@ SUBROUTINE CKPS C$$$ SUBROUTINE COMPER(L,LM) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -2280,7 +2279,7 @@ SUBROUTINE DHOR REAL(8) BMISS SAVE IEVOLD - PARAMETER (NST=999) + PARAMETER (NST=2499) COMMON /MANRES/ ZIM(21,NST),TIM(21,NST),TDIM(21,NST),QIM(21,NST), & ZHM(21,NST),THM(21,NST),TDHM(21,NST),QHM(21,NST), & ZVM(21,NST),TVM(21,NST),TDVM(21,NST),QVM(21,NST), @@ -2408,7 +2407,7 @@ SUBROUTINE DHOR SUBROUTINE DISTR(X,MSK,XLIM,XMSG,NX,N,NDIV,DDIV, & NZERO,DZERO,NS,X1,SD,SK,XK) - PARAMETER (NST=999) + PARAMETER (NST=2499) INTEGER N(23), MSK(NST) REAL X(NST),XLIM(2) @@ -2517,7 +2516,7 @@ SUBROUTINE DISTR(X,MSK,XLIM,XMSG,NX,N,NDIV,DDIV, C$$$ SUBROUTINE DMA(ANY,OBS) - PARAMETER (NST=999) + PARAMETER (NST=2499) COMMON /HEADER/ SID(NST), DHR(NST), XOB(NST), YOB(NST), & ELV(NST), SQN(NST), ITP(NST), NLV, & NEV, ISF(NST), NLVM, NLVW @@ -2752,7 +2751,7 @@ SUBROUTINE DRCTSL(FAALL,RAALL,DOTPRD,NDIM,MAXDIM,NXXYY,NFT,LEV,IV) C$$$ SUBROUTINE ERR123(L,LM) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -3289,7 +3288,7 @@ SUBROUTINE ERR123(L,LM) C$$$ SUBROUTINE ERR5(L,LM) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -3583,7 +3582,7 @@ SUBROUTINE ERR5(L,LM) C$$$ SUBROUTINE ERR710(L,LM) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -4211,7 +4210,7 @@ SUBROUTINE ERR710(L,LM) C$$$ SUBROUTINE ERRTYP - PARAMETER (NST=999) + PARAMETER (NST=2499) COMMON /HEADER/ SID(NST), DHR(NST), XOB(NST), YOB(NST), & ELV(NST), SQN(NST), ITP(NST), NLV, @@ -4569,7 +4568,7 @@ SUBROUTINE EVENTW(LUNIT,EVNSTR,NLV,OBS,QMS,RCS,IND,NEVN,QCPC) C$$$ SUBROUTINE EVPROC(I1,I2,ICALL) - PARAMETER (NST=999) + PARAMETER (NST=2499) COMMON /EVENTS/ STN(2000), SEQN(2000), ISCAN(2000), & LEVL(2000), PRES(2000), LTYP(2000), @@ -4831,7 +4830,7 @@ SUBROUTINE EVPROC(I1,I2,ICALL) C$$$ SUBROUTINE FILALL(SAME,WIND) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -5260,7 +5259,7 @@ SUBROUTINE FILL(OBS,NLEV) C C$$$ SUBROUTINE FULVAL(WIND) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -5613,7 +5612,7 @@ SUBROUTINE FUZZY(P,XI,XV,XH,B,PER) C$$$ SUBROUTINE GETINC(WIND) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -5799,7 +5798,7 @@ SUBROUTINE GETINC(WIND) C SUBROUTINE GETLEV(WIND) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -6194,7 +6193,7 @@ SUBROUTINE GETPS(PS,ZS,Z1,T1,P1) C$$$ SUBROUTINE HOLES - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -6287,7 +6286,7 @@ SUBROUTINE HOLES C$$$ SUBROUTINE HORRES - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -6540,7 +6539,7 @@ SUBROUTINE HORRES C$$$ SUBROUTINE HSC - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -6809,7 +6808,7 @@ SUBROUTINE HSC C$$$ SUBROUTINE INCR(ITIME) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -7037,7 +7036,7 @@ SUBROUTINE INCR(ITIME) C$$$ SUBROUTINE INCRW - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -7128,7 +7127,7 @@ SUBROUTINE INCRW C C$$$ SUBROUTINE INIT - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -7211,7 +7210,7 @@ SUBROUTINE INIT SUBROUTINE INPUT(START,ENDIN,SKIP,SAME,WIND,ITIME,USESQN) SAVE - PARAMETER (NST=999) ! maximum number of stations + PARAMETER (NST=2499) ! maximum number of stations PARAMETER (MVO=5) ! p,T,z,q,Td PARAMETER (MLV=255) ! number of possible levels PARAMETER (MEV=13) ! number of possible programs/events @@ -7786,7 +7785,7 @@ SUBROUTINE INPUT(START,ENDIN,SKIP,SAME,WIND,ITIME,USESQN) C$$$ SUBROUTINE INPUT2 - PARAMETER(NST=999) + PARAMETER(NST=2499) REAL(8) BMISS,RIT_8,HDR_8(10),UPA_8(10,255) @@ -7990,7 +7989,7 @@ SUBROUTINE INPUT2 C$$$ SUBROUTINE ISGOOD - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -8236,7 +8235,7 @@ SUBROUTINE ISGOOD C C$$$ SUBROUTINE ISOLAT(ID) - PARAMETER (NST=999) + PARAMETER (NST=2499) C C COLLECT LIST OF ISOLATED STATIONS. @@ -8297,7 +8296,7 @@ SUBROUTINE ISORT(IA,INDX,N) C SORT IA ACCORDING TO THE ORDER SPECIFIED BY THE C INDICES IN INDX. - PARAMETER (NST=999) + PARAMETER (NST=2499) DIMENSION IA(*), IKSP(NST) INTEGER INDX(*) DO J=1,N @@ -8336,7 +8335,7 @@ SUBROUTINE ISORT(IA,INDX,N) C$$$ SUBROUTINE LAPSE - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -8458,7 +8457,7 @@ SUBROUTINE LAPSE C$$$ SUBROUTINE LEVTYPS - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -8761,7 +8760,7 @@ FUNCTION MANLEV(P) C C$$$ SUBROUTINE MASEVN - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -9172,7 +9171,7 @@ FUNCTION NMANLV(P) C$$$ SUBROUTINE NOBERR - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -9397,7 +9396,7 @@ SUBROUTINE NOBERR C$$$ SUBROUTINE OBERR - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -9989,7 +9988,7 @@ SUBROUTINE PEVENTS C$$$ SUBROUTINE POBERR - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -10257,7 +10256,7 @@ SUBROUTINE POBERR C$$$ SUBROUTINE PRNTOUT(SEQLP,ICALL) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -10559,7 +10558,7 @@ SUBROUTINE PRNTOUT(SEQLP,ICALL) C$$$ SUBROUTINE PRSTNS(WIND) - PARAMETER (NST=999) + PARAMETER (NST=2499) COMMON /HEADER/ SID(NST), DHR(NST), XOB(NST), YOB(NST), & ELV(NST), SQN(NST), ITP(NST), NLV, & NEV, ISF(NST), NLVM, NLVW @@ -10727,7 +10726,7 @@ SUBROUTINE PRSTNS(WIND) C$$$ C----------------------------------------------------------------------- SUBROUTINE QCOI(LDIM,IDIM,L0,IV0,NOB1,NOB2,IDH,OINC,HRES,HSTD,WTS) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -10757,7 +10756,8 @@ SUBROUTINE QCOI(LDIM,IDIM,L0,IV0,NOB1,NOB2,IDH,OINC,HRES,HSTD,WTS) DATA MAXDIM /4/ DATA MINDIM /2/ - DATA MAXOBS /1000/ +C DATA MAXOBS /1000/ + DATA MAXOBS /2500/ DATA NFT /1/ C----------------------------------------------------------------------- @@ -10982,7 +10982,7 @@ SUBROUTINE QCOI(LDIM,IDIM,L0,IV0,NOB1,NOB2,IDH,OINC,HRES,HSTD,WTS) C$$$ SUBROUTINE RBLOCKS(SKIP,WIND,ENDIN) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -11292,7 +11292,7 @@ SUBROUTINE ROUND(VAL,P,IV) C C$$$ SUBROUTINE SEARCH(LDIM,IDIM,L0,IV0,NOB1,NOB2,IDH,OINC,OG) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -11492,7 +11492,7 @@ SUBROUTINE SEARCH(LDIM,IDIM,L0,IV0,NOB1,NOB2,IDH,OINC,OG) C C$$$ SUBROUTINE SETTMP - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -11752,7 +11752,7 @@ SUBROUTINE SHELL(V,IV,MAX,IREV) C$$$ SUBROUTINE SIGERR(LM) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -12090,7 +12090,7 @@ SUBROUTINE SORT(RA,INDX,N) C SORT RA ACCORDING TO THE ORDER SPECIFIED BY THE C INDICES IN INDX. C - PARAMETER (NST=999) + PARAMETER (NST=2499) DIMENSION RA(*), WKSP(NST) INTEGER INDX(*) @@ -12139,7 +12139,7 @@ SUBROUTINE SORT(RA,INDX,N) C$$$ SUBROUTINE STAT(ITIME) - PARAMETER (NST=999) + PARAMETER (NST=2499) C C CALCULATE STATISTICS: @@ -13069,7 +13069,7 @@ SUBROUTINE STNCNT C$$$ SUBROUTINE STYPE - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -13212,7 +13212,7 @@ SUBROUTINE STYPE C$$$ SUBROUTINE T120(L,LM) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -13319,7 +13319,7 @@ SUBROUTINE T120(L,LM) C$$$ SUBROUTINE T121(L,LM) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -13394,7 +13394,7 @@ SUBROUTINE T121(L,LM) C$$$ SUBROUTINE T130(L,LM) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -13528,7 +13528,7 @@ SUBROUTINE T130(L,LM) C$$$ SUBROUTINE T140(L,LM) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -13612,7 +13612,7 @@ SUBROUTINE T140(L,LM) C$$$ SUBROUTINE T220(L,LM) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -13770,7 +13770,7 @@ SUBROUTINE T220(L,LM) C$$$ SUBROUTINE T240(L,LM) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -14194,7 +14194,7 @@ SUBROUTINE T240(L,LM) C C$$$ SUBROUTINE TMPCHK - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -14326,7 +14326,7 @@ SUBROUTINE TMPCHK C$$$ SUBROUTINE VOI(ITIME) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -14796,7 +14796,7 @@ SUBROUTINE VSOLVE (A,B,NDIM,BAD,NFT,NS,MAXDIM) C C$$$ SUBROUTINE VTPEVN(DOVTMP) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -14936,7 +14936,7 @@ SUBROUTINE VTPEVN(DOVTMP) C$$$ SUBROUTINE WBLOCKS - PARAMETER (NST=999) + PARAMETER (NST=2499) COMMON /HEADER/ SID(NST), DHR(NST), XOB(NST), YOB(NST), & ELV(NST), SQN(NST), ITP(NST), NLV, @@ -15039,7 +15039,7 @@ SUBROUTINE WBLOCKS C$$$ SUBROUTINE WINDATZ(SAME) - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -15279,7 +15279,7 @@ SUBROUTINE WINDATZ(SAME) C C$$$ SUBROUTINE WTISO - PARAMETER (NST=999) + PARAMETER (NST=2499) COMMON /ISO/ IDISO(NST),NUM,ISISO LOGICAL ISISO WRITE(6,600) @@ -15413,7 +15413,7 @@ SUBROUTINE WTSTATS C$$$ SUBROUTINE XHORRES - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS @@ -15505,7 +15505,7 @@ SUBROUTINE XHORRES C$$$ SUBROUTINE ZDIF - PARAMETER (NST=999) + PARAMETER (NST=2499) REAL(8) BMISS diff --git a/sorc/prepobs_cqcbufr.fd/radcor.f b/sorc/prepobs_cqcbufr.fd/radcor.f index 2c88733..864fe1a 100644 --- a/sorc/prepobs_cqcbufr.fd/radcor.f +++ b/sorc/prepobs_cqcbufr.fd/radcor.f @@ -82,7 +82,7 @@ C C$$$ SUBROUTINE RADEVN - PARAMETER (NST=999) + PARAMETER (NST=2499) PARAMETER (NRID=800) ! max # of raob ids listed per inst. type REAL(8) BMISS @@ -166,7 +166,6 @@ SUBROUTINE RADEVN C INITIALIZE ALL UNCORRECTED HEIGHTS AND TEMPS AS MISSING C ------------------------------------------------------- - KMIN = LEVRAD KMAX = 16 DHT = 0 @@ -179,14 +178,12 @@ SUBROUTINE RADEVN IN = BMISS INM = 0 - ALON = MOD(720.+360.-XOB(IS),360.) JTYPE = ITP(IS) IF(JTYPE.LE.0 .OR. (JTYPE.GE.255.AND.JTYPE.NE.20000)) JTYPE = 255 IF(JTYPE.NE.20000) CALL TAB(JTYPE) ! (inst. type may be set to ! 20000 for special cases in ! cqcbufr.f) - IF(IRCTBL.EQ.1) THEN C COME HERE FOR IRCTBL=1 CORRECTIONS (OLDEST TABLES) @@ -194,7 +191,6 @@ SUBROUTINE RADEVN C NEW CHECKS FOR THE NEW RADIOSONDE TYPES C --------------------------------------- - IF(JTYPE.EQ.14) JTYPE = 4 ! VAISALA (IN/OUT OF FINLAND) IF(JTYPE.EQ.20) JTYPE = 12 ! RUSSIAN RKZ @@ -207,14 +203,12 @@ SUBROUTINE RADEVN C ---------------------------------------------------- IF(SID(IS)(1:1).EQ.'5') JTYPE = 19 - ENDIF BAL_DRIFT = .TRUE. C FILL THE MANDATORY LEVEL EVENT AND CORRECTION ARRAYS FOR THIS REPORT C -------------------------------------------------------------------- - DO L=1,NLV M = MANLEV(POB(L)) IF(M.GT.0 .AND. M.LE.KMAX) THEN @@ -225,7 +219,6 @@ SUBROUTINE RADEVN $ BAL_DRIFT = .FALSE. ENDIF ENDDO - WRITE (68,*) IF(.NOT.BAL_DRIFT) THEN WRITE(68,'(" Report ",A," does not have balloon drift ", @@ -235,7 +228,6 @@ SUBROUTINE RADEVN WRITE(68,'(" Report ",A," has balloon drift coordinates - use", & " ""new"" method for determining sun angle")') SID(IS) END IF - C CALL APPROPRIATE SUBROUTINE TO APPLY CORRECTIONS - SAVE DELTAS C --------------------------------------------------------------