|
本帖最后由 獨(dú)孤峰yi 于 2013-5-21 11:13 編輯
7 y& b& T/ P9 x3 D+ K I/ Y; m
& C! `& r: @! z- R$ B材料力學(xué)課程設(shè)計(jì)《左端外伸梁的剪力與彎矩圖》,由于沒(méi)有matlab基礎(chǔ),,早上七點(diǎn)半糾結(jié)到現(xiàn)在實(shí)在是hold不住了。我在書(shū)上找到了例題有正確答案卻不知如和用程序表達(dá)。以下是題和我寫(xiě)的程序,,不知道哪里錯(cuò)了,,希望了解的能幫幫我,謝謝�,。�
( k- E$ r0 {/ O0 O6 t# o題:0 N- S' d7 H0 M( b+ R. k
如圖所示F=20KN,Me=160KNm,q=20KN/m,試做梁的剪力圖和彎矩圖' G, }# @7 H6 ?9 ~5 M9 ]
主程序:4 N. d/ J5 M2 E, J
clear;# j0 q" w& _" t
clc;
3 _7 T" s/ c5 ^+ ~7 S+ {8 Z' Q5 YL1=2;: ^& R+ ], {8 e/ a, N1 }2 b
x=[0,2,10,12];
$ V: `8 P2 ?. ?& ~* @- L; P! p+ tMPQ = [2 20 0 0
% g9 U/ x1 y" ]/ E6 X3 ?" _ 3 20 0 101 ^' Y0 n, k r/ N5 ]/ e n4 D2 S7 R# y
1 160 10 0];
8 @; a& u q0 o: K7 q7 vXQM=QMZW(x,L1,MPQ);
3 m# w: _: J+ u5 q D9 H第一子程序:
# O6 V1 X9 Q7 p/ G6 ofunction XQM=QMZW(x,L1,MPQ)
2 A# s' u. Q+ s& R, p [n,m]=size(x);; P+ E9 f# |/ b/ ^& Q; k
L=x(m);+ f9 B+ ]; \+ d8 m& K- n
L1=2;( x" ]/ [4 ^7 i1 c/ G# v
x1=[];& P, k" D+ j+ v6 `
for i = 1: m-13 [5 Y. J2 @) j1 }
x1 = [x1,linspace(x(i),x(i+1),50)];7 s2 v0 d8 ^) _+ |4 v* m
end
5 S: c5 g% u$ u. O+ O k8 g" p MM = zeros(size(x1));9 f( q0 R+ m6 G9 B( r n( D
QQ = zeros(size(x1));
% I7 `: Q7 O2 l i [m,t] = size(MPQ);$ {$ D+ |% f% g# V5 X7 `, D
[t,n] = size(x1);
- G- e6 `: k2 a {+ Q! K' ] for i=1:m
5 h' M) s* H2 }8 l3 m$ n; t switch MPQ(i,1)1 A3 A4 _7 c- i6 S
case 1
* e6 u, R, N: E6 G a=MPQ(i,3);; J9 h( O) X0 U: j [1 j: e* V! p8 _
M=MPQ(i,2);
- Q0 S. k3 h6 l/ b/ b RA=M/(L-L1);7 Q& k( Q5 z- Q$ {1 i b p3 S$ H- P
RB=-RA;" R* x7 U* Z# G4 L9 R1 l9 N8 V3 `
QQ=QQ+RA;( j- |7 `* Q$ x# J2 p2 i
MM=MM+RA*x1;
- \ f% ]2 Z4 J9 @, G if a>= 0&&a<L5 N* S0 E; H; Q
MM=QMM(n,x1,a,M,MM);
- a2 d4 H1 o5 \. I end
& I; H; D& b) ]- S; I y if a==0
% a( f, ^2 R4 o$ o+ k) X# y" L MM=MM+M;9 l, m2 L1 ^1 E& a# |% Z
end . d9 X0 T& K( V( h4 y h
[QQ,MM]=QMP(n,x1,L-L1,-RB,QQ,MM);
& L# v8 r! d( Z6 Z case 2
7 I( V3 V8 U; }# w5 o! a P=MPQ(i,2);
2 U V4 P* p, p9 m4 l) h" M! @ b=MPQ(i,3);
: B% i7 s2 }) \7 f( T RA=P*(L-b)/(L-L1);
6 n/ R' O+ }- T7 d( f RB=P+P*(L-b)/(L-L1); b& y8 a' O! Y+ S
QQ=QQ+RA;
5 z$ i1 C5 b6 F; b6 H6 \ MM=MM+RA*x1;0 M+ m# z# R9 v
if b>0&&b<L9 C+ `4 _; N; A2 V! A
[QQ,MM]=QMP(n,x1,b,P,QQ,MM); * W: I7 S; X+ _* i+ P! v; ` w
end/ y* A4 h+ S+ ~$ W7 o( h
[QQ,MM]=QMP(n,x1,L-L1,RB,QQ,MM);/ x( W6 u" J. n" L4 X
case 3' X" i/ H+ \: W/ U! o* U# R
q=MPQ(i,2);
' ~/ Q1 D" Y6 C' \. D# X c=MPQ(i,3);. t8 h0 V7 s+ F! ^
d=MPQ(i,4);5 G, r c T. w5 l0 u' E
RA=q*(d-c)*(L-0.5*(d+c))/(L-L1);& `4 I. |8 ]) a0 V
RB=q*(d-c)-q*(d-c)*(L-0.5*(d+c))/(L-L1);: i$ a! ?! R# r2 I- W% V
QQ=QQ+RA;
$ L X% ^" q8 K& F+ S* J: g6 ` MM=MM+RA*x1;
2 [2 @3 K& q2 Q, e. N0 U. j [QQ,MM]=QMQ(n,x1,c,d,q,QQ,MM); + w) Q5 Q7 d- ?. ~8 r9 Y* ?2 } k
[QQ,MM]=QMP(n,x1,L-L1,RB,QQ,MM);% U- |- o% g( C+ v
end! O0 {$ _& b5 Z# S; }- \( ?& ?
end
* N; D( b( P. E7 a9 E+ P [QDX,MDX,XQM]=MAX_MIN(x1,QQ,MM);
8 T$ j! H W$ v# K/ O TU_QM(x1,QQ,MM);
7 d1 J( F- m0 t# b# }第二子程序:9 R( u7 t. y( c( i: ~
function [QDX,MDX,XQM]=MAX_MIN(x1,QQ,MM): h9 M; {. j# t* X* W
XQM=[x1',QQ',MM'];) i3 f. q% L A$ J
[Qmax,i]=max(QQ);! T; Y V; X, u9 o8 a; n
Q1=[x1(i),Qmax];
' g7 ?8 D- N! U8 v[Qmin,i]=min(QQ);( [5 |5 x! b8 R
Q2=[x1(i),Qmin];& O! R/ l6 Z% r' c) T/ a
[Mmax,i]=max(MM);) C4 o/ R: D" v0 y/ c
M1=[x1(i),Mmax];
; G, Z% J# @' n k+ y, I4 I4 U- R$ s[Mmin,i]=min(MM);
* B! h# S' a( I, D4 bM2=[x1(i),Mmin];% |! z6 r) E8 `5 a1 q- p
QDX=[Q1;Q2]
4 e5 h6 i9 S6 ?MDX=[M1;M2]
8 g9 V* {( ?) L3 J$ l; t第三子程序:
+ K9 B6 s( T3 Y! e( B3 _function MM=QMM(n,x1,a,M,MM)5 n; G5 |& e0 h+ R
for j=1:n
) _$ h' \ B" ?5 b" ^1 a) ] if x1(j)==a
& U) \6 F5 i# j/ u n1=j;
# B# V& Y0 z7 k end
, l! T& @ \. U1 \% q; vend
" ~0 M: J6 I0 o& p- W& e, m4 q MM(n1:n)=MM(n1:n)+M;
$ r$ c7 W' {5 i8 y! x第四子程序:# l) Q* z& g1 P' f% k& j0 ^ }
function [QQ,MM]=QMP(n,x1,b,P,QQ,MM)
) E6 B) |, N& P+ s6 w {$ ^3 nfor j=1:n+ o! Y$ u+ {% P* V0 _1 O
if x1(j)==b
1 v1 K5 K3 x8 K* v- K5 e2 J n1=j;
3 Z1 i/ e0 n2 H$ ^. m end. |3 S1 a7 E% C6 x+ S4 k- q4 H- |/ z
end
0 f5 k5 A f0 l0 e: g: p, ~* V0 V+ xQQ(n1:n)=QQ(n1:n)-P;7 K. c7 n$ V( {( `0 Z6 \1 H2 I" _
MM(n1:n)=MM(n1:n)-P*(x1(n1:n)-b);
* E; p6 x8 m! r% w: c第五子程序:' _ x- W. T! ?; S" I
function [QQ,MM]=QMQ(n,x1,c,d,q,QQ,MM)3 K2 B2 a' e7 {& l+ Z% ^; w
for j=1:n+ F$ m$ y8 u$ {; e- @% g& ]* ?8 b
if x1(j)>c1 N& C7 \' c9 O* S
QQ(j)=QQ(j)-q*(x1(j)-c);' b; a% P/ D7 @3 ]8 d
MM(j)= MM(j)-0.5*q*(x1(j)-c)^2;( @# U$ b) A$ q9 j K& C
end9 Z. f- [+ ]; {; v. p
if x1(j)>d
2 {0 s' _+ c/ n- J0 j% ] QQ(j)=QQ(j)+q*(x1(j)-d);
6 l, f4 @2 U' L9 {- K) d. ? MM(j)= MM(j)+0.5*q*(x1(j)-d)^2;
) l) D5 D& x, w" n( r5 c end
4 }8 m8 H z/ send6 ?0 Z& \8 i- d, s ~" l8 t/ B
第六子程序:6 v, U9 S4 |8 c" d3 m
function TU_QM(x1,QQ,MM)
9 U# T9 d: Z9 N: O2 ]subplot(2,1,1);
6 O" N; n# u! e3 d7 N7 Kplot(x1,QQ);7 ^+ r1 y$ } \' R" q$ ]' D
grid;9 }5 @( |0 y. |* @8 |/ o
title('剪力圖'); S# n- T" t$ }" y. i4 i: i* }2 {; c
subplot(2,1,2);
" e7 j- L- u6 E7 Y0 b# F/ rplot(x1,MM);
. w6 P- G( z. ^, I I6 ugrid;5 N/ Y, l: q6 ?. T- v' e; x
title('彎矩圖');, V2 p& {4 l% k9 d* |' Y4 k
2 s, F: o: [& i! p" [; D
|
|