哈工大 材料力学 MATLAB 梁 上机 大作业.pdf
《哈工大 材料力学 MATLAB 梁 上机 大作业.pdf》由会员分享,可在线阅读,更多相关《哈工大 材料力学 MATLAB 梁 上机 大作业.pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、本程序只支持静定结构的梁(左端悬臂梁、简支梁)函数输入格式:beamsolver(L,EI,supports,loads,maxdx);参量的输入格式:L=10.0EI=2e8supports=f,0,v,10.0-左端悬臂梁supports=p,2.0,r,8.0 -简支梁loads=f,2.0,1000,m,4.0,500,d,7.0,9.0,3.0,20,100maxdx=0.01输出为 V,M,vy,x 的一维行向量和三张坐标图-图 1:剪力 V 图,图 2:弯矩 M 图,图 3:挠度vy 图.范例:悬臂梁:纯受集中力:beamsolver(10.0,2e8,f,0,v,10.0,f,
2、2.0,1000,0.01)纯受集中矩:beamsolver(10.0,2e8,f,0,v,10.0,m,4.0,500,0.01)纯受分布力(格式一):beamsolver(10.0,2e8,f,0,v,10.0,d,7.0,9.0,3.0,20,100,0.01)纯受分布力(格式二):beamsolver(10.0,2e8,f,0,v,10.0,d,(7.0:0.01:9.0);(0:0.01:2.0).2,0.01)受混合力:beamsolver(10.0,2e8,f,0,v,10.0,f,2.0,1000,m,4.0,500,d,7.0,9.0,3.0,20,100,0.01)简支梁:
3、纯受集中力:beamsolver(10.0,2e8,p,2.0,r,8.0,f,5.0,1000,0.01)纯受集中矩:beamsolver(10.0,2e8,p,2.0,r,8.0,m,4.0,500,0.01)纯受分布力(格式一):beamsolver(10.0,2e8,p,2.0,r,8.0,d,7.0,9.0,3.0,20,100,0.01)纯受分布力(格式二):beamsolver(10.0,2e8,p,2.0,r,8.0,d,(7.0:0.01:9.0);(0:0.01:2.0).2,0.01)受混合力:beamsolver(10.0,2e8,p,2.0,r,8.0,f,5.0,1
4、000,m,4.0,500,d,7.0,9.0,3.0,20,100,0.01)以上范例输出的剪力 V 图、弯矩 M 图都经过笔算检验完全正确。悬臂梁的挠度经检验为正确的,简支梁的挠度有误(整个程序的唯一错误)。function x,V,M,vy=beamsolver(L,EI,supports,loads,maxdx)%材料力学上机课作业(满分)%本 DOC 文件由 M 文件转换而成,可能有格式错误%班级;1036*(专业班级 1036*)%支持两种梁的模型:%1.左端悬臂梁%2.一端 pin 一端 roller 的简支梁%输入格式:beamsolver(L,EI,supports,load
5、s,maxdx);%例如:L=10.0,EI=2e8,supports=f,0,v,10.0,loads=f,2.0,1000,m,4.0,500,d,7.0,9.0,3.0,20,100,maxdx=0.01%输出为三张坐标图,图 1:剪力 V 图,图 2:弯矩 M 图,图 3:挠度 vy 图.%fixed-freeif(supports11=f&supports21=v)n=1;M=linspace(0,0,L/maxdx);V=linspace(0,0,L/maxdx);while n=length(loads)%P-fixed-free-if loadsn1=f x=linspace(
6、maxdx,L,L/maxdx);%将 x 分为小量 n1=loadsn2(1)/maxdx;%确定 x=L1 处对应的下标 V1=linspace(loadsn2(2),loadsn2(2),n1);%第一段剪力赋值 V2=zeros(1,L/maxdx-n1);%第二段剪力赋值 M1=-loadsn2(2)*(loadsn2(1)-x(1:n1);%第一段弯矩赋值 M2=zeros(1,L/maxdx-n1);%第二段弯矩赋值 M=M+M1,M2;%全梁的弯矩 V=V+V1,V2;%全梁的剪力 end%M-fixed-free-if loadsn1=m x=linspace(maxdx,L
7、,L/maxdx);%将 x 分为小量 n1=loadsn2(1)/maxdx;%确定 x=L1 处对应的下标 M1=linspace(loadsn2(2),loadsn2(2),n1);%第一段弯矩赋值 M2=zeros(1,L/maxdx-n1);%第二段弯矩赋值 M=M+M1,M2;%全梁的弯矩 end%q-fixed-free-if loadsn1=d x=linspace(maxdx,L,L/maxdx);%将 x 分为小量 n1=loadsn2(1)/maxdx;%确定 x=L1 处对应的下标 n2=loadsn2(2)/maxdx;%确定 x=L2 处对应的下标 k=length
8、(loadsn2)-4;A=size(loadsn2);if A(1)=1%如果是第一种 q 的输入情况 ks=1;q2=linspace(loadsn2(4),loadsn2(4),n2-n1+1);while ks=k k0=loadsn2(4+ks);q2=q2+k0*(x(n1:n2)-loadsn2(3);ks=ks+1;end q1=zeros(1,n1-1);q3=zeros(1,L/maxdx-n2);q0=q1,q2,q3;q=fliplr(q0);%求出 q Vq0=cumsum(q)*maxdx;Vq=fliplr(Vq0);%求出剪力 V Mq0=-cumsum(Vq0
9、)*maxdx;Mq=fliplr(Mq0);%求出弯矩 M end if A(1)=2%如果是 q 的第二种输入情况 q2=loadsn2(2,:);%表示出 q2 n1=loadsn2(1,1)/maxdx;%定出 q 开始的坐标 B=length(loadsn2);%求 q 的长度 n2=loadsn2(1,B)/maxdx;%定出 q 结束的坐标 q1=zeros(1,n1-1);q3=zeros(1,L/maxdx-n2);q0=q1,q2,q3;%求出 q0 q=fliplr(q0);Vq0=cumsum(q)*maxdx;Vq=fliplr(Vq0);%求出剪力 V Mq0=-c
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 哈工大 材料力学 MATLAB 上机 大作业 作业
限制150内