Diferencia entre revisiones de «Biblioteca de funciones de Octave UPM»
(→Álgebra lineal) |
(→Álgebra lineal) |
||
| Línea 123: | Línea 123: | ||
{| class="wikitable" | {| class="wikitable" | ||
| − | ! style="background-color: #EFF5FB;" colspan="2" | | + | ! style="background-color: #EFF5FB;" colspan="2" | Matrices y sistemas lineales |
|- | |- | ||
! Función | ! Función | ||
Revisión del 17:05 6 sep 2013
| |
Octave UPM tiene una extensa biblioteca de funciones para realizar procedimientos matemáticos complejos y otras tareas, de modo sencillo, sin necesidad de tener que implementarlos por nosotros mismos. Esta biblioteca de funciones es altamente compatible con MATLAB, aunque algunas funciones de Octave UPM no están presentes en MATLAB, y viceversa.
En ocasiones, en español se usa también el término librería de funciones. En inglés, la denominación es functions library; el término library se traduce al español como biblioteca, aunque es habitual verlo traducido como librería en libros y documentación sobre Informática.
Contenido
1 Cómo usar una función
Las funciones son una herramienta que ayudan a diseñar mejor los programas, y a hacerlos más estructurados. Una función realiza una tarea concreta con unas entradas (conocidas como argumentos de entrada), y produce unos argumentos de salida. Para reutilizar un trozo de código, la mejor manera es implementarlo en forma de función, ya que de este modo será sencillo compartirlo con otras personas.
Además, para usar una función solo es necesario conocer su interfaz, es decir, cuáles son los argumentos de entrada que necesita, y qué argumentos de salida devuelve. No hay que conocer los detalles acerca de cómo está implementado el algoritmo dentro de la función. Por este motivo se dice que las funciones son cajas negras (vemos las entradas y salidas, pero no lo que hay dentro). Aunque su gran ventaja es precisamente no tener que preocuparnos por los detalles de implementación, muchas de las funciones de la biblioteca de Octave UPM están escritas en lenguaje M, y puede consultarse cómo están hechas usando el comando edit.
La interfaz de una función tiene la siguiente forma:
[s1, s2, ...] = nombre_funcion(e1, e2, ...)Los argumentos de salida son s1, s2, etc., y los argumentos de entrada e1, e2, etc.
Una función puede tener cualquier número de argumentos de entrada y de salida (incluido también ningún argumento de entrada o salida).
Además, algunos argumentos de entrada pueden ser opcionales. Los argumentos de salida son siempre opcionales. Podemos pedir un argumento de salida, dos, o los que queramos. Si no indicamos nada de manera explícita, las funciones devuelven normalmente un único valor de salida. Si indicamos más de un argumento de salida, es necesario incluirlos entre corchetes, como se muestra en el código anterior.
Para averiguar qué hace la función, cómo hay que llamarla y si tiene argumentos opcionales, podemos usar el comando help, seguido del nombre de la función. Por ejemplo, para consultar la ayuda de la función mostrada anteriormente, escribiríamos en la línea de comandos
help nombre_funcion2 Clasificación de la biblioteca de funciones
La biblioteca de funciones de Octave UPM es muy extensa. En este artículo incluimos solo las funciones más habituales. El Manual de Octave[1] y el Documentation Center de MATLAB[2] incluyen los detalles completos acerca de todas las funciones disponibles en la biblioteca.
En las tablas siguientes, los enlaces apuntan al MATLAB Documentation Center.
2.1 Funciones matemáticas
| Funciones básicas | |
|---|---|
| Función | Descripción |
| abs | Valor absoluto |
| rem | Resto de la división entera |
| sqrt | Raíz cuadrada |
| log | Logaritmo en base e |
| log2 | Logaritmo en base 2 |
| log10 | Logaritmo en base 10 |
| exp | Función [math]e^x[/math] |
| sign | Signo (+1, 0, -1) de un número |
| Funciones estadísticas | |
|---|---|
| Función | Descripción |
| mean | Media de una muestra |
| sd | Cuasi-desviación típica de una muestra |
| var | Cuasi-varianza de una muestra |
| Funciones trigonométricas | |
|---|---|
| Función | Descripción |
| sin, sinh | Seno, seno hiperbólico |
| cos, cosh | Coseno, coseno hiperbólico |
| tan, tanh | Tangente, tangente hiperbólica |
| cot, coth | Co-tangente, co-tangente hiperbólica |
| csc, csch | Co-secante, co-secante hiperbólica |
| sec, sech | Secante, secante hiperbólica |
| Funciones de redondeo | |
|---|---|
| Función | Descripción |
| fix | Elimina la parte decimal |
| floor | Redondea hacia abajo |
| ceil | Redondea hacia arriba |
| round | Redondea al entero más cercano |
2.2 Álgebra lineal
| Matrices y sistemas lineales | |
|---|---|
| Función | Descripción |
| lu | Descomposición LU |
| chol | Descomposición de Cholesky |
| qr | Descomposición QR |
| eig | Autovalores y autovectores de una matriz |
2.3 Ecuaciones y polinomios
| Funciones básicas | |
|---|---|
| Función | Descripción |
2.4 Tipos de datos
| Funciones básicas | |
|---|---|
| Función | Descripción |
2.5 Funciones lógicas
| Funciones básicas | |
|---|---|
| Función | Descripción |
2.6 Cadenas de texto
| Funciones básicas | |
|---|---|
| Función | Descripción |