Matlab - separar matrices usando iteraciones

   
Vista:

separar matrices usando iteraciones

Publicado por Pedro Fernandez perilandia@gmail.com (4 intervenciones) el 18/09/2015 15:08:08
hola, muy buenas a todos y gracias de antemano por vuestra atención

me gustaría separar mediante iteraciones una matriz fila de 14749 valores(columnas) en 2107 matrices de 7 columnas sucesivamente.

¿como podria hacerlo??

para a continuación observar si cada en nueva matriz de 7 columnas todos los valores son mayores de 0.
all(M).

muchas Gracias.


la matriz q me quedaria es la M.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
A=[-0.0185 0.0063 0.2281 -9.8080;-0.1329 -0.6443 20.6582 -0.2187 ;0.0384 0.0140 -3.8153 0.0000;0.0000 0.0000 0.9996 0.0000];
B=[1.2496 -8.1445;-96.3119 -13.4400;6.7362 45.2389;0.0000 0.0000];
kk=1;
M=[];
for wn=0:0.1:30
for z=0.35:0.1:1
for w=0:50:300
p1=-2;
p2=-0.5;
p3=-z*wn+j*wn*sqrt(1-z^2);
p4=conj(p3);
polos_deseados=[p1,p2,p3,p4];
K=place(A,B,polos_deseados);
control_optimo=eye(2)+((K*inv(i*w*eye(4)-A))*B);
control_optimo=svds(control_optimo)
optimo=control_optimo(2)>=1;
wn
z
w
optimo
M(kk)=[optimo];
kk=kk+1;
end
end
end
disp(M)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

separar matrices usando iteraciones

Publicado por Pedro Fernandez perilandia@gmail.com (4 intervenciones) el 18/09/2015 16:47:03
esta seria mi idea, pero claro; mediante iteraciones.... por que de la siguiente manera es un trabajo brutal y absurdo siempre y cuando se pueda hacer mediante iteraciones. recuerdo q serian 2107 submatrices de M. de 7 en 7 valores de ella.

Gracias nuevamente, espero q exista alguien capacitado. Un saludo.
Maravillado con la actividad de este foro.


>> M1=M(1,1:7)

M1 =

0 0 0 0 0 0 0

>> optimo1=all(M1)

optimo1 =

0

>> M2=M(1,8:14)

M2 =

0 0 0 0 0 0 0

>> optimo2=all(M2)

optimo2 =

0

>> M3=M(1,15:21)

M3 =

0 0 0 0 0 0 0

>> optimo3=all(M3)

optimo3 =

0

>> M4=M(1,22:28)

M4 =

0 0 0 0 0 0 0

>> optimo4=all(M4)

optimo4 =

0

>> Mn=[M1;M2;M3;M4;.....;M2107]

Mn =

0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
.......
.......
.......

>> optimo=[optimo1;optimo2;optimo3;optimo4;......;optimo2107]

optimo =

0
0
0
0
....
....
....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Daniel

separar matrices usando iteraciones

Publicado por Daniel (212 intervenciones) el 18/09/2015 23:35:54
Poné al final de todo (luego de haber calculado M) estas dos lineas, y listo

1
2
Mq=reshape(M,7,[])';
optimo=all(Mq,2);

Comentanos como te fue

Saludos

Daniel
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar