Función por partes en Matlab - Métodos de función por partes y ejemplo

Tabla de contenido:

Anonim

Introducción a la función por partes en Matlab

Una función por partes es una función, que se define por varias funciones múltiples. En este otras funciones múltiples se utilizan para aplicar en intervalos específicos de la función principal. La función por partes también se usa para describir la propiedad de cualquier ecuación o función. Representa varias condiciones en funciones o ecuaciones. En este tema, vamos a aprender sobre la función por partes en Matlab.

Se puede implementar de dos maneras, una es mediante el uso de bucles (instrucción if-else y la instrucción switch) y la otra es sin usar bucles. En el método de bucles, se utiliza la forma de victorias. Como vemos hay dos formas, con bucles y sin usar bucles.

En el primer método nuevamente hay dos formas

1. Al usar el método if-else

2. Al usar la instrucción switch

En el segundo método, la función representa de forma vectorializada

3. El método vectorizado

Mediante el uso de declaraciones If-Else

Esta es una de las terminologías básicas para implementar funciones por partes, pero no es una buena práctica implementar funciones por partes.

Sintaxis:

If condition1
Statement 1 ;
else
statement 2;
end
plot ( input variable, output variable )
function output variable = piecewise ( input variable )

Ejemplo 1

Ahora consideremos un ejemplo

f ( x ) = - 2 for x < 0
2 for x > 0

Para implementar la función anterior en Matlab, primero debemos crear una función con la palabra clave 'piecewise'

> > function fx = piecewise ( x )

En la declaración anterior, 'fx' es el nombre de la variable de salida, 'piecewise' es la palabra clave utilizada para la función anterior y 'x' es la variable de entrada.

Después de declarar la función ahora, necesitamos definir las condiciones de los rangos de la variable de entrada 'x'.

>> If x < = 0
>> fx = -2
>> else
>> fx = 2

En las declaraciones anteriores, la instrucción if-else se usa para definir el rango. Muestra que si el valor de x es menor o igual a '0', entonces out será '- 2' y si el valor de 'x' es mayor que '0', entonces la salida será '2'.

Programa Matlab:

If x < = 0
fx = -2 ;
else
fx = 2 ;
end
plot ( x, f x )
function fx = piecewise ( x )

salida:

Declaración de cambio de caso

El segundo método en bucles es impulsado por sentencias de cambio de caso. En este método representamos diferentes condiciones en diferentes métodos, podemos especificar múltiples casos en un bucle de conmutación.

Ejemplo # 2

Asumamos el ejemplo anterior,

f x = - 2 for x <= 0
2 for x > 0

En este ejemplo, hay dos condiciones en la función fx, una es menor que '0' y la otra es mayor que '0'.

Para implementar el ejemplo anterior usando primero la instrucción switch - case, necesitamos declarar la declaración de función (función por partes).

>> function fx = piecewise (x )

Las declaraciones anteriores muestran que fx es una función por partes con respecto a la variable de entrada 'x', después de declarar la función comenzaremos con la instrucción switch.

>> switch (x)

La declaración anterior es la palabra clave para el caso de cambio para cambiar los valores de la variable 'x'. Ahora dentro del interruptor, habrá diferentes casos, nuestro requisito es solo casos, por lo que escribiremos 2 casos.

Case 1: x < = 0
F x = - 2 ;
Case 2 : x > 0
F x = 2 ;

Las declaraciones anteriores representan rangos de x y los valores de función esperados respectivos.

Programa Matlab

function F x = piecewise (x )
switch ( x )
Case 1 : x < = 0
F x=-2 ;
Case 2 : x > 0
F x = 2 ;
end
Plot ( F x, x )

Salida:

Método Vectorizado

Este método es el segundo enfoque de las funciones por partes sin usar bucles. En este método, la entrada es el vector completo de secuencias (condiciones) y también podemos combinar dos condiciones usando el operador '&'. Este es el método más popular en funciones por partes.

Asumamos el mismo ejemplo;

fx=-2 … x<=0
2 … x > 0

Ahora ilustraremos el ejemplo anterior utilizando el enfoque de vectorización. Primero, debemos declarar la función por partes como en los ejemplos anteriores.

function fx = piecewise (x)

Después de declarar la función por partes definiremos los rangos de la variable de entrada 'x'. En el ejemplo anterior, como sabemos que hay dos condiciones, por lo tanto, necesitamos definir dos rangos.

fx (x<=0)=-2 ;
and
fx (x>0)=2;

Ahora, como se conocen los rangos, debemos declarar el rango total de la variable de entrada 'x'.

x = - 5: 1: 5

esto muestra que x tomará los valores de - 5 a + 5.

Programa Matlab

function fx = piecewise ( x )
fx(x<= 0) = - 2 ;
fx(x>0) = 2 ;
x = - 5 : 1 : 5
fx = piecewise ( x )
plot (fx, x )

Salida:

Conclusión - Función por partes en Matlab

Las funciones por partes se utilizan principalmente para representar funciones que tienen varios rangos de entrada con diferentes condiciones. Como vemos arriba, hay tres enfoques para representar funciones por partes. Pero, el enfoque if-else (bucle) no se utiliza para implementaciones en tiempo real. Y el enfoque vectorizado utilizado en muchas aplicaciones.

Artículos recomendados

Esta es una guía de la función por partes en Matlab. Aquí discutimos los Métodos para usar la función por partes en Matlab con varias declaraciones y ejemplos. También puede consultar el siguiente artículo para obtener más información:

  1. Versión MATLAB
  2. Vectores en Matlab
  3. Matriz en Matlab
  4. ¿Qué es matlab?
  5. Diferentes tipos de bucles con sus ventajas
  6. Compilador Matlab | Aplicaciones del compilador Matlab