七七影院色七七_免费观看欧美a一级黄片_亚洲综合久久久久久中文字幕_国产999999在线视频免费观看,国产小视频无码,国产精品亚洲日日摸夜夜添,女人高潮潮叫免费网站,久久影院国产精品,日韩成人在线影院,欧美囗交XX×BBB视频,色在线综合高清

機(jī)械社區(qū)

 找回密碼
 注冊(cè)會(huì)員

QQ登錄

只需一步,,快速開始

搜索
查看: 3930|回復(fù): 7
打印 上一主題 下一主題

分析一段matlab有限元程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
1#
發(fā)表于 2013-3-24 13:41:49 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
這是關(guān)于梁單元的,,可能大家覺得很簡單。,。。" E. d: T- |9 }/ F
今天翻電腦里的東西時(shí)發(fā)現(xiàn)的,,是我大三時(shí)有限元時(shí)的作業(yè),,記得當(dāng)時(shí)花了很多時(shí)間研究,學(xué)了不少東西,,一個(gè)簡單的作業(yè)可以涉及各方面的知識(shí),。
: X( T$ v+ l! c$ k: v$ K畢業(yè)半年了,雖然記不清彈性矩陣,、剛度矩陣等,,但是只要一看書(好像現(xiàn)在的心境不下來)應(yīng)該會(huì),學(xué)校交的學(xué)習(xí)方法和理解問題的能力,,有些東西不必記,,除非每天從事,,那該叫熟能生巧。/ \8 K" }1 ?$ {9 k+ `
記得當(dāng)時(shí)編了兩個(gè)程序,梁和三維實(shí)體的,,我分享一下梁的程序吧,起碼有亮點(diǎn)和創(chuàng)意,,可以自己選擇劃分個(gè)數(shù),,在matlab方面花了不少功夫。
; k' W. l: T/ L/ X* L非常感謝當(dāng)時(shí)的有限元授課老師“韓清凱”,,雖然老師已經(jīng)到了大工,。上課的教材為韓清凱 的《彈性力學(xué)及有限元法基礎(chǔ)教程》,書上有個(gè)梁單元的例子,,在82頁,。
/ T8 o/ x; N* D--------------------------------------------------------------------------------$ s* N' C  h$ o# U/ x
梁程序如下,名字就不寫了,,用昵稱吧“太平島”,,這是常用的網(wǎng)絡(luò)昵稱+ k( t  C/ d! ?
+ H7 z0 E0 ~. v7 Y$ S" G8 H
4 w$ V+ I$ B7 S- X9 N  C
%------------------------ BEAM2  ----------------
3 t* v6 i+ Q9 p2 A1 Cdisp('========================================');+ s5 M& d# e$ F0 @! U1 t
disp('            PROGRAM BEAM2               ');# S$ r5 R+ B; @# ]+ Q
disp('        Beam Bending Analysis           ');' ~. I* P, P2 |
disp('        The programmer:太平島           ');
: \0 S9 h; U  d  a8 I$ tdisp('========================================');
) X2 k4 N$ t8 T' h/ tdisp(' ');                        %輸出空行' a% ~( E# W& m
warning off all                        %關(guān)閉所有警告提示(求積分時(shí),,警告信息比較多)
+ l0 L( [9 p0 s# E3 INe=input('Please input the number of elements:');        %Ne為劃分的單元數(shù)
. m8 n2 |: m* O, \- K0 k4 Y3 bNJ=Ne+1;                        %NJ為節(jié)點(diǎn)數(shù)
# |) M+ {- u* h# r- k' ~. Px1=0;) b" R  d/ n2 p2 {2 `6 V
x2=sym('L');6 W  e' h8 p! F: x) d5 I- \
x=sym('x');                        ( z' x( I6 i$ c. q
j=0:3;
; I" N( S) ]" n+ G" H/ @  Cv=x.^j;, |3 l0 ^% C- A$ t6 a
A=[1,x1,x1^2,x1^3;0,1,2*x1,3*x1^2;1,x2,x2^2,x2^3;0,1,2*x2,3*x2^2];
, Q+ X/ J8 x$ A" ~5 IN=v*inv(A);                        %形函數(shù)  X* t9 [# x6 G: N  Q
%-----------------------------------------------8 y8 y) _: P/ i/ Z1 k* a. a
% 求單元?jiǎng)偠染仃?font class="jammer">/ ~9 a5 Y$ E9 e; T. [( D5 f+ |9 P

E=4.0e11;
. Z$ F, z+ d8 U6 G" H, c* \I=5.2e-7;                        %I=bh^3/12=5.2e-7;, y! X/ p' m* P1 i
EI=4.0e11*5.2e-7;- m- k) T" K( w- L# l
B=diff(N,2);
9 R+ |6 |( n; ]4 F& sk=B'*B;- A% Z. J' X- {" _
Kee=EI*int(k,x,0,'L');
2 C' R* ?: f2 T! Z( sKe=sym(zeros(4,4,Ne));        %用三維矩陣存放單元?jiǎng)偠染仃?每頁存一個(gè),,并初始化0. `$ c: N! Z, }4 P' l: G3 L% a
Ke(:,:,1)=subs(Kee,'L',(10/Ne));
4 ~% D/ h+ e. vT=eye(4);                % 因?yàn)榱河趚軸的夾角為0,,所以坐標(biāo)變換矩陣為T=eye(4)$ d: w0 m( Q6 @
Ke(:,:,1)=T*Ke(:,:,1)*T';
* `* _# F9 c9 g3 M; p" M0 U5 zfor ii=2:Ne5 }* C2 ?  Q+ q0 [$ }+ I  v
    Ke(:,:,ii)=Ke(:,:,1);
9 Z/ S  w1 i5 I! g8 J$ ]end
; S$ P4 f! ?) g7 A& D& T. t4 A+ WKe=double(Ke);
* B, c* s% ^( b, _%------------------------------------------------
% b4 Z4 v; `& o% @* `) u% 由矩陣裝換法求整體剛度矩陣3 G' |. d' p, ?0 B2 ]( W0 z
% 自由度Ndof=2*NJ
: H" r5 o: I, I, lNdof=2*NJ;: w0 Q! K) i8 Z/ I, A3 p
K=zeros(Ndof);
/ r" x: u5 b/ X2 |" J6 t5 _/ o7 _6 }for ii=1:Ne" |: _( p' d4 J: A+ o
    G=[zeros(4,2*(ii-1)),eye(4,Ndof-2*(ii-1))];% _& h  J; C% _: a; y; [8 Y$ G" m
    KK=G'*Ke(:,:,Ne)*G;
+ w  ?3 W9 D1 ?1 @. f    K=K+KK;5 _/ Y: z9 Y# Q* i0 i$ a
end  5 S8 `& e% x% a: ?% k4 L
%------------------------------------------------
& L6 Y1 z, n. ]& O% l/ X. J% 約束條件,對(duì)整體剛度矩陣進(jìn)行修正,以便計(jì)算
, w7 _6 Z% s( UF=zeros(Ndof,1);# }; @8 K7 i' q. m
F(Ndof-1)=-100;( u9 K$ H8 F" N9 [5 I
% u=F*inv(K),u=[v1,xta1,v2,xta2,v3,xta3,v4,xta4]',v1=0,xta1=0$ V* P( T2 Y( r7 E1 G/ {
K(1,=0;        K(:,1)=0;        %可以省略3 B) [& M* s, u3 }& ^
K(2,=0;        K(:,2)=0;        %可以省略( b7 \. L/ D& D6 d5 w" F
KX=K(3:Ndof,3:Ndof);% B9 X- R  M6 v" O
FX=F(3:Ndof,1);
2 B7 }* _! S8 H  R& o& A%------------------------------------------------
& K) f9 I4 _4 {8 K5 i%求整體節(jié)點(diǎn)位移列陣" y& j8 S+ Y5 {" F0 Z! R, T. F
uu=inv(KX)*FX;( G) w& x% `; W/ o9 E5 l# |
u=[0;0;uu];8 |  h4 ^5 j2 v4 J. B- |
ii=1:2:2*NJ;, B7 q! l7 ]3 l
v=u(ii);                        %各節(jié)點(diǎn)撓度
* s* @0 t  u! Jxta=u(ii+1);                        %各節(jié)點(diǎn)轉(zhuǎn)角
( D" e1 x! U# B2 i%------------------------------------------------
9 p) ]! j! k- `6 E% 后處理,,計(jì)算單元應(yīng)變應(yīng)力- D- j$ L4 z: L* L
B=subs(B,x,'L');5 C. `% ?, Y2 r7 D/ v& \
B=subs(B,'L',10/Ne);8 R* j9 f0 q$ L9 l( `! S9 B
Strain=zeros(1,Ne);                %單元應(yīng)變,,并初始化9 S4 T" J8 h( @4 A7 |
Stress=zeros(1,Ne);                %單元應(yīng)力,并初始化. f7 u: i; s3 j; ]
for ii=1:Ne
& v7 V" T, p2 d& {    Strain(1,ii)=B*u(2*ii-1:2*ii+2,1);
( a$ d$ N8 F$ n5 y( h1 a# R# V5 b    Stress(1,ii)=E*Strain(1,ii);- _" A1 x+ Y& U: ^
end
5 o) V. g$ k1 a- \2 h! m%--------------------------------------------------5 Z5 {/ |, G* W5 R1 q
% 以下程序?yàn)槠聊惠敵鎏幚?br /> 9 p' L% B+ m2 _disp(' ');
* K7 h, e, T* x6 zdisp(' Input:1-print Node displacement ');& x/ W- N' C2 w% x9 E
disp(' Input:2-print strain ');# c! ^. R; l9 N" B8 t
disp(' Input:3-print stress ');, ~8 v2 l8 H' C% u" P6 ~
disp(' Input:q-quit or use ''ctrl+c'' Shortcut to end the program');7 c* j' H$ @: o0 H
- O( A) ?; @: `$ r" v
while 1
3 l3 V3 R# e% h; c$ |; Z    ii=input('Please input1 or 2 or 3:','s');
& l, h4 K  T/ v        switch(ii)
4 l  u% u8 g8 q+ T8 N8 j            case '1'4 G1 }/ w8 T$ a/ p4 k* W: g
                disp('Node displacement');9 M' Z+ G' ^+ K5 n+ I0 [5 _- d
                disp(u');) r' `, C& y8 U
            case '2'. u; K( x0 c; q+ G" b% W
                disp('element strain');
8 I* M7 b  x9 M- d+ o- d                disp(Strain);# w6 ^; A5 o% G- a
            case '3'
* T$ ^" N- W" j3 W  j0 U+ y8 K7 Y                disp('element stress');
7 x! D$ ]% M1 p" _! S                disp(Stress);
, t/ _; O& Q# [# y" N            case 'q'
* i; _# |! M/ D# K* |) l( F                disp('End of program');7 S1 ~$ U6 S4 T; ^
                break;
8 N# {7 t3 |1 h$ o4 S7 E; |            otherwise
/ ?7 u# N, Z, L, c                disp('error!Please input again');3 e) }3 H& a$ _& e: V
                continue;$ o0 X) p4 n9 K7 _3 ~# T1 D
        end: C* y* U) i/ F! a9 B- ?
end
) m! B3 J, X4 }( @3 M$ f* T# n* `' O: ?" P& w3 \, H
4 v7 }/ u. g/ P% ]6 C; y- s
2#
 樓主| 發(fā)表于 2013-3-24 13:44:32 | 只看該作者
那個(gè)地方怎么變成笑臉了,,冒號(hào)+右括號(hào)=笑臉,,改了下,應(yīng)該是下面,,把英文括號(hào)改為中文,,就好了吧9 o# Y% j5 s! o
K(1,:)=0;        K(:,1)=0;        %可以省略4 E4 w5 {/ Y: n) s! V3 c( t
K(2,:)=0;        K(:,2)=0;        %可以省略
3#
發(fā)表于 2013-3-24 14:55:52 | 只看該作者
沒看懂
4#
發(fā)表于 2013-3-24 16:53:09 | 只看該作者
謝謝你啊,太感謝你了
5#
 樓主| 發(fā)表于 2013-3-24 18:35:59 | 只看該作者
jiaweicz 發(fā)表于 2013-3-24 16:53
7 p* M. M" _+ T! d1 \+ \謝謝你啊,,太感謝你了

1 B# V+ M  D9 |  ~9 o這謝啥呢,?
6#
發(fā)表于 2013-3-24 21:21:19 | 只看該作者
我以前編過一個(gè)5體展開的多體姿態(tài)動(dòng)力學(xué)計(jì)算程序。,。,。可惜早就忘記了,,sigh

點(diǎn)評(píng)

是啊,,很多東西不用就忘記啦  發(fā)表于 2013-3-26 12:34
7#
發(fā)表于 2013-11-7 20:39:02 | 只看該作者
這程序也運(yùn)行不了啊
8#
發(fā)表于 2013-11-7 20:44:34 | 只看該作者
j=0:3;
9 w& m* p6 k7 Z" U; Q" u5 p  F- ev=x.^j;  是干啥的

本版積分規(guī)則

小黑屋|手機(jī)版|Archiver|機(jī)械社區(qū) ( 京ICP備10217105號(hào)-1,京ICP證050210號(hào),,浙公網(wǎng)安備33038202004372號(hào) )

GMT+8, 2025-2-28 13:31 , Processed in 0.068492 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回復(fù) 返回頂部 返回列表