插值问题
T1 T2 T3 T4 T5 T6 T7 T8 T9 T101mm 2mm 3mm 4mm 5mm 6mm 7mm 8mm 9mm 10mm
D1 D2 D3 D4 D5 D6 D7 D8 D9 D10
2.67 1.52 1.02 0.75 0.57 0.48 0.43 0.41
如上面的数据,若用拉格朗日插值,误差太大.请问有别的什么函数可以差值吗?所要插的值已经超出了X的范围,如果有.请将具体的程序写一下.谢谢啦!!
[ 本帖最后由 eight 于 2007-5-30 21:51 编辑 ] 原帖由 120871464 于 2007-5-30 21:33 发表 http://www.chinavib.com/forum/images/common/back.gif
T1 T2 T3 T4 T5 T6 T7 T8 T9 T10
1mm 2mm 3mm 4mm 5mm 6mm 7mm 8mm 9mm 10mm
D1 D2 D3 D4 D5 D6 D7 D8 D9 D10
2.67 1.52 1.02 0.75 0.57 0.48 0.43 0.41
如上面的数据,若用拉各朗日插值,误差太大.请问 ...
help interp1 没有这个啊
我 找过了
搜不到 有的 INTERP1 1-D interpolation (table lookup)
YI = INTERP1(X,Y,XI) interpolates to find YI, the values of the
underlying function Y at the points in the array XI. X must be a
vector of length N.
If Y is a vector, then it must also have length N, and YI is the
same size as XI.If Y is an array of size , then
the interpolation is performed for each D1-by-D2-by-...-Dk value
in Y(i,:,:,...,:).
If XI is a vector of length M, then YI has size .
If XI is an array of size , then YI is of size
.
YI = INTERP1(Y,XI) assumes X = 1:N, where N is LENGTH(Y)
for vector Y or SIZE(Y,1) for array Y.
Interpolation is the same operation as "table lookup".Described in
"table lookup" terms, the "table" is and INTERP1 "looks-up"
the elements of XI in X, and, based upon their location, returns
values YI interpolated within the elements of Y.
YI = INTERP1(X,Y,XI,METHOD) specifies alternate methods.
The default is linear interpolation. Use an empty matrix [] to specify
the default. Available methods are:
'nearest'- nearest neighbor interpolation
'linear' - linear interpolation
'spline' - piecewise cubic spline interpolation (SPLINE)
'pchip' - shape-preserving piecewise cubic interpolation
'cubic' - same as 'pchip'
'v5cubic'- the cubic interpolation from MATLAB 5, which does not
extrapolate and uses 'spline' if X is not equally
spaced.
YI = INTERP1(X,Y,XI,METHOD,'extrap') uses the specified method for
extrapolation for any elements of XI outside the interval spanned by X.
Alternatively, YI = INTERP1(X,Y,XI,METHOD,EXTRAPVAL) replaces
the values outside of the interval spanned by X with EXTRAPVAL.
NaN and 0 are often used for EXTRAPVAL.The default extrapolation
behavior with four input arguments is 'extrap' for 'spline' and 'pchip'
and EXTRAPVAL = NaN for the other methods.
PP = INTERP1(X,Y,METHOD,'pp') will use the specified method to
generate the ppform (piecewise polynomial form) of Y. The method may be
any of the above except for 'v5cubic'. PP may then be evaluated via
PPVAL. PPVAL(PP,XI) is the same as INTERP1(X,Y,XI,METHOD,'extrap').
For example, generate a coarse sine curve and interpolate over a
finer abscissa:
x = 0:10; y = sin(x); xi = 0:.25:10;
yi = interp1(x,y,xi); plot(x,y,'o',xi,yi)
For a multi-dimensional example, we construct a table of functional
values:
x = '; y = [ x.^2, x.^3, x.^4 ];
xi = [ 1.5, 1.75; 7.5, 7.75]; yi = interp1(x,y,xi);
creates 2-by-2 matrices of interpolated function values, one matrix for
each of the 3 functions. yi will be of size 2-by-2-by-3. 但是,如果 Xi 的范围超出了 X 的范围怎么拟合啊
[ 本帖最后由 eight 于 2007-5-31 11:24 编辑 ] 原帖由 120871464 于 2007-5-31 10:31 发表 http://www.chinavib.com/forum/images/common/back.gif
但是,如果Xi的范围超出了X的范围怎么拟和啊
没说明白呀 原帖由 120871464 于 2007-5-31 10:31 发表 http://www.chinavib.com/forum/images/common/back.gif
但是,如果 Xi 的范围超出了 X 的范围怎么拟合啊
interp1 函数会自动处理,无需担心,如果想了解具体的延托算法,请看看 interp1 函数的代码
页:
[1]