- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
合肥工业大学
计算机与信息学院
实验报告
课 程:计算方法
专业班级:
学 号:
姓 名:
Java界面
其实都不难按照程序流程图就可以完成了
实验一 插值与拟合
实验目的
明确插值多项式和分段插值多项式各自的优缺点;
编程实现三次样条插值算法,分析实验结果体会高次插值产生的龙格现象;
理解最小二乘拟合,并编程实现线性拟合,掌握非线性拟合转化为线性拟合的方法
运用常用的插值和拟合方法解决实际问题。
实验内容
(1)对于f(x)=1/(1+x*x)实现三次样条插值
(2)实现最小二乘法的直线拟合
数据如下:
165 123 150 123 141 187 126 172 125 148
基本原理(计算公式)
(1)三次样条插值在每个内节点上具有2阶导数。
最小二乘法拟合直线为y=a+bx,而a,b有如下等式(N为给出的数据点的总个数)
;
四、算法设计与实现(流程图,关键点)
最小二乘法直线拟合:输入数据后,按照公式计算a,b。用得到的拟合直线计算预测点的近似函数值。
五、输入与输出
(1)三次样条插值
输入:区间长度,n+1个数据点,预测点
输出:预测点的近似函数值,精确值,及误差
(2)最小二乘法直线拟合
输入:n个数据点,预测点
输出:预测点的近似函数值
六、结果讨论和分析
代码
三次样条插值
#includeiostream
#includefstream
#define N 10
using namespace std;
double u0(double x){
return (x-1)*(x-1)*(2*x+1);
}
double u1(double x){
return x*x*(3-2*x);
}
double v0(double x){
return x*(x-1)*(x-1);
}
double v1(double x){
return x*x*(x-1);
}
double s3(double x,double y,double y1,double m,double m1,double h){
return u0(x)*y+u1(x)*y1+h*v0(x)*m+h*v1(x)*m1;
}
double f(double x){
return 1/(1+x*x);
}
int main(){
ifstream fin;
fin.open(E:\\t.txt);
if(!fin){
couterror opening input streamendl;
system(pause);
return 0;
}
double x[N+1],y[N+1],m[N+1],A[N],B[N],C[N];
double h[N];
double a[N],b[N];
double f0,fn;
double temp;
int i;
for(i=0;i=N;i++){
finx[i]y[i];
}
finf0fn;
h[0]=x[1]-x[0];
for(i=1;iN;i++){
h[i]=x[i+1]-x[i];
a[i]=h[i-1]/(h[i-1]+h[i]);
b[i]=3*((1-a[i])*(y[i]-y[i-1])/h[i-1]+a[i]*(y[i+1]-y[i])/h[i]);
}
m[1]=b[1]-(1-a[1])*f0;
m[N-1]=b[N-1]-a[N-1]*fn;
for(i=2;iN-1;i++){
m[i]=b[i];
}
for(i=1;iN;i++){
B[i]=2;
C[i]=a[i];
}
for(i=2;iN;i++){
A[i]=1-a[i];
}
C[1]=C[1]/B[1];
m[1]=m[1]/B[1];
double t;
for(i=2;i!=N-2;i++){
t=B[i]-C[i-1]*A[i];
C[i]=C[i]/t;
m[i]=(m[i]-m[i-1]*A[i])/t;
}
m[N-1]=(m[N-1]-m[N-2]*A[N-1])/(B[N-1]-C[N-2]*A[N-1]);
for(i=N-2;i0;i--){
m[i]=m[i]-C[i]*m[i+1];
}
coutplease:(输入插值节点在x[0]到x[N]范围内)endl;
while(cintemp){
您可能关注的文档
最近下载
- 管线保护方案.pdf VIP
- DB5101T 13-2018 成都市智慧城市市政设施 城市道路桥梁基础数据规范.pdf VIP
- 变电站一次设备、二次设备巡视要点.pptx VIP
- 养老机构医养结合服务规范.pdf VIP
- 第11课 “韩信点兵”筛选法的实现 课件 2025-2026学年六年级上册信息技术浙教版.pptx VIP
- 基于Python的五子棋游戏设计.docx VIP
- 《岳阳楼记》的文言虚词.doc VIP
- Python语言与经济大数据分析知到智慧树期末考试答案题库2025年上海财经大学.docx VIP
- 初中英语英语完形填空100篇(二)配答案详解.pdf VIP
- 电梯制造项目可行性研究报告(参考范文).docx
原创力文档


文档评论(0)