⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 interpolation3spooling2ndboundary.cpp

📁 计算机常用数值计算算法与程序 C++版 各章代码
💻 CPP
字号:
//Interpolation3Spooling2ndBoundary.cpp  
//第二种边界条件的三次样条函数插值,微商,积分 

#include <iostream.h>		//输入输出流头文件
#include "Interpolation.h"	//插值头文件

void main()
{
	int m(8), n(12);
	double s, ddy[12];

	double x[12] = 
	{
		 0.52,   8.0, 17.95, 28.65, 50.65, 104.6, 
		156.6, 260.7, 364.4, 468.0, 507.0, 520.0
	};

	double y[12] = 
	{
		5.28794, 13.84, 20.2, 24.9, 31.1, 36.5, 
		   36.6,  31.0, 20.9,  7.8,  1.5,  0.2
	};
	
	double t[8] = {4.0, 14.0, 30.0, 60.0, 130.0, 230.0, 450.0, 515.0};

	ddy[0] = -0.279319;
	ddy[11] = 0.011156;
    
	valarray<double> yy(y, 12);
	valarray<double> dyy(12);
	valarray<double> ddyy(ddy, 12);
	valarray<double> zz(8);
	valarray<double> dzz(8);
	valarray<double> ddzz(8);
    valarray<double> tt(t, 8);
	valarray<double> xx(x, 12);
	
	s = Interpolation3Spooling2ndBoundary(xx, yy, dyy, ddyy, tt, zz, dzz, ddzz);

	cout<<"Interpolation3Spooling2ndBoundary()"<<endl<<endl;
	
	cout<<"x(i)             y(i)               dy(i)                 ddy(i)"<<endl;
	for(int i=0; i <12; i++) 
		cout<<endl<<xx[i]<<"\t\t"<<yy[i]<<"\t\t"<<dyy[i]<<"\t\t"<<ddyy[i];

	cout << endl << endl << "s = " << s << endl << endl;

	cout<<"t(i)             z(i)               dz(i)                 ddz(i)"<<endl;
    for(i=0; i<8; i++) 
		cout<<endl<<tt[i]<<"\t\t"<<zz[i]<<"\t\t"<<dzz[i]<<"\t\t"<<ddzz[i];
	
	cout << endl;
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -