ifourier 命令没有给出预期的结果?
ifourier command not giving expected results?
我正在阅读 Alex Palamides 的书,第 6 章,傅立叶变换,我正在尝试计算函数的逆变换,但是当我在 MATLAB 中编写书中提供的代码时,我没有得到预期的答案,如书中所写。
这是本书的快照,反傅立叶命令的输出被突出显示(它包含一个 heaviside
项):
当我在 MATLAB 中编写相同的代码时,我得到:
answer = (exp(-t)*(sign(t) + 1))/2
我的代码如下:
clc
clear all
syms w t
X=1/(1+j*w);
ifourier(X,t)
答案是正确的,matlab只是默认使用sign函数而不是Heaviside。通过输入代码检查它
check = isequal(heaviside(t),(sign(t) + 1)/2)
check = 1 --->True
数学证明
我正在阅读 Alex Palamides 的书,第 6 章,傅立叶变换,我正在尝试计算函数的逆变换,但是当我在 MATLAB 中编写书中提供的代码时,我没有得到预期的答案,如书中所写。
这是本书的快照,反傅立叶命令的输出被突出显示(它包含一个 heaviside
项):
当我在 MATLAB 中编写相同的代码时,我得到:
answer = (exp(-t)*(sign(t) + 1))/2
我的代码如下:
clc
clear all
syms w t
X=1/(1+j*w);
ifourier(X,t)
答案是正确的,matlab只是默认使用sign函数而不是Heaviside。通过输入代码检查它
check = isequal(heaviside(t),(sign(t) + 1)/2)
check = 1 --->True