计算机辅助建筑设计--方程求解.ppt

计算机辅助建筑设计--方程求解.ppt

ID:51953527

大小:331.50 KB

页数:61页

时间:2020-03-25

计算机辅助建筑设计--方程求解.ppt_第1页
计算机辅助建筑设计--方程求解.ppt_第2页
计算机辅助建筑设计--方程求解.ppt_第3页
计算机辅助建筑设计--方程求解.ppt_第4页
计算机辅助建筑设计--方程求解.ppt_第5页
资源描述:

《计算机辅助建筑设计--方程求解.ppt》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库

1、高次方程求解1、通用函数的程序编写问题:如何求一个函数的解,而函数是可以随时替换的。例如:F(x)=x3+4x2+5F(x)=ex-5实现步骤:1在窗体上加一个Scriptcontrol控件2在工程中添加一个类模块class1.类模块中的代码:PublicK1AsDouble1、通用函数的程序编写PrivateFunctionHanshu(XAsDouble,Str1AsString)AsDoubleOnErrorResumeNextDimsharAsNewClass1ScriptControl1.AddObject"sh",sharScriptControl1.AddC

2、ode"FunctionF(x)"&vbCrLf&"kk="&Str1&vbCrLf&"sh.k1=kk"&vbCrLf&"EndFunction"ScriptControl1.Run“F",XHanshu=shar.K1ScriptControl1.ResetEndFunction1、通用函数的程序编写作业1:试设计一个工程,可以计算函数的值。2分别输出x=1,2,3……10函数的值。3测试替换了函数表达式后,你编写的程序是否有效。1、通用函数的程序编写课题2:高次方程求解:在解决科学研究和工程领域中的实际问题时,往往涉及到高次方程。高次方程解的个数和方程的次数相对应,

3、即使只在实数范围内考虑,大多也有几个解。但是,对于从解决土木工程问题归纳得到的高次方程,其有意义的解大多仅有一个,并且是正数解。2.1高次方程求解原理计算机解高次方程的基本过程大致如下:以x2-2=0为例,令y=x2-2其函数图像如图。y=0时的x值(x=土20.5)即为原方程的解。在x=20.5附近y值由负变正。由于函数是连续的,所以必定存在y=0对应的点,该点即为原方程的一个解。其他方程也是如此,如果知道了一个解的区间,就可以通过代人不同的x值观察y的变化,从而逐次逼近该解。高次方程求解常用方法高次方程的常用解法有扫描法、对分法、优选法、迭代法、牛顿法等。2.2扫描法

4、求解方程的根扫描法的主要过程是: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扫描法求解方程的根注意,求实际土木

5、工程问题的解时,起始点a应取足够小(小于解)或干脆取a=0。由于其有意义的解是一个正数解,搜索方向只要向正向进行,甚至根据实际情况,直接选取适当区域[a,b],然后从步骤2开始求解。而一般的高次方程则要复杂些,解不一定比a值大,因此解的区域也可能在初始点的另一边,搜索方向需先判别。2.2扫描法求解方程的根扫描法程序流程图见图2-2,图中h为步长,e为要求的精度。扫描法程序中,因为要判断的是两函数的符号,而不是它们的大小,利用符号函数可使计算量减少,即用m=sgn(f(a)),n=sgn(f(b))替代原来的计算更合理。扫描法求方程根的流程图2.2扫描法求解方程的根用扫描法

6、求方程x2-2=0的正数解,其计算结果见表2-12.2扫描法求解方程的根由计算结果知,方程x2-2=0的一个解在1.414至1.415之间,只要进一步缩小步长.重复上述过程,可获得更高精度。2.2扫描法求解方程的根DimM%,N%,iAsDoubleDimA#,B#,H#,E#,X#,Str2$DimStr1$i=1Str1=“计算次数a=b=m×n="&vbCrLfA=Val(Text2)’初始值H=Val(Text3)’求解步长E=Val(Text4)’求解精度Str2=Text1.Text’函数表达式M=Sgn(Hanshu(A,Str2))2.2扫描法求解方程的根

7、DoB=A+HN=Sgn(Hanshu(B,Str2))Str1=Str1&i&Space(3)&A&Space(3)&B&Space(3)&M*N&vbCrLfIfM*N>0ThenA=BM=Ni=i+1ElseIfM=0ThenX=AExitDoElseIfN=0ThenX=BExitDoElseIfH<=EThenX=BExitDoElseH=0.1*HEndIfIfi>5000ThenGoToerr1:EndIfLoop'UntilH<=E2.2扫描法求解方程的根Text5=“方程的解为:x="&X&vbCrLf&St

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。