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

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

?? p511.f90

?? I[1].M.Smith所著的《有限元方法編程》第三版Fortran程序
?? F90
字號:
program p511         
!------------------------------------------------------------------------------
!      program 5.11 three dimensional analysis of an elastic
!      solid using 20-node brick elements
!      preconditioned conjugate gradient solver  ;  only integrate one element
!      diagonal preconditioner diag_precon   ;  vectorised version
!------------------------------------------------------------------------------
 use new_library  ;  use  geometry_lib    ;     implicit none
 integer::nxe,nze,neq,nn,nr,nip,nodof=3,nod=20,nst=6,ndof,loaded_nodes,     &
          i,k,ndim=3,iters,limit,iel,nels   
 real::aa,bb,cc,e,v,det,tol,up,alpha,beta,big
 logical :: converged  ; character(len=15) :: element = 'hexahedron'      
!--------------------------- dynamic arrays------------------------------------
 real    ,allocatable :: points(:,:),dee(:,:),coord(:,:), weights(:),        &
                         g_coord(:,:), jac(:,:), der(:,:), deriv(:,:),       &
                         bee(:,:), km(:,:),eld(:),eps(:),sigma(:),           &
                         diag_precon(:),p(:),r(:),x(:),xnew(:),              &
                         u(:),g_pmul(:,:),g_utemp(:,:),d(:)
 integer, allocatable :: nf(:,:), g(:), num(:), g_num(:,:) ,g_g( : , :)      
!--------------------------input and initialisation----------------------------
  open (10,file='p511.dat',status=    'old',action='read')
  open (11,file='p511.res',status='replace',action='write')                   
  read (10,*) nels,nxe,nze,nn,nip,aa,bb,cc,e,v,   tol,limit ;  ndof=nod*nodof   
  allocate ( nf(nodof,nn), points(nip,ndim),dee(nst,nst),coord(nod,ndim),    &
            jac(ndim,ndim),der(ndim,nod),deriv(ndim,nod),                    &
            bee(nst,ndof),km(ndof,ndof),eld(ndof),eps(nst),sigma(nst),       &  
            g(ndof),g_pmul(ndof,nels),g_utemp(ndof,nels), g_coord(ndim,nn),  &
            g_num(nod,nels),weights(nip),num(nod),g_g(ndof,nels))      
   nf=1; read(10,*) nr ; if(nr>0) read(10,*)(k,nf(:,k),i=1,nr)
         call formnf(nf);neq=maxval(nf)   
  allocate(p(0:neq),r(0:neq),x(0:neq),xnew(0:neq),u(0:neq),&
           diag_precon(0:neq),d(0:neq))   
       r=0.; p=0.; x=0.; xnew=0.  ; diag_precon=0.         
   call deemat(dee,e,v);   call sample(element,points,weights) 
! ----------------- single element stiffness integration ----------------------
             iel=1
             call geometry_20bxz(iel,nxe,nze,aa,bb,cc,coord,num)
             km=0.0                                
      gauss_pts_1:  do i=1,nip
                call shape_der (der,points,i) ; jac = matmul(der,coord)
                det = determinant(jac)        ; call invert(jac)
                deriv = matmul(jac,der) ;call beemat (bee,deriv)  
                km=km+matmul(matmul(transpose(bee),dee),bee)*det*weights(i)
      end do gauss_pts_1
! -------------- store global arrays and build the preconditioner -------------
     elements_1: do iel = 1,nels
                  call geometry_20bxz(iel,nxe,nze,aa,bb,cc,coord,num)
                  g_num(:, iel) = num; g_coord(: ,num) = transpose(coord) 
                  call num_to_g(num,nf,g);  g_g( : , iel) = g
               do k=1,ndof;diag_precon(g(k))=diag_precon(g(k))+km(k,k);end do 
     end do elements_1   
    write(11,'(a)') "Global coordinates "
    do k=1,nn;write(11,'(a,i5,a,3e12.4)')"Node",k,"       ",g_coord(:,k);end do
    write(11,'(a)') "Global node numbers "
    do k = 1 , nels; write(11,'(a,i5,a,27i3)')                                 &
                              "Element ",k,"    ",g_num(:,k); end do  
    write(11,'(a,i5)') "The number of equations is  ",neq                  
!--------------------invert the preconditioner and get starting r--------------
         read(10,*) loaded_nodes,(k,r(nf(:,k)),i=1,loaded_nodes)
         write(11,'(a,e12.4)') "The total load is", sum(r)  
        diag_precon(1:neq)=1./ diag_precon(1:neq)  ; diag_precon(0) = .0
                 d=diag_precon*r  ; p = d   
!----------------------preconditioned c. g. iterations-------------------------
       iters = 0
     iterations  :      do 
             iters = iters + 1     ;    u = 0.      
       elements_2 : do iel = 1 , nels                ! gather
                      g_pmul(: , iel) = p( g_g( : , iel))  
       end do elements_2
!------------------------- global matrix multiply ----------------------------
          g_utemp = matmul( km , g_pmul )
!dir$ ivdep
       elements_2a : do iel = 1 , nels                ! scatter
                      u(g_g(:,iel))=u(g_g(:,iel))+g_utemp(:,iel)
       end do elements_2a     ! let this vectorise by compiler directive
!----------------------------pcg equation solution-----------------------------
    up=dot_product(r,d); alpha= up/ dot_product(p,u)
    xnew = x + p* alpha ; r=r - u*alpha;  d = diag_precon*r
    beta=dot_product(r,d)/up; p=d+p*beta  ; p(0) = .0 
    big=0.; converged = .true.
    do i=1,neq; if(abs(xnew(i))>big) big= abs(xnew(i)) ; end do
    do i=1,neq; if(abs(xnew(i)-x(i))/big>tol)converged=.false.; end do; x=xnew
    if(converged .or. iters==limit) exit
                  end do iterations
       write(11,'(a,i5)') "The number of iterations to convergence was  ",iters 
       write(11,'(a)')    "The nodal displacements are   :"
   do k=1,22; write(11,'(i5,a,3e12.4)') k,"    ",xnew(nf(:,k)); end do
!-------------------recover stresses at centroidal gauss-point-----------------
  nip=1; deallocate(points,weights); allocate(points(nip,ndim),weights(nip))
  elements_3:do iel = 1, nels
                 num = g_num(: ,iel)  ; coord =transpose( g_coord(:,num))
                 g = g_g( : , iel) ; eld=xnew(g)
                 write(11,'(a,i5,a)')                                          &
                       "The Gauss point stresses for element",iel,"  are :"    
     gauss_pts_2: do i= 1 , nip 
       call shape_der(der,points,i); jac= matmul(der,coord)
       call invert (jac);   deriv= matmul(jac,der)
       bee= 0.;call beemat(bee,deriv); sigma = matmul (dee,matmul(bee,eld))
       write(11,'(a,i5)') "Point  ",i   ; write(11,'(6e12.4)') sigma
     end do gauss_pts_2 
  end do elements_3
 end program p511

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品制服美女久久| 亚洲成人在线网站| 亚洲超丰满肉感bbw| 国产成人小视频| 不卡av电影在线播放| 色av成人天堂桃色av| 欧美久久久久久蜜桃| 亚洲国产精品v| 亚洲国产视频直播| 国产在线国偷精品产拍免费yy| 成人中文字幕合集| 91麻豆精品国产91久久久久久久久| 精品国产a毛片| 亚洲国产成人91porn| 韩国精品免费视频| 4438成人网| 韩日欧美一区二区三区| 色94色欧美sute亚洲线路二| 欧美va亚洲va| 亚洲bt欧美bt精品777| 成人av免费在线观看| 精品精品欲导航| 免费一区二区视频| 欧美三级在线播放| 亚洲天堂成人在线观看| 成人免费观看男女羞羞视频| 久久综合色综合88| 极品少妇一区二区| 欧美mv和日韩mv国产网站| 亚洲v日本v欧美v久久精品| 99综合电影在线视频| 国产亚洲精品中文字幕| 国产乱码精品一区二区三区av| 欧美一区二区三区人| 一区二区三区视频在线看| 99免费精品视频| 亚洲国产综合色| 欧美三级视频在线观看| 亚洲男人的天堂在线aⅴ视频| 99久精品国产| 亚洲午夜羞羞片| 91麻豆精品91久久久久同性| 日本不卡一区二区三区高清视频| 欧美日韩一二三| 久久99久久久欧美国产| 国产日韩欧美一区二区三区综合| 波多野结衣中文字幕一区| 亚洲欧美一区二区三区孕妇| 欧美亚洲自拍偷拍| 国产九九视频一区二区三区| 欧美激情一区二区三区四区| 在线免费不卡电影| 国产在线精品一区二区三区不卡| 国产精品精品国产色婷婷| 欧美日韩在线播放三区四区| 极品少妇xxxx偷拍精品少妇| 亚洲一区二区三区精品在线| 2017欧美狠狠色| 欧美日韩国产三级| 99精品国产视频| 麻豆精品久久精品色综合| 一区二区三区国产精品| 2023国产精品自拍| 欧美在线免费观看亚洲| 国产成人精品亚洲午夜麻豆| 日本三级亚洲精品| 五月天激情综合| 亚洲另类色综合网站| 国产精品无码永久免费888| 7777女厕盗摄久久久| 在线一区二区视频| 色综合色综合色综合| 99精品视频在线播放观看| 国产盗摄精品一区二区三区在线| 日韩1区2区日韩1区2区| 亚洲成人av电影| 日韩精品久久久久久| 亚洲电影在线播放| 亚洲大片精品永久免费| 午夜精品久久久久久久99水蜜桃| 一区二区三区蜜桃| 亚洲国产精品久久不卡毛片| 亚洲一区二区精品视频| 日本午夜精品一区二区三区电影| 日韩经典中文字幕一区| 久久精工是国产品牌吗| 国产一区二区中文字幕| 99re这里只有精品6| 欧美性猛交xxxx乱大交退制版| 欧美日韩一区精品| 日韩欧美中文一区| 亚洲欧洲精品一区二区三区不卡| 国产精品久久毛片| 天堂va蜜桃一区二区三区漫画版| 免费看欧美美女黄的网站| 懂色av一区二区在线播放| 欧美性淫爽ww久久久久无| 91精品国产色综合久久ai换脸| 精品电影一区二区| 一区二区三区美女| 国产成人综合在线播放| 欧美日韩色一区| 国产精品私房写真福利视频| 国产一区在线精品| 日韩欧美国产一区在线观看| 最近中文字幕一区二区三区| 国内精品写真在线观看| 欧美性大战久久久久久久蜜臀| 久久亚洲二区三区| 日韩国产欧美在线播放| 91亚洲永久精品| 欧美国产一区视频在线观看| 日韩高清不卡在线| 色婷婷国产精品久久包臀| 国产精品网友自拍| 成人午夜电影小说| 国产日韩欧美一区二区三区乱码 | 国产婷婷一区二区| 激情综合亚洲精品| 欧美一级黄色大片| a4yy欧美一区二区三区| 久久99国产精品免费网站| 在线观看免费亚洲| 亚洲超丰满肉感bbw| 欧美精品久久久久久久久老牛影院| 亚洲丝袜自拍清纯另类| www.亚洲国产| 一区二区三区四区在线播放| 色av成人天堂桃色av| 亚洲黄网站在线观看| 51久久夜色精品国产麻豆| 天天色综合成人网| 日韩欧美在线观看一区二区三区| 亚洲一区欧美一区| 精品伦理精品一区| 国产精品一区二区x88av| 亚洲午夜影视影院在线观看| 7777女厕盗摄久久久| 激情图区综合网| 亚洲欧美激情在线| 日韩欧美一卡二卡| 久久国产视频网| 久久亚洲综合色一区二区三区| av不卡在线播放| 精品一区二区三区免费视频| 亚洲女同一区二区| 精品日韩在线观看| 色综合天天性综合| 国产精品亚洲一区二区三区在线| 亚洲日本电影在线| 久久综合999| 欧美一区二区视频免费观看| 成人av片在线观看| 国产成人亚洲综合a∨婷婷| 美女视频黄 久久| 午夜天堂影视香蕉久久| 综合久久国产九一剧情麻豆| 精品第一国产综合精品aⅴ| 欧美另类变人与禽xxxxx| jiyouzz国产精品久久| 国产精一区二区三区| 国产一区美女在线| 精品一二三四区| 免费看日韩精品| 久久99精品久久久久婷婷| 男男gaygay亚洲| 美女网站一区二区| 捆绑变态av一区二区三区| 日本不卡一区二区三区| 奇米888四色在线精品| 久久er精品视频| 国产福利一区二区三区视频| 久久66热re国产| 丰满亚洲少妇av| 97精品久久久午夜一区二区三区 | 777a∨成人精品桃花网| 欧美一区二区三区婷婷月色| 欧美日韩一区高清| 亚洲精品在线观看网站| 国产三级精品视频| 亚洲色图都市小说| 视频精品一区二区| 国产成人精品免费网站| 99精品国产热久久91蜜凸| 欧美日韩国产综合草草| 久久综合狠狠综合久久激情| 欧美激情一区二区三区全黄| 一区二区三区小说| 久久av中文字幕片| 91在线小视频| 亚洲精品一区二区三区精华液| 国产精品每日更新在线播放网址| 亚洲自拍都市欧美小说| 国产精品香蕉一区二区三区| 在线日韩av片| 国产精品乱子久久久久| 日本在线不卡视频一二三区| 91在线视频播放地址| 久久久综合网站| 亚洲高清免费在线|