Edición de textos científicos con software libre Daniel López Avellaneda
(matematicasies.com matematicasies.com))
Introducción a
Manual para el curso online organizado por: CEP Indalo http://www.cepindalo.es
Marzo 2012 - Mayo 2012
ÍNDICE
#1
Índice 1. ¿Qué es LATEX?
2
2. Usando LATEX sin instalar nada.
6
3. Fórmulas matemáticas en LATEX
8
1.1. ¿Cómo obtener LATEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2. ¿Cómo funciona LATEX? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1. Tecleando fórmulas en los foros . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.1. Moodle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1. Maneras básicas de incluir fórmulas . . . . . . 3.2. Fórmulas frecuentes . . . . . . . . . . . . . . 3.2.1. Exponentes, subíndices, .. . . . . . . . 3.2.2. Fracciones, radicales, .. . . . . . . . . 3.2.3. Letras griegas y símbolos matemáticos 3.2.4. Flechas, puntos y espacios . . . . . . . 3.3. Delimitadores . . . . . . . . . . . . . . . . . . 3.4. Matrices. Entorno array . . . . . . . . . . . . 3.5. Funciones a trozos . . . . . . . . . . . . . . . 3.6. Sistemas de ecuaciones . . . . . . . . . . . . 3.7. Integrales, límites y sumatorios . . . . . . . . 3.8. Unos encima de otros . . . . . . . . . . . . . 3.9. Algunos detalles más . . . . . . . . . . . . . . 3.9.1. Texto en modo matemáticas . . . . . . 3.9.2. Más símbolos . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
3 3 6 6 8 9 9 9 10 10 11 12 13 14 15 16 17 17 17
Introducción a LaTeX
1 ¿QUÉ ES LATEX?
#2
Introducción a LATEX 1
¿Qué es LATEX?
LATEX es un sistema de composición de textos, orientado especialmente a la creación de libros, documentos científicos y técnicos que contengan fórmulas matemáticas. LATEX está formado por un gran conjunto de macros de TEX. Es muy utilizado para la composición de artículos académicos, tesis y libros técnicos, dado que la calidad tipográfica de los documentos realizados con LATEX es comparable a la de una editorial científica de primera línea. LATEX, como no podría ser de otra forma, es software libre. Particularmente, como profesor de Matemáticas, uso LATEX prácticamente a diario, para confeccionar apuntes, relaciones de problemas o cualquier documento que tenga que imprimir o tenga que portar (en PDF) para que los destinatarios (normalmente alumnos/as y compañeros/as) puedan leerlo y/o imprimirlo. LATEX me es imprescindible para expresar fórmulas matemáticas en la web (foros, blogs o webs que lo admitan). Características como la capacidad de crear nuestros propios macros (comandos o procedimientos), como si de un lenguaje de programación se tratase, hicieron que LATEX se extendiera rápidamente entre la comunidad científica hasta convertirse en obligatorio en importantes reuniones y congresos, e incluso sea un formato obligatorio a la hora de enviar artículos a revistas científicas (Nature, Science, Elsevier, ..). Al ser software libre, su código abierto ayudó a que muchas personas colaboraran creando nuevas funcionalidades. Eso dio lugar a una reestandarización completa de LATEX, mediante la versión LATEX 2€ (versión 2 y algo más ..) que incluye algunas de las extensiones aportadas por los usuarios y algunos estándares como la simbología de la AMS (American Mathematical Society). Ello fue el origen de su actual arquitectura modular: un núcleo central (el compilador), que mantiene las funcionalidades de versiones anteriores, acompañado de una serie de paquetes que aportan funcionalidades específicas. Los paquetes más importantes y usados vienen con la distribución oficial, mientras que el resto debemos descargarlos e instalarlos sólo si los vamos a usar. Por ejemplo, si vamos a necesitar escribir símbolos especiales de Química, podríamos descargar e instalar algún paquete como "mhchem" que nos ayudará con esas fórmulas químicas . La filosofía de LATEX es distinta a los procesadores de textos WYSIWYG : What You See Is What You Get (lo que ves es lo que obtienes). LATEX se basa en comandos, del tipo \sqrt[3]{x^42x}, y esa desventaja, quizás la única, es el precio que hay que pagar para conseguir sus capacidades gráficas para representar ecuaciones, fórmulas complicadas, notación científica e incluso musical, estructurar fácilmente el documento (con capítulos, secciones, notas, bibliografía, índices analíticos, etc.), lo cual brinda comodidad y lo hace útil para artículos académicos y libros técnicos.
Introducción a LaTeX
1 ¿QUÉ ES LATEX?
1.1
#3
¿Cómo obtener LATEX
La manera de obtener LATEX es mediante alguna de las diferentes distribuciones que existen. Las más importantes son:
TEXLive: Es la distribución que se usa en sistemas UniX/LiNuX. También tiene versiones para otros Sistemas Operativos.
MaCTEX: Distribución usada en sistemas Mac. Básicamente es la TEXLive con instalador nativo para Mac.
proTEXt: Nueva distribución de TEX para Windows basada en la clásica MiKTEX Cualquiera de las distribuciones anteriores se puede descargar de Internet. Sin embargo es aconsejable algún software específico (como LYX que veremos en el siguiente tema) que te instalan automáticamente todos los paquetes LATEX necesarios.
1.2
¿Cómo funciona LATEX?
La creación de un documento requiere normalmente de dos etapas: 1. en la primera hay que crear mediante cualquier editor de texto plano (o mediante programas como LYX) un fichero fuente. 2. La segunda consiste en procesar el fichero fuente; el procesador de textos interpreta las órdenes escritas en él y compila el documento, dejándolo preparado para que pueda ser enviado a la salida correspondiente, ya sea la pantalla, la impresora, un fichero PDF, etc. Por tanto, cuando descargamos e instalamos LATEX en nuestro ordenador, tenemos sólo el compilador y un montón de macros. Para crear un documento necesitaremos un programa externo: al menos un editor de texto plano, como gEdit que usamos en LiNuX, NotePad o Bloc de Notas de Windows, etc. (no debemos confundir editor de texto con procesador de textos). Afortunadamente existen algunos programas que nos ayudarán en la ardua labor de editar texto plano. LYX es uno de los más importantes, y será el que usemos durante el curso.
Introducción a LaTeX
1 ¿QUÉ ES LATEX?
#4
La imagen anterior resume los pasos en la creación de un documento: 1. En la izquierda de la imagen anterior tenemos el fichero fuente (prueba.tex) que podemos crear con cualquier editor de textos, preferiblemente un editor especializado en LATEX, o al menos un editor que resalte el código en colores. El archivo se guarda con la extensión
.tex 2. El segundo paso es compilar el fichero fuente. Se hace pulsando un simple botón (con editores como LYX). La compilación de prueba.tex genera el fichero prueba.pdf que vemos en la parte derecha. Es importante observar que el fichero fuente, en nuestro caso: prueba.tex tan sólo ocupa 0,3 kb. El pequeño tamaño de los ficheros fuente de LATEX hace que sea fácil y rápido trasportar, enviar por Internet, etc. Cuando usemos un editor como LYX (que veremos en el siguiente tema) no necesitaremos teclear esos comandos que vemos en el fichero fuente. En la siguiente imagen vemos cómo se haría con LYX
Introducción a LaTeX
1 ¿QUÉ ES LATEX?
#5
Después de pulsar un botón para complilarlo, obtendríamos el siguiente fichero pdf
Introducción a LaTeX
2 USANDO LATEX SIN INSTALAR NADA.
#6
Usando LATEX sin instalar nada.
2
El objetivo principal del curso es la creación de textos científicos y para ello usaremos el programa LYX (lo instalaremos en el siguiente tema del curso). Sin embargo, tenemos la posibilidad de usar LATEX sin instalar nada en nuestro PC. Podemos usar LATEX en muchos de los foros de Internet, por ejemplo en los foros de la plataforma Moodle (la que usamos en estos cursos de CEP Indalo). El uso de LATEX en los foros de muchas comunidades virtuales no es para crear documentos científicos, sino para incluir expresiones matemáticas (raíces, fracciones, matrices, ..) que no se pueden introducir mediante texto normal. Actualmente en Andalucía hay cada vez más centros que imparten Bachillerato nocturno en la modalidad semipresencial. Los alumnos vienen a clase una o dos veces por semana y el resto se hace a través de una plataforma Moodle. Tenemos que resolverle dudas mediante los foros y cualquier explicación (de Matemáticas, Física, Química, etc.) que incluya expresiones matemáticas, es más eficaz si manejamos LATEX, que si tan sólo contamos con el recurso de texto.
2.1
Tecleando fórmulas en los foros
Para poder escribir fórmulas matemáticas en Internet necesitamos conocer dos aspectos fundamentales: 1. Conocer el código LATEX necesario para cada fórmula. En el siguiente apartado encontrará un resumen de las más frecuentes. 2. Conocer los delimitadores de fórmula que usa esa determinada web. Necesitaremos decirle al programa que gestiona la web que estamos escribiendo una fórmula (normalmente se hace poniendo un símbolo o etiqueta al principio y al final de la fórmula). 2.1.1
Moodle
Las webs gestionadas por el CMS Moodle (como esta plataforma que gestiona los cursos del CEP) usan un filtro TEX que nos permite incluir expresiones matemáticas. No tiene toda la calidad que proporciona LATEX, pero cumple perfectamente el propósito. ¿Qué delimitadores de LATEX usa Moodle? Un doble signo de dolar ($$) al principio y final de cada fórmula: $$ fórmula $$
En la siguiente imagen vemos cómo se teclea
Introducción a LaTeX
2 USANDO LATEX SIN INSTALAR NADA.
#7
y aquí el resultado que produce:
Introducción a LaTeX
3 FÓRMULAS MATEMÁTICAS EN LATEX
#8
Fórmulas matemáticas en LATEX
3 3.1
Maneras básicas de incluir fórmulas
Básicamente hay dos formas de escribir fórmulas matemáticas: insertarlas entre el texto: $mi_formulilla$ destacarlas en un párrafo aparte: $$mi_gran_formulilla$$ Veamos un ejemplo: La ecuación $x^3-x=0$ es equivalente a esta otra $x \cdot (x^2-1)=0$ , que debería saber resolver sin necesidad de aplicar la archiconocida fórmula: $$x = \frac{-b \pm \sqrt{b^2-4ac}}{2a}$$ Por lo tanto ya debe conocer que $\pm 1$ son soluciones de la misma. Pero .. ¿tiene más soluciones?
Nos dará como resultado: La ecuación x3 x = 0 es equivalente a esta otra x (x2 1) = 0 , que debería saber resolver sin necesidad de aplicar la archiconocida fórmula:
−
·
−
√ − b ± b − 4ac x = 2
2a
Por lo tanto ya debe conocer que ¿tiene más soluciones?
±1 son soluciones de la misma. Pero ..
Debe observar que las fórmulas insertadas en el texto se encierran entre signos dólar: $fórmula$, y las que queremos separar entre parejas de signos dólar: $$ fórmula$$. La primera opción es similar a usar: \begin{math} fórmula \end{math}
La segunda opción es similar a usar: \begin{displaymath} fórmula \end{displaymath}
Sin embargo, con los signos $ tenemos que teclear menos.
Introducción a LaTeX
3 FÓRMULAS MATEMÁTICAS EN LATEX
3.2
Fórmulas frecuentes
3.2.1
Exponentes, subíndices, ..
x^5
x5
2^{2x+3}
3.2.2
22x+3
a312 x^{x^{2}}
a_{12}^{3}
#9
2
xx
Fracciones, radicales, ..
\frac{2x}{3}
2x 3 \frac{x^2+5x-6}{x-1}
x2 + 5x 6 x 1
−
−
\frac{5}{3\sqrt{5}}
5 √ 3 5 \sqrt[5]{\frac{2x}{3x-1}}
5
2x 3x 1
−
\sqrt[5]{\frac{2x}{3x-1}}
5
2x 3x 1
−
\sqrt[5]{\frac{2x}{3x-1}}
5
2x 3x 1
−
Introducción a LaTeX
3 FÓRMULAS MATEMÁTICAS EN LATEX
3.2.3
Letras griegas y símbolos matemáticos
Algunos ejemplos: Código Resultado \alfa α \beta β \gamma γ \delta δ \epsilon \pi π \sigma σ \omega ω \theta θ \lambda λ \mu µ \rho ρ \Sigma Σ \Pi Π \Omega Ω
3.2.4
#10
Código
Resultado
\exists \infty \forall \emptyset \pm \cup \cap \leq \geq \neq \in \notin \subset \div \leqslant \bigcap \bigcup
∃ ∞ ∀ ∅ ± ∪ ∩ ≤ ≥ = ∈ ∈/ ⊂ ÷
Flechas, puntos y espacios Código
Resultado
\rightarrov \leftarrov \Rightarrov
→ ← ⇒ ⇐ =⇒ ⇐= −→ ←− ↔ ⇔ ⇐⇒ ←→
\Leftarrov \Longrightarrov \Longleftarrov \longrightarrov \longleftarrov \leftrightarrov \Leftrightarrov \Longleftrightarrov \longleftrightarrov
Código
Resultado
\cdot \cdots \ldots
· ···
\vdots
\ddots
Espacios
... .. . ...
a \: b a \enspace b a \quad b a \qquad b a \hspace{2cm} b a\!b
ab a b a b a b a
b ab
Introducción a LaTeX
3 FÓRMULAS MATEMÁTICAS EN LATEX
3.3
#11
Delimitadores
Llamamos delimitadores a caracteres del tipo: ( ) [ ]
| | { }
Para introducirlos en nuestros documentos podemos hacerlo mediante el teclado en unos casos:
| |
( ) [ ]
o mediante comandos LATEX en otros: LATEX
Resultado
LATEX
Resultado
\{ \| \langle
{
\} \| \rangle
}
Los delimitadores van por parejas (delimitan el principio y el final de la expresión). Cuando sólo queramos usar uno de ellos podemos poner el otro en modo invisible: \left. o bien \right. (la clave es el punto final). Los delimitadores se adaptan al tamaño de la expresión que contienen, aunque a veces nos puede interesar especificar un tamaño específico. Para ello usaremos los comandos: \bigX \BigX \biggX \BiggX donde X es el delimitador. Ejemplos: LATEX
Resultado
\big(x+3 \big)
\Big(x+3 \Big)
LATEX
x + 3
\bigg(x+3 \bigg)
x + 3
\Bigg(x+3 \Bigg)
Resultado
x + 3
x + 3
Introducción a LaTeX
3 FÓRMULAS MATEMÁTICAS EN LATEX
3.4
#12
Matrices. Entorno array
Anteriormente vimos el entorno \tabular para crear tablas. El entorno \array es más apropiado para ordenar datos en filas y columnas cuando no nos interesen los bordes. Si a una agrupación de datos en filas y columnas le ponemos unos delimitadores de paréntesis (o barras verticales), tendremos una matriz (o un determinante). Podemos usar el entorno array de forma muy simple: \begin{array} elementos ordenados en filas y columnas \end{array}
Usaremos “&” para pasar a la siguiente columna y “ \\” para pasar a la siguiente fila. Un ejemplo: \begin{array} 1 & 2 & 3 \\ 4 & 5 & 6 \\ 7 & 8 & 9 \end{array}
Con ello tendremos los datos ordenados en filas y columnas: 1 2 3 4 5 6 7 8 9
Si usamos delimitadores podemos obtener una matriz Un ejemplo: \left( \begin{array} 1 & 2 & 3 \\ 4 & 5 & 6 \\ 7 & 8 & 9 \end{array} \right)
Con ambos delimitadores
\left( \begin{array}{lcr} 123 & 2 & 3 \\ 4 & 550 & 6 \\ 7 & 8 & 99999 \end{array} \right)
En el entorno array también podemos alinear las columnas a la izquierda ( l), centro (c) o derecha (r) 123 2 3 4 550 6 7 8 99999
\left( y \right)
tendremos nuestra matriz: 1 2 3 4 5 6 7 8 9
Introducción a LaTeX
3 FÓRMULAS MATEMÁTICAS EN LATEX
#13
Funciones a trozos
3.5
Mediante delimitadores y ayudándonos del entorno array, podemos definir una función a trozos: f(x)= \left\{ \begin{array}{lcc} 5 & si & x \leq 2 \\ \\ x^2-6x+10 & si & 2 < x < 5 \\ \\ 4x-15 & si & x \geq 5 \end{array} \right.
El resultado será:
f (x) =
≤2
5
si
x2
si 2 < x < 5
− 6x + 10 4x − 15
si
x
x
≥5
Observe que : Hemos usado un delimitador invisible en la derecha: \right. Hemos dejado una línea en blanco entre cada trozo de la función para que esté mas clara (usando dos veces el código de siguiente línea: \\) Hemos usado {lcc} para alinear las columnas
Introducción a LaTeX
3 FÓRMULAS MATEMÁTICAS EN LATEX
3.6
#14
Sistemas de ecuaciones
Usando delimitadores y \atop: 2x + y = 1 x + y = 4
\left. 2x + y = 1 \atop x + y = 4 \right\}
Usando delimitadores y \array: 2x + y = 1 x + y = 4 x + y + z = 6
\left. \begin{array}{rcl} 2x+y & = & 1 \\ x+y & = & 4 \\ x+y+z & = & 6 \end{array} \right\}
Usando el entorno \eqnarray 2x + y = 1 x + y = 4 x + y + z = 6
(1) (2) (3)
\begin{eqnarray} 2x + y = 1 \\ x + y = 4 \\ x+y+z=6 \end{eqnarray}
Observamos que nos numera las ecuaciones. Si queremos que alguna ecuación no la numere, basta con usar la orden \nonumber al final de la ecuación
2x + y = 1 x + y = 4 x + y + z = 6
(4) (5)
\begin{eqnarray} 2x + y = 1 \\ x + y = 4 \\ x + y + z = 6 \nonumber \end{eqnarray}
Si queremos que no numere ninguna de las ecuaciones, usaremos \eqnarray* en lugar de \eqnarray (observe que la diferencia es el * )
2x + y = 1 x + y = 4 x + y + z = 6
\begin{eqnarray*} 2x + y = 1 \\ x + y = 4 \\ x + y + z = 6 \end{eqnarray*}
Introducción a LaTeX
3 FÓRMULAS MATEMÁTICAS EN LATEX
3.7
#15
Integrales, límites y sumatorios
Usaremos las órdenes: \int
\lim
\sum
Integrales \int_5^{+\infty}3x^2 \: dx
+∞
5
3x2 dx
Límites \lim_{x \rightarrow x_0} f(x)
l´ım f (x)
x→x0
Sumatorios \sum_{i=1}^{12}5i+2 12
5i + 2
i=1
\sum_{\substack{i < j \\ 0 \leq j \leeq n}} F(i,j)
F (i, j)
i
0≤ j ≤n
Observe que la orden \substack nos permite poner varias líneas bajo el sumatorio.
Introducción a LaTeX
3 FÓRMULAS MATEMÁTICAS EN LATEX
3.8
#16
Unos encima de otros
A veces necesitamos escribir caracteres encima de otros. Algunos ejemplos: Código \overline{A \cup B}
Resultado A
∪B
\bar{B}
¯ B
\overbrace{a+b}
\vec{a}
a
a + b
Código
Resultado
\underline{A}
A
\underbar{B}
B
\underbrace{a+b}
\dot{a}
a + b
vale 0
\overbrace{a+b+c}_{vale 0}+d+e
a + b + c +d + e 0 e l a v
\overbrace{a+b+c}^{\begin{sideways}vale 0 \end{sideways}}+d+e
a + b + c +d + e
Un ejemplo un poco más complicado: 5x3
2x2 + 3y2 + 4y = 2z 2
− − en x
en y
z
en z
Ecuación
El código es el siguiente:
\underbrace{ \underbrace{ 5x^3 -2x^2 }_{en \; x} + \underbrace{ 3y^2 +4y }_{en \; y} = \underbrace{ 2z^2 -z }_{en \; z} }_{Ecuación}
Introducción a LaTeX
a˙
3 FÓRMULAS MATEMÁTICAS EN LATEX
3.9
Algunos detalles más
3.9.1
Texto en modo matemáticas
#17
No es conveniente escribir texto en modo matemáticas, pues LATEX tomará todos los caracteres como variables (estarán en cursiva). Expresiones del tipo: Si $a = b entonces a=5$
producirán un efecto no deseado:
Si a = bentoncesa = 5
Sería mejor expresarlo así: Si $a = b$ entonces $a=5$
que producirá el resultado:
Si a = b entonces a = 5
Ocurre lo mismos con logaritmos o funciones trigonométricas: $a + sen b = x$
a + senb = x
En su lugar debería poner: $a + \sen b = x$
a + sen b = x 3.9.2
Más símbolos
Código Símbolo N \mathbb{N} Z \mathbb{Z} ZQ \mathbb{Q} R \mathbb{R}
Código Código N \mathbf{N} Z \mathbf{Z} Q \mathbf{Q} R \mathbf{R}
Código Código \mathcal{N} \mathcal{Z} \mathcal{Q} \mathcal{R}
N Z Q R
Esto es sólo un resumen, si quiere unos 6000 símbolos mire en: http://yum.math.hmc.edu/ctan/info/symbols/comprehensive/symbols-letter.pdf
Introducción a LaTeX