SUBROUTINE IRLMTW(KFILDO,ID,IDPARS,CCALL,LNDSEA,LTAG, 1 K,L,LL,ICANADA,IREPL,ISTOP,IER) C C APRIL 2014 GLAHN TDL MOS-2000 C MAY 2014 GLAHN INCREMENTED ISTOP(1) ON ERROR C JUNE 2014 GLAHN CORRECTED COMMNETS C C PURPOSE C TO SET IREPL( ) FOR THE FOLLOWING L. C C L TYPE ELEMENT C C 20 " TOTAL LAMP WIND SPEED (TW) C C TW HAS FOUR LEVELS OF AUGMENTATION: C (1) LAMP GUSTS, C (2) MOS GUSTS, AND C (3) 0-H GUSTS. C (4) -1-H GUSTS. C C FOR LAMP TOTAL WIND, ALL AREAS (CANADA, WATER, LAND) ARE C TREATED THE SAME, AND ALL AUGMENTATION LEVELS (LAMP, MOS C OR OBS) ARE TREATED THE SAME. ONCE A VALUE IN LAMP C ANALYSIS IS TOSSED, THE STATION IS NEVER USED AGAIN. C C DATA SET USE C KFILDO - UNIT NUMBER FOR OUTPUT (PRINT) FILE. (OUTPUT) C C VARIABLES C KFILDO = UNIT NUMBER FOR OUTPUT (PRINT) FILE. (INPUT) C ID(J) = 4-WORD ID OF VARIABLE TO PROVIDE FIRST GUESS FOR C (J=1,4). (INPUT) C IDPARS(J) = THE PARSED, INDIVIDUAL COMPONENTS OF THE C VARIABLE ID'S CORRESPONDING TO ID( ,N) C CCALL = CALL LETTERS OF STATION BEING DEALT WITH. C (CHARACTER*8) (INPUT) C LNDSEA = LAND/SEA INFLUENCE FLAG FOR STATION BEING C DEALT WITH). C 0 = WILL BE USED FOR ONLY OCEAN WATER (=0) C GRIDPOINTS. C 3 = WILL BE USED FOR ONLY INLAND WATER (=3) C GRIDPOINTS. C 6 = WILL BE USED FOR BOTH INLAND WATER (=3) C AND LAND (=9) GRIDPOINTS. C 9 = WILL BE USED FOR ONLY LAND (=9) GRIDPOINTS. C (INPUT) C LTAG = DENOTES USE OF DATA CORRESPONDING TO CCALL. C +4 = TOSSED IN A PREVIOUS OBS RUN AND C MAINTAINED DOWNSTREAM. C +2 = NOT USED FOR ANY PURPOSE. FLTAG SETS C A VALUE +2 WHEN THE STATION LOCATION C IS MISSING. C +1 = PERMANENTLY DISCARDED FOR THE VARIABLE C BEING ANALYZED. INCLUDES DATA FAR C OUTSIDE THE GRID, AS DEFINED BY RMAX C 0 = USE ON CURRENT PASS THROUGH DATA. C -1 = DO NOT USE ON THIS PASS (INCOMING). C SET TO 4 (OUTGOING). C -3 = ACCEPT THIS STATION ON EVERY PASS. THIS C FEATURE MAY OR MAY NOT BE IMPLEMENTED IN C THE CALLING PROGRAM. C (INPUT/OUTPUT) C K = NUMBER OF STATION. (INPUT) C L = NUMBER OF VARIABLE. (INPUT) C LL = LEVEL OF AUGMENTATION. (INPUT) C ICANADA = 1 WHEN THE STATION IS IN NORTH CANADA. C 0 OTHERWISE. (INPUT) C IREPL(NN) = 1 WHEN A STATION IS TO BE USED (NN=1); 1 WHEN A C STATION IS USED IF THERE CAN BE NO ADJUSTMENT C (NN=1,2). INCOMING VALUES WILL BE WHATEVER C THEY WERE FOR THE LAST STATION, AND WILL C ALWAYS BE MODIFIED. (OUTPUT) C ISTOP = WHEN AN ERROR OCCURS, INCREMENT ISTOP BY 1. C (INPUT/OUTPUT) C IER = ERROR CODE. C 0 = GOOD RETURN. C 777 = SUBROUTINE DOES NOT ACCOMMODATE VALUE OF C L. CONSIDER FATAL. C IFIRST(J) = INITIALLY SET TO ZERO. WHEN THIS ROUTINE IS C FIRST ENTERED CORRECTLY FOR A PARTICULAR VALUE C OF L, TIMPR IS CALLED AND IFIRST(L) IS C SET TO 1 (J=1,30). (INTERNAL) C 1 2 3 4 5 6 7 X C C NONSYSTEM SUBROUTINES USED C TIMPR C CHARACTER*8 CCALL C DIMENSION ID(4),IDPARS(15) DIMENSION ISTOP(3),IREPL(2),IFIRST(30) C DATA IFIRST/30*0/ C SAVE IFIRST C IER=0 C CCCC IF(CCALL.EQ.'44137 ')THEN CCCC WRITE(KFILDO,100)K,L,LL,ICANADA,CCALL,LNDSEA, CCCC 1 LTAG,IREPL(1),IREPL(2) CCCC 100 FORMAT(/,' AT 100 IN IRLMTW--K,L,LL,ICANADA,CCALL,', CCCC 1 'LNDSEA,LTAG,IREPL(1),IREPL(2)',/, CCCC 2 4I7,2X,A8,4I4) CCCC ENDIF C C IF(L.EQ.20)THEN C THIS IS FOR LAMP TOTAL WIND. C IF(IFIRST(L).EQ.0)THEN CALL TIMPR(KFILDO,KFILDO,'START IRLMTW ') C THIS WILL PRINT ONCE FOR THIS VARIABLE. IFIRST(L)=1 ENDIF C IF(LTAG.EQ.0)THEN C IREPL(1)=1 IREPL(2)=1 C ALL GUSTS ARE USED UNADJUSTED. NO DELTA C IS USED FOR GUSTS. C ELSE C IREPL(1)=0 IREPL(2)=0 C IF A VALUE IN LAMP ANALYSIS WAS TOSSED C (LTAG = -1), OR AN OB OR MOS WAS TOSSED C PREVIOUSLY (LTAG = 4), GUSTS WILL NOT BE USED. C ALSO, ANY OTHER VALUE OF LTAG INDICATES TO NOT USE. ENDIF C ELSE WRITE(KFILDO,200)L 200 FORMAT(/' ****ENTERED IRLMTW INCORRECTLY, L =',I4) IER=777 ISTOP(1)=ISTOP(1)+1 ENDIF C CCCC IF(CCALL.EQ.'44137 ')THEN CCCC WRITE(KFILDO,300)K,L,LL,ICANADA,CCALL,LNDSEA, CCCC 1 LTAG,IREPL(1),IREPL(2) CCCC 300 FORMAT(/,' AT 300 IN IRLMTW--K,L,LL,ICANADA,CCALL,', CCCC 1 'LNDSEA,LTAG,IREPL(1),IREPL(2)',/, CCCC 2 4I7,2X,A8,4I4) CCCC ENDIF C RETURN C END