连续函数最佳平方逼近的算法程序

连续函数最佳平方逼近的算法程序

ID:38425324

大小:62.50 KB

页数:5页

时间:2019-06-12

连续函数最佳平方逼近的算法程序_第1页
连续函数最佳平方逼近的算法程序_第2页
连续函数最佳平方逼近的算法程序_第3页
连续函数最佳平方逼近的算法程序_第4页
连续函数最佳平方逼近的算法程序_第5页
资源描述:

《连续函数最佳平方逼近的算法程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、一.任务:用MATLAB语言编写连续函数最佳平方逼近的算法程序(函数式M文件)。并用此程序进行数值试验,写出计算实习报告。二.程序功能要求:在书中Page355或Page345的程序leastp.m(见附一)的基础上进行修改,使其更加完善。要求算法程序可以适应不同的具体函数,具有一定的通用性。所编程序具有以下功能:1.用Lengendre多项式做基,并适合于构造任意次数的最佳平方逼近多项式。可利用递推关系2.被逼近函数f(x)不用内联函数构造,而改用M文件建立数学函数。这样,此程序可通过修改建立数学函数的M文件以适用不同的被逼近函数(要学会用函数句柄)。3.要考虑一般的情况。因此,

2、程序中要有变量代换的功能。4.计算组合系数时,计算函数的积分采用变步长复化梯形求积法(见附三)。5.程序中应包括帮助文本和必要的注释语句。另外,程序中也要有必要的反馈信息。6.程序输入:(1)待求的被逼近函数值的数据点(可以是一个数值或向量)(2)区间端点:a,b。7.程序输出:(1)拟合系数:(2)待求的被逼近函数值三:数值试验要求:1.试验函数:;也可自选其它的试验函数。2.用所编程序直接进行计算,检测程序的正确性,并理解算法。3.分别求二次、三次、。。。最佳平方逼近函数。4.分别作出逼近函数和被逼近函数的曲线图进行比较。(分别用绘图函数plot(,s())和fplot(‘xc

3、osx’,[x1x2,y1,y2]))1.本次实验程序如下:一、Lengendre多项式的自动生成M文件functionP=legendre(N)%evaluatelegendrepolynomialuptonthordersymstx;forn=1:NPP(n)=diff((t^2-1)^(n-1),n-1);Q(n)=2^(n-1)*prod([1:n-1]);endPP(1)=1;Q=sym(Q);P=PP*(inv(diag(Q)));二、被逼近函数用M文件建立functionF=creat_fun(x)%creatfunctionuseM-filen=length(x);

4、F=x.*cos(x(1:n));三、区间变换functionf=convert_interval(a,b,F)%conversioninterval[a,b]between[-1,1],andexpressionoffunctionsymsxt;s=2((b-a)*t+a+b);%区间转换f=subs(F,x,s);%符号替换四、变步长复化梯形求积公式的算法functionI=Rctrap(g)%求积分的变步长梯形算法%f为被积函数;%积分的上下限为【-1,1】;%n为复花区间个数%T为输出的变步长梯形公式计算值;m=1;h=1-(-1);%所有积分都区间都已转化为【-1,1】

5、;T=zeros(1,100);T(1)=h*(feval(g,-1)+feval(g,1))/2;i=1;%进行变步长计算whilei<100m=2*m;h=h/2;s=0;fork=1:m/2x=-1+h*(2*k-1);s=s+feval(g,x);endT(i+1)=T(i)/2+h*s;ifabs(T(i+1)-T(i))<0.00001%满足条件输出停机I=T(i+1);%把终值返回break;endi=i+1;end五、主程序function[cs]=least_square(a,b,N)%leastsquarefitusingLegendrepolynomials,

6、s(x)=c1p1(x)+c2p2(x)+c3p3(x)+...;%[a,b]initialinterval;%ciscoefficient;%Nisthedegreeofpolynomial%sisthewantedfunctionsymstx;%sub-functiontocreatefunctionF=creat_fun(x);%sub-functiontoevaluatelegendrepolynomialuptonthorderP=legendre(N);%sub-function:conversioninterval[a,b]between[-1,1],andexpre

7、ssionoffunctionf=convert_interval(a,b,F);%togetcoefficentofc(i)f=P*diag(f);fori=1:Ng=inline(f(i));%sub-function:求积分的变步长梯形算法I=Rctrap(g);u(i)=I;Q(i)=2(2*(i-1)+1);endQ=sym(Q);c=double(u*diag(Q));%optimalsquareapproximationpolynomialS=c*P'

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

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

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