传输线返回NaN当策划脉冲响应函数

33视图(30天)
你好,我似乎有问题,使用MATLAB的fft和传输线的功能。
一个脉冲响应函数 h (t) 有以下公式:inj (t) * h (t) = AIF (t)。我们知道inj的图表(t)和AIF (t)。我写了下面的代码进行反褶积,但 h (t) 在输出图是零。
我意识到 h 传输线是南回来,但是我不知道如何正确的代码。谢谢!
负载(“AIF_1.mat”);
负载(“inj_1.mat”);
inj_1 = inj (201:2400);
inj1_FFT = fft (inj_1);
AIF_1 = AIF (201:2400);
AIF1_FFT = fft (AIF_1);
h_FFT = AIF1_FFT。/ inj1_FFT;
h_FFT (isnan (h_FFT) = = 1) = 0;
h =传输线(h_FFT);
X = 0 (1200)
ht = [X, h];
情节(时间,实际(ht));标题(“h (t)”);

接受的答案

保罗
保罗 2023年4月10日11:42
嗨粤轩杨,
它看起来像h_FFT也正有几个值,除了nan
负载(“AIF_1.mat”);
负载(“inj_1.mat”);
inj_1 = inj (201:2400);
inj1_FFT = fft (inj_1);
AIF_1 = AIF (201:2400);
AIF1_FFT = fft (AIF_1);
h_FFT = AIF1_FFT。/ inj1_FFT;
sum (isnan (h_FFT))
ans = 3
sum (isinf (h_FFT))
ans = 2
%快速修正把事情,不知道这是什么
%应该做
inj1_FFT (inj1_FFT = = 0) =每股收益;
h_FFT = AIF1_FFT。/ inj1_FFT;
sum (isnan (h_FFT))
ans = 0
sum (isinf (h_FFT))
ans = 0
h =传输线(h_FFT);
X = 0 (1200);
ht = [X, h];
情节(时间,实际(ht));标题(“h (t)”);
1评论
粤轩杨
粤轩杨 2023年4月10日在》第12章第48节说道
嗨,保罗,
输出图有点奇怪。但是你的结果 值h_FFT使我意识到我没有拦截 inj 正确。
改变后
inj_1 = inj (200:2400)
输出图好!
谢谢你的灵感!

登录置评。

答案(1)

粤轩杨
粤轩杨 2023年4月10日在第五章39节
有两个相关的附件供你参考。谢谢!
1评论
粤轩杨
粤轩杨 2023年4月10日12:52
正如上面提到的,最后的代码应该是
负载(“AIF_1.mat”);
负载(“inj_1.mat”);
inj_1 = inj (200:2400);
inj1_FFT = fft (inj_1);
AIF_1 = AIF (200:2400);
AIF1_FFT = fft (AIF_1);
h_FFT = AIF1_FFT。/ inj1_FFT;
h =传输线(h_FFT);
X = 0 (1199);
ht = [X, h];
情节(时间,实际(ht));标题(“h (t)”);
和输出图的样子

登录置评。

类别

找到更多的在傅里叶分析和过滤帮助中心文件交换

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

翻译的