How to plot these equations ?

5 vues (au cours des 30 derniers jours)
Mohamed Ahmed
Mohamed Ahmed le 23 Jan 2022
Commenté : Matt J le 23 Jan 2022
Hello
I'm trying to plot these polynomials shown in the image, but I keep receiving errors and I'm not if my code is correct of not. Could you please help ?
regards
clear all
close all
clc
%%
Fs = 1000; % Sampling frequency
T = 1/Fs; % Sampling period
L = 1024; % Length of signal
t = 2*(0:L-1)*T; % Time vector
x = 0;
c = 1+i;
P(1) = 1;
Q(1) = 1;
P(2) = P(1) + exp(i*(2^(0))*t)*Q(1);
Q(2) = P(1) - exp(i*(2^(0))*t)*Q(1);
P(3) = P(2) + exp(i*(2^(1))*t)*Q(2);
Q(3) = P(2) - exp(i*(2^(1))*t)*Q(2);
P(4) = P(3) + exp(i*(2^(2))*t)*Q(3);
Q(4) = P(3) - exp(i*(2^(2))*t)*Q(3);
for m=1:16
x = x +c*exp(i*2*pi*m*t).*P(m);
end
figure
subplot(2,2,1)
plot(t,x)
title('signal')
  6 commentaires
Matt J
Matt J le 23 Jan 2022
That is correct. P(2) is a scalar location. It cannot hold a vector
Mohamed Ahmed
Mohamed Ahmed le 23 Jan 2022

Connectez-vous pour commenter.

Réponse acceptée

Matt J
Matt J le 23 Jan 2022
Modifié(e) : Matt J le 23 Jan 2022
Change P(m) to P{m} and Q(m) to Q{m} everwhere.
Fs = 1000; % Sampling frequency
T = 1/Fs; % Sampling period
L = 1024; % Length of signal
t = 2*(0:L-1)*T; % Time vector
x = 0;
c = 1+i;
P{1} = 1;
Q{1} = 1;
for m=2:16
P{m} = P{m-1} + exp(1i*(2^(m-2))*t).*Q{m-1};
Q{m} = P{m-1} - exp(1i*(2^(m-2))*t).*Q{m-1};
end
for m=1:16
x = x +c*exp(1i*2*pi*m*t).*P{m};
end
whos x
Name Size Bytes Class Attributes x 1x1024 16384 double complex
  4 commentaires
Mohamed Ahmed
Mohamed Ahmed le 23 Jan 2022
Modifié(e) : Mohamed Ahmed le 23 Jan 2022
Yes, It worked, I also plotted the magnitude and phase spectrum of the signal.
Is this plot considered a flat spectrum ?
Thank you :)
Matt J
Matt J le 23 Jan 2022
I'm glad it worked, but please Accept click the answet to indicat so.
Whether it's to be considered flat is probably subjective...

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by