• 大小: 8KB
    文件类型: .rar
    金币: 2
    下载: 0 次
    发布日期: 2024-01-31
  • 语言: Matlab
  • 标签: MATLAB  算例  

资源简介

MATLAB有限元工具箱的算例,适用于大家学习参考

资源截图

代码片段和文件信息

% example exd1
%----------------------------------------------------------------
% PURPOSE 
%    Set up the fe-model and perform eigenvalue analysis
%    for a simple frame structure.
%----------------------------------------------------------------

% REFERENCES
%     G“oran Sandberg 1994-03-08 
%     Karl-Gunnar Olsson 1995-09-29
%----------------------------------------------------------------
 echo on

% ------ Generate the model ------------------------------------------

% ------ material data ------------------------------------------
E=3e10;                 rho=2500;
Av=0.1030e-2;           Iv=0.0171e-4;             % IPE100
Ah=0.0764e-2;           Ih=0.00801e-4;            % IPE80
epv=[E Av Iv rho*Av];   eph=[E Ah Ih rho*Ah];
% ------ topology -----------------------------------------------
Edof=[1   1  2  3  4  5  6
      2   4  5  6  7  8  9
      3   7  8  9 10 11 12
      4  10 11 12 13 14 15];
% ------ list of coordinates  -----------------------------------
Coord=[0  0; 0  1.5; 0  3; 1  3; 2  3];
% ------ list of degrees-of-fredom  -----------------------------
Dof=[1  2  3; 4  5  6; 7  8  9; 10 11 12; 13 14 15];
% ------ generate element matrices assemble in global matrices - 
K=zeros(15);     M=zeros(15);
[ExEy]=coordxtr(EdofCoordDof2);
for i=1:2
  [kmc]=beam2d(Ex(i:)Ey(i:)epv);
  K=assem(Edof(i:)Kk);  M=assem(Edof(i:)Mm);  
end
for i=3:4
  [kmc]=beam2d(Ex(i:)Ey(i:)eph);
  K=assem(Edof(i:)Kk);  M=assem(Edof(i:)Mm);  
end
 

% ----- Draw a plot of the element mesh --------------------------


clf;     eldraw2(ExEy[1 2 2]Edof);
grid;    title(‘2-D frame Structure‘) 

% ----- Eigenvalue analysis --------------------------------------

b=[1 2 3 14]‘;
[LaEgv]=eigen(KMb);
Freq=sqrt(La)/(2*pi);


% ----- plot one eigenmode ---------------------------------------

figure(1)    clf     grid     title(‘The first eigenmode‘) 
eldraw2(ExEy[2 3 1]); 
Edb=extract(EdofEgv(:1));      eldisp2(ExEyEdb[1 2 2]);
FreqText=num2str(Freq(1));       text(.51.75FreqText);

% ----- plot eight eigenmodes ------------------------------------

figure(2) clf axis(‘equal‘) hold on axis off
magnfac=0.5;
title(‘The first eight eigenmodes (Hz)‘ )
for i=1:4;
  Edb=extract(EdofEgv(:i));
  Ext=Ex+(i-1)*3;                eldraw2(ExtEy[2 3 1]); 
  eldisp2(ExtEyEdb[1 2 2]magnfac);
  FreqText=num2str(Freq(i));     text(3*(i-1)+.51.5FreqText);
end;
Eyt=Ey-4; 
for i=5:8;
  Edb=extract(EdofEgv(:i));
  Ext=Ex+(i-5)*3;                eldraw2(ExtEyt[2 3 1]); 
  eldisp2(ExtEytEdb[1 2 2]magnfac);
  FreqText=num2str(Freq(i));     text(3*(i-5)+.5-2.5FreqText);
end

% -------------------- end ---------------------------------------
echo off

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2725  2000-11-06 14:43  exd1.m

     文件       2203  2000-11-06 14:43  exd2.m

     文件       2050  2000-11-06 14:43  exd3.m

     文件       2324  2000-11-06 14:43  exn2.m

     文件       1313  2000-11-06 14:43  exs1.m

     文件       1618  2000-11-06 14:43  exs2.m

     文件       2527  2000-11-06 14:43  exs5.m

     文件       2061  2000-11-06 14:43  exs6.m

     文件       1744  2000-11-06 14:43  exs7.m

----------- ---------  ---------- -----  ----

                18565                    9


评论

共有 条评论