Copyright (c) 2.007 José Angel de Bustos Pérez <jadebustos@augcyl.org>
.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
Tabla de contenidos
El software libre siempre ha estado muy ligado a la universidad y ámbitos académicos. Por este motivo es fácil encontrar mucho software libre dentro del ámbito científico.
Aunque aquí se hará incapie en el software disponible para GNU/Linux muchos de los programas aquí expuestos funcionarán también en otros sistemas operativos.
El proposito de este documento es enseñar las opciones de que disponemos en el mundo del software libre y no su uso. Motivo por el cual en el CD de documentación se incluye la documentación que se utilizó en el curso extraordinario de la Universidad de Salamanca Herramientas en GNU/Linux para estudiantes universitarios que organizaron el Departamento de Informática y Automática de la Universidad de Salamanca, GLiSa y AUGCyL.
La mayoría del software científico que podemos encontrar en GNU/Linux sigue las ideas del mundo UNIX de creaci´n de pequeñas herramientas en línea de comando, muy específicas y potentes. Esto permite la interaccción entre ellas y la posibilidad de creación de interfaces gráficas a gusto de todos.
Tabla de contenidos
Gnuplot es una herramienta en línea de comando que funciona en varios sistemas operativos.
A pesar de su nombre Gnuplot no tiene nada que ver con el proyecto GNU. El nombre se eligió para no tener problemas con otro software de representaciones gráficas llamado newplot.
En la página del proyecto podemos encontrar toda la información necesaria.
Gnuplot permite realizar las siguientes tareas:
Representación gráfica de funciones y datos.
Representaciones en 2D y 3D.
Representaciones en coordenadas cartesianas, paramétricas, esféricas y polares.
Exportación de los gráficos a los formatos más populares como png , jpg, svg, ...
Creación de scripts.
Creación de animaciones.
Inclusión de multiples gráficas en un sólo gráfico.
Inclusión de multiples gráficas en una pantalla.
[jadebustos@dedalo ~]$
gnuplot
G N U P L O T Version 4.0 patchlevel 0 last modified Thu Apr 15 14:44:22 CEST 2004 System: Linux 2.6.17.8 Copyright (C) 1986 - 1993, 1998, 2004 Thomas Williams, Colin Kelley and many others This is gnuplot version 4.0. Please refer to the documentation for command syntax changes. The old syntax will be accepted throughout the 4.0 series, but all save files use the new syntax. Type `help` to access the on-line reference manual. The gnuplot FAQ is available from http://www.gnuplot.info/faq/ Send comments and requests for help to <gnuplot-info@lists.sourceforge.net> Send bugs, suggestions and mods to <gnuplot-bugs@lists.sourceforge.net> Terminal type set to 'x11' gnuplot> set dummy u,v gnuplot> set angles degrees gnuplot> set parametric dummy variable is t for curves, u/v for surfaces gnuplot> set view 70, 40, 0.8, 1.2 gnuplot> set samples 32, 32 gnuplot> set isosamples 9, 9 gnuplot> set mapping spherical gnuplot> set yzeroaxis linetype 0 linewidth 1.000 gnuplot> set ticslevel 0 gnuplot> set title "3D version using spherical coordinate system" gnuplot> set urange [ -90.0000 : 90.0000 ] noreverse nowriteback gnuplot> set vrange [ 0.00000 : 360.000 ] noreverse nowriteback gnuplot> splot cos(u)*cos(v),cos(u)*sin(v),sin(u) with lines lt 5 ,'world.dat' with lines lt 3 gnuplot>
Xgfe es un interface gráfico para Gnuplot.
Su desarrollo está parado y en la página del proyecto podemos encontrar todo lo necesario sobre este programa.
Superficie es un programa para visualizar superficies en tres dimensiones.
Xfig es un programa para la creación de gráficos técnicos como diagramas. Una de sus características más importantes es que permite meter texto en comandos LaTeX lo cual permite una perfecta integración con documentos creados con dicha herramienta.
Xfig.
Tabla de contenidos
Axiom es un sistema de algebra computacional que se distribuye bajo una licencia tipo BSD. Se lleva desarrollando desde principios de los setenta y antes de liberarse como software libre fue un software comercial.
Sistema de algebra computacional compatible con MAPLE, mupad y TI89.
Se puede ejecutar en modo texto con giac o con interface gráfica xcas.
Macaulay2 es un sistema de algebra computacional orientado a la Geometría Algebraica y al Algrebra Commutativa.
Maxima es un sistema de algebra computacional con aplicaciones al cálculo numérico y análisis.
Maxima puede ejecutarse en:
Entorno gráfico.
Dentro de Emacs.
En línea de comando.
En TeXmacs.
Pari-GP es un sistema de algebra computacional orientado a teoría de números, aunque tambié puede trabajar con matrices, polinomios, series de potencias, ...
Pari-GP consta de una shell en línea de comando y una librería en C que se puede enlazar en nuestros programas.
Yacas es un acrónimo para Yet Another Computer Algebra System.
Podemos usar Yacas de tres formas:
Con interface gráfico.
En consola.
Se puede ejecutar dentro de TeXmacs.
Yacas posee un mecanismo de plugins que permite la carga dinámica de librerias externas a Yacas. Mediante este mecanismo podemos ampliar las funcionalidades de Yacas.
Podemos utilizarlo en una arquitectura de cliente/servidor y utilizar un ordenador más potente para realizar los cálculos viendolos en el nuestro.
Cadabra es un sistema de algebra computacional orientado a la resolución de probleas de física teórica.
Tabla de contenidos
Existe multitud de software de cáculo.
Octave es un programa orientado al análisis numérico.
Octave se puede entender como una implementación libre de Mathlab, por describirlo de una forma sencilla.
Octave se puede ejecutar:
En línea de comando.
[jadebustos@dedalo ~]$
octave
GNU Octave, version 2.1.73 (i486-pc-linux-gnu). Copyright (C) 2006 John W. Eaton. This is free software; see the source code for copying conditions. There is ABSOLUTELY NO WARRANTY; not even for MERCHANTIBILITY or FITNESS FOR A PARTICULAR PURPOSE. For details, type `warranty'. Additional information about Octave is available at http://www.octave.org. Please contribute if you find this software useful. For more information, visit http://www.octave.org/help-wanted.html Report bugs to <bug@octave.org> (but first, please read http://www.octave.org/bugs.html to learn how to write a helpful report). octave:1>
[jadebustos@dedalo ~]$
Ejecución en modo batch.
Octave no realiza representaciones gráficas. Para ello utiliza programas externos.
Normalmente se utiliza Gnuplot pero se puede configurar el programa a utilizar mediante la variable gnuplot_binary.
Otra versión libre de Mathlab, que además tiene como objetivo extender las características de este.
Tabla de contenidos
PSPP trata de dar una solución basada en software libre del programa comercial SPSS. Es un proyecto al que todavía le queda mucho camino por andar.
PSPP.
Macanova es un software estadístico más completo que PSPP pero cuya interface de usuario dista de ser amigable.
Tabla de contenidos
Las mejores y más potentes herramientas para la edición de texto científico son:
LaTeX.
Docbook, que no ofrece la calidad de LaTex para el texto científico pero que se está imponiendo en publicaciones web debido a su potencia y versatilidad.
Las herramientas que vamos a ver giran en torno a LaTeX.
TeXmacs es un editor WYSIWYW (What You See Is What You What).
TeXmacs pretende ser una herramienta que combine la eficiencia de emacs y la potencia de LaTeX. Utiliza las fuentes de LaTeX pero no genera, directamente, código LaTeX. Aunque es posible exportarlo.
TeXmacs se integra con las siguientes herramientas:
Gnuplot.
Octave.
Yacas.
Xfig.
R.
Maxima.
Pari.
Dr. Geo.
Cadabra.
Qcl es un lenguaje de programación para ordenadores cuánticos.
Macaulay2.
GTybalt.
Giac.
Axiom.
Kile es un entorno de desarrolo en LaTeX para KDE
Algunas características de Kile:
Podemos compilar el documento desde Kile.
Autocompletación de los comandos LaTeX.
Templates y patrones que hacen más fácil el empezar nuevos documentos.
Busqueda integrada entre el editor y el visor DVI.
Previews del documento.
Kile.
Emacs es el entorno de desarrollo por excelencia en el mundo del software libre.
Tabla de contenidos
PythonCAD es un programa de CAD desarrollado en Python que utiliza XML para guardar sus datos.
FreeCAD es un programa de CAD de proposito general.
Tabla de contenidos
Kicad es un programa creado para diseño de circuitos impresos.
Logisim es una herramienta de diseño y simulación de circuitos lógicos digitales. Puede ser utilizado para el diseño de CPUs con propósitos educativos.
Para utilizarlo unicamente hay que descargarse el fichero .jar
y ejecutar:
[jadebustos@dedalo]$
java -jar logisim-2.1.5.jar
Requiere tener instalada una máquina virtual Java.
Tabla de contenidos
Gperiodic nos permite consultar la tabla periódica de los elementos.
Raster3d son un conjunto de herramientas que nos permiten la creación de imágenes de molélas y proteínas.
Tabla de contenidos
Xaos es una potente herramienta para visualizar y experimentar con varios fractales. Permite grabar las imágenes generadas.
Xaos.