jueves, 30 de julio de 2009

Software Libre y Matemática: Escribiendo Matemática

2.1 TeX viene en nuestra ayuda
Al escribir textos de matemática (por ejemplo una tesis, un apunte, un libro o un examen) TeX es un sistema de procesamiento de textos diseñado por Donald Knuth , que Se ha convertido en el standard utilizado por toda la comunidad matemática. En realidad TeX no está limitado a los textos de matemática, y es usado frecuentemente para escribir libros de computación. El proyecto GNU lo emplea como la base de su sistema de documentación TeXinfo. Incluso hay herramientas para escribir música y partidas de ajedrez en TeX.
Una de las ventajas de TeX es su excelente calidad final, que pone al alcance de cualquiera escribir un libro tal y como va a ser enviado a la imprenta, o un artículo tal y como va a aparecer en una revista científica.
TeX se incluye con todas las distribuciones de GNU/Linux más populares, y es por supuesto software libre. De hecho esto último es una de las claves de su éxito. Para usar TeX no hay que pagar ninguna licencia, y además todo el mundo sabe como es el formato de un documento en TeX (no es un formato cerrado como por ejemplo los del Microsoft Word). De hecho como veremos más adelante los documentos en TeX son archivos de texto, que podemos editar con nuestro editor favorito. Además TeX está muy bien documentado.
Al principio TeX puede parecer bastante extraño, y se requiere bastante tiempo para aprender a usarlo. TeX no es un procesador de texto, sino mas bien se parece a un lenguaje de programación. En lugar de ver nuestro documento tal como se verá impreso, debemos crear un archivo con instrucciones sobre como queremos que nuestro documento se vea.
En realidad existen varios dialectos de TeX (o mejor dicho distintos paquetes de macros) tales como plain TeX (TeX sin agregados) , LaTeX (creado por Leslie Lamport), AmsTeX y AmsLaTeX (Americal Mathematical Society), ETeX, etc.En este artículo, a modo de ejemplo, explicaré como se crea un documento en LaTeX (que es el dialecto más usado y en mi opinión el más fácil de usar).
2.2 Utilizando LaTeX
Para que se hagan una idea de como funciona LaTeX veamos paso a paso la creación de un documento sencillo. Para más información, consulten la abundante documentación que viene con el programa.
Para crear un documento de prueba en LaTeX, utilizamos nuestro editor favorito para crear un archivo con extensión .tex (por ejemplo: prueba.tex) que contenga las siguientes instrucciónes
\documentclass {article}
\usepackage [spanish] {babel}
\begin{document}
\title{Un documento de Prueba}
\author{Pablo Luis De N\'apoli}
\maketitle
\section{Introducci\'on}

!`Hola mundo TeX !, para no romper la tradición.
\section{Una fórmula
Y ahora para que vean porque TeX es mejor, una fórmula:
$$ \alpha = \int_0^1 \frac{1}{1+x^2} dx $$
\end{document}
En este ejemplo se ven alguna de las ventajas del LaTeX:
No necesitamos preocuparnos por detalles tales como qué tipo de letra vamos a usar, de qué tamaño, donde se cortan las hojas, etc. LaTeX hará todo eso por nosotros. La orden \documentclass {article}

indica a LaTeX que clase de documento (en este caso un artículo) queremos escribir. LaTeX ajustará las especificaciones de formato en consecuencia.
Los documentos de LaTeX tienen una estructura clara. Por ejemplo la orden \section{ título }

indica el comienzo de una nueva sección. LaTeX se ocupará de elegir el tipo de letra para el titulo , numerar las secciones, etc.
Es muy fácil insertar fórmulas matemáticas tales como: $$ \alpha = \int_0^1 \frac{1}{1+x^2} dx $$

Los signos $$ ... $$ indican a LaTeX que es una fórmula y que queremos que la centre. La orden \alpha , es simplemente la letra griega alfa.\int\^{ }
1_0

producirá una integral con extremos 0 y 1. La orden\frac{1}{1+x^2}

producirá una fracción con numerador 1 y denominador 1+x^{2} .
Este lenguaje les puede parecer un poco críptico al principio, pero cuando uno se acostumbra es muy fácil de usar.
Después de haber creado nuestro documento, debemos compilarlo usando el comandolatex prueba.tex
Esto creará un archivo prueba.dvi (dvi significa device independent, es una representación de nuestro documento independiente del dispositivo en el que va a ser impreso). Para ver nuestro documento terminado, podemos utilizar la orden (bajo X-windows)xdvi prueba.dvi
Si queremos imprimir nuesto documento, lo usual es convertirlo primero en un archivo postscript (formato que entienden las impresoras láser) mediante la ordendvips -o prueba.ps prueba.dvi
Ya tenemos nuestro documento listo para imprimir (con lpr) si nuestra impresora es láser. Si este no fuera el caso, puede que tengamos que convertirlo usando el programa ghostscript (gs).
2.3 Lyx o el camino fácil
Las principales desventajas del (La)TeX es que lleva bastante tiempo aprender a usarlo, y que no vemos como quedará nuestro documento mientras lo estamos escribiendo, por lo que es difícil escribir algo en TeX y corregirlo al mismo tiempo.
Pero hay una solución: LyX . Este maravilloso programa nos permite escribir en LaTeX viendo lo que estamos escribiendo al mismo tiempo. LyX ofrece una interface amigable, similar a la de un procesador de textos convencional mostrándonos las fórmulas matemáticas de manera comprensible.
Con LyX es posible escribir documentos en LaTeX, sin tener que aprender LaTeX. Por supuesto que si sabemos LaTeX podemos hacer muchas más cosas (porque LyX permite insertar comandos en LaTeX en nuestros documentos).
LyX nos permite introducir nuestras fórmulas cómodamente utilizando un editor de ecuaciones, que permite introducir los símbolos matemáticos mediante un menu, aunque también podemos introducirlos mediante su nombre en LaTeX.
Yo lo uso a diario para escribir todo tipo de documentos. (De hecho la versión original de este documento está escrita en LyX.) Es por supuesto software libre (bajo licencia GPL , aunque requiere la librería xforms que no es libre).
2.4 Algunos enlaces
A continuación se incluyen algunos enlaces a páginas sobre TeX, o con otros programas relacionados.
Comprehensive TeX Archive : De todo sobre TeX
TeX Users Group Grupo de usuarios de TeX.
Pagina de la American Mathematical Society sobre TeX .En ella se pueden conseguir AmsTeX y AmsLaTeX.
GNU TeXmacs Un procesador de textos cientificos que utiliza las fuentes de TeX y ofrece una interface amigable. Está basado en TeX y en Emacs. Es una posible alternativa a LyX (ya que permite exportar en TeX).
La pagina personal de Donald E. Knuth , el creador de TeX.
Ktexmaker2 : Un editor especialmente designado para archivos fuente de (La)TeX, para el entorno KDE2 (Licencia: GPL)
Latex2html : Un conversor de LaTeX a html.
gBiB Un editor amigable para bibliografías de BibTeX (que es una herramienta para manejar bibliografías en TeX).

1 comentario:

TE INVITO A QUE REALICES UN COMENTARIO