Se lanzó el sistema para realizar cálculos matemáticos GNU Octave 11.1.0 (primer lanzamiento de la serie 11.x, la rama 11.0 se utilizó para el desarrollo), que proporciona un lenguaje interpretado, en gran parte compatible con Matlab. GNU Octave puede ser utilizado para resolver problemas lineales, ecuaciones no lineales y diferenciales, cálculos con números complejos y matrices, visualización de datos, realización de experimentos matemáticos. El código está escrito en C++ (interfaz en Qt) y se distribuye bajo la licencia GPLv3.
Entre los cambios en la nueva versión:
- Se agregó un nuevo comando al gestor de paquetes pkg para buscar "pkg search foo bar baz". En el comando "pkg install" se implementó la detección automática de si el argumento proporcionado es un archivo local, una URL o el nombre de un paquete. Se incluye la caché local de metadatos de paquetes y la verificación de los paquetes descargados mediante hash SHA256.
- La interfaz para trabajar con archivos (File Browse) se ha dividido en dos pestañas: una para navegar por el contenido del sistema de archivos y otra para ver y gestionar todos los archivos abiertos en el editor.
- En el diálogo de búsqueda de archivos se añadió una lista de búsquedas enviadas anteriormente y se implementó la posibilidad de buscar archivos mediante múltiples máscaras.
- En la interfaz gráfica se han utilizado iconos vectoriales en formato SVG y se proporcionó por defecto la interfaz de línea de comandos de Octave.
- Se han añadido opciones en la configuración para desactivar el salvapantallas y usar, en el diálogo de apertura de archivos, el directorio actual desde el cual se ejecuta el editor.
- La operación de impresión en PDF se ha acelerado en un 25%.
- Se ha mejorado el soporte para el alfa-composisición en sistemas con nuevas versiones de OpenGL durante la visualización.
- Se ha mejorado el soporte para objetos definidos a través de la palabra clave «classdef». Al acceder a los elementos de un objeto mediante el punto (objeto.elemento), ahora primero se verifica la existencia de propiedades con el nombre especificado; si la propiedad no existe, se verifica el nombre de los métodos, lo que corresponde al comportamiento de MatLab.
- Se ha acelerado significativamente (de un 10% hasta 150 veces, dependiendo del tamaño y la forma) la ejecución de operaciones de convolución sobre arrays, donde el número de columnas supera el número de filas (arrays de vectores).
- Se ha añadido la posibilidad de llevar a cabo la transmisión (broadcasting, operaciones sobre matrices de diferentes dimensiones) de tipos especiales de matrices, como matrices dispersas, diagonales y de permutación. Entre otras cosas, se ha implementado el soporte para operaciones mixtas entre matrices dispersas y completas, así como entre matrices diagonales y vectores ordinarios.
- Se han realizado cambios que mejoran la compatibilidad con Matlab. En las funciones cumprod, cumsum, min, max, cummin, cummax, prod, sum, sumsq, bounds, center, meansq, range, statistics y zscore se ha añadido soporte para los parámetros 'all', 'vecdim' y 'nanflag'.
- Se ha incrementado hasta 6 veces el rendimiento de las funciones sum, cumsum y sumsq. La ejecución se ha acelerado hasta 4.5 veces y el consumo de memoria se ha reducido hasta 3.5 veces en la función randi.
- En la función sum se ha implementado un modo de operación con mayor precisión en los cálculos. Se ha mejorado la precisión de los cálculos en las funciones norm y fzero.
- En la función roots y las funciones estadísticas se ha añadido soporte para entradas de tipos double y single.
- Se han añadido nuevas funciones: _Exit, assert_equal, corrcov, dither, funm, mape, rms, rmse, trexc, xline y yline.

Fuente: opennet.ru
