matlab编程 (2)

上传人:cl****1 文档编号:464334193 上传时间:2023-10-31 格式:DOC 页数:9 大小:48KB
返回 下载 相关 举报
matlab编程 (2)_第1页
第1页 / 共9页
matlab编程 (2)_第2页
第2页 / 共9页
matlab编程 (2)_第3页
第3页 / 共9页
matlab编程 (2)_第4页
第4页 / 共9页
matlab编程 (2)_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《matlab编程 (2)》由会员分享,可在线阅读,更多相关《matlab编程 (2)(9页珍藏版)》请在金锄头文库上搜索。

1、MATLAB程序-材料力学简支梁剪力、弯矩及强度校核、截面设计绝对原创!MATLAB实现简支梁剪力弯矩的计算、绘图、强度校核、截面设计。我运算的例子用的是:刘鸿文主编的第四版的材料力学上册第145页的例5.2为例。计算机所得结果与例子一致,程序编制成功!程序如下:% 程序最后完成于 2009.06.07 韦 * * 编% 计算简支梁在多个集中力,均布载荷,力偶同时作用时的剪力,弯矩并绘制其图形% N 存放 aaa1.txt 的数据% YP 存放 aaa2.txt 的数据% OQ 存放 aaa3.txt 的数据% SU 存放 aaa4.txt 的数据% JS 存放 aaa5.txt 的数据% f

2、ff 存放各分段点的剪力% mmm 存放各分段点的弯矩% Fsmax 存放最大剪力% Mmax 存放最大弯矩clc;fprintf(nnn);N=load(F:MATLABworkaaa1.txt); %读取*save N; YP=load(F:MATLABworkaaa2.txt); %读取*save YP;OQ=load(F:MATLABworkaaa3.txt); %读取*save OQ;SU=load(F:MATLABworkaaa4.txt); %读取*save SU;JS=load(F:MATLABworkaaa5.txt);save JS;F1=zeros(1,1001); %建

3、立一个11001的矩阵用以存储集中力作用时各分段点的剪力F2=zeros(1,1001); %建立一个11001的矩阵用以存储均布载荷作用时各分段点的剪力F3=zeros(1,1001); %建立一个11001的矩阵用以存储力偶作用时各分段点的剪力F=zeros(1,1001); %建立一个11001的矩阵用以存储所有载荷作用时各分段点的剪力M1=zeros(1,1001); %建立一个11001的矩阵用以存储集中力作用时各分段点的剪力 M2=zeros(1,1001); %建立一个11001的矩阵用以存储均布载荷作用时各分段点的剪力M3=zeros(1,1001); %建立一个11001的矩

4、阵用以存储力偶作用时各分段点的剪力M=zeros(1,1001); %建立一个11001的矩阵用以存储所有载荷作用时各分段点的剪力% 计算所有集中力在各分段点的剪力及弯矩if N(1)=0 F1=F1; M1=M1; elseif N(1)=1 %判断所受集中力为一个 F1(1)=YP(2)*(N(4)-YP(1)/N(4); %第一个分段点的剪力 for n=1:1000 if N(4)*n/1000=YP(1) %判断分段点位于集中力作用位置前面 F1(n+1)=YP(2)*(N(4)-YP(1)/N(4); %集中力作用位置前面分段点的剪力 M1(n+1)=YP(2)*(N(4)-YP(

5、1)*N(4)*n/(1000*N(4); %集中力作用位置前面分段点的弯矩 else F1(n+1)=-YP(2)*YP(1)/N(4); %集中力作用位置后面分段点的剪力 M1(n+1)=YP(2)*YP(1)*(1-N(4)*n/(1000*N(4); %集中力作用位置后面分段点的弯矩 end end else for i=1:N(1) F1(1)=F1(1)+YP(i,2)*(N(4)-YP(i,1)/N(4); %各集中力作用时第一个分段点的剪力累和 for n=1:1000 if N(4)*n/1000=YP(i,1) %判断分段点位于各集中力作用位置前面 F1(n+1)=F1(n

6、+1)+YP(i,2)*(N(4)-YP(i,1)/N(4); %各集中力各自作用时在其作用位置前面分段点的剪力累和 M1(n+1)=M1(n+1)+YP(i,2)*(N(4)-YP(i,1). *N(4)*n/(1000*N(4); %各集中力各自作用时在其作用位置前面分段点的弯矩累和 else F1(n+1)=F1(n+1)-YP(i,2)*YP(i,1)/N(4); %各集中力各自作用时在其作用位置后面分段点剪力累和 M1(n+1)=M1(n+1)+YP(i,2)*YP(i,1). *(1-N(4)*n/(1000*N(4);%各集中力各自作用时在其作用位置后面分段点的弯矩累和 end

7、end endend% 计算所有均布载荷在各分段点的剪力及弯矩if N(2)=0 F2=F2; M2=M2; elseif N(2)=1 %判断所受均布载荷为一个 F2(1)=OQ(3)*OQ(2)*(N(4)-OQ(1)-OQ(2)/2)/N(4); %第一个分段点的剪力 for n=1:1000 if N(4)*n/1000=OQ(1) & N(4)*n/1000=(OQ(1)+OQ(2) %判断分段点位于所受均布载荷区 F2(n+1)=OQ(3)*OQ(2)*(N(4)-OQ(1)-OQ(2)/2)/N(4)-OQ(3)*(N(4)*n/1000-OQ(1); %均布载荷区分段点的剪力

8、M2(n+1)=OQ(3)*OQ(2)*(N(4)-OQ(1)-OQ(2)/2)*N(4)*n/(1000*N(4). -OQ(3)*(N(4)*n/1000-OQ(1)2)/2; %均布载荷区分段点的弯矩 else F2(n+1)=-OQ(3)*OQ(2)*(OQ(1)+OQ(2)/2)/N(4); %均布载荷作用位置后面分段点的剪力 M2(n+1)=OQ(3)*OQ(2)*(OQ(1)+OQ(2)/2)*(N(4)-N(4)*n/1000)/N(4); %均布载荷作用位置后面分段点的弯矩 end end else for i=1:N(2) F2(1)=F2(1)+OQ(i,3)*OQ(i,

9、2)*(N(4)-OQ(i,1)-OQ(i,2)/2)/N(4); %各均布载荷作用时第一个分段点的剪力累和 for n=1:1000 if N(4)*n/1000=OQ(i,1) & N(4)*n/1000=(OQ(i,1)+OQ(i,2) %判断分段点位于所受均布载荷区 F2(n+1)=F2(n+1)+OQ(i,3)*OQ(i,2)*(N(4)-OQ(i,1)-OQ(i,2)/2)/N(4). -OQ(i,3)*(N(4)*n/1000-OQ(i,1); %均布载荷区分段点的剪力累和 M2(n+1)=M2(n+1)+OQ(i,3)*OQ(i,2)*(N(4)-OQ(i,2)/2)*N(4)*n/(1000*N(4). -OQ(i,3)*(N(4)*n/1000-OQ(i,1)2/2; %均布载荷区分段点的弯矩累和 else F2(n+1)=F2(n+1)-OQ(i,3)*OQ(i,2)*(OQ(i,1)+OQ(i,2)/2)/N(4); %均布载荷作用位置后面分段点的剪力累和 M2(n+1)=M2(n+1)+OQ(i,3)*OQ(i,2)*(OQ(i,1).

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 机械/制造/汽车 > 工业自动化

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号