- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
科学与工程计算实验曲线拟合报告
实验17:曲线拟合
组长:
组员:
一:实验内容
实验内容:由实验给出数据表
试求3次、4次多项式的曲线拟合。(求对应次项的曲线拟合多项式)
实验要求:
给出两种曲线拟合下0.4、0.6、0.7、0.9的值。
一:实验内容
实验提示:
根据下式构造正交多项式族并形成拟合多项式。
二:曲线拟合
1:问题来源
即上述的已知f(x)的某些点的函数值(即离散的函数结果)能否找到一个简单易算的p(x),使得f(x) p(x)。要求:不要求p(xi)=yi,而是使得f(x)-p(x)总体上尽量小。
2:解决思路
使得f(x)-p(x)尽量小的话,则可以使用如下的表示:
已知函数值表 ( xi , yi ),在函数空间 中求 S*(x) ,使得
二:曲线拟合(续)
上述的wi是点xi的权值
对于这个问题,究其本质可以使用求连续函数的最佳平方逼近函数的方法解决。
3:实现方法
利用前面的平凡逼近的结论即求 为极小值点。
求得S*(x) = a0* 0 + a1* 1 + · · · + an* n(x)
二:曲线拟合(续)
正交多项式拟合:
在上述的思路中,我们无法确定合适的表达式来求解,因此考虑使用正交多项式拟合
正交拟合:
二:曲线拟合(续)-正交多项式拟合
设多项式 p0, p1,…, pn 关于点集 x0, x1, …, xm 带权 0, 1, …, m 正交,则 f(x) 在 Hn 中的最小二乘拟合多项式为
那么对于给定的(x,y),如何确定正交多项式pk(x):
使用如下的递推公式
三:代码实现
1:输入创建
本题目使用的给定的离散点的函数值
基础函数值存储:
mapdouble,double mp;//存储函数值
int len = 7;//存储初始化数据的个数
double data[100];//存储初始化x的值
double A[100], B[100];//存储α和β的值
double arr[20] = {0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0};//存储x用于计算和输出
void init() { //初始化数据
mp[0.0] = 1.0;mp[0.1] = 0.41;mp[0.2] = 0.50;mp[0.3] = 0.61;
mp[0.5] = 0.91;mp[0.8] = 2.02;mp[1.0] = 2.46;
data[0] = 0.0;data[1] = 0.1;data[2] = 0.2;data[3] = 0.3;
data[4] = 0.5;data[5] = 0.8;data[6] = 1.0;
}
三:代码实现
2:递归式的实现
for(int i = 2; i = n; ++i) {
as = 0, ax = 0, bs = 0, bx = 0;
//Pk+1 = (x - A[K])P[k] - B[k-1]P[k-1]
//A[k] = (x*P[k], P[k])/(P[k], P[k])//B[k-1] = (P[k], P[k])/ (P[k-1], P[k-1]
//要计算P[i],则先要计算A[i-1], B[i-2] int k = i;
for(int j = 0; j len; ++j) {
double x = data[j];
as += (x * P(x, k) * P(x, k)); ax += (P(x, k) * P(x, k));
bs += (P(x, k) * P(x, k)); bx += (P(x, k - 1) * P(x, k - 1));
}
A[k] = as/ax; B[k-1] = bs/bx; }
三:代码实现
3:P(x,k)的求解
double P(double x, int k1) { //根据递推公式计算P(k+1)
if(k1 == 0)
return 1;
if(k1 == 1)
return x - A[0];
double res = (x - A[k1 - 1])*P(x, k1 - 1) - B[k1 - 2]*P(x, k1-2);
return res;
}
三:代码实现
您可能关注的文档
- 神州数码防火墙讲解PPT-8-安全策略高级特性.pptx
- 神奇的视觉效应.ppt
- 祥讲S7_200_5.ppt
- 禁令十年,高尔夫球场反增400多家.pptx
- 神经网络培训.ppt
- 禁止吸烟主题班会(高一2班).ppt
- 神经科常见生命体征的护理-业务学习PPT完整版.ppt
- 神经调节2 W.ppt
- 禁燃烟花爆竹.pptx
- 福州高校格子铺市场前景调研.ppt
- 中考地理真题练习 2024年四川省内江市中考地理真题(解析版).doc
- 中考地理真题练习 2024年河南省中考地理真题(原卷版).doc
- 中考地理真题练习 2024年四川省内江市中考地理真题(原卷版).doc
- 中考地理真题练习 2024年黑龙江省龙东地区中考地理真题(原卷版).doc
- 中考地理真题练习 2024年黑龙江省牡丹江市中考地理真题(原卷版).doc
- 中考地理真题练习 2024年甘肃省武威市临夏州中考地理真题(解析版).doc
- 中考地理真题练习 2024年甘肃省白银市中考地理真题(解析版).doc
- 中考地理真题练习 2024年湖南省中考地理真题(解析版).doc
- DB13_T2694-2018 地理标志产品 兴隆山楂.docx
- 内蒙古巴彦淖尔市2024-2025学年高一下学期期末考试生物含答案.doc
文档评论(0)