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

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

?? p90.f90

?? 有限元編程源碼
?? F90
字號:
program p90     
!-----------------------------------------------------------------------------
!      program 9.0 steady state Navier-Stokes equation
!      using 8-node velocity quadrilateral elements
!      coupled to 4-node pressure quadrilateral elements ; u-p-v order
!-----------------------------------------------------------------------------
 use new_library     ; use geometry_lib     ;   implicit none
 integer::nels,nxe,nye,neq,nband,nn,nr,nip,nodof=3,nod=8,nodf=4,ndim=2,       &
          i,k,iel,ntot,limit ,fixed_nodes ,iters , inc
 real::visc, rho, det ,ubar, vbar , tol  ; logical :: converged
 character (len=15) :: element = 'quadrilateral'
!----------------------------- dynamic arrays----------------------------------
 real    ,allocatable :: points(:,:), coord(:,:),derivf(:,:),fun(:),work(:,:),&
                         jac(:,:),kay(:,:),der(:,:),deriv(:,:),weights(:)  ,  &
                         derf(:,:),funf(:), coordf(:,:),ke(:,:), g_coord(:,:),&
                         width(:), depth(:),c11(:,:),c21(:,:),c12(:,:),val(:),&
                         c23(:,:),c32(:,:), pb(:,:), loads(:), oldlds(:) ,    &
                         funny(:,:),row1(:,:),row2(:,:),uvel(:),vvel(:)  ,    &
                         funnyf(:,:),rowf(:,:)
 integer, allocatable :: nf(:,:),g(:),num(:),g_num(:,:) , g_g(:,:) ,no(:),    &
                         sense(:), node(:)                                     
!----------------------------input and initialisation--------------------------
  open (10,file='p90.dat',status=    'old',action='read')
  open (11,file='p90.res',status='replace',action='write')                  
  read (10,*) nels,nxe,nye,nn,nip,visc,rho,tol,limit 
        ntot=nod+nodf+nod    
  allocate (points(nip,ndim),coord(nod,ndim),derivf(ndim,nodf), &
            jac(ndim,ndim),kay(ndim,ndim),der(ndim,nod),deriv(ndim,nod),     &
            derf(ndim,nodf),funf(nodf),coordf(nodf,ndim),funny(nod,1),       &
            g_g(ntot,nels),c11(nod,nod),c12(nod,nodf),c21(nodf,nod),g(ntot), &
            ke(ntot,ntot),fun(nod),width(nxe+1),depth(nye+1),nf(nodof,nn),   &
            g_coord(ndim,nn),g_num(nod,nels),num(nod),weights(nip),          &
            c32(nod,nodf),c23(nodf,nod),uvel(nod),vvel(nod),                 &
            row1(1,nod),row2(1,nod),funnyf(nodf,1),rowf(1,nodf))              
      read(10,*) width , depth
      uvel =.0; vvel =.0 ; kay=0.0; kay(1,1)=visc/rho; kay(2,2)=visc/rho      
  nf=1; read(10,*) nr ; if(nr>0) read(10,*)(k,nf(:,k),i=1,nr)
  call formnf(nf);neq=maxval(nf)  ;  call sample(element,points,weights)
!------- loop the elements to find nband and set up global arrays------------
  nband = 0                                                                     
 elements_1: do iel = 1 , nels
             call geometry_8qxv(iel,nxe,width,depth,coord,num)
             inc=0
             do i=1,8;inc=inc+1;g(inc)=nf(1,num(i));end do
             do i=1,7,2;inc=inc+1;g(inc)=nf(2,num(i));end do
             do i=1,8;inc=inc+1;g(inc)=nf(3,num(i));end do
             g_num(:,iel )=num; g_coord(:,num)=transpose(coord); g_g(:,iel)=g
             if(nband<bandwidth(g))nband=bandwidth(g)
 end do elements_1    
    write(11,'(a)') "Global coordinates "
    do k=1,nn;write(11,'(a,i5,a,2e12.4)')"Node",k,"       ",g_coord(:,k);end do
    write(11,'(a)') "Global node numbers "
    do k = 1 , nels; write(11,'(a,i5,a,8i5)')                                 &
                              "Element ",k,"        ",g_num(:,k); end do
  write(11,'(2(a,i5))')                                                       &
          "There are ",neq,"  equations and the half-bandwidth is   ",nband
  allocate(pb(neq,2*(nband+1)-1),loads(0:neq),oldlds(0:neq),work(nband+1,neq))
    loads = .0  ; oldlds =.0   ; iters = 0
    read(10,*) fixed_nodes  
       allocate(node(fixed_nodes),sense(fixed_nodes),val(fixed_nodes),        &
                no(fixed_nodes))
       read(10,*) (node(i),sense(i),val(i),i=1,fixed_nodes )
!-------------------iteration loop  -----------------------------------------
  iterations: do
               iters = iters + 1   ; converged = .false.
     pb = .0; work = .0; ke = .0
!------------ element stiffness integration and assembly---------------------

      elements_2:  do iel = 1 , nels 
               num = g_num(: , iel ); coord=transpose(g_coord(:,num)) 
               g = g_g( : , iel )   ; coordf = coord(1 : 7 : 2, : )
               uvel = (loads(g(1:nod))+oldlds(g(1:nod)))*.5
               do i = nod + nodf + 1 , ntot
                  vvel(i-nod-nodf) = (loads(g(i))+oldlds(g(i)))*.5
               end do
               c11 = .0; c12 = .0; c21 = .0; c23 = .0; c32 = .0 
           gauss_points_1: do i = 1 , nip
!--------------------- velocity contribution ----------------------------------
              call shape_fun(fun,points,i) ;funny(:,1) = fun
              ubar = dot_product(fun,uvel);vbar = dot_product(fun,vvel)
              if(iters==1) then; ubar = 1.; vbar = 0.; end if
              call shape_der(der,points,i);  jac = matmul(der,coord) 
              det = determinant(jac )     ; call invert(jac)
              deriv = matmul(jac,der);row1(1,:)=deriv(1,:);row2(1,:)=deriv(2,:) 
              c11 = c11 + matmul(matmul(transpose(deriv),kay),deriv) &
                     *det* weights(i) + &
                          matmul(funny,row1)*det*weights(i)*ubar + &
                          matmul(funny,row2)*det*weights(i)*vbar
!----------------------now the pressure contribution--------------------------
               call shape_fun(funf,points,i); funnyf(:,1)=funf
               call shape_der(derf,points,i)  ;jac=matmul(derf,coordf) 
               det=determinant(jac)      ;     call invert(jac)
               derivf=matmul(jac,derf)
               rowf(1,:) = derivf(1,:)
               c12 = c12 + matmul(funny,rowf)*det*weights(i)/rho
               rowf(1,:) = derivf(2,:)
               c32 = c32 + matmul(funny,rowf)*det*weights(i)/rho
               c21 = c21 + matmul(funnyf,row1)*det*weights(i)
               c23 = c23 + matmul(funnyf,row2)*det*weights(i)               
           end do gauss_points_1
         call formupv(ke,c11,c12,c21,c23,c32) ; call formtb(pb,ke,g)
      end do elements_2
!----------- prescribed values of velocity and pressure ----------------------
       loads = .0      
       do i=1, fixed_nodes; no(i) = nf(sense(i),node(i))  ; end do
         pb( no ,nband+1)=pb( no ,nband+1) + 1.e20
         loads(no) = pb(no,nband+1) * val 
!------------------------ solve the simultaneous equations -------------------
    call gauss_band(pb,work); call solve_band(pb,work,loads); loads(0) = .0   
    call checon(loads,oldlds,tol,converged);if(converged.or.iters==limit) exit
  end do iterations 
    write(11,'(a,i5,a)')"The solution took",iters,"  iterations to converge"
        write(11,'(a)') " The nodal velocities and porepressures are    :"
        write(11,'(a)')"   Node   u - velocity   pressure    v - velocity"
            do k=1,nn; write(11,'(i5,a,3e12.4)')k,"    ",loads(nf(:,k));end do  
 end program p90 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91污片在线观看| 亚洲香蕉伊在人在线观| 亚洲综合图片区| 欧美午夜精品电影| 亚洲国产婷婷综合在线精品| 最新不卡av在线| 欧美日免费三级在线| 日韩电影在线免费看| 久久久亚洲精品一区二区三区| 国产高清在线精品| 一区二区三区高清在线| 精品国产99国产精品| 成人精品国产福利| 图片区小说区国产精品视频| 精品国产凹凸成av人导航| www亚洲一区| 欧美日韩一二区| 欧美一区二区三区电影| 91在线视频播放| 国产福利精品导航| 色一情一乱一乱一91av| 精一区二区三区| 亚洲少妇屁股交4| 亚洲国产综合在线| 久久se这里有精品| 免费成人结看片| 日韩精品一二三| 亚洲一区二区五区| 美女爽到高潮91| 日本va欧美va瓶| 国产**成人网毛片九色| 国产成人综合网| 91国在线观看| 色婷婷狠狠综合| 日韩欧美一级二级三级久久久| 不卡av免费在线观看| 欧美午夜一区二区三区免费大片| 日韩欧美综合在线| 欧美一区二区三区四区在线观看| 久久久久久一二三区| 亚洲免费在线观看视频| 中文字幕欧美区| 欧美精品一区二区久久久| 亚洲男人的天堂一区二区 | 久久久久一区二区三区四区| 亚洲欧美国产三级| 国产精品一区二区黑丝| 久久激情五月激情| 在线精品视频一区二区三四| 在线观看日韩电影| 国产欧美日韩综合| 中文字幕亚洲精品在线观看| 亚洲丝袜制服诱惑| 国产福利精品导航| 日韩视频免费直播| 日韩丝袜美女视频| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 久久久亚洲高清| 亚洲国产综合91精品麻豆| 国产不卡免费视频| 亚洲精品在线观| 亚洲v日本v欧美v久久精品| 中文字幕不卡三区| 美女精品自拍一二三四| 日本高清不卡视频| 亚洲日韩欧美一区二区在线| 成人午夜视频免费看| 色婷婷久久久久swag精品| 国产丝袜美腿一区二区三区| 亚洲色图都市小说| av亚洲精华国产精华| 日本丶国产丶欧美色综合| 国产精品大尺度| 日韩电影免费一区| 欧美视频中文一区二区三区在线观看| 中文字幕视频一区二区三区久| 久久www免费人成看片高清| 欧美久久一区二区| 久久久久久夜精品精品免费| 狠狠色2019综合网| 欧美性生活一区| 亚洲一区二区av在线| 欧美日韩国产bt| 国产精品美女久久久久久2018| 日韩av网站免费在线| 91麻豆精品国产91久久久久| 国产精品美女久久久久久久久久久 | 亚洲欧洲制服丝袜| 91久久久免费一区二区| 亚洲1区2区3区4区| 日韩精品在线看片z| 国产精品888| 国产精品久久久久四虎| 色香蕉久久蜜桃| 日韩不卡一区二区三区 | 国产一区二区中文字幕| 欧美午夜片在线看| 日日夜夜精品视频天天综合网| 欧美一区二区三区喷汁尤物| 久久97超碰国产精品超碰| 国产网站一区二区| 日本乱人伦一区| 免费成人在线视频观看| 国产日韩欧美亚洲| 99re这里只有精品首页| 亚洲国产精品影院| 国产亚洲女人久久久久毛片| 99久久99久久久精品齐齐| 亚洲一区二区三区国产| 精品免费国产二区三区| 男女男精品网站| 国产精品久久久久久久久久久免费看| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 亚洲欧美一区二区三区国产精品 | 久久亚洲欧美国产精品乐播| 99久久国产综合精品女不卡| 日本欧美一区二区| 国产精品美女一区二区| 日韩一级二级三级| 一本色道久久综合亚洲aⅴ蜜桃| 日韩av中文字幕一区二区| 亚洲欧洲国产日韩| 精品久久人人做人人爰| 在线这里只有精品| 成熟亚洲日本毛茸茸凸凹| 免费人成网站在线观看欧美高清| 亚洲欧美一区二区视频| 精品国产一区二区精华| 欧美日韩一区二区三区在线看 | 久久国产视频网| 一区二区三区日韩欧美精品| 久久久久国产一区二区三区四区| 欧美日韩极品在线观看一区| 91啪在线观看| 国产成人在线视频网址| 久久国产精品99久久人人澡| 亚洲国产一二三| 亚洲一区二区三区影院| 亚洲欧美国产77777| 中文字幕欧美一| 国产欧美日韩另类一区| 精品处破学生在线二十三| 日韩一区国产二区欧美三区| 欧美午夜精品一区二区三区| 91丨porny丨蝌蚪视频| k8久久久一区二区三区| 成人黄色综合网站| 国产激情一区二区三区| 国产一区二区成人久久免费影院| 日韩福利电影在线观看| 五月综合激情婷婷六月色窝| 一区二区三区在线视频免费| 亚洲一区二区三区四区在线观看 | 国产欧美日韩激情| 久久久久久久久久久久电影| 精品美女被调教视频大全网站| 91精品国产综合久久福利| 欧美一级在线观看| 欧美一区二区大片| 日韩免费电影一区| 精品国产电影一区二区| 久久日一线二线三线suv| 久久久久久综合| 国产精品九色蝌蚪自拍| 亚洲人成小说网站色在线 | 91精品国产麻豆国产自产在线| 欧美日韩成人综合在线一区二区 | 国产一区二区三区四区五区美女 | 亚洲人成在线观看一区二区| 一区二区三区加勒比av| 日韩中文字幕1| 国产综合一区二区| av一区二区久久| 欧美性生活大片视频| 日韩欧美精品在线| 国产女人18毛片水真多成人如厕| 国产精品国产三级国产三级人妇 | 专区另类欧美日韩| 亚洲综合激情小说| 久久国产精品免费| 91女人视频在线观看| 欧美日韩国产天堂| 精品对白一区国产伦| 亚洲激情六月丁香| 久久新电视剧免费观看| 中文字幕一区二区三| 日韩精品一二三区| 成人黄色综合网站| 777欧美精品| 国产精品嫩草影院av蜜臀| 亚洲一区二区在线免费看| 久久精品国产色蜜蜜麻豆| 成人av电影在线播放| 777a∨成人精品桃花网| 国产精品色呦呦| 久久激情五月婷婷| 欧美三级日韩三级国产三级| 久久精品一级爱片| 天堂蜜桃一区二区三区| 91麻豆精品视频|