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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? exam4_2.m

?? 名字已經(jīng)很清楚了
?? M
字號(hào):
function exam4_2( file_in )
% 本程序?yàn)榈谒恼碌牡诙€(gè)算例,采用三角形單元計(jì)算隧道在自重作用下的變形和應(yīng)力
%      exam4_2( filename )
%  輸入?yún)?shù): 
%      file_in  ---------- 有限元模型文件

% 定義全局變量
%      gNode ------------- 節(jié)點(diǎn)坐標(biāo)
%      gElement ---------- 單元定義
%      gMaterial --------- 材料性質(zhì)
%      gBC1 -------------- 第一類(lèi)約束條件
%      gK ---------------- 整體剛度矩陣
%      gDelta ------------ 整體節(jié)點(diǎn)坐標(biāo)
%      gNodeStress ------- 節(jié)點(diǎn)應(yīng)力
%      gElementStress ---- 單元應(yīng)力
    global gNode gElement gMaterial gBC1 gK gDelta gNodeStress gElementStress

    if nargin < 1
        file_in = 'exam4_2.dat' ;
    end
    
    % 檢查文件是否存在
    if exist( file_in ) == 0
        disp( sprintf( '錯(cuò)誤:文件 %s 不存在', file_in ) )
        disp( sprintf( '程序終止' ) )
        return ;
    end
    
    % 根據(jù)輸入文件名稱(chēng)生成輸出文件名稱(chēng)
    [path_str,name_str,ext_str] = fileparts( file_in ) ;
    ext_str_out = '.mat' ;
    file_out = fullfile( path_str, [name_str, ext_str_out] ) ;
    
    % 檢查輸出文件是否存在
    if exist( file_out ) ~= 0 
        answer = input( sprintf( '文件 %s 已經(jīng)存在,是否覆蓋? ( Yes / [No] ):  ', file_out ), 's' ) ;
        if length( answer ) == 0
            answer = 'no' ;
        end
        
        answer = lower( answer ) ;
        if answer ~= 'y' | answer ~= 'yes' 
            disp( sprintf( '請(qǐng)使用另外的文件名,或備份已有的文件' ) ) ;
            disp( sprintf( '程序終止' ) );
            return ; 
        end
    end

    % 建立有限元模型并求解,保存結(jié)果
    FemModel( file_in ) ;          % 定義有限元模型
    SolveModel ;                   % 求解有限元模型
    SaveResults( file_out ) ;      % 保存計(jì)算結(jié)果
    
    % 計(jì)算結(jié)束
    disp( sprintf( '計(jì)算正常結(jié)束,結(jié)果保存在文件 %s 中', file_out ) ) ;
    disp( sprintf( '可以使用后處理程序 exam4_2_post.m 顯示計(jì)算結(jié)果' ) ) ;
return ;

function FemModel(filename)
%  定義有限元模型
%  輸入?yún)?shù):
%      filename --- 有限元模型文件
%  返回值:
%      無(wú)
%  說(shuō)明:
%      該函數(shù)定義平面問(wèn)題的有限元模型數(shù)據(jù):
%        gNode ------- 節(jié)點(diǎn)定義
%        gElement ---- 單元定義
%        gMaterial --- 材料定義,包括彈性模量,梁的截面積和梁的抗彎慣性矩
%        gBC1 -------- 約束條件

    global gNode gElement gMaterial gBC1
    
    % 打開(kāi)文件
    fid = fopen( filename, 'r' ) ;
    
    % 讀取節(jié)點(diǎn)坐標(biāo)
    node_number = fscanf( fid, '%d', 1 ) ;
    gNode = zeros( node_number, 2 ) ;
    for i=1:node_number
        dummy = fscanf( fid, '%d', 1 ) ;
        gNode( i, : ) = fscanf( fid, '%f', [1, 2] ) ;
    end
    
    % 讀取單元定義
    element_number = fscanf( fid, '%d', 1 ) ;
    gElement = zeros( element_number, 4 ) ;
    for i=1:element_number
        dummy = fscanf( fid, '%d', 1 ) ;
        gElement( i, : ) = fscanf( fid, '%d', [1, 4] ) ;
    end
    
    % 讀取材料信息
    material_number = fscanf( fid, '%d', 1 ) ;
    gMaterial = zeros( material_number, 4 ) ;
    for i=1:material_number
        dummy = fscanf( fid, '%d', 1 ) ;
        gMaterial( i, : ) = fscanf( fid, '%f', [1,4] ) ;
    end
    
    % 讀取邊界條件
    bc1_number = fscanf( fid, '%d', 1 ) ;
    gBC1 = zeros( bc1_number, 3 ) ;
    for i=1:bc1_number
        gBC1( i, 1 ) = fscanf( fid, '%d', 1 ) ;
        gBC1( i, 2 ) = fscanf( fid, '%d', 1 ) ;
        gBC1( i, 3 ) = fscanf( fid, '%f', 1 ) ;
    end
    
    % 關(guān)閉文件
    fclose( fid ) ;
return

function SolveModel
%  求解有限元模型
%  輸入?yún)?shù):
%     無(wú)
%  返回值:
%     無(wú)
%  說(shuō)明:
%      該函數(shù)求解有限元模型,過(guò)程如下
%        1. 計(jì)算單元?jiǎng)偠染仃?,集成整體剛度矩陣
%        2. 計(jì)算單元的等效節(jié)點(diǎn)力,集成整體節(jié)點(diǎn)力向量
%        3. 處理約束條件,修改整體剛度矩陣和節(jié)點(diǎn)力向量
%        4. 求解方程組,得到整體節(jié)點(diǎn)位移向量
%        5. 計(jì)算單元應(yīng)力和節(jié)點(diǎn)應(yīng)力

    global gNode gElement gMaterial gBC1 gK gDelta gNodeStress gElementStress

    % step1. 定義整體剛度矩陣和節(jié)點(diǎn)力向量
    [node_number,dummy] = size( gNode ) ;
    gK = sparse( node_number * 2, node_number * 2 ) ;
    f = sparse( node_number * 2, 1 ) ;

    % step2. 計(jì)算單元?jiǎng)偠染仃?,并集成到整體剛度矩陣中
    [element_number,dummy] = size( gElement ) ;
    for ie=1:1:element_number
        disp( sprintf(  '計(jì)算剛度矩陣,當(dāng)前單元: %d', ie  ) ) ;
        k = StiffnessMatrix( ie ) ;
        AssembleStiffnessMatrix( ie, k ) ;
    end

    % step3. 計(jì)算自重產(chǎn)生的等效節(jié)點(diǎn)力
    for ie=1:1:element_number
        disp( sprintf(  '計(jì)算自重的等效節(jié)點(diǎn)力,當(dāng)前單元: %d', ie  ) ) ;
        egf = EquivalentGravityForce( ie ) ;
        i = gElement( ie, 1 ) ;
        j = gElement( ie, 2 ) ;
        m = gElement( ie, 3 ) ;
        f( (i-1)*2+1 : (i-1)*2+2 ) = f( (i-1)*2+1 : (i-1)*2+2 ) + egf( 1:2 ) ;
        f( (j-1)*2+1 : (j-1)*2+2 ) = f( (j-1)*2+1 : (j-1)*2+2 ) + egf( 3:4 ) ;
        f( (m-1)*2+1 : (m-1)*2+2 ) = f( (m-1)*2+1 : (m-1)*2+2 ) + egf( 5:6 ) ;
    end
  
    % step4. 處理約束條件,修改剛度矩陣和節(jié)點(diǎn)力向量。采用乘大數(shù)法
    [bc_number,dummy] = size( gBC1 ) ;
    for ibc=1:1:bc_number
        n = gBC1(ibc, 1 ) ;
        d = gBC1(ibc, 2 ) ;
        m = (n-1)*2 + d ;
        f(m) = gBC1(ibc, 3)* gK(m,m) * 1e15 ;
        gK(m,m) = gK(m,m) * 1e15 ;
    end

    % step 5. 求解方程組,得到節(jié)點(diǎn)位移向量
    gDelta = gK \ f ;
    
    % step 6. 計(jì)算單元應(yīng)力
    gElementStress = zeros( element_number, 6 ) ;
    for ie=1:element_number 
        disp( sprintf(  '計(jì)算單元應(yīng)力,當(dāng)前單元: %d', ie  ) ) ;
        es = ElementStress( ie ) ;
        gElementStress( ie, : ) = es ;
    end
    
    % step 7. 計(jì)算節(jié)點(diǎn)應(yīng)力(采用繞節(jié)點(diǎn)加權(quán)平均)
    gNodeStress = zeros( node_number, 6 ) ;       
    for i=1:node_number                         
        disp( sprintf(  '計(jì)算節(jié)點(diǎn)應(yīng)力,當(dāng)前結(jié)點(diǎn): %d', i  ) ) ;
        S = zeros( 1, 3 ) ;                         
        A = 0 ;
        for ie=1:1:element_number
            for k=1:1:3
                if i == gElement( ie, k ) 
                    area= ElementArea( ie ) ;
                    S = S + gElementStress(ie,1:3 ) * area ;
                    A = A + area ;
                    break ;
                end
            end
        end
        gNodeStress(i,1:3) = S / A ;
        gNodeStress(i,6) = 0.5*sqrt( (gNodeStress(i,1)-gNodeStress(i,2))^2 + 4*gNodeStress(i,3)^2 ) ;
        gNodeStress(i,4) = 0.5*(gNodeStress(i,1)+gNodeStress(i,2)) + gNodeStress(i,6) ;
        gNodeStress(i,5) = 0.5*(gNodeStress(i,1)+gNodeStress(i,2)) - gNodeStress(i,6) ;
    end
return

function k = StiffnessMatrix( ie )
%  計(jì)算單元?jiǎng)偠染仃?%  輸入?yún)?shù):
%     ie ----  單元號(hào)
%  返回值:
%     k  ----  單元?jiǎng)偠染仃?
    global gNode gElement gMaterial 
    k = zeros( 6, 6 ) ;
    E  = gMaterial( gElement(ie, 4), 1 ) ;
    mu = gMaterial( gElement(ie, 4), 2 ) ;
    h  = gMaterial( gElement(ie, 4), 3 ) ;
    xi = gNode( gElement( ie, 1 ), 1 ) ;
    yi = gNode( gElement( ie, 1 ), 2 ) ;
    xj = gNode( gElement( ie, 2 ), 1 ) ;
    yj = gNode( gElement( ie, 2 ), 2 ) ;
    xm = gNode( gElement( ie, 3 ), 1 ) ;
    ym = gNode( gElement( ie, 3 ), 2 ) ;
    ai = xj*ym - xm*yj ;
    aj = xm*yi - xi*ym ;
    am = xi*yj - xj*yi ;
    bi = yj - ym ;
    bj = ym - yi ;
    bm = yi - yj ;
    ci = -(xj-xm) ;
    cj = -(xm-xi) ;
    cm = -(xi-xj) ;
    area = (ai+aj+am)/2 ;
    B = [bi  0 bj  0 bm  0
          0 ci  0 cj  0 cm
         ci bi cj bj cm bm] ;
    B = B/2/area ;
    D = [ 1-mu    mu      0
           mu    1-mu     0
            0      0   (1-2*mu)/2] ;
    D = D*E/(1-2*mu)/(1+mu) ;
    k = transpose(B)*D*B*h*abs(area) ;    
return

function B = MatrixB( ie )
%  計(jì)算單元的應(yīng)變矩陣B
%  輸入?yún)?shù):
%     ie ----  單元號(hào)
%  返回值:
%     B  ----  單元應(yīng)變矩陣
    global gNode gElement
    xi = gNode( gElement( ie, 1 ), 1 ) ;
    yi = gNode( gElement( ie, 1 ), 2 ) ;
    xj = gNode( gElement( ie, 2 ), 1 ) ;
    yj = gNode( gElement( ie, 2 ), 2 ) ;
    xm = gNode( gElement( ie, 3 ), 1 ) ;
    ym = gNode( gElement( ie, 3 ), 2 ) ;
    ai = xj*ym - xm*yj ;
    aj = xm*yi - xi*ym ;
    am = xi*yj - xj*yi ;
    bi = yj - ym ;
    bj = ym - yi ;
    bm = yi - yj ;
    ci = -(xj-xm) ;
    cj = -(xm-xi) ;
    cm = -(xi-xj) ;
    area = (ai+aj+am)/2 ;
    B = [bi  0 bj  0 bm  0
          0 ci  0 cj  0 cm
         ci bi cj bj cm bm] ;
    B = B/2/area ;
return

function area = ElementArea( ie )
%  計(jì)算單元面積
%  輸入?yún)?shù):
%     ie ----  單元號(hào)
%  返回值:
%     area  ----  單元面積
    global gNode gElement gMaterial 

    xi = gNode( gElement( ie, 1 ), 1 ) ;
    yi = gNode( gElement( ie, 1 ), 2 ) ;
    xj = gNode( gElement( ie, 2 ), 1 ) ;
    yj = gNode( gElement( ie, 2 ), 2 ) ;
    xm = gNode( gElement( ie, 3 ), 1 ) ;
    ym = gNode( gElement( ie, 3 ), 2 ) ;
    ai = xj*ym - xm*yj ;
    aj = xm*yi - xi*ym ;
    am = xi*yj - xj*yi ;
    area = abs((ai+aj+am)/2) ;
return

function AssembleStiffnessMatrix( ie, k )
%  把單元?jiǎng)偠染仃嚰傻秸w剛度矩陣
%  輸入?yún)?shù):
%      ie  --- 單元號(hào)
%      k   --- 單元?jiǎng)偠染仃?%  返回值:
%      無(wú)
    global gElement gK
    for i=1:1:3
        for j=1:1:3
            for p=1:1:2
                for q=1:1:2
                    m = (i-1)*2+p ;
                    n = (j-1)*2+q ;
                    M = (gElement(ie,i)-1)*2+p ;
                    N = (gElement(ie,j)-1)*2+q ;
                    gK(M,N) = gK(M,N) + k(m,n) ;
                end
            end
        end
    end
return

function egf = EquivalentGravityForce( ie )
%  計(jì)算單元自重的等效節(jié)點(diǎn)力
%  輸入?yún)?shù)
%      ie  ----- 單元號(hào)
%  返回值
%      egf ----- 自重的等效節(jié)點(diǎn)力 
    global gElement gMaterial
    
    area = ElementArea( ie ) ;
    h    = gMaterial( gElement( ie, 4 ), 3 ) ;
    ro   = gMaterial( gElement( ie, 4 ), 4 ) ;
    w    = area * h * ro ;
    egf  = -w/3 * [0; 1; 0; 1; 0; 1] ;
return

function es = ElementStress( ie )
%  計(jì)算單元的應(yīng)力分量
%  輸入?yún)?shù)
%      ie  ----- 單元號(hào)
%  返回值
%      es ----- 單元應(yīng)力分量列陣(1×6): [sx, sy, txy, s1, s2, tmax]
    global gElement gDelta  gMaterial
    
    es = zeros( 1, 6 ) ;   % 單元的應(yīng)力分量
    de = zeros( 6, 1 ) ;   % 單元節(jié)點(diǎn)位移列陣
    E  = gMaterial( gElement(ie, 4), 1 ) ;
    mu = gMaterial( gElement(ie, 4), 2 ) ;
    D = [ 1-mu    mu      0
           mu    1-mu     0
            0      0   (1-2*mu)/2] ;
    D = D*E/(1-2*mu)/(1+mu) ;
    B = MatrixB( ie ) ;
    for j=1:1:3
        de( 2*j-1 ) = gDelta( 2*gElement( ie, j )-1 ) ;
        de( 2*j   ) = gDelta( 2*gElement( ie, j )   ) ;
    end
    es(1:3) = D * B * de ;
    es(6) = 0.5*sqrt((es(1)-es(2))^2 + 4*es(3)^2 ) ;
    es(4) = 0.5*(es(1)+es(2)) + es(6) ;
    es(5) = 0.5*(es(1)+es(2)) - es(6) ;
return

function SaveResults( file_out )
%  顯示計(jì)算結(jié)果
%  輸入?yún)?shù):
%     file_out  --- 保存結(jié)果文件
%  返回值:
%     無(wú)

    global gNode gElement gMaterial gBC1 gDelta gNodeStress gElementStress
    save( file_out, 'gNode', 'gElement', 'gMaterial', 'gBC1', 'gDelta', 'gNodeStress', 'gElementStress' ) ;
return

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美色成人综合| 亚洲乱码日产精品bd| 欧美日韩成人激情| 色综合久久综合网97色综合 | 成人美女视频在线看| 国产乱码精品一区二区三区av| 免费在线视频一区| 美女性感视频久久| 精彩视频一区二区三区| 久久成人综合网| 国精产品一区一区三区mba桃花 | 欧美日韩一区二区三区视频| 欧美影视一区在线| 欧美亚洲高清一区| 欧美日韩美女一区二区| 欧美一区二区日韩| 久久午夜国产精品| 中文字幕不卡一区| 亚洲精选免费视频| 亚洲第一在线综合网站| 日韩av一级片| 国产精品123| 91麻豆国产香蕉久久精品| 91成人国产精品| 337p亚洲精品色噜噜噜| 日韩精品资源二区在线| 2024国产精品| 国产精品福利一区| 一区二区在线观看视频在线观看| 亚洲精品欧美激情| 欧美bbbbb| 国产精品亚洲第一区在线暖暖韩国| 成人精品视频.| 在线观看精品一区| 欧美大胆人体bbbb| 国产精品视频九色porn| 亚洲午夜电影在线观看| 韩日av一区二区| 99久久久精品| 欧美日韩国产高清一区二区三区| 日韩久久免费av| 亚洲欧洲日韩综合一区二区| 亚洲成人三级小说| 国产做a爰片久久毛片| 91麻豆免费视频| 日韩欧美国产一区在线观看| 中文字幕日韩一区二区| 日韩精品电影在线| 成人h动漫精品一区二区| 欧美日韩一区不卡| 欧美激情在线观看视频免费| 夜夜揉揉日日人人青青一国产精品 | 欧美成人精品二区三区99精品| 欧美国产成人精品| 天堂va蜜桃一区二区三区漫画版| 国产乱妇无码大片在线观看| 欧美中文字幕一区二区三区亚洲| 久久众筹精品私拍模特| 亚洲已满18点击进入久久| 极品瑜伽女神91| 在线观看日韩高清av| 国产欧美日韩在线观看| 日韩不卡在线观看日韩不卡视频| 99精品桃花视频在线观看| 精品国产乱码久久久久久浪潮| 一区二区三区精品久久久| 国产精品一区二区三区四区| 精品视频在线免费| 专区另类欧美日韩| 国产精品原创巨作av| 欧美精品黑人性xxxx| 亚洲日本欧美天堂| 国产在线视频一区二区| 欧美日韩一区二区三区高清| 国产精品国产三级国产有无不卡 | 国产麻豆精品在线观看| 欧美日韩亚洲国产综合| 中文字幕久久午夜不卡| 奇米在线7777在线精品 | 国产精品国产三级国产专播品爱网| 日日摸夜夜添夜夜添精品视频| 99re在线视频这里只有精品| 久久精品欧美一区二区三区麻豆| 人妖欧美一区二区| 欧美日韩午夜在线视频| 亚洲日本欧美天堂| 97精品国产露脸对白| 中文字幕精品—区二区四季| 国产麻豆精品在线| 久久影院午夜论| 久久精品国产一区二区三| 欧美二区乱c少妇| 午夜精品一区二区三区三上悠亚| 91久久精品国产91性色tv| 成人免费在线观看入口| caoporn国产精品| 中文字幕第一页久久| 国产成人av一区二区| 精品久久久久久久久久久久包黑料 | 国内精品伊人久久久久影院对白| 91麻豆精品国产91久久久久久| 午夜亚洲国产au精品一区二区| 91黄色免费看| 亚洲综合在线免费观看| 在线精品亚洲一区二区不卡| 洋洋成人永久网站入口| 91久久免费观看| 亚洲成人免费电影| 91精品国产欧美一区二区成人| 亚洲18女电影在线观看| 欧美精品一二三四| 日韩精品欧美精品| 日韩欧美国产综合在线一区二区三区| 青青草97国产精品免费观看无弹窗版| 日韩一级黄色大片| 狠狠网亚洲精品| 中文乱码免费一区二区| 91免费看视频| 亚洲电影欧美电影有声小说| 欧美肥胖老妇做爰| 久久国产精品免费| 国产欧美日韩激情| 91丨九色porny丨蝌蚪| 国产精品乱子久久久久| 91老师国产黑色丝袜在线| 亚洲专区一二三| 91精品国产黑色紧身裤美女| 韩国理伦片一区二区三区在线播放| 精品国产第一区二区三区观看体验 | yourporn久久国产精品| 玉米视频成人免费看| 欧美三级中文字幕在线观看| 奇米影视一区二区三区| 久久久蜜臀国产一区二区| www.亚洲精品| 香蕉久久一区二区不卡无毒影院| 91精品免费在线观看| 国产精品亚洲成人| 亚洲一卡二卡三卡四卡无卡久久 | 亚洲尤物视频在线| 精品少妇一区二区三区| 国产精品66部| 亚洲自拍偷拍av| 欧美电影免费观看高清完整版在 | 91视频观看视频| 亚洲一区在线观看免费观看电影高清| 日韩欧美一卡二卡| 懂色av一区二区三区免费观看| 最新国产成人在线观看| 欧美日韩一区二区三区四区| 国产精品主播直播| 亚洲综合激情小说| 久久人人爽人人爽| 欧美中文字幕一二三区视频| 国内欧美视频一区二区| 亚洲女同女同女同女同女同69| 日韩一级片在线观看| 91亚洲永久精品| 久久国产精品色婷婷| 玉米视频成人免费看| 久久精品网站免费观看| 欧美精品高清视频| 99r精品视频| 国产中文字幕精品| 亚洲成人一区二区在线观看| 国产精品丝袜黑色高跟| 日韩三级免费观看| 色婷婷综合久久久久中文一区二区 | 欧美群妇大交群中文字幕| 国产精品1区2区3区| 午夜成人在线视频| 亚洲欧美另类在线| 国产亚洲欧美激情| 欧美一区二区三区视频免费播放| 91在线观看成人| 国产福利一区在线观看| 日本va欧美va瓶| 亚洲国产日韩综合久久精品| 国产精品另类一区| 久久亚洲精品国产精品紫薇| 欧美日韩成人激情| 欧美系列在线观看| 99re热这里只有精品视频| 国产精品资源站在线| 久草这里只有精品视频| 日韩av中文在线观看| 亚洲国产视频直播| 亚洲精品欧美激情| 亚洲人成在线观看一区二区| 国产欧美中文在线| 国产亚洲一区二区在线观看| 日韩欧美国产麻豆| 制服视频三区第一页精品| 欧美伊人久久大香线蕉综合69| 一本色道**综合亚洲精品蜜桃冫| 高清不卡一区二区| 国产精品亚洲第一| 国产成人av一区二区三区在线| 国产成人精品亚洲777人妖| 国产一区日韩二区欧美三区|