工程数学论文.docx
- 文档编号:353313
- 上传时间:2022-10-09
- 格式:DOCX
- 页数:9
- 大小:233.93KB
工程数学论文.docx
《工程数学论文.docx》由会员分享,可在线阅读,更多相关《工程数学论文.docx(9页珍藏版)》请在冰豆网上搜索。
工程数学论文
《数值计算方法》小论文
二分法在无阻尼SDOF系统
简谐激励问题中的应用
学院专业:
土木工程学院
班级:
2014级结构工程硕士5班
学号:
S1401W0030
姓名:
刘子健
指导老师:
孟纯军
完成时间:
2014年12月9日
二分法在无阻尼SDOF系统简谐激励问题中的应用
刘子健
湖南大学土木工程学院湖南长沙410082
摘要:
本文主要介绍了数值计算方法中的二分法在土木工程领域中的应用,并以结构动力学中求解无阻尼单自由度系统简谐激励响应中的非线性方程为例,给出了计算过程和相应代码。
关键词:
二分法;无阻尼SDOF系统;简谐运动;激励响应
一、数值计算方法在SDOF系统简谐激励问题中的应用
结构动力学是一门研究结构在动力荷载作用下的反应的学科,其中很多问题涉及到用有限自由度代替无限自由度,出现的求解方程大部分是非线性方程,而且问题极其复杂,要想得到解比较难,此外费时费力。
如果采用数值计算方法来求解并结合计算机软件MATLAB来编程,即可轻松实现问题解决。
单自由度(SDOF)系统简谐激励响应是结构动力学中常见的一类问题,SDOF系统的运动方程都有如下形式
两边除以m以后为
,其中
,
当不考虑其阻尼时即是无阻尼SDOF系统简谐响应问题,此时
。
该线性常系数的常微分方程的解即是SDOF系统的总响应,它由两个不同性质的部分线性组合:
强迫振动
,直接与p(t)有关;自由振动
。
他们都是由三角函数组成的,在求解三角函数构成的非线性方程中,有时候会用到数值计算方法中的二分法。
二、无阻尼SDOF系统简谐激励响应问题算例
如图系统在t=0时为静止状态,后来作用一简谐荷载
。
(a)确定其稳态响应的表达式。
(b)确定其总响应的表达式。
(c)当激励比
时,其最大总响应与最大稳态响应之比为多少?
解:
根据结构动力学相关知识,解得(a)稳态响应表达式为:
(b)总响应的表达式为:
对于(c),
,
由(a)最大稳态响应的表达式可知,最大稳态响应为:
总响应的表达式为:
则
时,求解最大总响应和最大稳态响应之比转化成了求解
最值的问题。
三、二分法在问题解决中的应用
求解函数的最值问题我们一般采取先对其求导,然后令其导数为零建立方程,求解出使该方程为零的值(即极值)。
由于本例中只需求出求两者比值的绝对值最大值,故不考虑它是最大值还是最小值。
令
,则
,周期
、
在区间
的函数图像大致如图
由图可知,函数图像关于点(
,0)中心对称,取前半部分计算分析。
最大时,两曲线对应竖轴距离最大。
初步判断
在[4,6]区间取得最大值。
下面介绍简要二分法。
函数f(x)在区间[a,b]上连续且满足f(a)f(b)<0,则由介值定理,函数在区间[a,b]内必存在一个根,即存在
,使得
。
二分法正是建立在连续函数的介值定理之上。
其思想可描述如下:
设连续函数f(x)满足f(a)f(b)<0。
令
并取之中点
。
如果
,则得到函数f(x)在区间
上的一个零点
。
如果
,则当f(
)f(b)<0时,令
否则,令
则函数f(x)在区间
内必有一个零点。
这样,我们得到函数f(x)的一个新的含根区间
,其长度时原来区间[a,b]的一半。
如此这般,我们可以得到一个区间序列
,序列中的每个区间都是函数f(x)的含根区间且区间的长度依次减半(如下图所示)。
因此,当k充分大时,我们可用
作为函数f(x)的一个根的近似,即
。
此时有误差估计
在本文中的例题中,
,
对方程求导得
即本例实际上要求出f’(x)=0的根(要求误差不超过
)。
由于
函数f’(x)在区间[4,6]上存在位移的零点(根)。
由误差估计式
所需迭代次数k满足
即取
便可。
因此可取k=14.下表列出了用二分法进行求解的计算过程。
由表可知,
k
(+)
(-)
0
4.0
6.0
5.0
0.09446
1
5.0
6.0
5.5
-1.6416
2
5.0
5.5
5.25
-0.79965
3
5.0
5.25
5.125
-0.35293
4
5.0
5.125
5.0625
-0.12855
5
5.0
5.0625
5.03125
-0.016775
6
5.0
5.03125
5.015625
0.038921
7
5.015625
5.03125
5.0234375
0.011092
8
5.0234375
5.03125
5.02734375
-0.0028373
9
5.0234375
5.02734375
5.025390625
0.0041282
10
5.025390625
5.02734375
5.0263671875
0.00064573
11
5.0263671875
5.02734375
5.02685546875
-0.0010957
12
5.0263671875
5.02685546875
5.026611328125
-0.00022498
13
5.0263671875
5.026611328125
5.0264892578125
0.00021038
14
5.0264892578125
5.026611328125
5.02655029296625
-0.000007313
四、用MATLAB编程对比
用MATLAB软件求算
的精确值,编程如下:
>>x=linspace(4,6,100);
>>y1=cos(1.5*x);
>>y2=cos(x);
>>plot(x,y1,'r',x,y2,'b');
>>solve('cos(1.5*x)-cos(x)=0',x,y1);
>>x=linspace(4,6,100);
>>y1=cos(1.5*x);
>>y2=cos(x);
>>plot(x,y1,'r',x,y2,'b');
>>solve('1.5(cos(1.5*x)-cos(x))=0',x,y1)
输出结果为:
ans=
0.
2.5132741228718345907701147066236
5.0265482457436691815402294132472
第一个值表示f’(x)在其他区域的零点,但相应的f(x)更小,此处不考虑。
在本例中,问题的精确解为
故实际误差为
五、结语
二分法程序简单,且必收敛,是一种可靠的算法,但在二分法中,每迭代一次,区间缩小一半,也就是说,解的不定范围每次只缩小一半。
因此,它是一种收敛速度非常缓慢的方法,并且,它只能用于求实函数的实零点。
尽管如此,对于初学者来说,二分法不失为一种简单易上手的算法。
此外,在结构动力学问题中,解的精度不需要达到本例中所要求的
,本文为说明二分法的具体步骤所以要求求解到这个精度。
像本例中的求解,保留到小数点后三位即可取得较高的可靠度。
随着计算机软件应用的范围不断推广,类似于Matlab的软件其强大的功能可以使我们集中精力于工程试验分析本身,而非繁琐的数值计算方法,从而节省大量宝贵的时间与精力,提高研究工作的效率。
参考文献:
[1]曾金平,李郴良.数值计算方法.湖南大学出版社,2004,20-23
[2]RoyR.Craig,Jr结构动力学.高等教育出版社,2006,37-80.
[3]万顺.数值计算方法在结构动力学的应用.城市建设理论研究,2013,(16)
(注:
可编辑下载,若有不当之处,请指正,谢谢!
)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工程 数学论文