mdsk.net
当前位置:首页 >> mAtlAB中intErp1函数用法 >>

mAtlAB中intErp1函数用法

interp1函数:一维数据插值函数 一维数据插值.该函数对数据点之间计算内插值,它找出一元函数f(x)在中间点的数值,其中函数表达式由所给数据决定. yi=interp1(x,Y,xi):返回插值向量yi,每一元素对应于参量xi,同时由向量X与Y的内插值决

y=[2,3,4]; x=[1,2,3]; 是这样的:插值分内插和外插.如果要求xx对应的yy的值,若此xx在你的x范围内,应当算是内插.比如2.9就是在x=[1,2,3]内,它应当是内插.内插matlab有好多种方法.以下几个都可以.z=interp1(x,y,2.9,'nearest') z=interp1(x,y,2.9,'linear') z=interp1(x,y,2.9,'spline') z=interp1(x,y,2.9,'cubic') 如果要求4对应的函数值,那么应当算是外插.

是多少你执行一下就知道了.linear是线性插值,采用已知数据两点之间连线的方式,根据要插值的点在线上的位置计算插值结果,这是比较常用的.nearest是最近点插值,直接找到最近的数据点,用该点的值直接代替,不太常用.

linspace是Matlab中的一个指令,用于产生指定范围内的指定数量点数,相邻数据跨度相同,并返回一个行向量.调用方法:linspace(x1,x2,N) 功 能:用于产生x1,x2之间的N点行矢量,相邻数据跨度相同.其中x1、x2、N分别为起始值、终止值、元素个数.若缺省N,默认点数为100.举例如下:>>X=linspace(5,100,20) % 产生从5到100范围内的20个数据,相邻数据跨度相同 X =5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 ps:这和X=[5 : 5 : 100]的效果是一样的.

你函数的用法错了Syntaxyi = interp1(x,Y,xi)yi = interp1(Y,xi)yi = interp1(x,Y,xi,method)yi = interp1(x,Y,xi,method,'extrap')yi = interp1(x,Y,xi,method,extrapval)pp = interp1(x,Y,method,'pp')

插值用三样条吧,这样好看,其实日在百度上搜一下如何显示插值函数,再对插值函数求导即可

dx=0.1;%控制精度,结果误差小于dxx=2:dx:3;%5介乎于两个完全平方数2^2=4,3^3=9之间y=x.^2;interp1(y,x,5) %线性插值求根号5的近似值

直接在m文件中,调用interp1函数就可以

没法做,插值默认要求每个点的x轴坐标互异,否则插值函数不唯一.你可以取多个y值平均.或者实在不行只能交换x,y轴.

更正个啥?压根就用错了函数,你所理解的interp2插值函数是要坐标单调增减的,而你那里载入的是实际数据,肯定不一定是单调的,所以interp2就是逗人玩的.按照你的目的,实际应用可以用griddata函数,用v4方法,不会产生nan,作图时就是完整的图像了,受累查查帮助吧.

snrg.net | ldyk.net | bfym.net | zxqs.net | 369-e.net | 网站首页 | 网站地图
All rights reserved Powered by www.mdsk.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com