欢迎来到天天文库
浏览记录
ID:59256690
大小:81.59 KB
页数:15页
时间:2020-09-08
《C++_数值分析_三次样条插值_自动选取步长梯形法_Romberg求积法_列主元高斯消去法_列主元LU分解法_Jacobi迭.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数值分析上机实验报告之样条插值1.三次样条插值(初值条件1):P52.9、给定函数y=fx的函数表和边界条件s''75=0,s''80=0,求三次样条插值函数s(x),并求f(78.3)的近似值。函数表x757677787980y=fx2.7682.8332.9032.9793.0623.153源代码:yangtiao.cpp#include#includevoidmain(){intchoice=0;intn=2;doublexx,*x,*y,*a,*b,*a1,*b1,*h,*m;cout<<"请输入插
2、值节点个数n:"<>n;x=newdouble[n];y=newdouble[n];a=newdouble[n];b=newdouble[n];a1=newdouble[n];b1=newdouble[n];h=newdouble[n-1];m=newdouble[n+1];cout<<"请输入"<>x[i]>>y[i];}for(intj=0;j3、点xx:"<>xx;cout<<"请选择边界条件:"<>choice;switch(choice){case1:{doubletemp1,temp2;a[0]=0;a[n-1]=1;cout<<"请输入边界条件的两个一阶微商值s'(x1)与s'(xn):"<>temp1>>temp2;b[0]=2*temp1;b[n-1]=2*temp2;break;}case2:{a[0]=1;a[n-1]=0;b[0]=3/h[0]*(y[1]-y[0]);b[n-1]=3/h[n-2]*(y[n-4、1]-y[n-2]);break;}}for(intk=1;k5、n-1;j>=0;j--){m[j]=a1[j]*m[j+1]+b1[j];}//判别xx所在区间并输出结果cout<<"插值结果为:";for(k=0;kxx){doubleoutput=0;output=(1+2*(xx-x[k])/(x[k+1]-x[k]))*pow(((xx-x[k+1])/(x[k]-x[k+1])),2)*y[k]+(1+2*(xx-x[k+1])/(x[k]-x[k+1]))*pow(((xx-x[k])/(x[k+1]-x[k])),2)*y[k+16、]+(xx-x[k])*pow(((xx-x[k+1])/(x[k]-x[k+1])),2)*m[k]+(xx-x[k+1])*pow(((xx-x[k])/(x[k+1]-x[k])),2)*m[k+1];cout<7、数s(x),并求f(0.35)的近似值。函数表x0.250.30.390.450.53y=fx0.50.54770.62450.67080.728源代码:yangtiao.cpp(同上)运行结果截图:3.自动选取步长梯形法:P977、使用自动选取步长梯形法计算积分0121+t2dt的近似值。(给定ε=0.01)源代码:SelfSelLength.cpp#include#includedoublefun(doublea){return2/(1+a*a);}doubleSelfSelLength(doubleR8、_a,doubleR_b,doublee){doubleh=(R_b-R_a)/2;doubleR1=(fun(R_a)+fun(R_b
3、点xx:"<>xx;cout<<"请选择边界条件:"<>choice;switch(choice){case1:{doubletemp1,temp2;a[0]=0;a[n-1]=1;cout<<"请输入边界条件的两个一阶微商值s'(x1)与s'(xn):"<>temp1>>temp2;b[0]=2*temp1;b[n-1]=2*temp2;break;}case2:{a[0]=1;a[n-1]=0;b[0]=3/h[0]*(y[1]-y[0]);b[n-1]=3/h[n-2]*(y[n-
4、1]-y[n-2]);break;}}for(intk=1;k5、n-1;j>=0;j--){m[j]=a1[j]*m[j+1]+b1[j];}//判别xx所在区间并输出结果cout<<"插值结果为:";for(k=0;kxx){doubleoutput=0;output=(1+2*(xx-x[k])/(x[k+1]-x[k]))*pow(((xx-x[k+1])/(x[k]-x[k+1])),2)*y[k]+(1+2*(xx-x[k+1])/(x[k]-x[k+1]))*pow(((xx-x[k])/(x[k+1]-x[k])),2)*y[k+16、]+(xx-x[k])*pow(((xx-x[k+1])/(x[k]-x[k+1])),2)*m[k]+(xx-x[k+1])*pow(((xx-x[k])/(x[k+1]-x[k])),2)*m[k+1];cout<7、数s(x),并求f(0.35)的近似值。函数表x0.250.30.390.450.53y=fx0.50.54770.62450.67080.728源代码:yangtiao.cpp(同上)运行结果截图:3.自动选取步长梯形法:P977、使用自动选取步长梯形法计算积分0121+t2dt的近似值。(给定ε=0.01)源代码:SelfSelLength.cpp#include#includedoublefun(doublea){return2/(1+a*a);}doubleSelfSelLength(doubleR8、_a,doubleR_b,doublee){doubleh=(R_b-R_a)/2;doubleR1=(fun(R_a)+fun(R_b
5、n-1;j>=0;j--){m[j]=a1[j]*m[j+1]+b1[j];}//判别xx所在区间并输出结果cout<<"插值结果为:";for(k=0;kxx){doubleoutput=0;output=(1+2*(xx-x[k])/(x[k+1]-x[k]))*pow(((xx-x[k+1])/(x[k]-x[k+1])),2)*y[k]+(1+2*(xx-x[k+1])/(x[k]-x[k+1]))*pow(((xx-x[k])/(x[k+1]-x[k])),2)*y[k+1
6、]+(xx-x[k])*pow(((xx-x[k+1])/(x[k]-x[k+1])),2)*m[k]+(xx-x[k+1])*pow(((xx-x[k])/(x[k+1]-x[k])),2)*m[k+1];cout<7、数s(x),并求f(0.35)的近似值。函数表x0.250.30.390.450.53y=fx0.50.54770.62450.67080.728源代码:yangtiao.cpp(同上)运行结果截图:3.自动选取步长梯形法:P977、使用自动选取步长梯形法计算积分0121+t2dt的近似值。(给定ε=0.01)源代码:SelfSelLength.cpp#include#includedoublefun(doublea){return2/(1+a*a);}doubleSelfSelLength(doubleR8、_a,doubleR_b,doublee){doubleh=(R_b-R_a)/2;doubleR1=(fun(R_a)+fun(R_b
7、数s(x),并求f(0.35)的近似值。函数表x0.250.30.390.450.53y=fx0.50.54770.62450.67080.728源代码:yangtiao.cpp(同上)运行结果截图:3.自动选取步长梯形法:P977、使用自动选取步长梯形法计算积分0121+t2dt的近似值。(给定ε=0.01)源代码:SelfSelLength.cpp#include#includedoublefun(doublea){return2/(1+a*a);}doubleSelfSelLength(doubleR
8、_a,doubleR_b,doublee){doubleh=(R_b-R_a)/2;doubleR1=(fun(R_a)+fun(R_b
此文档下载收益归作者所有