非线性方程组-最速下降法(梯度法_第1页
非线性方程组-最速下降法(梯度法_第2页
非线性方程组-最速下降法(梯度法_第3页
非线性方程组-最速下降法(梯度法_第4页
非线性方程组-最速下降法(梯度法_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、梯度法(又名,最速下降法)(该法总可以收敛,但是,在接近真解时收敛的速度会放慢。)梯度法又称为最速下降法,用于求解实系数非线性方程组 (715)的一组根。梯度法首先是定义一个目标函数 (716)使目标函数达到最小的是我们寻找的一组解,这是非线性最小二乘法问题。如果第步求得一组解,使得 (717)则认为是原方程组满足一定精度的要求的一组解。梯度法的计算过程是:(1)先给定一组不全为零的初值,第k步的一组根为;(2)计算目标函数的值;(单独子程序:fn =TargetFunction)(3)若,则认为是满足一定精度的一组解,否则,作如下修正计算 (718)其中 (719)H为控制收敛的常数,通常选

2、为(105106),收敛精度选为(106108)。(4)重复修正,直到,计算终止。set initial values of Xii=1,2,n计算目标函数Stop图73 最速下降法计算框图对应的计算程序代码为C语言编程,据称该程序经Turboc 2.0编译通过。/* grad1.c 程序段名称A system of non-linear equations is solved by using gradient method 梯度法解非线性方程组例题3*X1-cos(X2*X3)-0.5=0X12-81*(X2+0.1)2+sin(X3)+1.06=0exp(-X1*X2)+20+X3+(1

3、0*PI-3)/3=0#include 主程序头,包含数学头main()int i , j ,n = 3; 定义整型数据,并给定方程个数,n值double y4, x4=0.0,0.5,0.5,0.5; 公用数据的定义,初始化根和变量double eps = 1.e-08; 精度要求,以上数据在newton函数中需要用newton(n,x,y,eps); 调用牛顿子程序printf(“The solutions of non-linear equationsn”); 制表、划线pri_line(45);(for (i=1; i=n; i+) 显示迭代结果printf(“ x%1d=%12.6f

4、tf%1d=%12.6En”,i,xi,i,yi);pri_line(45); 主程序段结束double fn(n,x,y) 定义函数fn(),计算目标函数值平方加和值并返回int n; double x, y; 公用数据接口有2个矩阵和n int i; double s2=0.0; 定义数据,s2为目标函数加和y1=3.0*x1-cos(x2*x3-0.5; 构建方程组,并求值y2=x1*x1-81.0*(x2+0.1)*(x2+0.1)+sin(x3)+1.06;y3=exp(-x1*x2+20.0*x3+(10*M_PI-3.0)/3.0;for (i=1; i=n ; i+)s2+=

5、yi*yi; 计算目标函数值平方的加和return(s2); 返回计算结果newton ( n, x, y, eps ) 牛顿子程序int n; double x , y , eps; 公用数据申明,这些数据为已知 int i; double s4, s0, s1, s2, t, alpha, h=1.e-05; 自用数据定义 s4 = 序列 s0 = 目标函数值 s1 = = s1+=si*si; s2 = t = xi 值的临时存放单元 while (1) while do循环体 s2 = fn(n,x,y); 调用目标函数计算s0 = s2; 保留k值时的给新的目标函数值让位if (s0

6、eps) break; 判断是否已经求解出了根s1=0.0; 当未求解出根的时候继续迭代for ( i=1; i=n; i+) for()t = xi; 保留x(k)xi = (1.0+h)*t; 计算 (xi+hi)和s2, ,s2 = fn(n, x, y); 针对(xih)计算目标函数值si = (s2-s0) / (h*t); s 序列的值在循环体外要使用,所以要有固定的数组变量来存放求导数值s1+=si*si; 导数平方值加和=xi=t; 将新的赋给x(k+1),alpha = s0/s1; 得到alpha新值for (i=1; i=n; i+) 循环求向量序列xi = xi - alpha*si ; 得到修正后的xi序列; 为再一次的调用fn( )做准备. whil

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论