亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? elcirc5_01_01c.f90

?? 河口模型 使用模擬鹽水入侵、熱量擴散等等 河口模型 使用模擬鹽水入侵、熱量擴散
?? F90
?? 第 1 頁 / 共 5 頁
字號:
          do it=1,iths            read(51,*) ttt,qq          enddo !it        endif      	if(ntetype>0) then          do it=1,iths            read(52,*) ttt,te          enddo !it      	endif      	if(nsatype>0) then          do it=1,iths            read(53,*) ttt,sal          enddo !it      	endif!...  end hot start section!...      endif !ihot.ne.0      if(nscreen.eq.1) write(*,*)'done initializing variables...'      write(16,*)'done initializing variables...'!                                                                             *!******************************************************************************!                                                                             *!			open output files				      *!                                                                             *!******************************************************************************!                                                                             *!...  write global output headers!...      if(ihot<=1) then   	ifile=1 !output file #!       Convert it to a string      	write(ifile_char,'(i12)') ifile      endif      call header      if(nscreen.eq.1) write(*,*)'done initializing outputs'      write(16,*)'done initializing outputs'!                                                                             *!******************************************************************************!                                                                             *!	    	          Time stepping 				      *!                                                                             *!******************************************************************************!                                                                             *      if(ihot.eq.0) iths=0      if(nscreen.eq.1) write(*,*)'time stepping begins...',iths+1,nt      write(16,*)'time stepping begins...',iths+1,nt!...  Compute initial levels      call levels(iths,iths,itur)      if(nscreen.eq.1) write(*,*)'done computing initial levels...'      write(16,*)'done computing initial levels...'!...  Compute total # of active faces      nfaces=0      do i=1,ns        if(kfs(i)/=0) nfaces=nfaces+kfs(i)-kbs(i)+1      enddo !i=1,ns      if(nscreen.eq.1) write(*,*)'Total # of faces=',nfaces      write(16,*)'Total # of faces=',nfaces!...  Compute nodal vel.       call nodalvel      if(nscreen.eq.1) write(*,*)'done computing initial nodal vel...'      write(16,*)'done computing initial nodal vel...'!...  Compute initial density      call eqstate      if(nscreen.eq.1) write(*,*)'done computing initial density...'      write(16,*)'done computing initial density...'!...  Store initial elevation field (hot start) for relaxation in sponge layer!...      do i=1,ne        etaic(i)=eta1(i)      enddo!...  For UB & MYG, compute vertical diffusivities at whole levels       if(itur.eq.3) then        do i=1,ns    	  do j=kbs(i),kfs(i) !wet sides	    call asm(g,i,j,vd,td,qd,qd2)            vdiff(i,j)=dmin1(diffmax(i),dmax1(bgiff,vd))            tdiff(i,j)=dmin1(diffmax(i),dmax1(bgdiff,td))            qdiff(i,j)=dmin1(diffmax(i),dmax1(bgdiff,qd))            qdiff2(i,j)=dmin1(diffmax(i),dmax1(bgdiff,qd2))          enddo !j=kbs(i),kfs(i)        enddo !i=1,ns      endif !itur=3!...  Initialize heat budget model      if(nws==2.and.ihconsv/=0) then        call surf_fluxes(wtime1,windx1,windy1,pr1,airt1,shum1,&     &srad,fluxsu,fluxlu,hradu,hradd,tauxz,tauyz)      	do i=1,np          sflux(i)=-fluxsu(i)-fluxlu(i)-(hradu(i)-hradd(i))      	enddo      	if(nscreen.eq.1) write(*,*)'heat budge model completes...'      	write(16,*)'heat budge model completes...'      endif!...!...  Begin time stepping!...      do it=iths+1,nt      time=it*dt !...  define ramp function for boundary elevation forcing, wind and pressure!...  forcing and tidal potential forcing!...      if(ibc.eq.0.and.nrampbc.ne.0) then        rampbc=tanh(2*time/86400/drampbc)      else      	rampbc=1      endif      if(nws.gt.0.and.nrampwind.ne.0) then        rampwind=tanh(2*time/86400/drampwind)      else        rampwind=1      endif      if(nramp.eq.1) then 	ramp=tanh(2*time/86400/dramp)      	ramptide=ramp      else        ramp=1        ramptide=1      endif!...  Bottom friction apart from the vel. magnitude!	Error: shall we change tk back to no-btrack?      do i=1,ns      	if(ntau.eq.0) then          Cd(i)=Cd0      	else if(ntau.eq.1) then          if(dps(i).le.hestu) then            bthick=bthick_estu !thickness of boundary layer (in meters)          else if(dps(i).le.hcont) then            bthick=bthick_cont          else !dps(i) > hcont            bthick=bthick_ocea          endif          gthick=dmax1(dz(i,kbs(i))/2,bthick_estu) !thickness of half bottom layer          Cd(i)=1/(2.5*dlog(gthick/1.0d-2))**2           Cdmin=1/(2.5*dlog(bthick/1.0d-2))**2           Cd(i)=dmax1(Cd(i),Cdmin)        else !ntau=2          Cd(i)=bdragc(i)        endif        tk(i)=0 !initialize for some weird sides      enddo !i=1,ns      if(nscreen.eq.1) write(*,*)'done Smag. and bottom fric...'      write(16,*)'done Smag. and bottom fric...'      !...  process new wind info !...      if(nws.eq.1) then        if(time.gt.wtime2) then          wtime1=wtime2          wtime2=wtime2+wtiminc          read(22,*) wx2,wy2          do i=1,np            windx1(i)=windx2(i)            windy1(i)=windy2(i)            windx2(i)=wx2            windy2(i)=wy2          enddo        endif        wtratio=(time-wtime1)/wtiminc!	Compute wind at nodes for output only        do i=1,np          windxp(i)=windx1(i)+wtratio*(windx2(i)-windx1(i))          windyp(i)=windy1(i)+wtratio*(windy2(i)-windy1(i))        enddo !i        do i=1,ns          n1=isidenode(i,1)          n2=isidenode(i,2)          windx1_s=(windx1(n1)+windx1(n2))/2          windx2_s=(windx2(n1)+windx2(n2))/2          windy1_s=(windy1(n1)+windy1(n2))/2          windy2_s=(windy2(n1)+windy2(n2))/2          windx(i)=windx1_s+wtratio*(windx2_s-windx1_s)          windy(i)=windy1_s+wtratio*(windy2_s-windy1_s)        enddo      endif !nws=1!	CORIE mode      if(nws.eq.2) then        if(time>=wtime2) then!...      Heat budget & wind stresses          if(ihconsv.ne.0) then            call surf_fluxes(wtime2,windx2,windy2,pr2,airt2,shum2,&     &srad,fluxsu,fluxlu,hradu,hradd,tauxz,tauyz)            do i=1,np     	      sflux(i)=-fluxsu(i)-fluxlu(i)-(hradu(i)-hradd(i))            enddo            if(nscreen.eq.1) write(*,*)'heat budge model completes...'            write(16,*)'heat budge model completes...'          endif !ihconsv.ne.0          wtime1=wtime2          wtime2=wtime2+wtiminc          do i=1,np            windx1(i)=windx2(i)            windy1(i)=windy2(i)	    pr1(i)=pr2(i)            airt1(i)=airt2(i)            shum1(i)=shum2(i)          enddo          call get_wind(wtime2,windx2,windy2,pr2,airt2,shum2)        endif !time.ge.wtime2        wtratio=(time-wtime1)/wtiminc!	Compute wind at nodes for output only      	do i=1,np          windxp(i)=windx1(i)+wtratio*(windx2(i)-windx1(i))          windyp(i)=windy1(i)+wtratio*(windy2(i)-windy1(i))        enddo !i        do i=1,ns          n1=isidenode(i,1)          n2=isidenode(i,2)          windx1_s=(windx1(n1)+windx1(n2))/2          windx2_s=(windx2(n1)+windx2(n2))/2          windy1_s=(windy1(n1)+windy1(n2))/2          windy2_s=(windy2(n1)+windy2(n2))/2          windx(i)=windx1_s+wtratio*(windx2_s-windx1_s)          windy(i)=windy1_s+wtratio*(windy2_s-windy1_s)        enddo      endif !nws=2!...  compute wind stress components      dragcmin=1.0d-3*(0.61+0.063*6)      dragcmax=1.0d-3*(0.61+0.063*50)      do i=1,ns        if(nws.eq.0) then	  tau_n(i)=0	  tau_t(i)=0	else if(nws.eq.1.or.nws.eq.2.and.ihconsv.eq.0) then          wmag=dsqrt(windx(i)**2+windy(i)**2)          windn=windx(i)*snx(i)+windy(i)*sny(i)          windt=-windx(i)*sny(i)+windy(i)*snx(i)          dragcoef=1.0d-3*(0.61+0.063*wmag)          dragcoef=dmin1(dmax1(dragcoef,dragcmin),dragcmax)          tau_n(i)=dragcoef*0.001293*wmag*windn*rampwind          tau_t(i)=dragcoef*0.001293*wmag*windt*rampwind	else !nws=2 and ihconsv !=0; tauxz and tauyz defined	  n1=isidenode(i,1)	  n2=isidenode(i,2)	  if(kfp(n1).eq.0.or.kfp(n2).eq.0) then	    tau_n(i)=0	    tau_t(i)=0	  else	    tau_n(i)=(tauxz(n1)+tauxz(n2))/2*snx(i)+(tauyz(n1)+tauyz(n2))/2*sny(i)	    tau_t(i)=-(tauxz(n1)+tauxz(n2))/2*sny(i)+(tauyz(n1)+tauyz(n2))/2*snx(i)	    tau_n(i)=-tau_n(i)/rho0*rampwind !sign and scale difference between stresses tauxz and tau_n	    tau_t(i)=-tau_t(i)/rho0*rampwind	  endif	endif !nws      enddo !i=1,ns      if(nscreen.eq.1) write(*,*)'done adjusting wind stress ...'      write(16,*)'done adjusting wind stress ...'!...  Get new t.h. values fort.5[0-3]!...      if(nettype.gt.0) then        read(50,*) ttt,(ath(i),i=1,nettype)        if(it.eq.iths+1.and.abs(ttt-time).gt.1.e-4) then          write(11,*)'Starting time wrong for eta',it,ttt          stop        endif              icount=0        do k=1,nope          if(iettype(k).eq.1) then            icount=icount+1            if(icount.gt.nettype) then              write(11,*)'Wrong counting 1'              stop            endif            eth(k)=ath(icount)          endif        enddo       endif !nettype.gt.0      if(nfltype.gt.0) then        read(51,*) ttt,(ath(i),i=1,nfltype)        if(it.eq.iths+1.and.abs(ttt-time).gt.1.e-4) then          write(11,*)'Starting time wrong for flux',it,ttt          stop        endif        icount=0      	do k=1,nope          if(ifltype(k).eq.1) then            icount=icount+1            if(icount.gt.nfltype) then              write(11,*)'Wrong counting 2'              stop            endif            qth(k)=ath(icount)          endif        enddo !k      endif      if(ntetype.gt.0) then      	read(52,*) ttt,(ath(i),i=1,ntetype)      	if(it.eq.iths+1.and.abs(ttt-time).gt.1.e-4) then          write(11,*)'Starting time wrong for temp',it,ttt          stop      	endif              	icount=0      	do k=1,nope          if(itetype(k).eq.1) then            icount=icount+1            if(icount.gt.ntetype) then              write(11,*)'Wrong counting 3'              stop            endif            tth(k)=ath(icount)          endif      	enddo !k      endif      if(nsatype.gt.0) then      	read(53,*) ttt,(ath(i),i=1,nsatype)      	if(it.eq.iths+1.and.abs(ttt-time).gt.1.e-4) then          write(11,*)'Starting time wrong for salt',it,ttt          stop        endif        icount=0        do k=1,nope          if(isatype(k).eq.1) then            icount=icount+1            if(icount.gt.nsatype) then              write(11,*)'Wrong counting 4'              stop            endif            sth(k)=ath(icount)          endif      	enddo !k      endif!...  Compute new vel. for flow b.c.!...      do i=1,nope        if(ifltype(i)>=1) then          isd1=iosd(i,1)          n1=isidenode(isd1,1)          n2=isidenode(isd1,2)          H2=dps(isd1)+(peta(n1)+peta(n2))/2          if(H2.lt.h0) then            write(11,*)'Dry bnd side',n1,n2,H2            stop          endif          uth(i)=qth(i)*ramp/cwidth(i)/H2*snx(isd1)          vth(i)=qth(i)*ramp/cwidth(i)/H2*sny(isd1)      	endif !ifltype(i).ge.1      enddo !i=1,nope      if(nscreen.eq.1) write(*,*)'done flow b.c.'      write(16,*)'done flow b.c.'!!************************************************************************!									*!			Backtracking 					*!									*!************************************************************************!!...  Compute # of subdivisions for nsubfl=2!...      if(nsubfl==2) then      	do i=1,np          do k=1,nvrt            sum=0            do j=1,nne(i)              ie=ine(i,j)	      id=iself(i,j)	      devm=0	      do l=1,2		if(l==1) then	          nd=nm(ie,nx(i34(ie),id,1))		else	          nd=nm(ie,nx(i34(ie),id,i34(ie)-1))		endif	        rl=dsqrt((x(i)-x(nd))**2+(y(i)-y(nd))**2)	        uvel1=(uu2(i,k)+uu2(i,k-1))/2	        uvel2=(uu2(nd,k)+uu2(nd,k-1))/2	        vvel1=(vv2(i,k)+vv2(i,k-1))/2	        vvel2=(vv2(nd,k)+vv2(nd,k-1))/2                dev=dsqrt((uvel1-uvel2)**2+(vvel1-vvel2)**2)/rl*dt		if(dev>devm) devm=dev	      enddo !l              wfc=(ww2(i,k)+ww2(i,k-1))/2              iw=2*wfc*dt/delzmin              idelta=max0(int(devm/1.e-1),iw)              sum=sum+dfloat(idelta)/nne(i)            enddo !j=1,nne(i)            ndelt(i,k)=max0(ndelt_min,min0(ndelt_max,int(sum)))          enddo !k=1,nvrt      	enddo !i=1,np      endif !nsubfl=2      st=0 !secnds(0.0) !timing the process!...  From centers of faces !...      do 451 i=1,ns        n1=isidenode(i,1)      	n2=isidenode(i,2)      	if(kfe(is(i,1)).ne.0) then          ie0=is(i,1)      	else if(is(i,2).ne.0.and.kfe(is(i,2)).ne.0) 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文成人av在线| 日一区二区三区| 亚洲va在线va天堂| 国产成人综合在线观看| 欧美性猛交xxxxxx富婆| 久久免费国产精品| 天天综合日日夜夜精品| 成人aa视频在线观看| 6080国产精品一区二区| 国产精品久久夜| 国产一区三区三区| 91精品国产91热久久久做人人 | 一区二区三区四区不卡在线| 久久99精品久久久久久国产越南| 在线精品亚洲一区二区不卡| 国产日产欧美精品一区二区三区| 久久成人麻豆午夜电影| 欧美日本一区二区在线观看| 《视频一区视频二区| 国产中文字幕一区| 精品精品国产高清a毛片牛牛 | 亚洲色图第一区| 国产成人精品网址| 国产肉丝袜一区二区| 精品一二线国产| 久久99久久99精品免视看婷婷| 欧美猛男男办公室激情| 91精品久久久久久久久99蜜臂| 三级一区在线视频先锋 | 久久久国产一区二区三区四区小说 | 日本亚洲一区二区| 不卡在线视频中文字幕| 国产欧美1区2区3区| 激情六月婷婷久久| 精品国产电影一区二区| 麻豆精品一区二区综合av| 日韩欧美资源站| 精品一区二区在线视频| 欧美精品一区二区三区四区| 激情小说亚洲一区| 国产日韩精品久久久| 欧美午夜在线观看| 亚洲第一成年网| 日韩欧美一二三| 国产精品18久久久| 国产嫩草影院久久久久| 99re这里都是精品| 一区二区三区中文字幕在线观看| 在线亚洲+欧美+日本专区| 亚洲成人免费看| 精品国产一区久久| 99热99精品| 天天综合色天天综合色h| 日韩午夜三级在线| 成人性生交大片免费看在线播放| 国产精品萝li| 欧美揉bbbbb揉bbbbb| 美国十次综合导航| 国产日韩精品一区二区三区在线| 91色乱码一区二区三区| 亚洲3atv精品一区二区三区| 精品久久国产字幕高潮| www.日韩精品| 麻豆视频观看网址久久| 国产网红主播福利一区二区| 色综合欧美在线| 蜜桃av噜噜一区二区三区小说| 日本一区二区三区四区| 欧美在线看片a免费观看| 六月丁香综合在线视频| 中文一区在线播放| 欧美一级黄色录像| 色偷偷久久人人79超碰人人澡| 亚洲gay无套男同| 国产欧美日韩激情| 欧美一区二区三区小说| 99久久综合色| 国产精品资源在线观看| 亚洲一区二区在线免费看| 国产午夜精品一区二区三区四区 | 亚洲国产精品久久久久秋霞影院| 欧美一区二区三区视频在线| 波多野结衣中文字幕一区| 天天综合网 天天综合色| 国产精品蜜臀av| 精品国产91洋老外米糕| 色婷婷国产精品| 成人黄色a**站在线观看| 麻豆成人久久精品二区三区小说| 亚洲男同性视频| 欧美激情一区二区在线| 精品奇米国产一区二区三区| 欧美日韩黄视频| 91网址在线看| 懂色av一区二区夜夜嗨| 狠狠色丁香久久婷婷综| 日日夜夜精品视频天天综合网| 自拍偷在线精品自拍偷无码专区| 久久夜色精品国产噜噜av| 日韩一区二区三区四区| 精品视频一区三区九区| 91免费视频网址| 不卡影院免费观看| 成人亚洲一区二区一| 国产精品69毛片高清亚洲| 老司机精品视频导航| 蜜桃视频在线一区| 美女www一区二区| 蜜桃精品在线观看| 久久精品噜噜噜成人av农村| 蜜桃一区二区三区在线观看| 爽爽淫人综合网网站| 性做久久久久久久久| 亚洲香蕉伊在人在线观| 一区av在线播放| 亚洲国产aⅴ天堂久久| 午夜国产精品一区| 日本欧美一区二区三区乱码 | 久久91精品国产91久久小草| 婷婷国产在线综合| 日韩精品1区2区3区| 老司机精品视频在线| 韩国精品一区二区| 高清av一区二区| av午夜一区麻豆| 欧亚洲嫩模精品一区三区| 欧美亚洲国产一卡| 日韩一二三区视频| 久久久99精品免费观看| 中文天堂在线一区| 一区二区三区精品视频| 日本女人一区二区三区| 国产做a爰片久久毛片| fc2成人免费人成在线观看播放| 91在线观看美女| 欧美精选午夜久久久乱码6080| 日韩亚洲欧美在线观看| 中文字幕不卡在线观看| 亚洲一区二区三区美女| 麻豆精品视频在线观看视频| 国产福利一区在线| 91福利在线免费观看| 日韩欧美亚洲国产另类| 欧美激情一区二区三区全黄| 亚洲一卡二卡三卡四卡无卡久久| 日本女人一区二区三区| 高清beeg欧美| 777午夜精品免费视频| 国产三区在线成人av| 午夜精品视频一区| 福利电影一区二区三区| 欧美丝袜自拍制服另类| 国产亚洲精品bt天堂精选| 亚洲高清视频的网址| 国产精品综合一区二区三区| 欧美伊人久久久久久久久影院 | 亚洲一区二区在线免费看| 奇米888四色在线精品| 成年人国产精品| 日韩欧美国产综合一区| 亚洲精品欧美专区| 国内精品伊人久久久久影院对白| 欧美在线观看一二区| 国产欧美日韩一区二区三区在线观看 | 国产女人水真多18毛片18精品视频| 亚洲综合丁香婷婷六月香| 国产精品亚洲第一| 欧美探花视频资源| 亚洲视频免费在线观看| 国内精品久久久久影院色| 欧美色倩网站大全免费| 中文字幕欧美日本乱码一线二线 | 国产成人无遮挡在线视频| 欧美三级一区二区| 国产精品久久久久久福利一牛影视| 免费成人在线网站| 欧美日韩aaaaa| 亚洲少妇屁股交4| 国产白丝精品91爽爽久久| 欧美一区二区三区免费观看视频 | 666欧美在线视频| 一个色在线综合| 91亚洲男人天堂| 日本一区二区三区四区| 国产精品一区二区在线播放| 日韩精品中文字幕一区二区三区 | 午夜精品久久久久影视| 99国产精品99久久久久久| 国产欧美精品一区二区色综合| 蜜桃av一区二区在线观看| 777久久久精品| 日日夜夜精品视频天天综合网| 欧美视频在线观看一区| 亚洲综合视频在线观看| 欧美伊人久久久久久久久影院| 一区二区三区四区不卡在线| 色综合欧美在线视频区| 一区二区三区不卡在线观看| 一道本成人在线| 洋洋成人永久网站入口|