Matlab - no igualdad

 
Vista:

no igualdad

Publicado por cucu (38 intervenciones) el 10/04/2009 20:45:32
Hola, soy nueva en matlab y una cosa "aparentemente" fácil no funciona, hago:

izq1 = A;
izq2 = inv(A) * b;
if (izq1 == izq2)
disp('los resultados coinciden');
else
disp('los resultados no coinciden');
end

he comprobado paso a paso que izq1 e izq2 son iguales un vector columna [0;0; 0.3333] pero me imprime que los resultados no coinciden, ¿alquien sabe a que se debe? luego hago lo mismo con un vector fila (haciendo la multiplicación por la derecha) y si me sale bien.

¿puede ser algo de aproximaciones de 0.3333? ¿los vectores columna no se comparan así?

Gracias. Saludos
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

RE:no igualdad

Publicado por Angel (75 intervenciones) el 12/04/2009 11:20:49
Pon antes del if izq1==izq2 sin punto y coma, así te saldrá por pantalla un array con las coparaciones una a una, sí el ultimo resultado no es correcto quiere decir que efectivamente es cuestión de redondeo
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

RE:no igualdad

Publicado por cucu (38 intervenciones) el 12/04/2009 11:36:17
gracias, ya lo he conseguido, el problema es que hay que decirle all

if ~all(izq1 == izq2)
...

poruqe si no no se muy bien que hace pero no siempre saca un resultado correcto.

Saludos
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