MATLAB里面interp1和interpft函数用法和示例,全网最详细!

MATLAB里面interp1和interpft函数用法和示例,全网最详细!

今天刚弄懂MATLAB里面interp1和interpft函数用法,特意做点笔记

学完不做笔记,等于没学!大家点个免费的赞呗,鼓励一下创作,不然都没人写总结笔记了,没人给代码了。


interp1

interp1比较简单好用,可以选择线性插值或者三次样条插值
一维数据插值(表查找)
参考博文

链接

在这里插入图片描述

interpft

一维插值(FFT 方法)

链接

先对样点序列进行傅立叶变换,在得到的频域序列中扩充采样点(补零),然后再反傅立叶变换,得到插值了的序列

以傅里叶变换的结果去进行插值,可能更吻合其频谱

在这里插入图片描述

在这里插入图片描述


代码:

clear;clc;close all;


y=[0 .5 1 1.5 2 1.5 1 0.5 0 -.5 -1 -1.5 -2 -1.5 -1 -.5 0];
N=length(y);
L=5;
n=N*L;
x=0:L:L*N-1;
xi=0:n-1;
yi=interpft(y,n);
figure
plot(x,y,'o',xi,yi,'+')
grid on


y2 = interp1(x,y,xi,'spline');
figure
plot(x,y,'o',xi,y2,'*')
grid on



%% 范例2
dx = 3*pi/30;
x = 0:dx:3*pi;
f = sin(x).^2 .* cos(x);
figure
plot(x,f,'o')
grid on

N = 200;
y = interpft(f,N);

dy = dx*length(x)/N;
x2 = 0:dy:3*pi;
y = y(1:length(x2));

hold on
plot(x2,y,'.')
title('FFT Interpolation of Periodic Function')

% ---- 对比----

y3 = interp1(x,f,x2,'spline');
hold on.
plot(x2,y3,'g.')
grid on

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值