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

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

?? vertnm.f90

?? CCSM Research Tools: Community Atmosphere Model (CAM)
?? F90
字號:
#include <misc.h>#include <params.h>! Note that this routine has 2 complete blocks of code for PVP vs.! non-PVP.  Make sure to make appropriate coding changes where! necessary.#if ( defined PVP )subroutine vertnm(k)!-----------------------------------------------------------------------!! Purpose:! Solution of the system of semi-implicit divergence/vorticity! equations.  Equations have been de-coupled in the vertical by! transforming the spectral terms into vertical normal modes.!! Author:  J. Olson!!-----------------------------------------------------------------------!! $Id: vertnm.F90,v 1.3 2000/12/20 18:02:18 rosinski Exp $! $Author: rosinski $!!-----------------------------------------------------------------------  use precision  use pmgrid  use pspect  use comspe  implicit none#include <comhyb.h>use commap!------------------------------Arguments--------------------------------!  integer, intent(in) :: k  ! vertical index!!---------------------------Local workspace-----------------------------!  integer m                 ! diagonal element of cmplx array  integer ir                ! index pointing into real(r8)      element  integer ii                ! index pointing into imaginary element  integer n                 ! wave number  integer nn                ! index  integer nr                ! n   (real)  integer ni                ! n   (imag)  integer np1r              ! n+1 (real)  integer np1i              ! n+1 (imag)  integer nm1r              ! n-1 (real)  integer nm1i              ! n-1 (imag)  integer mr                ! real spectral index  integer mc                ! imaginary spectral index  integer isp               ! index into spectral arrays  real(r8) tmp  (2)         ! real/imaginary temp spaces  real(r8) tmp1 (2)         ! real/imaginary temp spaces  real(r8) tmp2 (2)         ! real/imaginary temp spaces  real(r8) btrie(2*pmax)    ! "btri" + eigenvalue of ref atmosphere  real(r8) dtri (2*pmax)    ! RHS in the solution of the tri-diagonal matrix  real(r8) dnmn (psp)       ! remapped "dnm"  real(r8) dsnmn(psp)       ! remapped "dsnm"  real(r8) hsnmn(psp)       ! remapped "hsnm"  real(r8) vznmn(psp)       ! remapped "vznm"  real(r8) denom            ! denominator!!-----------------------------------------------------------------------!! Remap spectral arrays from sequential "along diagonals" to sequential! along columns ("N")!  do n = 1,pmax     isp = nco2(n) - 2     nn  = 2*n-1     do m = 1,nm(n)        mr = nstart(m)        mc = 2*mr        ir = mc + nn        ii = ir + 1        dsnmn(ir) = dsnm(isp+(2*m-1),k)        dsnmn(ii) = dsnm(isp+(2*m  ),k)        hsnmn(ir) = hsnm(isp+(2*m-1),k)        hsnmn(ii) = hsnm(isp+(2*m  ),k)        vznmn(ir) = vznm(isp+(2*m-1),k)        vznmn(ii) = vznm(isp+(2*m  ),k)     end do  end do!! Complete computation of btri and compute dtri (complex arithmetic)!  do m = 1,pmmax     mr = nstart(m)     mc = 2*mr     do n = 1,nlen(m)        nr   = mc   + 2*n     - 1        ni   = nr   + 1        np1r = mc   + 2*(n+1) - 1        np1i = np1r + 1        nm1r = mc   + 2*(n-1) - 1        nm1i = nm1r + 1!        btrie(2*n-1) = btri(nr) + zcr(m+n-1,k)        btrie(2*n  ) = btri(ni)!        tmp1(1) = 0.        tmp1(2) = 0.         tmp2(1) = 0.        tmp2(2) = 0.         if(n .ne. nlen(m)) then           tmp(1)  =  bpnm(nr  )*vznmn(np1r)           tmp(2)  =  bpnm(nr  )*vznmn(np1i)           denom   =  a0nm(np1r)*a0nm (np1r) + a0nm(np1i)*a0nm (np1i)           tmp1(1) = (a0nm(np1r)*tmp(1) + a0nm(np1i)*tmp(2))/denom           tmp1(2) = (a0nm(np1r)*tmp(2) - a0nm(np1i)*tmp(1))/denom        endif        if(n .ne. 1    ) then           tmp(1)  =  bmnm(nr  )*vznmn(nm1r)           tmp(2)  =  bmnm(nr  )*vznmn(nm1i)           denom   =  a0nm(nm1r)*a0nm (nm1r) + a0nm(nm1i)*a0nm (nm1i)           tmp2(1) = (a0nm(nm1r)*tmp(1) + a0nm(nm1i)*tmp(2))/denom           tmp2(2) = (a0nm(nm1r)*tmp(2) - a0nm(nm1i)*tmp(1))/denom        endif        dtri(2*n-1) = dsnmn(nr) + hsnmn(nr) + tmp1(1) + tmp2(1)        dtri(2*n  ) = dsnmn(ni) + hsnmn(ni) + tmp1(2) + tmp2(2)     end do!! Solve tridiagonal matrix:  call once for ODDs and once for EVENs!     if(mod(nlen(m),2) .eq. 0) n = nlen(m) - 1     if(mod(nlen(m),2) .ne. 0) n = nlen(m)     call trisolve(n       ,atri(mc+1),btrie(1),ctri(mc+1),dtri(1),dnmn(mc+1)    )     if(mod(nlen(m),2) .eq. 0) n = nlen(m) - 1     if(mod(nlen(m),2) .ne. 0) n = nlen(m) - 2     if(n .gt. 0) then        call trisolve(n       ,atri(mc+3),btrie(3),ctri(mc+3),dtri(3),dnmn(mc+3)    )     endif!! Solve for vorticity!     do n = 1,nlen(m)        nr   = mc   + 2*n     - 1        ni   = nr   + 1        np1r = mc   + 2*(n+1) - 1        np1i = np1r + 1        nm1r = mc   + 2*(n-1) - 1        nm1i = nm1r + 1!        tmp1(1) = 0.        tmp1(2) = 0.         tmp2(1) = 0.        tmp2(2) = 0.         if(n .ne. nlen(m)) then           tmp1(1) = bpnm(nr)*dnmn(np1r)           tmp1(2) = bpnm(nr)*dnmn(np1i)        endif        if(n .ne. 1      ) then           tmp2(1) = bmnm(nr)*dnmn(nm1r)           tmp2(2) = bmnm(nr)*dnmn(nm1i)        endif        vznmn(nr) = vznmn(nr) - tmp1(1) - tmp2(1)        vznmn(ni) = vznmn(ni) - tmp1(2) - tmp2(2)        denom  =  a0nm(nr)*a0nm (nr) + a0nm(ni)*a0nm (ni)        tmp(1) = (a0nm(nr)*vznmn(nr) + a0nm(ni)*vznmn(ni))/denom        tmp(2) = (a0nm(nr)*vznmn(ni) - a0nm(ni)*vznmn(nr))/denom        vznmn(nr) = tmp(1)        vznmn(ni) = tmp(2)     end do  end do!! Map spectral arrays back to "along diagonals"!  do n = 1,pmax     isp = nco2(n) - 2     nn  = 2*n-1     do m = 1,nm(n)        mr = nstart(m)        mc = 2*mr        ir = mc + nn        ii = ir + 1        dnm (isp+(2*m-1),k) = dnmn (ir)        dnm (isp+(2*m  ),k) = dnmn (ii)        vznm(isp+(2*m-1),k) = vznmn(ir)        vznm(isp+(2*m  ),k) = vznmn(ii)     end do  end do!  returnend subroutine vertnm#elsesubroutine vertnm(m)!-----------------------------------------------------------------------!! Purpose:! Solution of the system of semi-implicit divergence/vorticity! equations.  Equations have been de-coupled in the vertical by! transforming the spectral terms into vertical normal modes.!! Author:  J. Olson!!-----------------------------------------------------------------------!! $Id: vertnm.F90,v 1.3 2000/12/20 18:02:18 rosinski Exp $! $Author: rosinski $!!-----------------------------------------------------------------------  use precision  use pmgrid  use pspect  use comspe  use commap    implicit none#include <comhyb.h>!------------------------------Arguments--------------------------------!  integer, intent(in) :: m  ! diagonal element of cmplx array!!---------------------------Local workspace-----------------------------!  integer k                 ! vertical index  integer n                 ! wave number  integer nr                ! n   (real)  integer ni                ! n   (imag)  integer np1r              ! n+1 (real)  integer np1i              ! n+1 (imag)  integer nm1r              ! n-1 (real)  integer nm1i              ! n-1 (imag)  integer mr                ! real spectral index  integer mc                ! imaginary spectral index  real(r8) tmp  (2)         ! real/imaginary temp spaces  real(r8) tmp1 (2)         ! real/imaginary temp spaces  real(r8) tmp2 (2)         ! real/imaginary temp spaces  real(r8) btrie(2*pmax)    ! "btri" + eigenvalue of ref atmosphere  real(r8) dtri (2*pmax)    ! RHS in the solution of the tri-diagonal matrix  real(r8) denom            ! denominator!!-----------------------------------------------------------------------!! Complete computation of btri and compute dtri (complex arithmetic)!  mr = nstart(m)  mc = 2*mr  do k = 1,plev     do n = 1,nlen(m)        nr   = mc   + 2*n     - 1        ni   = nr   + 1        np1r = mc   + 2*(n+1) - 1        np1i = np1r + 1        nm1r = mc   + 2*(n-1) - 1        nm1i = nm1r + 1!        btrie(2*n-1) = btri(nr) + zcr(m+n-1,k)        btrie(2*n  ) = btri(ni)!        tmp1(1) = 0.        tmp1(2) = 0.         tmp2(1) = 0.        tmp2(2) = 0.         if(n .ne. nlen(m)) then           tmp(1)  =  bpnm(nr  )*vznm(np1r,k)           tmp(2)  =  bpnm(nr  )*vznm(np1i,k)           denom   =  a0nm(np1r)*a0nm(np1r) + a0nm(np1i)*a0nm(np1i)           tmp1(1) = (a0nm(np1r)*tmp(1) + a0nm(np1i)*tmp(2))/denom           tmp1(2) = (a0nm(np1r)*tmp(2) - a0nm(np1i)*tmp(1))/denom        endif        if(n .ne. 1    ) then           tmp(1)  =  bmnm(nr  )*vznm(nm1r,k)           tmp(2)  =  bmnm(nr  )*vznm(nm1i,k)           denom   =  a0nm(nm1r)*a0nm(nm1r) + a0nm(nm1i)*a0nm(nm1i)           tmp2(1) = (a0nm(nm1r)*tmp(1) + a0nm(nm1i)*tmp(2))/denom           tmp2(2) = (a0nm(nm1r)*tmp(2) - a0nm(nm1i)*tmp(1))/denom        endif        dtri(2*n-1) = dsnm(nr,k) + hsnm(nr,k) + tmp1(1) + tmp2(1)        dtri(2*n  ) = dsnm(ni,k) + hsnm(ni,k) + tmp1(2) + tmp2(2)     end do!! Solve tridiagonal matrix:  call once for ODDs and once for EVENs!     if(mod(nlen(m),2) .eq. 0) n = nlen(m) - 1     if(mod(nlen(m),2) .ne. 0) n = nlen(m)     call trisolve(n       ,atri(mc+1),btrie(1),ctri(mc+1),dtri(1),dnm(mc+1,k)    )     if(mod(nlen(m),2) .eq. 0) n = nlen(m) - 1     if(mod(nlen(m),2) .ne. 0) n = nlen(m) - 2     if(n .gt. 0) then        call trisolve(n       ,atri(mc+3),btrie(3),ctri(mc+3),dtri(3),dnm(mc+3,k)    )     endif!! Solve for vorticity!     do n = 1,nlen(m)        nr   = mc   + 2*n     - 1        ni   = nr   + 1        np1r = mc   + 2*(n+1) - 1        np1i = np1r + 1        nm1r = mc   + 2*(n-1) - 1        nm1i = nm1r + 1!        tmp1(1) = 0.        tmp1(2) = 0.         tmp2(1) = 0.        tmp2(2) = 0.         if(n .ne. nlen(m)) then           tmp1(1) = bpnm(nr)*dnm(np1r,k)           tmp1(2) = bpnm(nr)*dnm(np1i,k)        endif        if(n .ne. 1      ) then           tmp2(1) = bmnm(nr)*dnm(nm1r,k)           tmp2(2) = bmnm(nr)*dnm(nm1i,k)        endif        vznm(nr,k) = vznm(nr,k) - tmp1(1) - tmp2(1)        vznm(ni,k) = vznm(ni,k) - tmp1(2) - tmp2(2)        denom  =  a0nm(nr)*a0nm(nr)   + a0nm(ni)*a0nm(ni)        tmp(1) = (a0nm(nr)*vznm(nr,k) + a0nm(ni)*vznm(ni,k))/denom        tmp(2) = (a0nm(nr)*vznm(ni,k) - a0nm(ni)*vznm(nr,k))/denom        vznm(nr,k) = tmp(1)        vznm(ni,k) = tmp(2)     end do  end do!  returnend subroutine vertnm#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
www日韩大片| 亚洲成人激情av| 91国偷自产一区二区使用方法| 亚洲成人中文在线| 亚洲精品一区二区三区在线观看 | 亚洲不卡在线观看| 国产午夜一区二区三区| 欧美日韩综合色| 久久女同性恋中文字幕| 成人av中文字幕| 裸体在线国模精品偷拍| 一区二区三区日韩在线观看| 久久嫩草精品久久久精品| 欧美喷水一区二区| 在线视频欧美精品| 成人黄色av网站在线| 激情小说欧美图片| 日韩国产在线观看一区| 亚洲激情自拍视频| 国产精品毛片久久久久久久| 久久久久久久久久美女| 日韩一区二区三区电影在线观看| 91国偷自产一区二区三区成为亚洲经典 | 亚洲天堂精品在线观看| 久久综合视频网| 欧美一区二区在线播放| 欧美日韩免费视频| 91成人网在线| 91麻豆国产福利在线观看| 国产精品2024| 国产精品99久久久| 国产成人亚洲精品青草天美| 久久99热狠狠色一区二区| 日本不卡123| 日本在线播放一区二区三区| 午夜精品免费在线观看| 一区二区三区中文在线观看| 亚洲欧美一区二区三区国产精品 | 中文字幕视频一区| 国产精品私人影院| 欧美高清在线视频| 中文字幕av不卡| 欧美国产欧美综合| 中文字幕免费观看一区| 国产精品久久久久桃色tv| 国产精品卡一卡二卡三| 亚洲视频一区在线观看| 亚洲精品国产一区二区精华液 | 手机精品视频在线观看| 日韩国产欧美视频| 免费成人在线影院| 黑人精品欧美一区二区蜜桃| 精品亚洲欧美一区| 国产精品一二三四五| 国产成人在线视频免费播放| 成人亚洲精品久久久久软件| 成人av动漫网站| 91成人看片片| 日韩欧美一区中文| 久久久91精品国产一区二区精品| 国产午夜亚洲精品羞羞网站| 日韩毛片视频在线看| 亚洲妇熟xx妇色黄| 蜜臀91精品一区二区三区| 国产乱人伦精品一区二区在线观看 | 亚洲另类中文字| 丝袜美腿亚洲一区| 精品系列免费在线观看| 成人精品视频一区| 在线视频你懂得一区二区三区| 欧美日韩一区二区在线视频| 日韩欧美国产不卡| 欧美国产日韩一二三区| 亚洲五月六月丁香激情| 久久精品国产秦先生| www.色综合.com| 欧美男生操女生| 国产三级精品在线| 亚洲国产欧美在线| 国产成人免费视频网站高清观看视频| 97se亚洲国产综合在线| 国产精品成人免费| 日韩影院免费视频| 韩日精品视频一区| 在线观看av一区| 欧美mv日韩mv| 一个色妞综合视频在线观看| 三级精品在线观看| 99视频热这里只有精品免费| 欧美精品粉嫩高潮一区二区| 久久久国产精品不卡| 亚洲午夜私人影院| 国产91丝袜在线播放0| 欧美日韩夫妻久久| 中文字幕一区二区三区蜜月 | 久久久亚洲欧洲日产国码αv| 一区二区日韩av| 国产伦精一区二区三区| 欧美日韩日日骚| 一区二区中文字幕在线| 精品中文字幕一区二区| 欧美日韩一级片网站| 中文一区二区在线观看| 久久精品久久精品| 欧美视频一区二区三区四区| 国产精品国产三级国产有无不卡| 日本在线观看不卡视频| 亚洲一区精品在线| 黑人巨大精品欧美黑白配亚洲| 99久久精品免费看国产 | 欧美一级黄色片| 中文字幕在线观看一区二区| 精品一区二区精品| 欧美一区二区精品| 伊人一区二区三区| 波多野洁衣一区| 欧美大片在线观看一区| 亚洲电影视频在线| 色综合天天在线| 亚洲欧洲国产专区| 处破女av一区二区| 久久一区二区视频| 久久成人免费网站| 欧美一卡2卡三卡4卡5免费| 亚洲永久精品大片| 色老汉av一区二区三区| 天天操天天干天天综合网| 99re在线精品| 国产精品久久综合| 不卡在线观看av| 国产精品传媒视频| 99久精品国产| 久久欧美中文字幕| 国产一区二区在线电影| 日韩欧美国产系列| 激情综合色丁香一区二区| 日韩精品一区二区三区四区| 日韩 欧美一区二区三区| 欧美日韩免费电影| 视频一区国产视频| 日韩你懂的在线播放| 久久精品国产网站| 久久久精品欧美丰满| 国产精品91xxx| 国产精品久久久久一区| 色综合视频在线观看| 亚洲自拍偷拍网站| 欧美精品v国产精品v日韩精品 | 欧美日韩国产在线播放网站| 亚洲h精品动漫在线观看| 欧美男生操女生| 美女在线观看视频一区二区| 欧美成人a视频| 国产一区二区三区av电影| 国产精品热久久久久夜色精品三区| 成人黄页在线观看| 亚洲精品视频自拍| 91精品福利在线一区二区三区 | 国产精品一区二区果冻传媒| 亚洲国产电影在线观看| 国产99一区视频免费| 亚洲人妖av一区二区| 欧美日韩视频在线第一区| 精品一区在线看| 国产精品免费人成网站| 欧洲亚洲国产日韩| 另类的小说在线视频另类成人小视频在线| 精品嫩草影院久久| 99久久er热在这里只有精品15| 亚洲sss视频在线视频| 久久日一线二线三线suv| 成人激情午夜影院| 丝袜亚洲另类欧美综合| 国产亚洲人成网站| 在线精品视频一区二区三四| 五月天精品一区二区三区| 欧美成人猛片aaaaaaa| 国产精品一区二区在线看| 亚洲综合色视频| 欧美一区二区三区色| 国产高清亚洲一区| 亚洲一区二区视频在线| 91麻豆精品国产91久久久资源速度 | 国产精品久久久久久久久图文区 | 日韩欧美一卡二卡| 粉嫩av一区二区三区| 亚洲国产一区二区三区青草影视| 中文一区一区三区高中清不卡| 972aa.com艺术欧美| 日韩精品1区2区3区| 久久夜色精品一区| 欧美精品一卡二卡| 风间由美一区二区av101| 亚洲一区二区三区四区在线免费观看 | 日韩欧美中文字幕精品| 高清不卡一二三区| 亚洲综合一区在线| 欧美国产精品中文字幕| 欧美又粗又大又爽| 国产剧情av麻豆香蕉精品|