error while executing textbook MATLAB code?

2 visualizzazioni (ultimi 30 giorni)
Capture.PNG
I am studying Fourier transform through book of alex palamides and it states that there is a property of fourier transform due to which convolution of two time domain signals is equal to inverse fourier*(product of fourier transforms of signals)
But when i try to put this concept to MATLAB as demonstrated in book , i get error shown in attached photo. Although i have wrote exactly same code as on page 312 of Book
My code is follow:
syms t w
x1=heaviside(t)-heaviside(t-2);
x2=heaviside(t)-heaviside(t-4);
X1=fourier(x1,w);
X2=fourier(x2,w);
right =ifourier(X1*X2,t);
ezplot(right,[0 8])

Risposta accettata

Walter Roberson
Walter Roberson il 18 Mag 2019
In your release of MATLAB, ezplot() was not compatible with plotting symbolic expressions, and fplot() had to be used instead.
However, the ifourier() is giving unusable results that neither ezplot() nor fplot() can use.
The work-around, valid from R2012a, is:
right = ifourier( rewrite(X1*X2, 'exp'), t);
fplot(right, [0 8])
  3 Commenti
Walter Roberson
Walter Roberson il 18 Mag 2019
Hmmm. Try
fplot( matlabFunction(right), [0 8])
ABTJ
ABTJ il 19 Mag 2019
This line worked out. Thanks walter

Accedi per commentare.

Più risposte (0)

Prodotti


Release

R2015a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by