programas de simnon
TRANSCRIPT
-
8/2/2019 PROGRAMAS DE SIMNON
1/25
PROGRAMAS DE SIMNON
(pag. 64)
CONTINUOUS SYSTEM EJGRA1
" IDENTIFICACION DE SISTEMAS EN LINEA
" METODO DE LAS FUNCIONES DE LAGUERRE EN LINEA
"variables de estado
STATE x1 x2 lo xl1 ao a1 eao ea1
"derivadas de las variables de estado
DER dx1 dx2 dlo dxl1 dao da1 deao dea1
"variable de tiempo
TIME t
"entrada
u=sign(sin(w*t))
"sistema de segundo orden
dx1=x2
dx2=-x1-2*x2+u
y=x1
"funciones de Laguerre
dlo=-Ta*lo+u
dxl1=-Ta*xl1-2*Ta*lo
l1=lo+xl1
"modelo
ym=ao*lo+a1*l1
"error
e=ym-y
"estimacin de los parmetros (gradiente y horizonte huidizo)
ed=delay(e,L)
lod=delay(lo,L)
-
8/2/2019 PROGRAMAS DE SIMNON
2/25
l1d=delay(l1,L)
deao=e*lo-ed*lod
dea1=e*l1-ed*l1d
dao=-eao*b1
da1=-ea1*b2
"parmetros
L:2 "horizonte de prediccion
Ta:1 "constante de tiempo de Laguerre
w=.2 "frecuencia seal de entrada
b1=.08 "coeficientes de ajuste de mximo descenso
b2=.1 "de gradiente
END
********************************************************************
(pag. 65)
CONTINUOUS SYSTEM EJGRA2
" IDENTIFICACION DE SISTEMAS
" METODO DE LAS FUNCIONES DE LAGUERRE EN LINEA
"variables de estado
STATE x1 x2 x3 lo xl1 xl2 ao a1 a2 eao ea1 ea2
"derivadas de las variables de estado
DER dx1 dx2 dx3 dlo dxl1 dxl2 dao da1 da2 deao dea1 dea2
"variable de tiempo
TIME t
"entrada
u=sign(sin(w*t))
"sistema de tercer orden
-
8/2/2019 PROGRAMAS DE SIMNON
3/25
dx1=x2
dx2=x3
dx3=-(11/6)*x3-x2-(1/6)*x1+(1/6)*u
y=x1
"funciones de Laguerre
dlo=-Ta*lo+u
dxl1=-Ta*xl1-2*Ta*lo
l1=lo+xl1
dxl2=-Ta*xl2-2*Ta*l1
l2=xl2+l1
"modelo
ym=ao*lo+a1*l1+a2*l2
"error
e=ym-y
"estimacin de los parmetros (gradiente y horizonte huidizo)
ed=delay(e,L)
lod=delay(lo,L)
l1d=delay(l1,L)
l2d=delay(l2,L)
deao=e*lo-ed*lod
dea1=e*l1-ed*l1d
dea2=e*l2-ed*l2d
dao=-eao*bo
da1=-ea1*b1
da2=-ea2*b2
"parmetros
w=.2 "frecuencia seal de entrada
Ta:0.6 "constante de tiempo de Laguerre
L:2 "horizonte de prediccin
bo=.003 "coeficientes de ajuste de mximo descenso
b1=.005 "de gradiente
-
8/2/2019 PROGRAMAS DE SIMNON
4/25
b2=.006
END
********************************************************************
(pag. 66)
CONTINUOUS SYSTEM EJGRA3
" IDENTIFICACION DE SISTEMAS
" METODO DE LAS FUNCIONES DE LAGUERRE EN LINEA
"variables de estado
STATE x1 x2 x3 lo xl1 xl2 ao a1 a2 eao ea1 ea2
"derivadas de las variables de estado
DER dx1 dx2 dx3 dlo dxl1 dxl2 dao da1 da2 deao dea1 dea2
"variable de tiempo
TIME t
"entrada
u=sign(sin(w*t))
"sistema con cero inestable
dx1=1.6*x2
dx2=1.55*x3
dx3=-3*x3-3*x2-x1+u
y=x1-0.5*x2
"funciones de Laguerre
dlo=-Ta*lo+u
dxl1=-Ta*xl1-2*Ta*lo
l1=lo+xl1
dxl2=-Ta*xl2-2*Ta*l1
l2=xl2+l1
-
8/2/2019 PROGRAMAS DE SIMNON
5/25
"modelo
ym=ao*lo+a1*l1+a2*l2
"error
e=ym-y
"estimacin de los parmetros (gradiente y horizonte huidizo)
ed=delay(e,L)
lod=delay(lo,L)
l1d=delay(l1,L)
l2d=delay(l2,L)
deao=e*lo-ed*lod
dea1=e*l1-ed*l1d
dea2=e*l2-ed*l2d
dao=-eao*bo
da1=-ea1*b1
da2=-ea2*b2
"parmetros
w=.1 "frecuencia seal de entrada
Ta:1.5 "constante de tiempo de Laguerre
L:5 "horizonte de prediccin
bo=.007 "coeficientes de ajuste de mximo descenso
b1=.015 "de gradiente
b2=.015
END
********************************************************************
(pag. 67)
CONTINUOUS SYSTEM EJGRA4
" IDENTIFICACION DE SISTEMAS
-
8/2/2019 PROGRAMAS DE SIMNON
6/25
" METODO DE LAS FUNCIONES DE LAGUERRE EN LINEA
"variables de estado
STATE x1 x2 x3 lo xl1 xl2 xl3 ao a1 a2 a3 eao ea1 ea2 ea3
"derivadas de las variables de estado
DER dx1 dx2 dx3 dlo dxl1 dxl2 dxl3 dao da1 da2 da3 deao dea1 dea2 dea3
"variable de tiempo
TIME t
"entrada
u=sign(sin(w*t))
"sistema con retardo significativo
dx1=x2
dx2=x3
dx3=-3*x3-3*x2-x1+delay(u,1)
y=x1
"funciones de Laguerre
dlo=-Ta*lo+u
dxl1=-Ta*xl1-2*Ta*lo
l1=lo+xl1
dxl2=-Ta*xl2-2*Ta*l1
l2=xl2+l1
dxl3=-Ta*xl3-2*Ta*l2
l3=xl3+l2
"modelo
ym=ao*lo+a1*l1+a2*l2+a3*l3
"error
e=ym-y
"estimacin de los parmetros (gradiente y horizonte huidizo)
ed=delay(e,L)
lod=delay(lo,L)
l1d=delay(l1,L)
-
8/2/2019 PROGRAMAS DE SIMNON
7/25
l2d=delay(l2,L)
l3d=delay(l3,L)
deao=e*lo-ed*lod
dea1=e*l1-ed*l1d
dea2=e*l2-ed*l2d
dea3=e*l3-ed*l3d
dao=-eao*bo
da1=-ea1*b1
da2=-ea2*b2
da3=-ea3*b3
"parmetros
w=.1 "frecuencia seal de entrada
Ta:1 "constante de tiempo de Laguerre
L:2 "horizonte de prediccin
bo=.002 "coeficientes de ajuste de mximo descenso
b1=.008 "de gradiente
b2=.009
b3=.003
END
********************************************************************
(pag. 69)
CONTINUOUS SYSTEM EJGRA4
" IDENTIFICACION DE SISTEMAS
" METODO DE LAS FUNCIONES DE LAGUERRE EN LINEA
"variables de estado
STATE x1 x2 x3 lo xl1 xl2 xl3 ao a1 a2 a3 eao ea1 ea2 ea3
-
8/2/2019 PROGRAMAS DE SIMNON
8/25
"derivadas de las variables de estado
DER dx1 dx2 dx3 dlo dxl1 dxl2 dxl3 dao da1 da2 da3 deao dea1 dea2 dea3
"variable de tiempo
TIME t
"entrada
u=sign(sin(w*t))
"perturbacion
r=norm(t)*lam
"sistema con retardo significativo
dx1=x2
dx2=x3
dx3=-3*x3-3*x2-x1+delay(u,1)
y=x1+r
"funciones de Laguerre
dlo=-Ta*lo+u
dxl1=-Ta*xl1-2*Ta*lo
l1=lo+xl1
dxl2=-Ta*xl2-2*Ta*l1
l2=xl2+l1
dxl3=-Ta*xl3-2*Ta*l2
l3=xl3+l2
"modelo
ym=ao*lo+a1*l1+a2*l2+a3*l3
"error
e=ym-y
"estimacin de los parmetros (gradiente y horizonte huidizo)
ed=delay(e,L)
lod=delay(lo,L)
l1d=delay(l1,L)
l2d=delay(l2,L)
l3d=delay(l3,L)
-
8/2/2019 PROGRAMAS DE SIMNON
9/25
deao=e*lo-ed*lod
dea1=e*l1-ed*l1d
dea2=e*l2-ed*l2d
dea3=e*l3-ed*l3d
dao=-eao*bo
da1=-ea1*b1
da2=-ea2*b2
da3=-ea3*b3
"parmetros
lam:0.1 "amplitud de la perturbacin
w=.1 "frecuencia seal de entrada
Ta:1 "constante de tiempo de Laguerre
L:2 "horizonte de prediccin
bo=.008 "coeficientes de ajuste de mximo descenso
b1=.03 "de gradiente
b2=.05
b3=.01
END
******************************************************************
(pag. 70)
CONTINUOUS SYSTEM EJMM1
" IDENTIFICACION DE SISTEMAS
" METODO DE LAS FUNCIONES DE LAGUERRE EN LINEA
"variables de estado
STATE x1 x2 lo xl1 lo2 l12 ylo yl1 lol1
"derivadas de las variables de estado
-
8/2/2019 PROGRAMAS DE SIMNON
10/25
DER dx1 dx2 dlo dxl1 dlo2 dl12 dylo dyl1 dlol1
"variable de tiempo
TIME t
"entrada
u=sign(sin(w*t))
"sistema de segundo orden
dx1=x2
dx2=-x1-2*x2+u
y=x1
"funciones de Laguerre
dlo=-Ta*lo+u
dxl1=-Ta*xl1-2*Ta*lo
l1=lo+xl1
"estimacin de parmetros (integracin y horizonte huidizo)
lod=delay(lo,L)
l1d=delay(l1,L)
yd=delay(y,L)
dlo2=lo*lo-lod*lod
dl12=l1*l1-l1d*l1d
dlol1=lo*l1-lod*l1d
dylo= y*lo-yd*lod
dyl1= y*l1-yd*l1d
d=lo2*l12-lol1*lol1
ao=if t>L then (l12*ylo-lol1*yl1)/d else 0
a1=if t>L then (-lol1*ylo+lo2*yl1)/d else 0
"modelo
ym=ao*lo+a1*l1
"parmetros
L:3 "horizonte de prediccion
Ta:1 "constante de tiempo de Laguerre
w=.2 "frecuencia seal de entrada
-
8/2/2019 PROGRAMAS DE SIMNON
11/25
END
********************************************************************
(pag. 71)
CONTINUOUS SYSTEM EJMM2
" IDENTIFICACION DE SISTEMAS
" METODO DE LAS FUNCIONES DE LAGUERRE EN LINEA
"variables de estado
STATE x1 x2 x3 lo xl1 xl2 lo2 l12 l22 ylo yl1 yl2 lol1 lol2 l1l2
"derivadas de las variables de estado
DER dx1 dx2 dx3 dlo dxl1 dxl2 dlo2 dl12 dl22 dylo dyl1 dyl2 dlol1 dlol2 dl1l2
"variable de tiempo
TIME t
"entrada
u=sign(sin(w*t))
"sistema de tercer orden
dx1=x2
dx2=x3
dx3=-(11/6)*x3-x2-(1/6)*x1+(1/6)*u
y=x1
"funciones de Laguerre
dlo=-Ta*lo+u
dxl1=-Ta*xl1-2*Ta*lo
l1=lo+xl1
dxl2=-Ta*xl2-2*Ta*l1
l2=xl2+l1
"estimacin de parmetros (integracin y horizonte huidizo)
-
8/2/2019 PROGRAMAS DE SIMNON
12/25
lod=delay(lo,L)
l1d=delay(l1,L)
l2d=delay(l2,L)
yd=delay(y,L)
dlo2=lo*lo-lod*lod
dl12=l1*l1-l1d*l1d
dl22=l2*l2-l2d*l2d
dlol1=lo*l1-lod*l1d
dlol2=lo*l2-lod*l2d
dl1l2=l1*l2-l1d*l2d
dylo=y*lo-yd*lod
dyl1=y*l1-yd*l1d
dyl2=y*l2-yd*l2d
d=lo2*l12*l22+2*lol1*l1l2*lol2-(l12*lol2*lol2+lo2*l1l2*l1l2+l22*lol1*lol1)
m11=l12*l22-l1l2*l1l2
m21=-lol1*l22+l1l2*lol2
m31=lol1*l1l2-l12*lol2
m12=-lol1*l22+l1l2*lol2
m22=lo2*l22-lol2*lol2
m32=-lo2*l1l2+lol2*lol1
m13=lol1*l1l2-l12*lol2
m23=-lo2*l1l2+lol2*lol1
m33=lo2*l12-lol1*lol1
ao=if t>L then (m11*ylo+m12*yl1+m13*yl2)/d else 0
a1= if t>L then (m21*ylo+m22*yl1+m23*yl2)/d else 0
a2= if t>L then (m31*ylo+m32*yl1+m33*yl2)/d else 0
"modelo
ym=ao*lo+a1*l1+a2*l2
"parmetros
w=.2 "frecuencia seal de entrada
Ta:0.6 "constante de tiempo de Laguerre
-
8/2/2019 PROGRAMAS DE SIMNON
13/25
L:2 "horizonte de prediccin
END
********************************************************************
(pag. 72)
CONTINUOUS SYSTEM EJMM2
" IDENTIFICACION DE SISTEMAS
" METODO DE LAS FUNCIONES DE LAGUERRE EN LINEA
"variables de estado
STATE x1 x2 x3 lo xl1 xl2 lo2 l12 l22 ylo yl1 yl2 lol1 lol2 l1l2
"derivadas de las variables de estado
DER dx1 dx2 dx3 dlo dxl1 dxl2 dlo2 dl12 dl22 dylo dyl1 dyl2 dlol1 dlol2 dl1l2
"variable de tiempo
TIME t
"entrada
u=sign(sin(w*t))
"sistema con cero inestable
dx1=1.6*x2
dx2=1.55*x3
dx3=-3*x3-3*x2-x1+u
y=x1-0.5*x2
"funciones de Laguerre
dlo=-Ta*lo+u
dxl1=-Ta*xl1-2*Ta*lo
l1=lo+xl1
dxl2=-Ta*xl2-2*Ta*l1
l2=xl2+l1
-
8/2/2019 PROGRAMAS DE SIMNON
14/25
"estimacin de parmetros (integracin y horizonte huidizo)
lod=delay(lo,L)
l1d=delay(l1,L)
l2d=delay(l2,L)
yd=delay(y,L)
dlo2=lo*lo-lod*lod
dl12=l1*l1-l1d*l1d
dl22=l2*l2-l2d*l2d
dlol1=lo*l1-lod*l1d
dlol2=lo*l2-lod*l2d
dl1l2=l1*l2-l1d*l2d
dylo=y*lo-yd*lod
dyl1=y*l1-yd*l1d
dyl2=y*l2-yd*l2d
d=lo2*l12*l22+2*lol1*l1l2*lol2-(l12*lol2*lol2+lo2*l1l2*l1l2+l22*lol1*lol1)
m11=l12*l22-l1l2*l1l2
m21=-lol1*l22+l1l2*lol2
m31=lol1*l1l2-l12*lol2
m12=-lol1*l22+l1l2*lol2
m22=lo2*l22-lol2*lol2
m32=-lo2*l1l2+lol2*lol1
m13=lol1*l1l2-l12*lol2
m23=-lo2*l1l2+lol2*lol1
m33=lo2*l12-lol1*lol1
ao=if t>L then (m11*ylo+m12*yl1+m13*yl2)/d else 0
a1= if t>L then (m21*ylo+m22*yl1+m23*yl2)/d else 0
a2= if t>L then (m31*ylo+m32*yl1+m33*yl2)/d else 0
"modelo
ym=ao*lo+a1*l1+a2*l2
"parmetros
w=.1 "frecuencia seal de entrada
-
8/2/2019 PROGRAMAS DE SIMNON
15/25
Ta:1.5 "constante de tiempo de Laguerre
L:4 "horizonte de prediccin
END
*******************************************************************
(pag. 74)
CONTINUOUS SYSTEM EJINS1
" IDENTIFICACION DE SISTEMAS EN LINEA
" METODO DE LAS FUNCIONES DE LAGUERRE EN LINEA
"variables de estado
STATE x1 x2 lo xl1 ao a1
"derivadas de las variables de estado
DER dx1 dx2 dlo dxl1 dao da1
"variable de tiempo
TIME t
"entrada
u=sign(sin(w*t))
"sistema
dx1=x2
dx2=-x1-2*x2+u
y=x1
"funciones de Laguerre
dlo=-Ta*lo+u
dxl1=-Ta*xl1-2*Ta*lo
l1=lo+xl1
"modelo
ym=ao*lo+a1*l1
-
8/2/2019 PROGRAMAS DE SIMNON
16/25
"error instantneo y gradiente
e=ym-y
dao=-e*lo*b1
da1=-e*l1*b2
"parmetros
Ta:1 "constante de tiempo de Laguerre
w=.2 "frecuencia seal de entrada
b1=.1 "coeficientes de ajuste de mximo descenso
b2=.1 "de gradiente
END
*******************************************************************
(pag. 75)
CONTINUOUS SYSTEM EJINS2
" IDENTIFICACION DE SISTEMAS EN LINEA
" METODO DE LAS FUNCIONES DE LAGUERRE EN LINEA
"variables de estado
STATE x1 x2 x3 lo xl1 xl2 ao a1 a2
"derivadas de las variables de estado
DER dx1 dx2 dx3 dlo dxl1 dxl2 dao da1 da2
"variable de tiempo
TIME t
"entrada
u=sign(sin(w*t))
"sistema de tercer orden
dx1=x2
dx2=x3
-
8/2/2019 PROGRAMAS DE SIMNON
17/25
dx3=-(11/6)*x3-x2-(1/6)*x1+(1/6)*u
y=x1
"funciones de Laguerre
dlo=-Ta*lo+u
dxl1=-Ta*xl1-2*Ta*lo
l1=lo+xl1
dxl2=-Ta*xl2-2*Ta*l1
l2=xl2+l1
"modelo
ym=ao*lo+a1*l1+a2*l2
"error instantneo y gradiente
e=ym-y
dao=-e*lo*bo
da1=-e*l1*b1
da2=-e*l2*b2
"parmetros
w=.2 "frecuencia seal de entrada
Ta:.6 "constante de tiempo de Laguerre
bo=.05 "coeficientes de ajuste de mximo descenso
b1=.02 "de gradiente
b2=.02
END
********************************************************************
(pag. 76)
CONTINUOUS SYSTEM EJINS3
" IDENTIFICACION DE SISTEMAS EN LINEA
" METODO DE LAS FUNCIONES DE LAGUERRE EN LINEA
-
8/2/2019 PROGRAMAS DE SIMNON
18/25
"variables de estado
STATE x1 x2 x3 lo xl1 xl2 ao a1 a2
"derivadas de las variables de estado
DER dx1 dx2 dx3 dlo dxl1 dxl2 dao da1 da2
"variable de tiempo
TIME t
"entrada
u=sign(sin(w*t))
"sistema con cero inestable
dx1=1.6*x2
dx2=1.55*x3
dx3=-3*x3-3*x2-x1+u
y=x1-0.5*x2
"funciones de Laguerre
dlo=-Ta*lo+u
dxl1=-Ta*xl1-2*Ta*lo
l1=lo+xl1
dxl2=-Ta*xl2-2*Ta*l1
l2=xl2+l1
"modelo
ym=ao*lo+a1*l1+a2*l2
"error instantneo y gradiente
e=ym-y
dao=-e*bo*lo
da1=-e*b1*l1
da2=-e*b2*l2
"parmetros
w=.1 "frecuencia seal de entrada
Ta:1.5 "constante de tiempo de Laguerre
bo=.05 "coeficientes de ajuste de mximo descenso
-
8/2/2019 PROGRAMAS DE SIMNON
19/25
b1=.1 "de gradiente
b2=.1
END
********************************************************************
(pag. 77)
CONTINUOUS SYSTEM EJINS4
" IDENTIFICACION DE SISTEMAS
" METODO DE LAS FUNCIONES DE LAGUERRE EN LINEA
"variables de estado
STATE x1 x2 x3 lo xl1 xl2 xl3 ao a1 a2 a3
"derivadas de las variables de estado
DER dx1 dx2 dx3 dlo dxl1 dxl2 dxl3 dao da1 da2 da3
"variable de tiempo
TIME t
"entrada
u=sign(sin(w*t))
"sistema con retardo significativo
dx1=x2
dx2=x3
dx3=-3*x3-3*x2-x1+delay(u,1)
y=x1
"funciones de Laguerre
dlo=-Ta*lo+u
dxl1=-Ta*xl1-2*Ta*lo
l1=lo+xl1
dxl2=-Ta*xl2-2*Ta*l1
-
8/2/2019 PROGRAMAS DE SIMNON
20/25
l2=xl2+l1
dxl3=-Ta*xl3-2*Ta*l2
l3=xl3+l2
"modelo
ym=ao*lo+a1*l1+a2*l2+a3*l3
"error instantneo y gradiente
e=ym-y
dao=-e*bo*lo
da1=-e*b1*l1
da2=-e*b2*l2
da3=-e*b3*l3
"parmetros
w=.1 "frecuencia seal de entrada
Ta:1 "constante de tiempo de Laguerre
bo=.02 "coeficientes de ajuste de mximo descenso
b1=.05 "de gradiente
b2=.1
b3=.02
END
********************************************************************
(pag. 78)
CONTINUOUS SYSTEM EJINS4
" IDENTIFICACION DE SISTEMAS
" METODO DE LAS FUNCIONES DE LAGUERRE EN LINEA
"variables de estado
STATE x1 x2 x3 lo xl1 xl2 xl3 ao a1 a2 a3
-
8/2/2019 PROGRAMAS DE SIMNON
21/25
"derivadas de las variables de estado
DER dx1 dx2 dx3 dlo dxl1 dxl2 dxl3 dao da1 da2 da3
"variable de tiempo
TIME t
"entrada
u=sign(sin(w*t))
"perturbacion
r=norm(t)*lam
"sistema con retardo significativo
dx1=x2
dx2=x3
dx3=-3*x3-3*x2-x1+delay(u,1)
y=x1+r
"funciones de Laguerre
dlo=-Ta*lo+u
dxl1=-Ta*xl1-2*Ta*lo
l1=lo+xl1
dxl2=-Ta*xl2-2*Ta*l1
l2=xl2+l1
dxl3=-Ta*xl3-2*Ta*l2
l3=xl3+l2
"modelo
ym=ao*lo+a1*l1+a2*l2+a3*l3
"error instantneo y gradiente
e=ym-y
dao=-e*bo*lo
da1=-e*b1*l1
da2=-e*b2*l2
da3=-e*b3*l3
"parmetros
lam:0.1 "amplitud de la perturbacin
-
8/2/2019 PROGRAMAS DE SIMNON
22/25
w=.1 "frecuencia seal de entrada
Ta:1 "constante de tiempo de Laguerre
bo=.01 "coeficientes de ajuste de mximo descenso
b1=.03 "de gradiente
b2=.05
b3=.01
END
-
8/2/2019 PROGRAMAS DE SIMNON
23/25
PROGRAMAS DE MATLAB
% Crear entradatam=1000;
u=ones(200,1);
u=[u;-u;u;-u;u];
% Retardo entrada
delay=50;
u(delay+1:tam)=u(1:tam-delay);
u(1:delay)=zeros(delay,1);
% Definir sistema
a=[0 1 0;0 0 1;-1 -3 -3];
b=[0;0;1];
c=[1 0 0];
d=0;
t=(0:0.05:(tam-1)*0.05);
% Simulacion del sistema
[y,x]=lsim(a,b,c,d,u,t);
ruido=randn(tam,1);
y=y+ruido*0;
% Modelo
ta=1;
[lo,xo]=lsim(1,[1 ta],u,t);
[l1,x1]=lsim([1 -ta], [1 2*ta ta*ta],u,t);
[l2,x2]=lsim([1 -2*ta ta*ta], [1 3*ta 3*ta^2 ta^3],u,t);
[l3,x3]=lsim([1 -3*ta 3*ta^2 -ta^3], [1 4*ta 6*ta^2 4*ta^3 ta^4],u,t);
L=5;
lod(L+1:tam)=lo(1:tam-L);
lod(1:L)=zeros(L,1);
l1d(L+1:tam)=l1(1:tam-L);
-
8/2/2019 PROGRAMAS DE SIMNON
24/25
l1d(1:L)=zeros(L,1);
l2d(L+1:tam)=l2(1:tam-L);
l2d(1:L)=zeros(L,1);
l3d(L+1:tam)=l3(1:tam-L);
l3d(1:L)=zeros(L,1);
yd(L+1:tam)=y(1:tam-L);
yd(1:L)=zeros(L,1);
lod=lod;
l1d=l1d;
l2d=l2d;
l3d=l3d;
yd=yd;
[moo,mo]=lsim(0,1,1,0,lo.^2-lod.^2,t);
[mo1,m1]=lsim(0,1,1,0,lo.*l1-lod.*l1d,t);
[mo2,m2]=lsim(0,1,1,0,lo.*l2-lod.*l2d,t);
[mo3,m2]=lsim(0,1,1,0,lo.*l3-lod.*l3d,t);
[m11,m3]=lsim(0,1,1,0,l1.^2-l1d.^2,t);
[m12,m4]=lsim(0,1,1,0,l1.*l2-l1d.*l2d,t);
[m13,m2]=lsim(0,1,1,0,l1.*l3-l1d.*l3d,t);
[m22,m5]=lsim(0,1,1,0,l2.^2-l2d.^2,t);
[m23,m2]=lsim(0,1,1,0,l2.*l3-l2d.*l3d,t);
[m33,m2]=lsim(0,1,1,0,l3.^2-l3d.^2,t);
[myo,m6]=lsim(0,1,1,0,lo.*y-lod.*yd,t);
[my1,m7]=lsim(0,1,1,0,l1.*y-l1d.*yd,t);
[my2,m8]=lsim(0,1,1,0,l2.*y-l2d.*yd,t);
[my3,m8]=lsim(0,1,1,0,l3.*y-l3d.*yd,t);
for h=1:tam,
if h
-
8/2/2019 PROGRAMAS DE SIMNON
25/25
else
m=[moo(h) mo1(h) mo2(h);mo1(h) m11(h) m12(h);mo2(h) m12(h) m22(h)];
minv=inv(m);
par(:,h)= minv *[myo(h) my1(h) my2(h)];
end
end
ym=[lo l1 l2]*par(:,1000);