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

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

?? sflux_subs5.f90

?? 河口模型 使用模擬鹽水入侵、熱量擴散等等 河口模型 使用模擬鹽水入侵、熱量擴散
?? F90
?? 第 1 頁 / 共 5 頁
字號:
! caulculate theta_star and q_star, depending on zeta            if (zeta_t .lt. zeta_h) then                ! very unstable              theta_star = karman * delta_theta &     &                   / ( log(zeta_h*monin/z_0_t) &     &                       - psi_h(zeta_h) &! extra term?     &                       + psi_h(z_0_t/monin) &     &                       + 0.8 * ((-zeta_h)**(-one_third) - &     &                                (-zeta_t)**(-one_third)) )              q_star = karman * delta_q &     &                   / ( log(zeta_h*monin/z_0_t) &     &                       - psi_h(zeta_h) &! extra term?     &                       + psi_h(z_0_t/monin) &     &                       + 0.8 * ((-zeta_h)**(-one_third) - &     &                                (-zeta_t)**(-one_third)) )            else if (zeta_t .lt. 0.0) then              ! unstable              theta_star = karman * delta_theta &     &                   / ( log(z_t/z_0_t) &     &                       - psi_h(zeta_t) &! extra term?     &                       + psi_h(z_0_t/monin) &     &                     )              q_star = karman * delta_q &     &                   / ( log(z_t/z_0_t) &     &                       - psi_h(zeta_t) &! extra term?     &                       + psi_h(z_0_t/monin) &     &                     )            else if (zeta_t .lt. 1.0) then              ! neutral/stable              theta_star = karman * delta_theta &     &                   / ( log(z_t/z_0_t) &     &                       + 5.0*zeta_t &! extra term?     &                       - 5.0*z_0_t/monin &     &                     )              q_star = karman * delta_q &     &                   / ( log(z_t/z_0_t) &     &                       + 5.0*zeta_t &! extra term?     &                       - 5.0*z_0_t/monin &     &                     )            else                                        ! very stable              theta_star = karman * delta_theta &     &                   / ( log(monin/z_0_t) + 5.0 &     &                       + 5.0*log(zeta_t) &! extra term?     &                       - 5.0*z_0_t/monin &     &                       + zeta_t - 1.0 )              q_star = karman * delta_q &     &                   / ( log(monin/z_0_t) + 5.0 &     &                       + 5.0*log(zeta_t) &! extra term?     &                       - 5.0*z_0_t/monin &     &                       + zeta_t - 1.0 )            endif! calculate theta_v_star and monin            theta_v_star = theta_star * (1.0 + 0.608 * mix_ratio) &     &                   + 0.608 * theta_air * q_star            monin = theta_v_air * u_star * u_star &     &            / (karman * g * theta_v_star)! depending on surface layer stability, calculate the effective! near-surface wind speed! (ie relative to the flowing water surface)            if (delta_theta_v .ge. 0.0) then                  ! stable              speed = &     &          max( sqrt( &     &                 (u_air(i_node) - uu2(i_node, kfp(i_node)))**2 + &     &                 (v_air(i_node) - vv2(i_node, kfp(i_node)))**2 ), &     &               0.1)            else                                              ! unstable! calculate the convective velocity scale              w_star = (-g * theta_v_star * u_star * z_i / theta_v_air) &     &                 ** one_third              speed = &     &          sqrt( (u_air(i_node) - uu2(i_node, kfp(i_node)))**2 + &     &                (v_air(i_node) - vv2(i_node, kfp(i_node)))**2 + &     &                (beta * w_star)**2 )            endif            if (mod(i_node-1,printit) .eq. 0) then              write(38,*) 'iter, u_star, q_star, theta_star = ', &     &                     iter, u_star, q_star, theta_star              write(38,*) 'iter, theta_v_star, monin, speed = ', &     &                     iter, theta_v_star, monin, speed              write(38,*) 'iter, zeta_u, zeta_t = ', &     &                     iter, zeta_u, zeta_t            endif! bottom of main iteration loop          if (.not. converged .and. iter .lt. max_iter) goto 100! calculate fluxes          sen_flux(i_node) = - rho_air * c_p_air * u_star * theta_star          lat_flux(i_node) = - rho_air * latent * u_star * q_star! calculate wind stresses          speed_res = &     &          sqrt( (u_air(i_node) - uu2(i_node, kfp(i_node)))**2 + &     &                (v_air(i_node) - vv2(i_node, kfp(i_node)))**2 )          if (speed_res .gt. 0.0) then            tau = rho_air * u_star * u_star * speed_res / speed            tau_xz(i_node) = - tau &     &                     * (u_air(i_node) - uu2(i_node, kfp(i_node))) &     &                     / speed_res            tau_yz(i_node) = - tau &     &                     * (v_air(i_node) - vv2(i_node, kfp(i_node))) &     &                     / speed_res          else            tau_xz(i_node) = 0.0            tau_yz(i_node) = 0.0          endif          if (mod(i_node-1,printit) .eq. 0) then            write(38,*) 'sen_flux, lat_flux = ', &     &                   sen_flux(i_node), lat_flux(i_node)            write(38,*) 'tau_xz, tau_yz = ', &     &                   tau_xz(i_node), tau_yz(i_node)          endif!         write(38,*) tnd(i_node, kfp(i_node)), sen_flux(i_node),!    +                lat_flux(i_node)! end of wet/dry block        endif! end of loop over points        enddo        write(38,*) 'exit turb_fluxes'      return      end!-----------------------------------------------------------------------!! Calculate saturation vapor pressure using the eighth order relative! error norm method of Flatau et al., J Applied Meteo, v31, p 1507,! Dec 1992.!      real*4 function esat_flat_r(t)        implicit none        real*4 t        real*4 c0, c1, c2, c3, c4, c5, c6, c7, c8, t_eff        parameter ( &     &        c0= 6.11583699e+02,  c1= 0.444606896e+02, &     &        c2= 0.143177157e+01, c3= 0.264224321e-01, &     &        c4= 0.299291081e-03, c5= 0.203154182e-05, &     &        c6= 0.702620698e-08, c7= 0.379534310e-11, &     &        c8=-0.321582393e-13)! t     : temperature in K! t_eff : effective temperature in C        t_eff = max(-85.,t-273.16)        esat_flat_r = c0+t_eff*(c1+t_eff*(c2+t_eff*(c3+t_eff*(c4+t_eff* &     &                         (c5+t_eff*(c6+t_eff*(c7+t_eff*c8)))))))      return      end!-----------------------------------------------------------------------      subroutine copy_arr(array_1, ni_1, nj_1, array_2, ni_2, nj_2)        implicit none        integer ni_1, nj_1, ni_2, nj_2, i, j        real*4 array_1(ni_1,nj_1)        real*8 array_2(ni_2,nj_2)        do j = 1, nj_1          do i = 1, ni_1            array_2(i,j) = array_1(i,j)          enddo        enddo      return      end!-----------------------------------------------------------------------      subroutine file_exst (file_name, exst, fail)        implicit none        character file_name*50        logical exst, fail        inquire(file=file_name, exist=exst)        if (exst .and. fail) then          write(*,*)          write(*,*) file_name, ' already exists!'          write(11,*)          write(11,*) file_name, ' already exists!'         stop        endif      return      end!-----------------------------------------------------------------------      subroutine get_bracket (time, input_times, i_time, bracket, &     &                        num_times)        implicit none        integer num_times, i_time        real*4 time, input_times(num_times)        logical bracket        i_time = 0        bracket = .false.10      continue          i_time = i_time + 1          bracket = ( input_times(i_time) .le. time .and. &     &                time .le. input_times(i_time+1) )        if (.not. bracket .and. i_time .lt. num_times-1) goto 10      return      end!-----------------------------------------------------------------------      subroutine interp_set(in_set, data, data_label, time, &     &                      data_1, data_2, input_times, &     &                      i_time, num_times, ni, nj, &     &                      time_files, num_files, max_files)        implicit none        integer ni, nj, i, j, num_times, i_time, num_files, max_files        real*4 data_1(ni,nj), data_2(ni,nj)        real*4 data(ni,nj), time, input_times(num_times), ratio        character in_set*50, data_label*20        character time_files(num_times)*50! read in the data at the first of the bracketing times        call read_2d_arr (time_files(i_time), data_1, data_label, &     &                    input_times(i_time), ni, nj)! read in the data at the second of the bracketing times        call read_2d_arr (time_files(i_time+1), data_2, data_label, &     &                    input_times(i_time+1), ni, nj)! now interpolate these to the desired time        ratio = (time                  - input_times(i_time)) &     &        / (input_times(i_time+1) - input_times(i_time))        do j = 1, nj          do i = 1, ni            data(i,j) = data_1(i,j) &     &                + (data_2(i,j) - data_1(i,j)) * ratio          enddo        enddo      return      end!-----------------------------------------------------------------------      subroutine get_dims(in_file, data_label, t, rank, dim_sizes)        implicit none        real*4 t        integer ret, read_only, sfstart, sfend, sd_id, sds_id        integer sds_index, sfn2index, sfendacc, sfselect        integer max_rank, rank, data_type, n_attrs, sfginfo        parameter (max_rank = 3)        parameter (read_only = 1)        integer dim_sizes(max_rank)        character data_label*20, in_file*50        character dat_time_label*33, sds_name*33! open in_file in read only mode        sd_id = sfstart(in_file, read_only)! create the data-time label, which we'll use as the name        call get_label (dat_time_label, data_label, t)! find index for this data set        if (t .lt. 0.0) then          sds_index = sfn2index(sd_id, data_label)        else          sds_index = sfn2index(sd_id, dat_time_label)        endif! get info on dataset        sds_id = sfselect(sd_id, sds_index)        ret = sfginfo(sds_id, sds_name, rank, dim_sizes, &     &                data_type, n_attrs)        call checkret(ret)! find the id for this index        sds_id = sfselect(sd_id, sds_index)! close access to the dataset        ret = sfendacc(sds_id)        call checkret(ret)! close access to the file        ret = sfend(sd_id)        call checkret(ret)      return      end!-----------------------------------------------------------------------      subroutine list_nodes (node_i, node_j, node_num, &     &                       n_nodes_in, ni, nj)        implicit none        integer ni, nj, n_nodes_in, i, j, i_node        integer node_i(n_nodes_in), node_j(n_nodes_in)        integer node_num(ni,nj)        i_node = 0        do j = 1, nj          do i = 1, ni            i_node = i_node + 1            node_i(i_node) = i            node_j(i_node) = j            node_num(i,j) = i_node          enddo        enddo      return      end!-----------------------------------------------------------------------      subroutine list_elems (elem_nodes_in, node_num_in, &     &                       ni, nj, n_elems_in)        implicit none        integer ni, nj, n_elems_in, i, j, i_elem        integer node_num_in(ni,nj), elem_nodes_in(n_elems_in,3)        i_elem = 0        do j = 1, nj-1          do i = 1, ni-1! define the first element in this grid box            i_elem = i_elem + 1            elem_nodes_in(i_elem,1) = node_num_in(i,j)            elem_nodes_in(i_elem,2) = node_num_in(i+1,j+1)            elem_nodes_in(i_elem,3) = node_num_in(i,j+1)! define the second element in this grid box

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
caoporm超碰国产精品| 国产一区二区免费在线| 免费成人性网站| 欧美日韩一区二区三区视频| 中文字幕一区三区| 国产福利91精品一区二区三区| 欧美一区二区播放| 日韩成人免费看| 精品国产一区二区精华| 国产日韩欧美激情| 高清在线成人网| 精品乱人伦小说| 亚洲图片欧美视频| 亚洲综合色区另类av| 国产精品一二三四五| 久久免费的精品国产v∧| 欧美在线不卡一区| 欧美片网站yy| 99精品国产视频| 日本不卡一区二区三区高清视频| 中文字幕在线一区二区三区| 亚洲国产电影在线观看| 欧美精品一区二区在线播放| 欧美日韩免费高清一区色橹橹| 成人爱爱电影网址| 国产成人精品免费网站| 精品一区二区三区在线观看 | 国产成人精品三级| 久久国产精品色| 亚洲男人电影天堂| 久久久久久夜精品精品免费| 国产99久久久久| 亚洲激情在线激情| 欧美一区二区播放| 99视频有精品| 麻豆91精品视频| 亚洲丝袜美腿综合| 精品电影一区二区| 日本韩国精品一区二区在线观看| 日本伊人午夜精品| 综合欧美亚洲日本| 欧美tickle裸体挠脚心vk| 不卡高清视频专区| 国产精品996| 天堂av在线一区| 舔着乳尖日韩一区| 99综合电影在线视频| 一区二区在线观看视频| 91久久一区二区| 日韩电影在线免费观看| 欧美日韩一区二区三区免费看| 免费观看在线色综合| 亚洲精品你懂的| 国产成人aaa| 中文字幕不卡在线| 日韩午夜电影av| 久久亚洲春色中文字幕久久久| 精品久久久久av影院 | 欧美一二三区精品| 日韩片之四级片| 久久精品网站免费观看| 国产精品美女久久久久aⅴ国产馆| 综合av第一页| 视频一区视频二区中文字幕| 另类小说一区二区三区| 成人动漫中文字幕| 精品视频一区二区不卡| 日韩免费视频一区| 丝袜美腿亚洲一区二区图片| 国产精品电影院| 亚洲综合一区二区精品导航| 一区二区三区在线免费观看| 韩国一区二区视频| 国产.欧美.日韩| 97se亚洲国产综合自在线不卡| 99久久综合国产精品| 日本高清不卡aⅴ免费网站| 一本大道久久a久久综合婷婷 | 国产亚洲自拍一区| 精品欧美乱码久久久久久1区2区| 日韩欧美中文字幕制服| 久久夜色精品国产噜噜av| 国产视频不卡一区| 三级不卡在线观看| 中文字幕在线不卡| 日韩情涩欧美日韩视频| 色8久久人人97超碰香蕉987| 在线免费一区三区| 欧美一级黄色片| 粉嫩嫩av羞羞动漫久久久| 香蕉影视欧美成人| 高清在线观看日韩| 精品视频999| 欧美激情中文不卡| 日韩精品久久理论片| 成人理论电影网| 日韩欧美国产综合| 亚洲午夜免费福利视频| 国产河南妇女毛片精品久久久| 欧美视频精品在线观看| 国产精品理论在线观看| 麻豆专区一区二区三区四区五区| a美女胸又www黄视频久久| 91麻豆精品国产自产在线观看一区 | 天天综合日日夜夜精品| 国产成人精品亚洲午夜麻豆| 欧美在线观看18| 国产精品免费丝袜| 国产成人免费视| 日韩欧美一区二区不卡| 国产高清一区日本| 一区二区三区丝袜| 蜜桃视频在线一区| 成人免费视频网站在线观看| 在线这里只有精品| 欧美日韩一区二区三区在线| 国产91精品在线观看| 亚洲精品va在线观看| 成人av综合在线| 一区二区三区日韩精品视频| 欧美三级中文字幕| 日韩精品中文字幕一区| 欧美在线三级电影| 麻豆国产精品一区二区三区| 国产日本亚洲高清| 不卡影院免费观看| 美女一区二区视频| 欧美色老头old∨ideo| 亚洲日韩欧美一区二区在线| 91视频免费播放| 中文字幕日韩欧美一区二区三区| 欧美优质美女网站| 青椒成人免费视频| 亚洲免费成人av| 欧美日本在线一区| 国产精品一区二区三区99| 三级成人在线视频| 2021久久国产精品不只是精品| 免费成人性网站| 国产亚洲精品久| proumb性欧美在线观看| 亚洲图片你懂的| 成人精品免费网站| 亚洲伦理在线精品| 色综合 综合色| 国产精品99久久久久久久女警 | 久久精品理论片| 视频精品一区二区| 日本三级韩国三级欧美三级| 久久99精品一区二区三区| 国产91精品免费| 亚洲一区在线看| 亚洲电影在线免费观看| 亚洲成人av在线电影| 日韩二区在线观看| 久久99国产精品久久99| 成人深夜福利app| 精品一二线国产| 日韩精品一二三区| 日韩精品中文字幕一区二区三区| 91久久国产综合久久| 国产一区二区不卡老阿姨| 精品日韩一区二区三区| 欧美无乱码久久久免费午夜一区| 成人午夜在线免费| 色综合天天综合在线视频| 欧美午夜精品一区二区三区| 欧美一级高清大全免费观看| 26uuu欧美日本| 一级做a爱片久久| 国产精品77777竹菊影视小说| 99精品一区二区| 欧美tickling挠脚心丨vk| 亚洲少妇中出一区| 久久不见久久见免费视频7| 成人免费毛片高清视频| 精品视频在线视频| 国产精品美女久久福利网站| 亚洲成人激情社区| 91小视频在线观看| 久久久99精品免费观看不卡| 午夜精品福利视频网站| 激情深爱一区二区| 免费在线看成人av| 日本不卡一区二区| 国产.欧美.日韩| 在线免费观看日韩欧美| 欧美亚日韩国产aⅴ精品中极品| 欧美乱妇23p| 国产午夜精品一区二区三区嫩草 | 中文字幕+乱码+中文字幕一区| 91精品欧美久久久久久动漫| 欧美精品视频www在线观看| 欧美日韩电影一区| 日韩欧美www| 亚洲国产va精品久久久不卡综合| 日本欧美在线观看| 国产91富婆露脸刺激对白| 91精品国产欧美一区二区18| 亚洲狼人国产精品|