Plotting discontinuous discrete signal with shift and fold

10 次查看(过去 30 天)
Hello !
I have a given question below
x[n]= {1+n/3 -3<=n<=-1,
1 0<=n<=3,
0 other wise}
I have to plot this signal and I have developed the following code for that
clc
n=-10:1:10;
for i=1:length(n)
if n(i)>=-3 && n(i)<=-1
x(i)=1+(n(i)/3);
elseif n(i)>=1 && n(i)<=3
x(i)=1;
else
x(i)=0;
end
stem(x)
end
axis([-20 20 0 2])
but the resulting waveform is plotted for positive values of n, Kindly help me to plot the above sequence,

回答(4 个)

Gnaneswar Nadh satapathi
clc clear all close all n=-10:1:10; for i=1:length(n) if n(i)>=-3 && n(i)<=-1 x(i)=1+(n(i)/3); elseif n(i)>=1 && n(i)<=3 x(i)=1; else x(i)=0; end
end stem(n,x)

Sk Group
Sk Group 2021-2-8
MATLAB CODE:
function [n1,x1] = sigshift(x,n,k)
n = 1:10;
k = 2;
x = exp(n);
if k>0
disp(‘Positive’);
n1 = n(1):n(end)+k;
x1 = [zeros(1,k) x];
else
disp(‘Negative’);
n1 = n(1)+k:n(end);
x1 = [x zeros(1,abs(k))]; % abs is for absolute value of (k) because quantity can never be (-ve) negative %
end
MATLAB CODE:
function [y n1] = sigfold(x,n)
n1 = -fliplr(n)
y = fliplr(x)
end

Kunal
Kunal 2023-7-27
discrete time signal folding code

Deepak
Deepak 2024-2-28
how to folda given signal

类别

Help CenterFile Exchange 中查找有关 Get Started with MATLAB 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by