結構力學大作業

2022-09-10 14:30:05 字數 5195 閱讀 2345

一、 程式設計原理

如圖1-1,所計算結構為4層高,6跨在第3跨布置斜桿,節點為剛接的框架。

圖1-1 框架結構簡圖

(1) 位移編碼

以桿件為單元,將結構拆分,建立整體座標系,並對節點位移按圖1-2所示編碼。

圖1-2 位移編碼圖

(2) 單元分析

所有單元均為平面彎曲式自由單元如圖1-3所示。

圖1-3 自由式單元幹段位移和杆端力

桿件的單元剛度矩陣

其中(3) 建立區域性座標系

分別建立如圖1-4所示的豎向分體系區域性座標系,水平分體系區域性座標系和斜桿分體系座標系。

圖1-4 分體系區域性座標系的建立

(4) 建立分體系剛度

分別建立三個分體系的105×105的剛度矩陣,引入迴圈變數,依次對相應位移剛度賦值。

(5) 座標轉換

對豎向座標系和斜桿體系進行轉置,其座標轉換陣為

其中。(6) 建立整體剛度方程

將三個剛度矩陣相加,得到整體剛度方程。

(7) 建立荷載矩陣

外力的矩陣為單元杆端力與單元等效節點荷載矩陣之和。因本結構只在第一列柱子上有水平均布荷載作用,所以外力矩陣為105×1的0矩陣,與105×1的等效節點荷載疊加後可得荷載矩陣。

(8) 邊界條件處理

因為柱底與大地剛接,所以支座處不發生位移,利用置零置一法對剛度矩陣進行處理,使位移滿足條件。

(9) 聯立方程求解

通過方程求出位移矩陣。則40,61,82,103位移編號所對應的位移值為所求點位移。

(10) 通過位移求解彎矩

將位移帶回到單元方程中,求出對應的力,豎直分體系的位移需進行乙個轉置再代入計算最後的。

二. 程式說明

本程式使用matlab軟體通過矩陣位移法對題目進行程式設計設計,按照提示輸入柱子的抗彎剛度eic;柱子的抗壓剛度eac;梁的抗彎剛度eib;梁的抗壓剛度 eab;斜桿的抗彎剛度eio;斜桿的抗壓剛度eao;側向均布荷載集度q,便可得到最右端節點的位移和彎矩。

在建立剛度矩陣,引入ii和jj作為迴圈變數,根據剛度矩陣特點對節點逐列逐跨進行矩陣塊的迴圈賦值。在建立節點力矩陣的過程中,首先對外力進行化簡,找出等效力的規律,然後進行力的矩陣的賦值。

在整體座標系下,通過力與剛度和位移的關係,聯立方程求解節點的位移矩陣,再將節點位移代回到區域性座標系下的平衡方程中求出桿端力。

該程式借用matlab軟體中大量的矩陣賦值和矩陣運算語句,通過對桿件單元和節點的資料化處理,實現計算機對結構的計算,改程式經過簡單修改後即可按照輸入指令,計算n列n跨任意位置加斜桿的鋼架體系,具有一定的普遍性。

三. 演算法流程

四. 源**

disp('四層,六跨,第三跨有斜桿鋼架求解:');

l=input('跨度l=\n');

h=input('層高h =\n');

eic=input('柱的抗彎剛度eic=\n');

eac=input('柱的抗壓eac=\n');

eib=input('梁的抗彎剛度eib=\n');

eab=input('梁的抗壓eab=\n');

eio=input('斜桿的抗彎剛度eio =\n');

eao=input('斜桿的抗壓剛度eao =\n');

q=input('水平均布荷載集度q =\n');

a=zeros(105,105);

e=zeros(105,105);

x=zeros(105,105);

%豎向分體系剛度矩陣%

s1=eac/h;

s2=12*eic/(h^3);

s3=6*eic/(h^2);

s4=4*eic/h;

s5=2*eic/h;

for jj=1:1:7

a(3*jj-2:3*jj,3*jj-2:3*jj)=[s1 0 0;0 s2 s3;0 s3 s4];

a(21+3*jj-2:21+3*jj,21+3*jj-2:21+3*jj)=[2*s1 0 0;0 2*s2 0;0 0 2*s4 ];

a(3*jj-2:3*jj,21+3*jj-2:21+3*jj)=[-s1 0 0;0 -s2 s3;0 -s3 s5];

a(21+3*jj-2:21+3*jj,3*jj-2:3*jj)=[-s1 0 0;0 -s2 -s3;0 s3 s5];

for ii=1:1:3

a(21*ii+3*jj-2:21*ii+3*jj,21*(ii+1)+3*jj-2:21*(ii+1)+3*jj)=[-s1 0 0;0 -s2 s3;0 -s3 s5];%k12%

a(21*(ii+1)+3*jj-2:21*(ii+1)+3*jj,21*ii+3*jj-2:21*ii+3*jj)=[-s1 0 0;0 -s2 -s3;0 s3 s5];%k21%

a(21*(ii+1)+3*jj-2:21*(ii+1)+3*jj,21*(ii+1)+3*jj-2:21*(ii+1)+3*jj)=[2*s1 0 0;0 2*s2 0;0 0 2*s4 ]%k22%、

end、

a(84+3*jj-2:84+3*jj,84+3*jj-2:84+3*jj)=[s1 0 0;0 s2 -s3;0 -s3 s4];

endt=zeros(105,105);

for ii=1:3:103、

t(ii:ii+2,ii:ii+2)=[0 1 0;-1 0 0;0 0 1];

endk1=t'*a*t;

%水平分體系剛度矩陣%

s1=eab/l;

s2=12*eib/(l^3);

s3=6*eib/(l^2);

s4=4*eib/l;

s5=2*eib/l;

for ii=1:1:4

e(21*ii+1:21*ii+3,21*ii+4:21*ii+6)=[-s1 0 0;0 -s2 s3;0 -s3 s5];

e(21*ii+1:21*ii+3,21*ii+1:21*ii+3)=[s1 0 0;0 s2 s3;0 s3 s4];

e(21*ii+4:21*ii+6,21*ii+4:21*ii+6)=[2*s1 0 0;0 2*s2 0;0 0 2*s4 ];

e(21*ii+4:21*ii+6,21*ii+1:21*ii+3)=[-s1 0 0;0 -s2 -s3;0 s3 s5];

for jj=2:1:6

e(21*ii+3*jj-2:21*ii+3*jj,21*ii+3*(jj+1)-2:21*ii+3*(jj+1))=[-s1 0 0;0 -s2 s3;0 -s3 s5];

e(21*ii+3*(jj+1)-2:21*ii+3*(jj+1),21*ii+3*jj-2:21*ii+3*jj)=[-s1 0 0;0 -s2 -s3;0 s3 s5];

e(21*ii+3*(jj+1)-2:21*ii+3*(jj+1),21*ii+3*(jj+1)-2:21*ii+3*(jj+1))=[2*s1 0 0;0 2*s2 0;0 0 2*s4 ];

ende(21+21*ii-2:21+21*ii,21+21*ii-2:21+21*ii)=[s1 0 0;0 s2 -s3;0 -s3 s4];

endk2=e;

%斜向分體系剛度矩陣%

d=(h^2+l^2)^(1/2);

s1=eao/d;

s2=12*eio/(d^3);

s3=6*eio/(d^2);

s4=4*eio/d;

s5=2*eio/d;

for ii=0:1:3

x(7+21*ii:7+21*ii+2,31+21*ii:31+21*ii+2)=[-s1 0 0;0 -s2 s3;0 -s3 s5];

x(31+21*ii:31+21*ii+2,31+21*ii:31+21*ii+2)=[s1 0 0;0 s2 -s3;0 -s3 s4];

x(31+21*ii:31+21*ii+2,7+21*ii:7+21*ii+2)=[-s1 0 0;0 -s2 -s3;0 s3 s5];

x(7+21*ii:7+21*ii+2,7+21*ii:7+21*ii+2)=[s1 0 0;0 s2 s3;0 s3 s4];

endr=zeros(105,105);

for ii=1:3:103

r(ii:ii+2,ii:ii+2)=[l/d h/d 0;-h/d l/d 0;0 0 1];

endk3=r'*x*r;

k=k1+k2+k3;

%力的矩陣%

f0=zeros(105,1);

z=zeros(105,1);

z(3,1)=-q*(h^2)/12;

z(87,1)=q*(h^2)/12;

z(1,1)=0.5*q*h;

z(85,1)=0.5*q*h;

for ii=1:3

z(1+21*ii,1)=q*h;

endf1=z;

f=f0+f1;

%置零置一%

k(1:21,:)=0;

k(:,1:21)=0;

k(1:21,1:21)=eye(21);

f(1:21,1)=0;

x1=k\f;

disp(x1);

%後處理%

m1=zeros(4,1);

for ii=1:4

m1(ii,1)=[0 6*eib/(l^2) 2*eib/l 0 -6*eib/(l^2) 4*eib/l ]*x1(16+21*ii:21+21*ii,1);

endm2=zeros(4,1);

x2=zeros(6,1);

for ii=0:1:3

x2(1:3,1)=x1(19+21*ii:19+21*ii+2,1);

x2(4:6,1)=x1(40+21*ii:40+21*ii+2,1);

t=zeros(6,6);

for jj=1:3:6

t(jj:jj+2,jj:jj+2)=[0 1 0;-1 0 0;0 0 1];

endx2=t*x2;

m2(ii+1,1)=[0 6*eic/(h^2) 2*eic/h 0 -6*eic/(h^2) 4*eic/h]*x2;

endm3=zeros(4,1);

x3=zeros(6,1);

for ii=0:1:2

x3(1:3,1)=x1(40+21*ii:40+21*ii+2,1);

x3(4:6,1)=x1(61+21*ii:61+21*ii+2,1);

t=zeros(6,6);

for jj=1:3:6

t(jj:jj+2,jj:jj+2)=[0 1 0;-1 0 0;0 0 1];end

結構力學大作業

多層多跨框架結構內力計算 任務書班級 土木工程0903班 姓名 張艷靜 學號 u200910307 指導老師 戴萍 目錄一 題目 1 二 任務 3 三 結構的基本資料 3 四 水平荷載作用下的內力計算 4 五 垂直荷載作用下的內力計算 20 1 計算結構簡圖如圖1所示。2 結構資料 eh 3.0 1...

結構力學作業答案

一 對下列結構分析幾何組成,寫出分析過程。說明 代表二元體規則,代表兩剛片規則,代表三剛片規則 12.地基剛片ab 剛片ce 結論 結論 無多餘約束幾何不變體系 3剛片ade 剛片efb 杆kc 地基 結論 無多餘約束的幾何不變體系 4.杆56 點4 點7 點8 點3 點2 點1 地基 結論 無多餘...

0729 《結構力學》作業答案

西南大學網路與繼續教育學院課程考試答題卷 學號姓名 陳雁層次 類別專業201 6 年 6 月 課程名稱 編號 結構力學 0729卷 橫線以下為答題區 一 1 結構的計算簡圖 實際結構往往是很複雜的,進行力學計算以前,必須加以適當地簡化,忽略次要因素,顯示其基本的特點,用乙個簡化的圖形來代替實際結構,...