Facultad de Ingeniería Electrónica           CONSULTA        Fabián Garzón O.       Ingeniería Electrónica            5TO ...
GRAFICACIÓN DE LA DERIVACIÓN E INTEGRACIÓN                              DE SEÑALES CONTINUA EN MATLABPrimera Derivada de S...
t), y al ser los vectores df y t de diferente dimensión el comando plot() no podrá graficar debido a que estecomando exige...
Segunda Derivada de Señal ContinuaAl aplicar la primera derivada a la señal continua conseguimos una gráfica que está comp...
Considerando lo anteriormente expuesto, podemos plantear nuestra programación en Matlab de la siguientemanera:Ayudándolos ...
Cabe recalcar que esta función de ser desplazada en el tiempo consoló la variación en su dominio, y que almultiplicar a es...
Integral de Señal ContinuaPoder realizar la integral de una función en Matlab debemos trabajar de forma simbólica para ell...
GRAFICACIÓN DE LA DERIVACIÓN E INTEGRACIÓN                          DE SEÑALES DISCRETAS EN MATLABPrimera Derivada de Seña...
Segunda Derivada de Señal DiscretaComo se ve en el seno de la primera derivada en las señales discretas se habla de una di...
Integral de Señal Discreta  INTEGRACIÓN = SUMATORIO  La integración es un sumatorio que responde a la siguiente ecuación: ...
EJERCICIO DE APLICACIÓNSeñal Continua                                     CÓDIGO MATLABclear; clc;%                       ...
grid on;    title(Primera Derivada);    ylabel(X´(t));    xlabel(t);%>>GRÁFICO SEGUNDA DERIVADA;    %derivada de los delta...
%>>GRÁFICO INTEGRAL DE LA SEÑAL DADA%señal dada pero tratada en forma simbólicasyms x;ff1=x+1;ff2=2;ff3=1;ff4=((-2)*(x))+3...
Señal Discreta                                  CÓDIGO MATLABclear; clc%dominion=-5:1:5;%función discretaf1=-1;f2=-0.5;f3=...
intf(i)=acum;endsubplot(2,2,4);stem(n,intf,r,fill);axis([-5 5 -4 4]);title(Integral);xlabel(n);ylabel(Integral x[n]);     ...
AMPLIACIÓN GRÁFICASSeñal Continua
Señal Discreta
Próxima SlideShare
Cargando en…5
×

Gráfica derivada e Integral de una función discreta y continua en matlab

19.748 visualizaciones

Publicado el

Publicado en: Educación
1 comentario
9 recomendaciones
Estadísticas
Notas
  • Muy buena informacion
       Responder 
    ¿Estás seguro?    No
    Tu mensaje aparecerá aquí
Sin descargas
Visualizaciones
Visualizaciones totales
19.748
En SlideShare
0
De insertados
0
Número de insertados
8
Acciones
Compartido
0
Descargas
0
Comentarios
1
Recomendaciones
9
Insertados 0
No insertados

No hay notas en la diapositiva.

Gráfica derivada e Integral de una función discreta y continua en matlab

  1. 1. Facultad de Ingeniería Electrónica CONSULTA Fabián Garzón O. Ingeniería Electrónica 5TO NIVEL SEÑALES Y SISTEMAS Profesor: Ing. Vinicio Tapia
  2. 2. GRAFICACIÓN DE LA DERIVACIÓN E INTEGRACIÓN DE SEÑALES CONTINUA EN MATLABPrimera Derivada de Señal ContinuaEn la primera derivada de una señal continua se debe considerar que dicha señal está compuesta por funcionesEscalón y funciones Rampa. Cuando se derivada una función Rampa se obtiene como resultado una funciónEscalón; y cuando se deriva una función Escalón se obtiene una función Impulso o conocido como Delta deDirac.Tomando en cuenta estas características de la primera derivada de la señal continua de entrada, Ya podemosplantear la estructura para graficar en Matlab:Una vez construida la función definida por tramos, que en nuestro caso la llamamos f 1, procedemos a derivarlacon el comando diff() , dicho comando nos permite obtener la primera derivada de la función f, pero cuandoeste comando realiza su acción nos genera un nuevo vector, almacenado en el vector df en nuestraprogramación, que tiene una dimensión diferente al vector que almacena el dominio de la función (denominado1 Remítase la sección: Ejercicio Aplicativo “Señal Continua” para identificar como se construyó la función f por tramos.
  3. 3. t), y al ser los vectores df y t de diferente dimensión el comando plot() no podrá graficar debido a que estecomando exige que ambos vectores sean de igual dimensión.La solución para este problema se da ajustando el vector df a la misma dimensión que el vector dominio (t)realizado de la siguiente manera:esta forma en la programación nos permite redimensionar el vector df a la misma dimensión que el vector t; unavez ajustado el vector df, éste se almacenará en un nuevo vector adf que ya tendrá los mismos valores que dfpero con la característica singular de que este vector ya posee la misma dimensión que el vector dominio t,permitiéndonos así poder graficar con el comando plot() los vectores adf, que tendrá los valores de “y” ycorresponden a la derivada, y el vector t, que posee los valores del dominio de la función. Obteniendo lasiguiente gráfica:Como se observa en la gráfica, el comando diff() nos permite obtener la derivada de la función, pero nuncaconsideró que las funciones rampa de la señal de entrada, al ser derivadas, se convierten en una funciónescalón.Para solucionar este problema debemos recordar que la función Escalón puede ser representado como unafunción de Pulso Rectangular, esta función puede ser graficada mediante el comando rectplus(t,w), dondeel primer parámetro t representa el dominio donde va ser graficado el pulso rectangular y el segundo parámetrow representa el ancho que va tener el pulso. Obteniendo la siguiente gráfica:
  4. 4. Segunda Derivada de Señal ContinuaAl aplicar la primera derivada a la señal continua conseguimos una gráfica que está compuesta de funcionesescalón y funciones impulso (Deltas de Dirac).Miércoles la función escalón se analizó la primera derivada y se llegó a la conclusión que la derivada de unafunción escalón es una función impulso; pero ahora el problema se centra en derivar la función impulso o Deltade Dirac.Cuando se deriva una función impulso o Delta de Dirac, se debe considerar que: Delta de dirac (impulso) Primera derivada (Doblete) Segunda derivada (Triplete) Tercera derivada (Cuadriplete)
  5. 5. Considerando lo anteriormente expuesto, podemos plantear nuestra programación en Matlab de la siguientemanera:Ayudándolos de la gráfica de la primera derivada podemos identificar las funciones impulso dadas, si estaprimera derivada se la vuelve derivar obtenemos la segunda derivada de tal manera que se tendrán que derivarprimero las funciones impulso; para ello en nuestra programación vamos a crear dichos impulsos para luegounirlos en una sola función y a esta derivar y observar los dobletes que se producirían, para esto la mejor formade representar la función impulso es a través de la función seno cardinal.Para poder conseguir que un seno cardinal represente una función impulso lo que se debe hacer es variar sufrecuencia para que así se acorte su distancia y llegue a formar un impulso unitario.La función seno cardinal en hablarse la realiza mediante el comando sinc(t) donde t representa el dominio de lafunción, ahora para cortar su distancia en convertirlo en un unitario tenemos que multiplicarlo por un parámetroquedando el comando de esta manera: sinc(A*t) , donde A es un valor por el que hay que multiplicar (ennuestro caso vale 100) al dominio para que éste reduzca su distancia quedando el comando empleado así:
  6. 6. Cabe recalcar que esta función de ser desplazada en el tiempo consoló la variación en su dominio, y que almultiplicar a esta función por un valor estaríamos cambiando su amplitud; de esto nos podemos ayudar a crearimpulsos no unitarios.Una vez creado todos los impulsos sumamos dichas funciones para formar una sola, y a esta función nueva,denominada d en la programación que, como es lógico pensar esta función será un tren de impulsos (deltas dedirac) , la derivamos obteniendo un tren de impulsos con dobletes que son las derivadas de los respectivosDeltas de dirac dados en la primera derivada. Obteniendo la gráfica así:A estos dobletes habrá que agregar los impulsos que ha generado los escalones de la primera derivada,ayúdanos de la función sinc(t) para tal efecto de la siguiente manera:Obteniendo consigo completar la segunda derivada representada en esta gráfica:
  7. 7. Integral de Señal ContinuaPoder realizar la integral de una función en Matlab debemos trabajar de forma simbólica para ello vamos a usarel comando syms(x) que nos permitirá declarar variables simbólicas, utilizando de la siguiente manera:Como la función está definida por tramos como la integral tamiz de la realiza por tramos, de ello cuando serealice la gráfica con el comando ezplot(f) los tramos saldrán discontinuos, y ello se debe a que no seestablece las condiciones iniciales de esa integral que corresponde a la variable C en una integral indefinida.Al corregir este principio y darle el valor correspondiente a C en cada integral se observará que la gráfica de laseñal empezará a presentar los tramos de la función integrada uno a continuación del otro, obteniendo comográfica lo siguiente:
  8. 8. GRAFICACIÓN DE LA DERIVACIÓN E INTEGRACIÓN DE SEÑALES DISCRETAS EN MATLABPrimera Derivada de Señal DiscretaSe debe recordar que una señal discreta es una señal de muestras es decir se compone de sumatoria de datos.Es por ello que el derivar a integrar, como se le hacen las funciones continuas, no es un proceso correcto paraobtenerlas.Se podría decir que la derivación de una señal discreta se convierte en una diferencia y la integración en unsumatorio. DERIVACIÓN = DIFERENCIA Se puede obtener dos métodos para hacer la deriva de una función discreta, ellos son: Diferencia en adelanto: aquí se aplica la siguiente ecuación. Diferencia en retraso: aquí se aplica la siguiente ecuación. Ambos métodos nos permiten obtener la derivada, o más apropiadamente, diferencia de una señal discreta; las diferencia está en que la una presentará una gráfica de la señal adelantada y la otra en retraso. En Matlab desarrollaríamos así: Como se observa en el vector fr se almacena la función f 2 desplazada una unidad, para poder utilizar la diferencia en retraso, realizamos la diferencia de funcione y la almacenamos en el vector df. Obtenemos la siguiente gráfica:2 Remítase la sección: Ejercicio Aplicativo “Señal Discreta” para identificar como se construyó la función f por tramos.
  9. 9. Segunda Derivada de Señal DiscretaComo se ve en el seno de la primera derivada en las señales discretas se habla de una diferencia, dichadiferencia puede ser en adelanto o retraso, y eso se consigue retrasando o adelantando la señal discreta yrestando la de su original.Para obtener la segunda derivada de la señal discreta el desplazamiento ya no será sólo una unidad, sino que sedesplazará dos unidades, en adelanto o retraso; si se deseara la tercera derivada de la señal discreta eldesplazamiento ya no sería una o dos unidades, sino que será un desplazamiento de tres unidades en adelantoo retraso, y así sucesivamente de acuerdo a la derivada que se persiga.Por lo tanto nuestro ecuación a utilizar para la segunda derivada quedaría expresada como:Quedándonos la gráfica de la siguiente manera:
  10. 10. Integral de Señal Discreta INTEGRACIÓN = SUMATORIO La integración es un sumatorio que responde a la siguiente ecuación: Dicha ecuación nos lleva a pensar que es una suma recursiva de los valores otorgados a la función discreta correspondiente a cada punto del dominio. Realizando la integración en Matlab tendríamos: El comando for() nos permite realizar la suma recursiva de los valores de la función discreta y generar el sumatorio propuesto en la ecuación, con ello obtenemos la siguiente gráfica:
  11. 11. EJERCICIO DE APLICACIÓNSeñal Continua CÓDIGO MATLABclear; clc;% >>>>>>GRAFICA DE LA SEÑAL CONTINUA<<<<<<<%>>establecimiento del dominiot=-5:0.001:5;%>>GRÁFICO DE LA SEÑAL DADAf1=t+1;f2=2;f3=1;f4=((-2)*(t))+3;f5=0;f=(f1.*((t>=-2)&(t<=-1)))+(f2.*((t>-1)&(t<=0)))+(f3.*((t>0)&(t<=1)))+(f4.*((t>1)&(t<=2))); %Gráfico de la señal subplot(2,2,1); plot(t,f,b,LineWidth,2); %mejora del aspecto de la gráfica axis([-5 5 -4 4 ]) grid on; title(Señal de Entrada); ylabel(X(t)); xlabel(t);%>>GRÁFICO PRIMERA DERIVADA;df=(diff(f)); %calula la primera derivada de la señal de entrada (f)adf=[df 0]; %Ajusta al vector df para que tenga la misma dimensión que el vectort % y ambos vectores puedan ser graficados en el comando plot()p1=1*rectpuls(t+1.5,1); %genera las F.Escalon para representar las % derivada de la F. Rampap2=(-2)*rectpuls(t-1.5,1);p=(p1+p2); % unimos las funciones escalones para formar una sola función %Gráfico de la señal subplot(2,2,2); plot(t,adf,m,LineWidth,1); hold on; plot(t,p,m,LineWidth,2); hold on; %grafico de picos de los impulsos plot(-1,2,^m); plot(2,1,^m); plot(-2,-1,vm); plot(0,-1,vm); %mejora del aspecto de la gráfica axis([-5 5 -3 3 ])
  12. 12. grid on; title(Primera Derivada); ylabel(X´(t)); xlabel(t);%>>GRÁFICO SEGUNDA DERIVADA; %derivada de los delta de dirac d1=sinc(100*(t+2)); d2=2*sinc(100*(t+1)); d3=(-1)*sinc(100*(t)); d4=sinc(100*(t-2)); d=(d1.*(t==-2))+(d2.*(t==-1))+(d3.*(t==0))+(d4.*(t==2)); dd=diff(d); add=[dd 0]; %grafico de las derivada de los delta de dirac subplot(2,2,3) plot(t,add,r,LineWidth,1) hold on %grafico de picos de los impulsos plot(-1,2,^r); plot(-1,-2,vr); plot(2,1,^r); plot(2,-1,vr); plot(-2,-1,vr); plot(-2,1,^r); plot(0,-1,vr); plot(0,1,^r); hold on; %Grafico impulsos adicionales de escalones en primera derivada e1=sinc(1000*(t+2)); e2=(-1)*sinc(1000*(t+1)); e3=(-2)*sinc(1000*(t-1)); e4=(2)*sinc(1000*(t-2)); e=(e1.*(t==-2))+(e2.*(t==-1))+(e3.*(t==1))+(e4.*(t==2)); subplot(2,2,3) plot(t,e,r,LineWidth,1) hold on; %grafico de picos de los impulsos plot(-2,1,^r); plot(-1,-1,vr); plot(1,-2,vr); plot(2,2,^r); %mejora del aspecto de la gráfica axis([-5 5 -3 3 ]) grid on; title(Segunda Derivada); ylabel(X´´(t)); xlabel(t);
  13. 13. %>>GRÁFICO INTEGRAL DE LA SEÑAL DADA%señal dada pero tratada en forma simbólicasyms x;ff1=x+1;ff2=2;ff3=1;ff4=((-2)*(x))+3;%Calculo de integrales de cada funciónintff1=int(ff1,x)-1.5; % se ubica condiciones iniciales a la integralintff2=int(ff2,x)+0.5;intff3=int(ff3,x)+0.5;intff4=int(ff4,x)+1.75;%Grafico de la integralsubplot(2,2,4)ezplot(intff1,[-2,-1]);hold onezplot(intff2,[-1,0]);ezplot(intff3,[0,1]);ezplot(intff4,[1,2]);ezplot(1.5,[2,4.5]);%grafica de la constanteezplot(-1,[-2,-4.5]);grid on;axis([-5 5 -3 3 ])title(Integral);xlabel(t); RESULTADO GRÁFICO
  14. 14. Señal Discreta CÓDIGO MATLABclear; clc%dominion=-5:1:5;%función discretaf1=-1;f2=-0.5;f3=0;f4=0.5;f5=1;f=(f1.*((n>=-4)&(n<=-2))+(f2.*(n==-1))+(f3.*(n==0))+(f4.*(n==1))+(f5.*((n>=2)&(n<=3))));subplot(2,2,1);stem(n,f,fill);axis([-5 5 -2 2]);title(Señal Entrada);xlabel(n);ylabel(x[n]);%PRIMERA DERIVADA = DIFERENCIA = fr = x[n]- x[n-1]fr=(f1.*(((n-1)>=-4)&((n-1)<=-2))+(f2.*((n-1)==-1))+(f3.*((n-1)==0))+(f4.*((n-1)==1))+(f5.*(((n-1)>=2)&((n-1)<=3))));df=f-fr;subplot(2,2,2);stem(n,df,m,fill);axis([-5 5 -2 2]);title(Primera Derivada);xlabel(n);ylabel(x´[n]);%SEGUNDA DERIVADA = DIFERENCIA = fr = x[n]- x[n-2]fr=(f1.*(((n-2)>=-4)&((n-2)<=-2))+(f2.*((n-2)==-1))+(f3.*((n-2)==0))+(f4.*((n-2)==1))+(f5.*(((n-2)>=2)&((n-2)<=3))));df=f-fr;subplot(2,2,3);stem(n,df,m,fill);axis([-5 5 -2 2]);title(Segunda Derivada);xlabel(n);ylabel(x´´[n]);%INTEGRAL = SUMATORIO[fila,columna]=size(f);intf=zeros(size(f));%crea un vector del mismo tamaño que ffor i=2:1:columna acum=0; for j=1:1:i acum=acum+f(j); end
  15. 15. intf(i)=acum;endsubplot(2,2,4);stem(n,intf,r,fill);axis([-5 5 -4 4]);title(Integral);xlabel(n);ylabel(Integral x[n]); RESULTADO GRÁFICO
  16. 16. AMPLIACIÓN GRÁFICASSeñal Continua
  17. 17. Señal Discreta

×