bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

剛度矩陣java代碼 單元?jiǎng)偠染仃嚲幊?/h1>

你好,請(qǐng)問一下桁架結(jié)構(gòu)帶未知參數(shù)的剛度矩陣如何在matlab中實(shí)現(xiàn)?

你提出的問題我之前剛好做過,使用有限元方法來進(jìn)行桁架結(jié)構(gòu)分析.

目前創(chuàng)新互聯(lián)建站已為上1000家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間綿陽服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計(jì)、豐臺(tái)網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

Matlab編程實(shí)現(xiàn)平面桿單元分析

首先,明確Matlab程序要實(shí)現(xiàn)的5個(gè)重要模塊分別為:?jiǎn)卧獎(jiǎng)偠染仃嚨那蠼狻卧M裝、節(jié)點(diǎn)位移的求解、單元應(yīng)力的求解、節(jié)點(diǎn)力的求解.下面給出這5個(gè)模塊的實(shí)現(xiàn).

1.\x09單元?jiǎng)偠染仃嚽蠼?/p>

定義函數(shù)Bar2D2Node_Stiffness,該函數(shù)計(jì)算單元的剛度矩陣,輸入彈性模量E,橫截面積A,兩個(gè)節(jié)點(diǎn)坐標(biāo)輸出單元?jiǎng)偠染仃噆(4X4).具體代碼如下:

function k=Bar2D2Node_Stiffness(E,A,x1,y1,x2,y2)

L=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));

x=acos((x2-x1)/L);

C=cos(x);

S=sin(x);

k=E*A/L*[C*C C*S -C*C -C*S; C*S S*S -C*S -S*S;

-C*C -C*S C*C C*S; -C*S -S*S C*S S*S];

2.\x09單元組裝

定義函數(shù)Bar2D2Node_Assembly,該函數(shù)進(jìn)行單元?jiǎng)偠染仃嚨慕M裝,輸入單元?jiǎng)偠染仃噆,單元的節(jié)點(diǎn)編號(hào)i、j.輸出整體剛度矩陣KK,具體代碼如下:

function z = Bar2D2Node_Assembly(KK,k,i,j)

DOF(1)=2*i-1;

DOF(2)=2*i;

DOF(3)=2*j-1;

DOF(4)=2*j;

for n1=1:4

for n2=1:4

KK(DOF(n1),DOF(n2))= KK(DOF(n1),DOF(n2))+k(n1,n2);

end

end

z=KK;

3.\x09節(jié)點(diǎn)位移的求解

定義函數(shù)Bar2D2Node_Disp(KK,num,p),該函數(shù)輸入KK為總體剛度矩陣;num為活動(dòng)自由度編號(hào)數(shù)組;p為活動(dòng)自由度方向上的節(jié)點(diǎn)力;輸出節(jié)點(diǎn)位移列陣.具體代碼如下:

function u = Bar2D2Node_Disp(KK,num,p)

k=KK(num,num)

u=k\p

4.\x09單元應(yīng)力的求解

定義函數(shù)函數(shù)Bar2D2Node_Stress(E,x1,y1,x2,y2,u),該函數(shù)計(jì)算單元的應(yīng)力輸入彈性模量E,第一個(gè)節(jié)點(diǎn)坐標(biāo)(x1,y1),第二個(gè)節(jié)點(diǎn)坐標(biāo)(x2,y2)單元節(jié)點(diǎn)位移矢量u,返回單元應(yīng)力標(biāo)量stress .具體代碼如下:

L=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));

x=acos((x2-x1)/L);

C=cos(x);

S=sin(x);

stress=E/L*[-C -S C S]*u;

5.\x09計(jì)算節(jié)點(diǎn)力

定義函數(shù)Bar2D2Node_Forces(KK,q),該函數(shù)用于計(jì)算節(jié)點(diǎn)力,KK為剛度矩陣,q為節(jié)點(diǎn)位移陣列

function P= Bar2D2Node_Forces(KK,q)

q=zeros(8,1);

q(num)=u;

P=KK*q;

至此,基于Matlab的桿單元有限元分析的程序設(shè)計(jì)已經(jīng)完成,遇到實(shí)際問題時(shí)可以直接調(diào)用這些函數(shù)就可以解決問.

經(jīng)典算例

如圖所示的結(jié)構(gòu),各個(gè)桿的彈性模量和橫截面積都為 , .試基于MATLAB平臺(tái)求解該結(jié)構(gòu)的節(jié)點(diǎn)位移、單元應(yīng)力以及支反力.

四桿桁架結(jié)構(gòu)

對(duì)該問題進(jìn)行有限元分析的過程如下

(1) 結(jié)構(gòu)的離散化與編號(hào)

\x09對(duì)該結(jié)構(gòu)進(jìn)行自然離散,節(jié)點(diǎn)編號(hào)和單元編號(hào)如上圖所示

(2)計(jì)算各單元的剛度矩陣(基于國(guó)際標(biāo)準(zhǔn)單位)

\x09\x09輸入彈性模量E、橫截面積A,各點(diǎn)坐標(biāo).然后分別針對(duì)單元1,2,3和4,調(diào)用4次Bar2D2Node_Stiffness,就可以得到單元的剛度矩陣.

對(duì)應(yīng)的主程序中代碼:

E=2.95e11;A=0.0001;x1=0;y1=0;x2=0.4;y2=0;x3=0.4;y3=0.3;x4=0;y4=0.3;

k1=Bar2D2Node_Stiffness (E,A,x1,y1,x2,y2)

k2=Bar2D2Node_Stiffness (E,A,x2,y2,x3,y3)

k3=Bar2D2Node_Stiffness (E,A,x1,y1,x3,y3)

k4=Bar2D2Node_Stiffness (E,A,x4,y4,x3,y3)

(3) 建立整體剛度方程

由于該結(jié)構(gòu)共有4個(gè)節(jié)點(diǎn),因此,設(shè)置結(jié)構(gòu)總的剛度矩陣為KK(8×8),先對(duì)KK清零,然后四次調(diào)用函數(shù)Bar2D2Node _Assembly進(jìn)行剛度矩陣的組裝.相關(guān)主程序代碼為:

KK=zeros(8,8);

KK=Bar2D2Node_Assembly (KK,k1,1,2);

KK=Bar2D2Node_Assembly (KK,k2,2,3);

KK=Bar2D2Node_Assembly (KK,k3,1,3);

KK=Bar2D2Node_Assembly (KK,k4,4,3)

(4)邊界條件的處理及剛度方程的求解

由圖可以看出,被約束的自由度有:節(jié)點(diǎn)1的x,y方向自由度,節(jié)點(diǎn)2的y方向自由度,4節(jié)點(diǎn)的x、y方向兩個(gè)自由度.則活動(dòng)自由度編號(hào)為3,5,6.活動(dòng)自由度對(duì)應(yīng)的節(jié)點(diǎn)載荷F3=20000N,F5=0N,F6=25000N,采用高斯消去法進(jìn)行求解,對(duì)應(yīng)的代碼為:

num=[3,5,6];%可活動(dòng)的自由度編號(hào)

p=[20000;0;-25000];

u=Bar2D2Node_Disp(KK,num,p)

(5)支反力的計(jì)算

在得到整個(gè)結(jié)構(gòu)的節(jié)點(diǎn)位移后,由原整體剛度方程就可以計(jì)算出對(duì)應(yīng)的支反力.這部分對(duì)應(yīng)的主程序的代碼如下:

q=zeros(8,1);

q(num)=u;%節(jié)點(diǎn)位移陣列

P=Bar2D2Node_Forces(KK,q)

(6)單元應(yīng)力的計(jì)算

先從整體位移列陣q中提取出單元的位移列陣,然后,調(diào)用計(jì)算單元應(yīng)力的函數(shù)Bar2D2Node_ElementStress,就可以得到各個(gè)單元的應(yīng)力分量.

u1=[q(1);q(2);q(3);q(4)]

stress1=Bar2D2Node_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)]

stress4=Bar2D2Node_Stress(E,x4,y4,x3,y3,u4)

(7)計(jì)算結(jié)果的整理

通過主程序的運(yùn)行得計(jì)算結(jié)果.

主程序

%計(jì)算各單元的剛度矩陣(以國(guó)際標(biāo)準(zhǔn)單位)

E=2.95e11;

A=0.0001;

x1=0;

y1=0;

x2=0.4;

y2=0;

x3=0.4;

y3=0.3;

x4=0;

y4=0.3;

k1=Bar2D2Node_Stiffness (E,A,x1,y1,x2,y2)

k2=Bar2D2Node_Stiffness (E,A,x2,y2,x3,y3)

k3=Bar2D2Node_Stiffness (E,A,x1,y1,x3,y3)

k4=Bar2D2Node_Stiffness (E,A,x4,y4,x3,y3)

%建立整體剛度方程

%由于該結(jié)構(gòu)共有4個(gè)節(jié)點(diǎn),因此,結(jié)構(gòu)總的剛度矩陣為KK(8×8),先對(duì)K清零,然后四次調(diào)用函數(shù)Bar2D2Node _Assembly進(jìn)行剛度矩陣的組裝.

KK=zeros(8,8);

KK=Bar2D2Node_Assembly (KK,k1,1,2);

KK=Bar2D2Node_Assembly (KK,k2,2,3);

KK=Bar2D2Node_Assembly (KK,k3,1,3);

KK=Bar2D2Node_Assembly (KK,k4,4,3)

%邊界條件的處理及剛度方程求解

num=[3,5,6];%可活動(dòng)的自由度編號(hào)

p=[20000;0;-25000];

u=Bar2D2Node_Disp(KK,num,p)

%支反力的計(jì)算

q=zeros(8,1);

q(num)=u;%節(jié)點(diǎn)位移陣列

P=Bar2D2Node_Forces(KK,q)

%各單元的應(yīng)力計(jì)算

u1=[q(1);q(2);q(3);q(4)];

stress1=Bar2D2Node_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)];

stress4=Bar2D2Node_Stress(E,x4,y4,x3,y3,u4)

說的可能有些羅嗦,注意其中有5個(gè)function,和最后一個(gè)主程序,計(jì)算的時(shí)候直接運(yùn)行主程序就可以了.希望能幫助到你.

對(duì)于一般層合板,耦合剛度矩陣的存在,表示什么 要素之間的耦合關(guān)系

給你說了也白搭,你大概知道就行了,這個(gè)需要代碼量。。。簡(jiǎn)單地說就是,沒有多態(tài),那么等號(hào)左邊是啥右邊就得是啥,這就叫耦合,有了多態(tài),左邊是父類(或者接口),右邊是子類(或?qū)崿F(xiàn)類),我只管調(diào)用接口里面的方法就是了,至于你實(shí)現(xiàn)類怎么去實(shí)現(xiàn),那是你的事,你要修改一下實(shí)現(xiàn),你只管去把實(shí)現(xiàn)類換掉,我這邊一行代碼都不用變,這就解耦了

知道剛度矩陣和質(zhì)量矩陣后用matlab怎么求固有頻率和固有振型

特征向量都求出來了,用哪一種歸一化還不跟玩兒一樣嗎?okok已經(jīng)回答你了,這里再貼一下,主要因?yàn)橐呀?jīng)消失幾天了,出來透口氣:div class="blockcode"復(fù)制內(nèi)容到剪貼板h5代碼:/h5code id="code0"function ziyouzhendong1(k,m)br /% k=600*[1 -1 0;-1 3 -2;0 -2 5];m=diag([1 1.5 2]);br /clcbr /[C,B]=eig(inv(m)*k);br /n=size(m,2);br /for i=1:nbr / Ct=C(:,i);br / zhenxing(:,i)=Ct/Ct(1);br /endbr /w=sqrt(diag(B));br /B1=diag(B)';br /Eigen=inv(m)*k;br /for i=1:nbr / t1(:,i)=B1(i)*zhenxing(:,i);br / t2(:,i)=Eigen*zhenxing(:,i);br /endbr /B,zhenxing,t1,t2,w/code/div其實(shí)完全可以不用循環(huán),這是上學(xué)初學(xué)MATLAB一個(gè)月左右時(shí)寫的程序,目的是幫助同班美女從繁重的結(jié)構(gòu)動(dòng)力學(xué)作業(yè)中解脫出來并有充分的時(shí)間買化妝品and keep us amused...,當(dāng)時(shí)還沒人學(xué)MATLAB這玩意兒,全拿計(jì)算器算動(dòng)力學(xué)矩陣的問題,顯然即使最多只有4×4的K矩陣也足夠讓人受折磨了...br /

br /

轉(zhuǎn)載

patran/nastran如何輸出質(zhì)量和剛度矩陣

在BDF文件中SOL之下加入以下語句,可以輸出剛度矩陣

compile semg

alter ’kjjz.*stiffness’ $

matprn kjjz// $

本文標(biāo)題:剛度矩陣java代碼 單元?jiǎng)偠染仃嚲幊?/a>
路徑分享:
http://vcdvsql.cn/article24/hejgje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站動(dòng)態(tài)網(wǎng)站商城網(wǎng)站外貿(mào)建站移動(dòng)網(wǎng)站建設(shè)建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司