?? interpolation.h
字號:
// Interpolation.h 插值頭文件
// Ver 1.0.0.0
// 版權(quán)所有(C) 何渝(HE Yu) 2002
// 最后修改: 2002.5.31.
#ifndef _INTERPOLATION_H //避免多次編譯
#define _INTERPOLATION_H
#include <valarray> //數(shù)組模板類標準頭文件
#include <Matrix.h> //矩陣類頭文件
#include <comm.h> //公共頭文件
using namespace std; //名字空間
//一元全區(qū)間不等距插值
template <class _Ty>
_Ty Interpolation1VariableNotIsometry(valarray<_Ty>& x,
valarray<_Ty>& y, _Ty t);
//一元全區(qū)間等距插值
template <class _Ty>
_Ty Interpolation1VariableIsometry(_Ty x0, _Ty h, valarray<_Ty>& y, _Ty t);
//一元三點不等距插值
template <class _Ty>
_Ty Interpolation1Variable3PointsNotIsometry(valarray<_Ty>& x,
valarray<_Ty>& y, _Ty t);
//一元三點等距插值
template <class _Ty>
_Ty Interpolation1Variable3PointsIsometry(_Ty x0, _Ty h,
valarray<_Ty>& y, _Ty t);
//連分式不等距插值
template <class _Ty>
_Ty InterpolationFractionNotIsometry(valarray<_Ty>& x,
valarray<_Ty>& y, _Ty t);
//連分式等距插值
template <class _Ty>
_Ty InterpolationFractionIsometry(_Ty x0, _Ty h, valarray<_Ty>& y, _Ty t);
//埃爾米特不等距插值
template <class _Ty>
_Ty InterpolationHermiteNotIsometry(valarray<_Ty>& x,
valarray<_Ty>& y, valarray<_Ty>& dy, _Ty t);
//埃爾米特等距插值
template <class _Ty>
_Ty InterpolationHermiteIsometry(_Ty x0, _Ty h,
valarray<_Ty>& y, valarray<_Ty>& dy, _Ty t);
//埃特金不等距逐步插值
template <class _Ty>
_Ty InterpolationAitkenNotIsometry(valarray<_Ty>& x,
valarray<_Ty>& y, _Ty t, _Ty eps);
//埃特金等距逐步插值
template <class _Ty>
_Ty InterpolationAitkenIsometry(_Ty x, _Ty h,
valarray<_Ty>& y, _Ty t, _Ty eps);
//光滑不等距插值
template <class _Ty>
void InterpolationSmoothNotIsometry(valarray<_Ty>& x,
valarray<_Ty>& y, int k, _Ty t, valarray<_Ty>& s);
//光滑等距插值
template <class _Ty>
void InterpolationSmoothIsometry(_Ty x, _Ty h,
valarray<_Ty>& y, int k, _Ty t, valarray<_Ty>& s);
//第一種邊界條件的三次樣條函數(shù)插值、微商與積分
template <class _Ty>
_Ty Interpolation3Spooling1stBoundary(valarray<_Ty>& x,
valarray<_Ty>& y, valarray<_Ty>& dy, valarray<_Ty>& ddy,
valarray<_Ty>& t, valarray<_Ty>& z, valarray<_Ty>& dz,
valarray<_Ty>& ddz);
//第二種邊界條件的三次樣條函數(shù)插值、微商與積分
template <class _Ty>
_Ty Interpolation3Spooling2ndBoundary(valarray<_Ty>& x,
valarray<_Ty>& y, valarray<_Ty>& dy, valarray<_Ty>& ddy,
valarray<_Ty>& t, valarray<_Ty>& z, valarray<_Ty>& dz,
valarray<_Ty>& ddz);
//第三種邊界條件的三次樣條函數(shù)插值、微商與積分
template <class _Ty>
_Ty Interpolation3Spooling3thBoundary(valarray<_Ty>& x,
valarray<_Ty>& y, valarray<_Ty>& dy, valarray<_Ty>& ddy,
valarray<_Ty>& t, valarray<_Ty>& z, valarray<_Ty>& dz,
valarray<_Ty>& ddz);
//二元三點插值
template <class _Ty>
_Ty Interpolation2Variable3Points(valarray<_Ty>& x, valarray<_Ty>& y,
matrix<_Ty> z, _Ty u, _Ty v);
//二元全區(qū)間插值
template <class _Ty>
_Ty Interpolation2VariableWholeInterval(valarray<_Ty>& x,
valarray<_Ty>& y, matrix<_Ty> z, _Ty u, _Ty v);
#include "Interpolation.inl" //類及相關(guān)函數(shù)的定義頭文件
#endif //_INTERPOLATION_H
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -