ER1.9. Solución analítica de una ecuación en diferencias lineal con raíces complejas

Introducción (planteamiento)

Resolver analíticamente la siguiente ecuación en diferencias para Ts=0.4 seg, graficarla y comprobar la solución obtenida con la solución iterativa:

y(k+2)+0.25y(k)=1,y(0)=0,y(1)=1

Método (plan de solución)

El período de muestreo (paso) es implícito y solo se utiliza al final para dar la escala temporal en el gráfico de la solución. La solución de la ecuación implica: (i) obtener la ecuación característica y hallar las raíces características; (ii) revisar el caso (raíces reales sin repetir, raíces complejas sin repetir o raíces múltiples) y dar la solución en la forma adecuada; (iii) hallar la solución particular por el método de coeficientes indeterminados; (iv) dar la solución general como la suma de las dos soluciones anteriores; (v) utilizar las condiciones iniciales para calcular la solución particular; (vi) graficar la solución; (vii) verificar la solución comparándola con la solución iterativa; (viii) interpretar los resultados.

Resultados (solución)

La ecuación y raíces característica son:

λ2+0.25=0

λ=±0.5i

Las raíces anteriores en representación polar, donde es posible ver en el plano complejo que el módulo es igual a 0.5 y que la fase es igual a ±π/2, son:

λ=0.5e±π2i

La solución compleja de la ecuación homogénea es:

yh(k)=c10.5keiπ2k+c20.5keiπ2k

La solución real de la ecuación homogénea es:

yh(k)=0.5k(c1cosπ2k+c2sinπ2k)

La solución de la ecuación no homogénea por el método de coeficientes indeterminados tiene la siguiente forma: 

ynh(k)=A

Reemplazando en la ecuación en diferencias, teniendo en cuenta que  ynh(k+2)=A, se obtiene:

A+0.25A=1,A=0.8

La solución general es:

y(k)=0.5k(c1cosπ2k+c2sinπ2k)+0.8

De acuerdo con las condiciones iniciales se tiene:

y(0)=c1+0.8=0,c1=0.8

y(1)=0.5(c1cosπ2+c2sinπ2)+0.8=0.5c2+0.8=1,c2=0.4

La solución particular es:

y(k)=0.8[1+0.5k(0.5sinπ2kcosπ2k)]

El gráfico de la solución es:

 

Respuesta temporal

El código de MATLAB para la obtención del gráfico de la solución es:

kmax = 20; 
y = zeros(1, kmax+1);  
t = (0:kmax); y(2) = 1;
for k = 2:kmax
      y(k+1) = 0.8*(1 + 0.5^k*( 0.5*sin(pi*k/2) - cos(pi*k/2) ) );
end
plot(t, y,'--',t,y,'o')
xlabel('t (seg x 0.4)')

Los primeros 10 valores son:

y(k)={0,1,1,0.75,0.75,0.8125,0.8125,0.7969,0.7969,0.8008}

Discusión y verificación

La verificación de la solución anterior implica la obtención de la solución iterativa con MATLAB a partir del siguiente código, el cual muestra que los valores son los mismos y la solución analítica es correcta:

y  = zeros(1,10); 
y(2) = 1; 
for k = 0:7
      y(k+3) =  - 0.25*y(k+1) + 1;  
end

Es interesante observar que a pesar de tener raíces sobre el eje imaginario en el caso de tiempo discreto las oscilaciones se amortiguan, a diferencia del caso de tiempo continuo. Sin embargo, no se amortiguan las oscilaciones si las raíces discretas están sobre el círculo unitario, lo cual corresponde al eje imaginario en el caso continuo.


Comentarios