Borrar filtros
Borrar filtros

Even and Odd parts

92 visualizaciones (últimos 30 días)
zee
zee el 18 de Nov. de 2013
Comentada: Mashhood Saeed el 18 de Nov. de 2021
Function that gives the even and the odd parts of any given signal
  1 comentario
Mashhood Saeed
Mashhood Saeed el 18 de Nov. de 2021
n=-5:5;
yn= 0*(n<0)+1*(n==0)+1*(n>0);
yflip=fliplr(yn);
subplot(3,1,1);
stem(n,yn,'r');
title('plot of yn');
xlabel('time');
ylabel('yn');
ye = (1/2)*(yn+yflip);
subplot(3,1,2);
stem(n,ye,'b');
title('plot of even');
xlabel('time');
ylabel('y even');
yo= (1/2)*(yn-yflip);
subplot(3,1,3);
stem(n,yo);
title('plot of odd');
xlabel('time');
ylabel('y odd');

Iniciar sesión para comentar.

Respuestas (8)

Azzi Abdelmalek
Azzi Abdelmalek el 18 de Nov. de 2013
t=-10:10; %vector time
x=rand(1,numel(t)); % Your signal
xmt=[fliplr(x(t>=0)) fliplr(x(t<0))]
xe=0.5*(xmt+x)
xo=0.5*(x-xmt)
subplot(3,1,1);
plot(t,x);
title('Your signal x')
subplot(3,1,2);
plot(t,xe);
title('Even part')
subplot(3,1,3);
plot(t,xo);
title('Odd part')
  2 comentarios
suhaib Dawood
suhaib Dawood el 23 de Sept. de 2016
If you have heaviside function what to do to find the even and odd portion ?
JUGAL SUGGALA 17BEC0423
JUGAL SUGGALA 17BEC0423 el 30 de Ag. de 2018
Please can you explain each command or function briefly, how it is working as i am not able to understand the code.

Iniciar sesión para comentar.


Siddharth Mishra
Siddharth Mishra el 4 de Nov. de 2019
clc;
clear all;
close all;
x=input("enter the values");
n=0:length(x)-1;
n1=(1-length(x))*0.5:(length(x)-1)*0.5;
y=flip(x);
y
x
x_e=(x+y)*0.5;
x_e
x_o=(x-y)*0.5;
x_o
subplot(311)
stem(n1,x);
title('ACTUAL SIGNAL');
subplot(312)
stem(n1,x_e);
title('EVEN SIGNAL');
subplot(313)
stem(n1,x_o);
title('ODD SIGNAL');

Sean de Wolski
Sean de Wolski el 18 de Nov. de 2013
signal = rand(1000,1);
even = signal(2:2:end);
odd = signal(1:2:end);
Like this?
  1 comentario
zee
zee el 18 de Nov. de 2013
Editada: zee el 18 de Nov. de 2013
i don't think so , what i meant by even and odd is like this , assume you have x(t) = x the even part is xe(t) = 1/2 * (x(t) + x(-t)) and the odd part is xo(t) = 1/2 * (x(t) - x(-t))
now how i get these from matlab functions ?!

Iniciar sesión para comentar.


Sandeep Maurya
Sandeep Maurya el 7 de Sept. de 2017
n=-10:15; x=[zeros(1,10) ones(1,10) zeros(1,0)]; m=fliplr(n); m1=min([m,n]); m2=max([m,n]); n1=1:length(n); x1=zeros(1,length(m)); x1(n1+nm)=x: x=x1; xe=0.5*(x+fliplr(x)); xo=0.5*(x-fliplr(x)); figure; t=-15:15; subplot(3,1,1);stem(t,x); axis([-15 15 0 1.5]); title('ORIGINAL SIGNAL'); subplot(3,1,2); stem(t,xe); title('Even signal X(n)'); subplot(3,1,3); stem(t,xo); axis([-15 15 -1 1]); xlabel('-----Time-----'); ylabel('--Amplitude--'); title('Odd part of signal');
  1 comentario
Walter Roberson
Walter Roberson el 4 de Nov. de 2019
The phrase
x1(n1+nm)=x: x=x1
is invalid. It would probably be valid if a semi-colon were used instead of a colon.

Iniciar sesión para comentar.


Christian Stoddard
Christian Stoddard el 10 de Feb. de 2019
myeven = @(x) (1/2)*(myfun(x)+myfun(-x));
myodd = @(x) (1/2)*(myfun(x)-myfun(-x));

sushma medabalimi
sushma medabalimi el 29 de Ag. de 2019
tmin=-10; dt=0.1; tmax=10;
t=tmin:dt:tmax;
a = 2;
% Generate exponential signal
x1 = exp(a*t);
%Perform time reversal operation
x2 = exp(-a*t);
%Condition to check odd signal
if(x2==x1)
disp('The given signal is even signal')
else if (x2==(-x1))
disp('The given signal is an odd signal')
else
disp('The given signal is neither even nor odd signal')
end
end

Kshitiz
Kshitiz el 4 de Oct. de 2019
clc;
close all;
clear all;
prompt = 'Enter the values';
x=input(prompt)
x_dash=flip(-x);
t1=0:1:length(x)-1;
t1_dash=flip(-t1);
for i=1:length(x)
odd(i)=x_dash(i)/2;
end
for i=2:length(x)
odd(i+length(x))=x(i)/2;
end
odd(length(x))=0;
for i=1:length(x)
t(i)=t1_dash(i);
end
for i=1:length(x)
t(i+length(x))=t1(i);
end
length(t)
length(odd)
subplot(311)
stem(t,odd)
xlim([-10 10])
title('ODD SIGNAL');
x_dash=flip(x);
t1=0:1:length(x)-1;
t1_dash=flip(-t1);
for i=1:length(x)
odd(i)=x_dash(i)/2;
end
for i=1:length(x)
odd(length(x))=x(i)/2;
end
odd(length(x)+1)=x(1);
for i=1:length(x)
t(i)=t1_dash(i);
end
for i=1:length(x)
t(length(x))=t1(i);
end
length(t)
length(odd)
length(odd)
subplot(312)
stem(t,odd)
xlim([-10 10])
title('EVEN SIGNAL');
subplot(313)
stem(t1,x)
xlim([-10 10])
title('ACTUAL SIGNAL')

MD asgar
MD asgar el 18 de Jul. de 2020
Consider the discrete function x=4*sin(t)+2*cos(t), Write the Matlab code to evaluate the odd even part of Y and plot the subplots in a single plot.

Categorías

Más información sobre Denoising and Compression en Help Center y File Exchange.

Etiquetas

Aún no se han introducido etiquetas.

Community Treasure Hunt

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

Start Hunting!

Translated by