Veremos cómo implementar esta función para encontrar las diferencias entre elementos vectoriales, filas y columnas de una matriz. En este artículo, también aprenderá cómo obtener derivados aproximados de una función matemática.
Esto se mostrará a través de ejemplos prácticos con fragmentos e imágenes de código que ilustran las diferentes formas de usar esta función en múltiples dimensiones y con diferentes tipos de vectores y matrices.
Sintaxis de función de diff matlab
d = diff (x)Descripción de la función MATLAB DIFF
La función diff () devuelve en "D" la diferencia entre un elemento y el texto del vector de entrada o matriz "x". Operamos a lo largo de una dimensión cuando llamamos a Diff con una matriz como entrada. Entonces, el resultado en "D" será una matriz de tamaño N en la dimensión de los elementos N-1 sobre la dimensión en la que operamos. La dimensión en la que queremos operar se selecciona utilizando la entrada "Dim". La entrada "n" es un escalar entero que establece el orden de las derivadas. Esta función acepta matrices vectoriales, 2D y multidimensionales en "x", mientras que las entradas "n" y "dim" son de tipo escalar entero positivo. Veremos algunos ejemplos prácticos de esta función con vectores y diferentes tipos de matriz a continuación.
Ejemplo 1: Cómo obtener las diferencias entre los elementos adyacentes de un vector con la función MATLAB Diff ()
Ahora, veamos cómo usar la función MATLAB, Diff, para encontrar las diferencias entre los elementos adyacentes del vector "V". Para hacer esto, crearemos un script y escribiremos el siguiente código:
V = [1, 2, 4, 7, 11, 7, 4, 2, 1];En la primera línea del script, creamos el vector de 9 elementos "V". Luego, en la segunda línea de código, llamamos a la función diff (), pasando "V" como argumento de entrada. Dado que estamos enviando un vector en este caso, la entrada "dim" no se usa.
Como puede ver en la siguiente figura, la consola de comando del entorno MATLAB muestra que la salida en "D" es un vector de las diferencias entre los elementos conectados de "V". Puede ver que el vector de salida contiene un elemento menos que el vector de entrada.
Ejemplo 2: Cómo usar la entrada "Dim" para operar a lo largo de diferentes dimensiones con la función Diff () de Matlab
En los casos en que trabajamos con esta función utilizando la entrada "Dim" con diferentes dimensiones, la entrada "n" no debe enviarse vacía ya que diff () toma "n" en su segundo argumento de entrada. Si no se usa esta entrada, se debe enviar un 1, que es el valor predeterminado.
Ejemplo 3: Cómo usar la entrada "Dim" para funcionar a lo largo de la primera dimensión con la función MATLAB DIFF
Ahora, veamos cómo usar la función MATLAB, Diff, para encontrar las diferencias entre los elementos adyacentes de la matriz "M" a lo largo de sus columnas o Dimensión 1. Para este propósito, crearemos un script y escribiremos el siguiente código:
M = Magia (5)En la primera línea del guión, usamos la función mágica () para crear un cuadrado mágico que consiste en una matriz de 5 por 5 elementos. En la segunda línea de código, llamamos a la función diff (), enviando "M" como argumento de entrada y especificando en la entrada "Dim" que opera a lo largo de la dimensión 1.
La siguiente imagen muestra la consola de comando con el resultado en "D". En este caso, es una matriz de cinco columnas de cuatro filas con las diferencias entre los elementos contiguos a lo largo de la dimensión 1 de "M".
Ejemplo 4: Cómo usar la entrada "Dim" para funcionar a lo largo de la segunda dimensión con la función MATLAB DIFF
En este ejemplo, veremos cómo operar en la dimensión 2 de la matriz, es decir, a lo largo de sus filas. Para hacer esto, usamos el mismo fragmento de código que en el ejemplo anterior, pero esta vez, indicamos escribiendo "dim" para que funcione a lo largo de la dimensión 2 o las filas del cuadrado mágico.
M = Magia (5)La siguiente imagen muestra la consola de comando con el resultado en "D". En este caso, es una matriz de cuatro filas por cinco columnas con las diferencias entre los elementos contiguos a lo largo de la dimensión 2 de "M".
Ejemplo 5: Cómo obtener las derivadas aproximadas en una función con MATLAB Diff ()
En este ejemplo, veremos cómo obtener la derivada aproximada de una onda sinusoidal usando la función Diff (), que usaremos para obtener la diferencia de y en el intervalo x, x+h, y luego dividirla por el intervalo H. A continuación, veremos el código y el script para este ejemplo.
x = 0: 0.01: 2*pi; % h o delta x = 0.01En el fragmento de código anterior, primero creamos el vector de tiempo "x" de 0 a 2*pi con intervalos de 0.01 en "H". Luego, creamos el vector "y" con el seno de "x" para que tengan el mismo tamaño. Una vez que se haya creado la onda, con la función diff (), obtendremos las diferencias entre los elementos del vector "y" en la salida "d". A continuación, dividimos las diferencias en "D" por "H", y obtendremos un vector con la derivada de "Y". Como dijimos en la descripción, el tamaño del vector de salida diff () es elementos N-1 mayores que el vector de entrada, y esto ocurre cada vez que esta función se aplica recursivamente a través de la entrada "n" so "x" y "" D "ya no tendrá tamaños compatibles. Si queremos representar la onda y su derivado, el tamaño de "D" es incompatible con el de "X". Entonces, tenemos que definirlo por el tamaño de "D", como se muestra en la última línea del código. A continuación, puede ver el sinusoidal "Y" y su derivado aproximado "D".
Conclusión
Este artículo de Matlab explicó cómo usar la función de diff Matlab para encontrar la diferencia entre los elementos adyacentes de una matriz o vector. Para ayudarlo a comprender cómo usar este recurso, hemos creado un ejemplo práctico con fragmentos e imágenes de código para cada modo y diferentes dimensiones en las que funciona esta función. También hemos visto una descripción de la estructura de la función, los argumentos de entrada y salida, y el tipo de datos que difiere () acepta. Esperamos que haya encontrado útil este artículo de Matlab. Consulte otros artículos de Sugerencia de Linux para obtener más consejos e información.