Octave es un lenguaje de programación específicamente diseñado para cálculo numérico con vectores y matrices. Constituye una inferfaz de alto nivel para un buen número de librerías estándar de cálculo numérico como LAPACK o BLAS.
La sintaxis de Octave es similar a la de MatLab. En la gran mayoría de los casos (y probablemente en todas las prácticas de cálculo numérico que realizaréis durante el Grado), los programas escritos en Octave pueden ejecutarse sin ninguna modificación en MatLab. Dado que MatLab es un software comercial, éste posee un mayor número de funciones que Octave, así como paquetes especializados (tool-boxes) no disponibles en Octave, y en algunas ocasiones de indiscutible potencia.
No obstante, la funcionalidad requerida para la mayoría de las prácticas del grado está disponible igualmente en Octave. Como contrapartida, Octave es software libre, lo que quiere decir no sólo que es gratuíto, sino que, a diferencia de MatLab, otorga al usuario las llamadas 4 libertades sobre el programa que utiliza:
- Libertad de usar el programa, con cualquier propósito.
- Libertad de acceso al código fuente del programa.
- Libertad de copiado y distribución.
- Libertad de modificar y mejorar el programa.
Existen gran cantidad de manuales de ayuda que permitirán al alumno progresar tanto como desee en sus habilidades como programador en Octave/MatLab. Como primera aproximación, se sugiere el manual introductorio de Hubert Selhofer et al.. Además, los alumnos cuentan con un manual de Octave/Matlab adaptado a los requerimientos iniciales para esta asignatura.