Matlab編程實現平面桿單元分析
首先明確Matlab程序要實現的五個重要模塊是:單元剛度矩陣求解、單元組裝、節點位移求解、單元應力求解、節點力求解。這五個模塊的實現如下。
1.單元剛度矩陣的求解
定義了函數Bar2D2Node_Stiffness,計算單元的剛度矩陣,輸入彈性模量e,截面積a,輸出兩個節點坐標的單元剛度矩陣k(4X4)。具體代碼如下:
功能?k=Bar2D2Node_Stiffness(E,A,x1,y1,x2,y2)
l = sqrt((x2-x 1)*(x2-x 1)+(y2-y 1)*(y2-y 1));
x = acos((x2-x 1)/L);
c = cos(x);
s = sin(x);
k = E * A/L *;%活動的自由度數量
p =;%活動的自由度數量
p =[20000;0;-25000];
u=Bar2D2Node_Disp(KK,數字,p)
%分支反力的計算
q =零(8,1);
q(num)= u;%節點位移數組
P=Bar2D2Node_Forces(KK,q)
每個單元的%應力計算
u 1 =[q(1);q(2);q(3);q(4)];
Stress 1 = bar 2d 2 node _ Stress(E,x1,y1,x2,y2,u1)
U2 =[q(3);q(4);q(5);q(6)];
stress2=Bar2D2Node_Stress(E,x2,y2,x3,y3,u2)
u3 =[q(1);q(2);q(5);q(6)];
stress3=Bar2D2Node_Stress(E,x1,y1,x3,y3,u3)?
U4 =[q(7);q(8);q(5);q(6)];
應力4 = bar 2d 2 node _應力(E,x4,y4,x3,y3,u4)
可能有點啰嗦。註意,有五個函數和最後壹個主程序。計算時直接運行主程序即可。希望能幫到妳。