Borrar filtros
Borrar filtros

Won't show me my variable?

1 visualización (últimos 30 días)
Frane
Frane el 24 de Ag. de 2021
Editada: Frane el 24 de Ag. de 2021
Hello,
So when I run the code I don't get my variable "I" on the right side. The variable is in the following part od the code:
if Ms >=3.5
I = 21.29 * Ms - 69.4;
elseif Ms >= 2
I = 2.73 * Ms - 4.47;
elseif Ms >= 0
I = 0.5 * Ms;
elseif Ms >= (-2)
I = 0.5 * Ms;
elseif Ms >= (-3.5)
I = 2.73 * Ms + 4.47;
elseif Ms < (-3.5)
I = 21.29 * Ms + 69.4;
end
What could be the problem?
  2 comentarios
Stephen23
Stephen23 el 24 de Ag. de 2021
Editada: Stephen23 el 24 de Ag. de 2021
"What could be the problem?"
Ms is non-scalar, and contains false values.
The MATLAB approach is to use logical indexing, not IF/ELSEIF/END.
Frane
Frane el 24 de Ag. de 2021
What can I change to fix it?

Iniciar sesión para comentar.

Respuesta aceptada

Stephen23
Stephen23 el 24 de Ag. de 2021
"What can I change to fix it?"
Use logical indexing, e.g.:
I = 0.5 * Ms;
X = Ms>=3.5;
I(X) = 21.29 * Ms(X) - 69.4;
X = Ms>=2 & Ms<3.5;
I(X) = 2.73 * Ms(X) - 4.47;
X = Ms<(-2) & Ms>=(-3.5)
I(X) = 2.73 * Ms(X) + 4.47;
X = Ms<(-3.5);
I(X) = 21.29 * Ms(X) + 69.4;
  1 comentario
Frane
Frane el 24 de Ag. de 2021
Editada: Frane el 24 de Ag. de 2021
It worked.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre System Composer en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by