Utilizar expresiones condicionales en ecuaciones
Sintaxis de declaraciones
Puede especificar ecuaciones condicionales utilizando declaraciones if
.
equations [...] if Expression [...] elseif Expression [...] else [...] end [...] end
Cada sección [...]
puede contener una o más expresiones de ecuación.
Puede anidar declaraciones if
, por ejemplo:
equations [...] if Expression [...] if Expression [...] else [...] end else [...] end [...] end
Restricciones
Cada
if
requiere unelse
.El número total de expresiones de ecuaciones, su dimensionalidad y su orden deben ser los mismos para cada ramificación de la declaración
if-elseif-else
. Sin embargo, esta regla no se aplica a las expresionesassert
porque no se incluyen en el recuento de expresiones para la ramificación.
Ejemplo
En el caso de un componente donde x e y se declaran como variables de 1x1, especifique la siguiente ecuación definida por partes:
Esta ecuación, escrita en el lenguaje Simscape™, presentaría el siguiente aspecto:
equations if x >= -1 && x <= 1 y == x; else y == x^2; end end
Otra forma de escribir esta ecuación en el lenguaje Simscape es la siguiente:
equations y == if x>=-1 && x<=1, x else x^2 end end