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

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

?? atmdrvmod.f90

?? CCSM Research Tools: Community Atmosphere Model (CAM)
?? F90
?? 第 1 頁 / 共 4 頁
字號:
          if (nint(x(i,j,9))==-1.or.nint(x(i,j,10))==-1) then             if (nint(x(i,j,8)) /= -1) then                forc_solsxy_a(i,j)  = 0.7 * (0.5 * x(i,j,8))                forc_sollxy_a(i,j)  = forc_solsxy_a(i,j)                forc_solsdxy_a(i,j) = 0.3 * (0.5 * x(i,j,8))                forc_solldxy_a(i,j) = forc_solsdxy_a(i,j)             else                write(6,*)'ATM error: neither FSDSdir/dif nor'                write(6,*)'       FSDS have been read in by atm_readdata'                atmread_err = .true.             end if          else             forc_solsxy_a(i,j)  = 0.5 * x(i,j,9)             forc_sollxy_a(i,j)  = forc_solsxy_a(i,j)             forc_solsdxy_a(i,j) = 0.5 * x(i,j,10)             forc_solldxy_a(i,j) = forc_solsdxy_a(i,j)          end if! PRCXY, PRLXY          if (nint(x(i,j,13))==-1.or.nint(x(i,j,14))==-1) then             if (nint(x(i,j,12)).ne.-1) then                prcxy_a(i,j) = 0.1 * x(i,j,12)                prlxy_a(i,j) = 0.9 * x(i,j,12)             else                write(6,*)'ATM error: neither PRECC/L nor PRECT'                write(6,*)'           have been read in by atm_readdata'                atmread_err = .true.             end if          else             prcxy_a(i,j) = x(i,j,13)             prlxy_a(i,j) = x(i,j,14)          end if! FLWDSXY          if (nint(x(i,j,11)) == -1) then             e = forc_psrfxy_a(i,j) * forc_qxy_a(i,j) / (0.622 + 0.378 * forc_qxy_a(i,j))             ea = 0.70 + 5.95e-05 * 0.01*e * exp(1500.0/forc_txy_a(i,j))                          flwdsxy_a(i,j) = ea * sb * forc_txy_a(i,j)**4          else             flwdsxy_a(i,j) = x(i,j,11)           end if       end do                 !end loop of latitudes    end do                    !end loop of longitudes!$OMP END PARALLEL DO    if (atmread_err) then       write(6,*) 'atm_readdata: error reading atm data'       call endrun    end if    return  end subroutine atm_readdata!=======================================================================  subroutine interpa2si!----------------------------------------------------------------------- ! ! Purpose: ! initialize variables for atm->land model surface interp!! Method: ! ! Author: Gordon Bonan! !-----------------------------------------------------------------------    use precision    use clm_varpar, only : lsmlon, lsmlat    use clm_varsur, only : numlon, longxy, latixy, lsmedge, lonw, lats, area    use areaMod      implicit none! ------------------------ local variables ---------------------------    integer i,j,k                        !indices    real(r8), allocatable :: lon_a(:,:)  !atm grid longitude cell edges    real(r8), allocatable :: lat_a(:)    !atm grid latitude cell edges    real(r8), allocatable :: area_a(:,:) !atm grid grid cell areas    real(r8), allocatable :: mask_a(:,:) !dummy field: atm grid mask    real(r8), allocatable :: mask_s(:,:) !dummy field: land model grid mask! --------------------------------------------------------------------! Dynamically allocate memory    allocate (lon_a(atmlon+1,atmlat))    allocate (lat_a(atmlat+1))    allocate (area_a(atmlon,atmlat))    allocate (mask_a(atmlon,atmlat))    allocate (mask_s(lsmlon,lsmlat))    if ( masterproc )then       write (6,*) 'Attempting to initialize atm->land model grid interpolation .....'       write (6,*) 'Initializing atm -> srf interpolation .....'    end if! --------------------------------------------------------------------! Map from atmosphere grid to surface grid! --------------------------------------------------------------------! determine numlon for atmosphere grid     numlon_a(:) = 0    do j = 1, atmlat       do i = 1, atmlon          if (longxy_a(i,j) /= 1.e36) numlon_a(j) = numlon_a(j) + 1       end do    end do! [mask_a] = 1 means all grid cells on atm grid, regardless of whether! land or ocean, will contribute to surface grid.    do j = 1, atmlat       do i = 1, numlon_a(j)          mask_a(i,j) = 1.       end do    end do! [mask_s] = 1 means all the surface grid is land. Used as dummy! variable so code will not abort with false, non-valid error check    do j = 1, lsmlat       do i = 1, numlon(j)          mask_s(i,j) = 1.       end do    end do! For each surface grid cell: get lat [jovr_a2s] and lon [iovr_a2s] indices ! and weights [wovr_a2s] of overlapping atm grid cells     call celledge (atmlat    , atmlon    , numlon_a  , longxy_a  , &                    latixy_a  , edge_a(1) , edge_a(2) , edge_a(3) , &                    edge_a(4) , lat_a     , lon_a     )    call cellarea (atmlat    , atmlon    , numlon_a  , lat_a     , &                   lon_a     , edge_a(1) , edge_a(2) , edge_a(3) , &                   edge_a(4) , area_a    )    call areaini (atmlon, atmlat, numlon_a, lon_a, lat_a, area_a, mask_a, &                  lsmlon, lsmlat, numlon  , lonw , lats , area  , mask_s, &                  mxovr , novr_a2s, iovr_a2s, jovr_a2s, wovr_a2s )    deallocate (lon_a)    deallocate (lat_a)    deallocate (area_a)    deallocate (mask_a)    deallocate (mask_s)    if ( masterproc )then       write (6,*) 'Successfully made atm -> srf interpolation'       write (6,*) 'Successfully initialized area-averaging interpolation'       write (6,*)    end if    return  end subroutine interpa2si!=======================================================================  subroutine interpa2s (forc_t_a  , forc_t_s  , zgcm_a  , zgcm_s  , &                        forc_u_a  , forc_u_s  , forc_v_a  , forc_v_s  , &                        forc_q_a  , forc_q_s  , prc_a   , prc_s   , &                        prl_a   , prl_s   , flwds_a , flwds_s , &                        forc_sols_a  , forc_sols_s  , forc_soll_a  , forc_soll_s  , &                        forc_solsd_a , forc_solsd_s , forc_solld_a , forc_solld_s , &                        forc_pbot_a  , forc_pbot_s  , forc_psrf_a  , forc_psrf_s  )!----------------------------------------------------------------------- ! ! Purpose: ! area average fields from atmosphere grid to surface grid!! Method: ! ! Author: Gordon Bonan! !-----------------------------------------------------------------------    use precision    use clm_varpar, only : lsmlon, lsmlat    use clm_varsur, only : numlon, longxy, latixy, lsmedge    use areaMod      implicit none! ------------------------ arguments ---------------------------------    real(r8), intent(in)  ::  forc_t_a(atmlon,atmlat) !atm bottom level temperature (Kelvin)    real(r8), intent(in)  ::  zgcm_a(atmlon,atmlat)   !atm bottom level height above surface (m)    real(r8), intent(in)  ::  forc_u_a(atmlon,atmlat) !atm bottom level zonal wind (m/s)    real(r8), intent(in)  ::  forc_v_a(atmlon,atmlat) !atm bottom level meridional wind (m/s)    real(r8), intent(in)  ::  forc_q_a(atmlon,atmlat) !atm bottom level specific humidity (kg/kg)    real(r8), intent(in)  ::   prc_a(atmlon,atmlat)   !convective precipitation rate (mm H2O/s)    real(r8), intent(in)  ::   prl_a(atmlon,atmlat)   !large-scale precipitation rate (mm H2O/s)    real(r8), intent(in)  :: flwds_a(atmlon,atmlat)   !downward longwave rad onto surface (W/m**2)    real(r8), intent(in)  ::  forc_sols_a(atmlon,atmlat) !vis direct beam solar rad onto srf (W/m**2)    real(r8), intent(in)  ::  forc_soll_a(atmlon,atmlat) !nir direct beam solar rad onto srf (W/m**2)    real(r8), intent(in)  :: forc_solsd_a(atmlon,atmlat) !vis diffuse solar rad onto srf (W/m**2)    real(r8), intent(in)  :: forc_solld_a(atmlon,atmlat) !nir diffuse solar rad onto srf(W/m**2)    real(r8), intent(in)  ::  forc_pbot_a(atmlon,atmlat) !atm bottom level pressure (Pa)    real(r8), intent(in)  ::  forc_psrf_a(atmlon,atmlat) !atm surface pressure (Pa)    real(r8), intent(out) ::  forc_t_s(lsmlon,lsmlat) !atm bottom level temperature (Kelvin)    real(r8), intent(out) ::  zgcm_s(lsmlon,lsmlat)   !atm bottom level height above surface (m)    real(r8), intent(out) ::  forc_u_s(lsmlon,lsmlat) !atm bottom level zonal wind (m/s)    real(r8), intent(out) ::  forc_v_s(lsmlon,lsmlat) !atm bottom level meridional wind (m/s)    real(r8), intent(out) ::  forc_q_s(lsmlon,lsmlat) !atm bottom level specific humidity (kg/kg)    real(r8), intent(out) ::   prc_s(lsmlon,lsmlat)   !convective precipitation rate (mm H2O/s)    real(r8), intent(out) ::   prl_s(lsmlon,lsmlat)   !large-scale precipitation rate (mm H2O/s)    real(r8), intent(out) :: flwds_s(lsmlon,lsmlat)   !downward longwave rad onto surface (W/m**2)    real(r8), intent(out) ::  forc_sols_s(lsmlon,lsmlat) !vis direct beam solar rad onto srf (W/m**2)    real(r8), intent(out) ::  forc_soll_s(lsmlon,lsmlat) !nir direct beam solar rad onto srf (W/m**2)    real(r8), intent(out) :: forc_solsd_s(lsmlon,lsmlat) !vis diffuse solar rad onto srf (W/m**2)    real(r8), intent(out) :: forc_solld_s(lsmlon,lsmlat) !nir diffuse solar rad onto srf(W/m**2)    real(r8), intent(out) ::  forc_pbot_s(lsmlon,lsmlat) !atm bottom level pressure (Pa)    real(r8), intent(out) ::  forc_psrf_s(lsmlon,lsmlat) !atm surface pressure (Pa)! --------------------------------------------------------------------! ------------------------ local variables ---------------------------    integer  :: i,j                    !longitude,latitude loop indices    real(r8) :: forc_u(atmlon,atmlat)  !dummy wind (u)    real(r8) :: forc_v(atmlon,atmlat)  !dummy wind (v)    logical  :: initinterp = .false.   !interpolation initialization flag! --------------------------------------------------------------------! Initialize    if (.not. initinterp) then       call interpa2si       initinterp = .true.    endif! area-average absolute value of winds (i.e., regardless of! direction) since land model cares about magnitude not direction.! then need to adjust resultant stresses for direction of wind. !$OMP PARALLEL DO PRIVATE (j,i)    do j = 1, atmlat       do i = 1, numlon_a(j)          forc_u(i,j) = abs(forc_u_a(i,j))          forc_v(i,j) = abs(forc_v_a(i,j))       end do    end do!$OMP END PARALLEL DO    call areaave (atmlat   , atmlon   , numlon_a , forc_t_a  , &                  lsmlat   , lsmlon   , numlon   , forc_t_s  , &                  iovr_a2s , jovr_a2s , wovr_a2s , mxovr   )    call areaave (atmlat   , atmlon   , numlon_a , zgcm_a  , &                  lsmlat   , lsmlon   , numlon   , zgcm_s  , &                  iovr_a2s , jovr_a2s , wovr_a2s , mxovr   )    call areaave (atmlat   , atmlon   , numlon_a , forc_u    , &                  lsmlat   , lsmlon   , numlon   , forc_u_s  , &                  iovr_a2s , jovr_a2s , wovr_a2s , mxovr   )    call areaave (atmlat   , atmlon   , numlon_a , forc_v    , &                  lsmlat   , lsmlon   , numlon   , forc_v_s  , &                  iovr_a2s , jovr_a2s , wovr_a2s , mxovr   )    call areaave (atmlat   , atmlon   , numlon_a , forc_q_a  , &                  lsmlat   , lsmlon   , numlon   , forc_q_s  , &                  iovr_a2s , jovr_a2s , wovr_a2s , mxovr   )    call areaave (atmlat   , atmlon   , numlon_a , forc_pbot_a  , &                  lsmlat   , lsmlon   , numlon   , forc_pbot_s  , &                  iovr_a2s , jovr_a2s , wovr_a2s , mxovr   )    call areaave (atmlat   , atmlon   , numlon_a , forc_psrf_a  , &                  lsmlat   , lsmlon   , numlon   , forc_psrf_s  , &                  iovr_a2s , jovr_a2s , wovr_a2s , mxovr   )    call areaave (atmlat   , atmlon   , numlon_a , prc_a   , &                  lsmlat   , lsmlon   , numlon   , prc_s   , &                  iovr_a2s , jovr_a2s , wovr_a2s , mxovr   )    call areaave (atmlat   , atmlon   , numlon_a , prl_a   , &                  lsmlat   , lsmlon   , numlon   , prl_s   , &                  iovr_a2s , jovr_a2s , wovr_a2s , mxovr   )    call areaave (atmlat   , atmlon   , numlon_a , flwds_a , &                  lsmlat   , lsmlon   , numlon   , flwds_s , &                  iovr_a2s , jovr_a2s , wovr_a2s , mxovr   )    call areaave (atmlat   , atmlon   , numlon_a , forc_sols_a  , &                  lsmlat   , lsmlon   , numlon   , forc_sols_s  , &                  iovr_a2s , jovr_a2s , wovr_a2s , mxovr   )    call areaave (atmlat   , atmlon   , numlon_a , forc_soll_a  , &                  lsmlat   , lsmlon   , numlon   , forc_soll_s  , &                  iovr_a2s , jovr_a2s , wovr_a2s , mxovr   )    call areaave (atmlat   , atmlon   , numlon_a , forc_solsd_a , &                  lsmlat   , lsmlon   , numlon   , forc_solsd_s , &                  iovr_a2s , jovr_a2s , wovr_a2s , mxovr   )    call areaave (atmlat   , atmlon   , numlon_a , forc_solld_a , &                  lsmlat   , lsmlon   , numlon   , forc_solld_s , &                  iovr_a2s , jovr_a2s , wovr_a2s , mxovr   )    return  end subroutine interpa2s#endifend module atmdrvMod

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区鲁丝不卡| 一个色妞综合视频在线观看| 欧美人与禽zozo性伦| 91成人在线免费观看| 99久免费精品视频在线观看| 不卡影院免费观看| 91日韩精品一区| 色狠狠色狠狠综合| 欧美在线观看视频在线| 欧美日韩综合不卡| 欧美精品粉嫩高潮一区二区| 3d成人h动漫网站入口| 91精品午夜视频| 久久中文娱乐网| 亚洲国产精品成人综合色在线婷婷| 欧美精品一区二区在线播放| 久久综合九色综合久久久精品综合| 日韩精品专区在线影院观看| 久久久精品国产99久久精品芒果 | 亚洲男同1069视频| 中文字幕一区av| 亚洲成人激情社区| 国产在线精品一区二区夜色| 高清在线观看日韩| 一本久久综合亚洲鲁鲁五月天| 欧美色精品在线视频| 日韩一区二区麻豆国产| 欧美激情一区二区三区蜜桃视频 | 精品一区二区三区视频在线观看 | av影院午夜一区| 色婷婷综合久久久久中文| 91精品国产综合久久香蕉的特点| 精品国产污网站| 亚洲柠檬福利资源导航| 久久国产精品99久久久久久老狼| jlzzjlzz亚洲女人18| 欧美日韩国产不卡| 久久精品水蜜桃av综合天堂| 亚洲视频一区在线观看| 蜜桃一区二区三区在线| 成人av在线网| 日韩精品一区二区三区在线播放| 成人欧美一区二区三区黑人麻豆| 日本vs亚洲vs韩国一区三区二区| 99久久精品国产导航| 欧美tk丨vk视频| 亚洲激情欧美激情| 国产大片一区二区| 日韩视频在线一区二区| 亚洲激情成人在线| 国产成人亚洲综合a∨婷婷图片| 在线观看91视频| 国产精品嫩草影院av蜜臀| 日本强好片久久久久久aaa| 99精品国产91久久久久久 | 99久久婷婷国产| 精品久久人人做人人爽| 日韩中文字幕亚洲一区二区va在线| 国产真实乱子伦精品视频| 欧美日韩精品欧美日韩精品| 亚洲精品v日韩精品| 菠萝蜜视频在线观看一区| 26uuu精品一区二区| 日韩精品1区2区3区| 欧美主播一区二区三区| 亚洲欧美欧美一区二区三区| 91在线国产观看| 中文字幕一区日韩精品欧美| 粉嫩一区二区三区在线看 | 国产一区二区三区黄视频| 91精品国产91久久久久久最新毛片| 一区二区激情视频| 91欧美一区二区| 亚洲日本在线天堂| 色婷婷激情综合| 亚洲午夜久久久久久久久电影网| 色婷婷激情久久| 亚洲欧美成aⅴ人在线观看| 91精品办公室少妇高潮对白| 亚洲精品一二三| 在线精品观看国产| 亚洲成人福利片| 欧美日韩中文字幕一区| 婷婷久久综合九色综合绿巨人 | 久久欧美中文字幕| 国产精品亚洲一区二区三区在线| 国产网站一区二区| 风间由美一区二区三区在线观看| 国产精品久久久久国产精品日日| 91视视频在线观看入口直接观看www | 日韩一区二区在线免费观看| 青草国产精品久久久久久| 日韩欧美亚洲一区二区| 国模一区二区三区白浆| 国产欧美综合在线| 99re热视频精品| 午夜亚洲福利老司机| 欧美精选在线播放| 久久99精品久久久久久国产越南 | 成人av动漫在线| 亚洲一区在线视频观看| 91精品国产免费久久综合| 国产真实乱偷精品视频免| 中文字幕亚洲精品在线观看| 欧美精品一二三四| 国产精品自产自拍| 一区二区三区在线高清| 欧美电影免费观看完整版| 成人丝袜高跟foot| 亚洲福利一区二区三区| 久久久久久综合| 欧美性极品少妇| 国产精品正在播放| 亚洲一级二级三级在线免费观看| 精品少妇一区二区三区在线播放| 97久久精品人人做人人爽| 热久久久久久久| 亚洲综合在线观看视频| 精品少妇一区二区三区日产乱码 | 美腿丝袜亚洲三区| 国产精品入口麻豆原神| 91精品国产综合久久精品麻豆| 成人午夜短视频| 麻豆成人久久精品二区三区红 | 国产在线播放一区二区三区| 亚洲一区在线观看视频| 国产欧美va欧美不卡在线| 欧美日韩亚洲综合在线| 处破女av一区二区| 激情综合色综合久久| 伊人婷婷欧美激情| 欧美激情中文字幕| 欧美变态tickling挠脚心| 精品1区2区3区| 色综合天天综合色综合av| 国产成人综合自拍| 久久精品国产亚洲a| 亚洲成人av福利| 一区二区三区中文字幕精品精品| 中文字幕av在线一区二区三区| 欧美mv和日韩mv的网站| 在线成人午夜影院| 欧美色窝79yyyycom| 91啪亚洲精品| 色一区在线观看| 91国偷自产一区二区使用方法| 成人黄色软件下载| 国产传媒一区在线| 国产精一区二区三区| 精品一区二区三区欧美| 精品一区二区三区欧美| 国内成人免费视频| 国产一区二区免费看| 六月丁香婷婷久久| 久久99热狠狠色一区二区| 日本不卡123| 精品一区二区三区免费播放| 免费一区二区视频| 精品一区二区三区免费| 国内成人免费视频| 国产成人精品免费| 99精品欧美一区二区三区小说| 91亚洲精品久久久蜜桃| 欧美亚洲动漫精品| 欧美美女一区二区在线观看| 7777精品伊人久久久大香线蕉| 欧美日韩国产bt| 精品久久久久久最新网址| 精品国产乱码91久久久久久网站| 欧美成人三级电影在线| 中文字幕精品一区二区精品绿巨人| 国产精品久久久久久久久免费桃花 | 成人的网站免费观看| 91在线国内视频| 欧美一区二区三区男人的天堂 | 成人av电影在线播放| 色av成人天堂桃色av| 欧美乱熟臀69xxxxxx| 久久一区二区视频| 亚洲黄色小视频| 日本成人在线网站| 风间由美一区二区三区在线观看| 色婷婷综合五月| 日韩欧美一区二区在线视频| 久久精品人人爽人人爽| 亚洲日本免费电影| 日本成人在线电影网| 成人免费视频播放| 欧美日韩成人一区| 欧美韩国一区二区| 亚洲在线一区二区三区| 精品一区二区三区免费观看| www.亚洲精品| 日韩三区在线观看| 亚洲视频一二区| 久久国产日韩欧美精品| 91香蕉视频mp4| 久久综合资源网| 性做久久久久久久久| 99国产精品99久久久久久|