首页 > 解决方案 > ifourier 命令没有给出预期的结果?

问题描述

我正在阅读 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)

标签: matlabcontinuous-fourier

解决方案


答案是正确的,matlab 只是默认使用符号函数而不是 Heaviside。通过输入代码检查它

check = isequal(heaviside(t),(sign(t) + 1)/2)
check = 1 --->True

数学证明

在此处输入图像描述


推荐阅读