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

数学证明