subroutine clmout i (iview) c c + + + PURPOSE + + + c Calculates daily and monthly values for options 1 and 2. Writes c output to screen for option 1. c c + + + ARGUMENT DECLARATIONS + + + integer iview c c + + + ARGUMENT DEFINITIONS + + + c iview - c c + + + COMMON BLOCKS + + + include 'cbk4.inc' c read: nc,iopt c nc - Number of days in the (non-leap) year preceeding each month. c iopt - Weather Generator Options: c 1 - Single Year Simulation - Screen Output c 2 - Multiple Year - Screen Output',/, c 3 - Multiple Year Simulation - CREAMS - GLEAMS Output File c 4 - Selected Single Storm WEPP - Output File c 5 - Multiple Year - WEPP Output File c 6 - Read Observed P and Temp and Generate Missing Data c 7 - Single Design Storm - TR 55 Storm Type WEPP Output Filec 8 - Exit Weather Generator Program c include 'ccl1.inc' c read: prcip,tgmx,tgmn,radg,dur c prcip - ??? Avg. Daily Precip? Set to R. Divided by NUMYR and c added to SUMP. c tgmx - ??? Avg. Max Daily Temp? Set to TMXG. Divided by NUMYR c and added to SUMTX. c tgmn - ??? Avg. Min Daily Temp? Set to TMNG. Divided by NUMYR c and added to SUMTM. c radg - Daily Solar Radiation (Langleys/Day) c dur - Storm Duration in Hours for Single Storm. c include 'csumr.inc' c modify: sump,sumtx,sumtm,sumrd,sumdr c sump - [Avg Annual] Sum of Daily Precip? c sumtx - [Avg Annual] Sum of Daily Max Temps? c sumtm - [Avg Annual] Sum of Daily Min Temps? c sumrd - [Avg Annual] Sum of Daily Radiation? c sumdr - Sum of Storm Durations? c c + + + LOCAL VARIABLES + + + integer i, j real an c + + + OUTPUT FORMATS + + + 2000 format(/1x,'Climate Data Viewing Options',/,1x,7('-'), 11x,4('-'),1x,7('-'),1x,7('-'),/,1x,'1 - Precipitation',/,1x, 1'2 - Maximum Air Temperature',/,1x,'3 - Minimum Air', 1' Temperature',/,1x,'4 - Solar Radiation',/,1x,'5 - Storm', 1' Duration',/,1x,'6 - End',//,1x,'Enter viewing option') 2010 format(20x,'Daily Precipitation Amounts (Inches)'/) 2020 format(1x,' J F M A M J J A', 1' S O N D') 2030 format(1x,i2,12f6.2) 2040 format(/1x,'tot',f5.2,11f6.2) 2050 format(/1x,'Annual Precipitation ',f6.2/) 2060 format(/20x,'Daily Maximum Air Temperature (F)'/) 2070 format(1x,i2,12f6.0) 2080 format(/1x,'ave',f5.0,11f6.0/) 2090 format(/20x,'Daily Minimum Air Temperature (F)'/) 2100 format(1x,i2,12f6.0) 2110 format(/20x,'Daily Solar Radiation (Langleys) '/) 2120 format(1x,i2,12f6.0) 2130 format(/20x,'Storm Duration (Hours)'/) 2140 format(1x,i2,12f6.2) c c + + + END SPECIFICATIONS + + + c do 10 i =1,12 sump(i) = 0.0 sumtx(i)= 0.0 sumtm(i)= 0.0 sumrd(i)= 0.0 sumdr(i)= 0.0 10 continue sump(13)= 0.0 do 20 i =1,12 an = nc(i+1)-nc(i) do 20 j =1,31 sump(i)=sump(i)+prcip(i,j) sump(13)=sump(13)+prcip(i,j) sumtx(i)=sumtx(i)+tgmx(i,j)/an sumtm(i)=sumtm(i)+tgmn(i,j)/an sumrd(i)=sumrd(i)+radg(i,j)/an sumdr(i)=sumdr(i)+dur(i,j) 20 continue c if(iopt.ne.2 .and. iview.ne.0) then 30 continue write(*,2000) read(*,*)i if(i.eq.1) then write(*,2010) write(*,2020) write(*,2030)(j,(prcip(i,j),i=1,12),j=1,31) write(*,2020) write(*,2040)(sump(i),i=1,12) write(*,2050)sump(13) elseif(i.eq.2) then write(*,2060) write(*,2020) write(*,2070)(j,(tgmx(i,j),i=1,12),j=1,31) write(*,2020) write(*,2080)(sumtx(i),i=1,12) elseif(i.eq.3) then write(*,2090) write(*,2020) write(*,2100)(j,(tgmn(i,j),i=1,12),j=1,31) write(*,2020) write(*,2080)(sumtm(i),i=1,12) elseif(i.eq.4) then write(*,2110) write(*,2020) write(*,2120)(j,(radg(i,j),i=1,12),j=1,31) write(*,2020) write(*,2080)(sumrd(i),i=1,12) elseif(i.eq.5) then write(*,2130) write(*,2020) write(*,2140)(j,(dur(i,j),i=1,12),j=1,31) write(*,2020) write(*,2040)(sumdr(i),i=1,12) endif c -- XXX -- How does one EXIT this loop? -- CRM -- 10/18/99 c Replaced statement below: CRM -- 11/10/99 c goto 30 if(i.gt.0 .and. i.lt.6) goto 30 endif c 90 continue return end