加载中…
个人资料
shuang
shuang
  • 博客等级:
  • 博客积分:0
  • 博客访问:10,906
  • 关注人气:5
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
正文 字体大小:

Matlab求解简支梁挠度曲线方程

(2014-01-11 14:09:45)
标签:

截面

gui

挠度

载荷

工程力学

分类: Matlab项目经验

1.       项目概述

使用Matlab求解简支梁挠度曲线方程,并将求解程序使用GUI图形界面实现。载荷分布可选:均布载荷、直线分布载荷、二次分布载荷。梁截面可选:矩形截面、环形界面、工字钢截面。

 

2.       关键词

     GUI;梁;挠度;载荷;截面;工程力学

 

3.       技术说明

首先根据载荷分布曲线求解剪力分布方程,剪力分布积分得到弯矩分布方程,弯矩积分得到转角方程,转角积分得到挠度方程。然后根据简支梁的边界条件(简支梁两端支点挠度等于0)代入解出积分常数,即可得挠度方程。

GUI运行模式:首先接受用户输入参数,得到载荷分布参数、截面参数、材料弹性模量、梁长度等参数,用户点击Calculate(计算)按钮后,调用相应程序计算出挠度方程显示在相应文本框,并作出挠度曲线。

 

4.       程序源代码

1)均布载荷简支梁挠度曲线方程计算

syms  q0 x l

F  = q0*l;             %等效集中力

Fa = F/2;              %A处支反力

Fb = F/2;              %B处支反力

qx = q0;               %载荷密度

Fx = Fa-int(qx,x);       %剪力分布

Mx = int(Fx,x);         %弯矩分布

syms C1  C2          %常数

Sita = int(Mx,x) +C1;     %转角

wx = int(Sita,x)+C2;      %挠度

%根据边界条件确定常数

eq1 = subs(wx,x,0);        % A处挠度为0

eq2 = subs(wx,x,l);        % B处挠度为0

g = solve(eq1,eq2,C1,C2);  %解方程求C1 C2

C1 = g.C1;

C2 = g.C2;

wx = -subs(wx);

 

2)二次分布载荷简支梁挠度曲线方程计算

syms  q0 x l

F  = 0.5*q0*l;           %等效集中力

Fa = F/3;                %A处支反力

Fb = F*2/3;              %B处支反力

qx = q0*x/l;               %载荷密度

Fx = Fa-int(qx);           %剪力分布

Mx = int(Fx);             %弯矩分布

syms C1  C2             %常数

Sita = int(Mx) +C1;         %转角

wx = int(Sita)+C2;          %挠度

%根据边界条件确定常数

eq1 = subs(wx,x,0);         % A处挠度为0

eq2 = subs(wx,x,l);         % B处挠度为0

g = solve(eq1,eq2,C1,C2);   %解方程求C1 C2

C1 = g.C1;

C2 = g.C2;

wx = -subs(wx);

 

3)线性分布载荷简支梁挠度曲线方程计算

syms  q0 x l

qx = 4*q0*(x/l -x^2/l^2);   %载荷密度

F  = int(qx,x,0,l);         %等效集中力

Fa = F/2;                %A处支反力

Fb = F/2;                %B处支反力

Fx = Fa-int(qx);          %剪力分布

Mx = int(Fx);            %弯矩分布

syms C1  C2            %常数

Sita = int(Mx) +C1;       %转角

wx = int(Sita)+C2;        %挠度

%根据边界条件确定常数

eq1 = subs(wx,x,0);        % A处挠度为0

eq2 = subs(wx,x,l);        % B处挠度为0

g = solve(eq1,eq2,C1,C2);  %解方程求C1 C2

C1 = g.C1;

C2 = g.C2;

wx = -subs(wx);

 

5.       程序结果

 

 

 

Matlab求解简支梁挠度曲线方程



Matlab求解简支梁挠度曲线方程



Matlab求解简支梁挠度曲线方程



6.       总结

本项目的主要难点:一是挠度计算;二是绘图程序的编写,如铰支座、载荷分布曲线、梁截面的绘制。

 

博文为原创,欢迎转载,转载注明出处,谢谢!

Matlab/Simulink方面的技术问题,欢迎发送邮件至944077462@qq.com讨论。

 

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有