_计算机支挡建筑设计方程求解.ppt

  1. 1、本文档共61页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
_计算机支挡建筑设计方程求解.ppt

高次方程求解 1、 通用函数的程序编写 问题:如何求一个函数的解,而函数是可以随时替换的。 例如: F(x)=x3+4x2+5 F(x)=ex-5 实现步骤: 1在窗体上加一个Scriptcontrol控件 2 在工程中添加一个类模块class1. 类模块中的代码: Public K1 As Double Private Function Hanshu(X As Double, Str1 As String) As Double On Error Resume Next Dim shar As New Class1 ScriptControl1.AddObject sh, shar ScriptControl1.AddCode Function F(x) vbCrLf kk= Str1 vbCrLf sh.k1 = kk vbCrLf End Function ScriptControl1.Run “F, X Hanshu = shar.K1 ScriptControl1.Reset End Function 作业1: 试设计一个工程,可以计算函数的值。 2 分别输出x=1,2,3……10函数的值。 3 测试替换了函数表达式后,你编写的程序是否有效。 课题2 :高次方程求解: 在解决科学研究和工程领域中的实际问题时,往往涉及到高次方程。高次方程解的个数和方程的次数相对应,即使只在实数范围内考虑,大多也有几个解。但是,对于从解决土木工程问题归纳得到的高次方程,其有意义的解大多仅有一个,并且是正数解。 2.1 高次方程求解原理 计算机解高次方程的基本过程大致如下: 以x2-2=0为例,令y=x2-2 其函数图像如图。y=0时的x值(x=土20.5)即为原方程的解。在x =20.5附近y值由负变正。由于函数是连续的,所以必定存在y=0对应的点,该点即为原方程的一个解。其他方程也是如此,如果知道了一个解的区间,就可以通过代人不同的x值观察y的变化,从而逐次逼近该解。 高次方程求解常用方法 高次方程的常用解法有扫描法、对分法、优选法、迭代法、牛顿法等。 2.2 扫描法求解方程的根 扫描法的主要过程是: 1.寻找方程解所在的区域[a,b]。由初始点a出发,根据步长h逐次迭代找到b点,使f (a ) X (b) = 0 ,前一点即为a,f(a)与f(b)的值为一正一负。由于从实际土木问题中提炼出的函数f(x)在[a,b]连续,所以在[a,b]内必有一解x0,使f(x0)=0。该过程也可固定a点不变,单纯扩大区域找b点..... 2.2 扫描法求解方程的根 2.缩小解所在的区域[a,b]。十等分[a,b],逐点求f(xi)值,直至相邻两点的值符号相反,这两点即为新的区域[a,b]。 3.重复上述过程直至收敛,达到一定精度为止。 2.2 扫描法求解方程的根 注意,求实际土木工程问题的解时,起始点a应取足够小(小于解)或干脆取a =0。由于其有意义的解是一个正数解,有哪些信誉好的足球投注网站方向只要向正向进行,甚至根据实际情况,直接选取适当区域[a,b],然后从步骤2开始求解。而一般的高次方程则要复杂些,解不一定比a值大,因此解的区域也可能在初始点的另一边,有哪些信誉好的足球投注网站方向需先判别。 2.2 扫描法求解方程的根 扫描法程序流程图见图2-2,图中h为步长,e为要求的精度。 扫描法程序中,因为要判断的是两函数的符号,而不是它们的大小,利用符号函数可使计算量减少,即用m=sgn(f(a)),n=sgn(f(b))替代原来的计算更合理。 扫描法求方程根的流程图 用扫描法求方程x2-2=0的正数解,其计算结果见表2-1 由计算结果知,方程x2-2=0的一个解在1. 414至1. 415之间,只要进一步缩小步长.重复上述过程,可获得更高精度。 2.2 扫描法求解方程的根 Dim M%, N%, i As Double Dim A#, B#, H#, E#, X#, Str2$ Dim Str1$ i = 1 Str1 = “计算次数 a= b= m×n= vbCrLf A = Val(Text2)’初始值 H = Val(Text3)’求解步长 E = Val(Text4)’求解精度 Str2 = Text1.Text’函数表达式 M = Sgn(Hanshu(A, Str2)) 2.2 扫描法求解方程的根 Do B = A

文档评论(0)

整理王 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档