LaTeX y las ecuaciones

Siguiendo con el desmenuce de la sintaxis, vamos a hablar de ecuaciones, el motivo por el que mucha gente (científicos) se pasan a LaTeX.

Como dijimos anteriormente, hay dos tipos de ecuaciones en LaTeX:

Aquí tenemos un ejemplo usando los dos tipos:

\begin{equation}
e^{i\pi} + 1 = 0
\end{equation}

donde $i = \sqrt{-1}$

Como veis, escribimos las ecuaciones mediante comandos, algo que inicialmente parece un atraso pero que cuando cogemos un poco de práctica, es terriblemente eficaz. Si estáis usando un editor específico, tendréis una barra con los símbolos más usados, es una buena forma de empezar con las ecuaciones. Más abajo os hablo de la sintaxis más en detalle y doy unos ejemplos.

Al escribir ecuaciones es recomendable cargar los siguientes paquetes:

Podemos cargarlos todos a la vez añadiendo esta línea al preámbuloRecordemos: el preámbulo es lo que hay entre la definición del documento (\documentclass) y el inicio del entorno document (\begin{document}).:

\usepackage{amsmath, amsthm, amssymb}

Ese AMS que precede a todos ellos viene de American Mathematical Society, los que originalmente desarrollaron estos paquetes.

Comandos

Vamos a ver un poco de sintaxis, pero antes de nada os dejo un par de herramientas interesantes sobre todo para los novatillos (o Nóbeles que decía mi profe de autoescuela, conductor Nóbel (sic)):

Símbolos comunes

Símbolos hay a pilas, os voy a poner unos pocos comandos aquí pero lo mejor es que hurguéis.

Tenéis en las referencias listas de símbolos para que les echéis una ojeada si os parece.

Letras griegas

Una de las mejores cosas de LaTeX en mi opinión es su método para escribir letras griegas, tan sencillo como escribir su nombre en minúsculas para la letra en minúscula y ponerle la primera en mayúscula para una letra griega en mayúscula. Se entenderá mejor con un ejemplo:

\omega crea ω (omega minúscula) y \Omega crea a su vez Ω (omega mayúscula)

Operadores

Los operadores son las funciones cuyo nombre se escribe en texto, como sin o ln. LaTeX tiene algunos de ellos definidos y es importante usarlos para que las ecuaciones nos queden bien. Va un ejemplo:

\sin^2 x + \cos^2 x = 1

Que crea:

$$ \sin^2 x + \cos^2 x = 1$$

Matrices

Funcionan de manera similar a las tablas (las columnas se separan con el ampersand y se salta de línea con \\), pero usan el entorno matrix y relacionados.

El entorno matrix nos crea una matriz sin delimitadores, tendríamos que añadírselos nosotros. Los entornos pmatrix, vmatrix, Vmatrix bmatrix y Bmatrix nos añaden respectivamente paréntesis, barrasComo las de un determinante, barras Como las de una norma dobles, corchetes y llaves. Estos entornos que cito centran el contenido, si quisiéramos cambiar la alineación tendríamos que usar su variantes con asterisco y darle un argumento.

Este sería un ejemplo de una matriz sencilla:

\begin{equation}
 \begin{matrix}
  a & b & c \\
  d & e & f \\
  g & h & i
 \end{matrix}
\end{equation}

Sobre los paréntesis

Si no os apetece (como a mí) memorizar que el pmatrix pone un paréntesis y el vmatrix no sé qué, podéis poner los delimitadores vosotros según os parezca y usar siempre el entorno matrix (es lo que yo hago) pero hay que tener en cuenta una cosa, en LaTeX hay dos tipos de paréntesis: los de tamaño fijo y los que se adaptan al contenido. Los de tamaño fijo son tal cual el símbolo según le damos en el teclado, los adaptativos son comandos formados por \left o \right, según el lado, más el símbolo. Por ejemplo, \left( nos crea el paréntesis adaptativo del lado izquierdo, \right] el corchete adaptativo de la derecha y así con todos. Los únicos un poco diferentes son los comandos para las llaves, que requieren una barra de escape y son respectivamente \left\{ y \right\}

Por ejemplo, para rodear la matriz anterior con corchetes tendríamos que hacer lo siguiente:

\begin{equation}
 \left[
 \begin{matrix}
  a & b & c \\
  d & e & f \\
  g & h & i
 \end{matrix}
 \right]
\end{equation}

Gestión del espacio

Al igual que con el texto, LaTeX nos gestiona el espacio entre los símbolos él solito. En general lo mejor es dejarle hacer, pero hay en ocasiones en hay cosas que quedan feas y hay que tocarlas un poquito a mano. Los nazis del LaTeX nos dirán que no hay que hacer estas cosas, que las decisiones de LaTeX deben ser respetadas. Yo no estoy de acuerdo, la cuestión es que las ecuaciones queden a nuestro gusto.

Para ello utilizo estos dos chismes, aunque hay muchos más, que no son específicos de las ecuaciones pero es donde suelen resultar más necesarios:

Como tampoco soy una sabia de la tipografía con estos dos me apaño, en las referencias tenéis más y mejores explicaciones si os va el tema.

Referencias cruzadas

Igual que las imágenes, las ecuaciones también se pueden referenciar haciendo uso de los comandos \label y \ref. El primero de ellos nos permite darle un nombre identificativo a una ecuación y el segundo nos la cita. Al igual que ocurría con las figuras, para poder añadir una etiqueta a una ecuación es necesario utilizar el entorno equation, no nos vale para las ecuaciones inline.

Veamos cómo citaríamos la ecuación del primer ejemplo:

\begin{equation}
e^{i\pi} + 1 = 0
\label{eq:euler}
\end{equation}

Como vemos en la Ecuación \ref{eq:euler}

Que nos daría este resultado:


$$ e^{i\pi} + 1 = 0$$ Como vemos en la Ecuación 1


Añadir eq: a la etiqueta no es necesario pero nos facilita el trabajo al no tener las etiquetas para las figuras, las secciones y demás elementos mezclados.

También podemos definir un comando para que nos añada la palabra Ecuación al número. Os voy a decir cómo lo haríamos aunque todavía no sepamos crear comandos para que veáis que es sencillitoCreo que hay una manera mejor de hacer de definir este comando pero no me acuerdo y soy completamente incapaz de encontrarlo.:

% Estructura \newcommand{\nombre}[nº args]{Descripción}

\newcommand{\refeq}[1]{Ecuación~\ref{#1}}

Esto mismo lo consigue el comando \autoref del paquete hyperref con la ventaja de que nos pone la palabra correcta en todos los casos, ya sean tablas, figuras o ecuaciones sin necesidad de definir un comando para cada uno.

Grupos de ecuaciones

Otro tema interesante es poder escribir un grupo de ecuaciones que comparta la misma etiqueta. Esto es posible (¡como todo en LaTeX!) gracias a diferentes entornos aunque yo solo voy a hablar de mi favorito: align del paquete amsmath. Nos permite crear un sistema de ecuaciones que alineará según el símbolo que marquemos con un ampersand. Por ejemplo, las 3 leyes de la termodinámica quedarían así, alineadas según el símbolo de igual:

\begin{align}
 \Delta U &= Q -W \\
 \delta S &= T \mathrm{d}S \\
 S &= \mathrm{k_B}\ln\Omega
\end{align}

$$ \begin{align} \Delta U &= Q -W \\ \delta S &= T \mathrm{d}S \\ S &= \mathrm{k_B}\ln\Omega \end{align} $$


Al igual que hacíamos en el entorno equation, con align también podemos añadir una etiqueta o usar el asterisco para que no nos numere la ecuación.

Formato

Evidentemente, LaTeX nos permite adaptar el formato de nuestras ecuaciones a nuestros gustos o exigencias externas (véase formato de revistas científicas, normas ISO …). Un formato muy típico es el siguiente:

\usepackage{amsmath}
\DeclareMathOperator{\comando}{descripción}

Un ejemplo con todos ellos podría ser la definición de la matriz de rigidez para el método de los elementos finitos (me sale el ingeniero mecánico interior):

\begin{equation}
\mathbf{K}=\int_V \mathbf{B}^\intercal \mathbf{D B}\mathrm{d}x \mathrm{d}y \mathrm{d}z
\end{equation}

que quedaría algo de este estilo:

$$\mathbf{K}=\int_V \mathbf{B}^\intercal \mathbf{D B}\mathrm{d}x \mathrm{d}y \mathrm{d}z$$

Referencias

LaTeX/Mathematics en WikiBooks

List of Greek letters and math symbols en ShareLaTeX

Matrix environments en LaTeX Wiki

Brackets and Parentheses en ShareLaTeX

Operators en ShareLaTeX

What commands are there for horizontal spacing? en StackExchange

Lista de símbolos matemáticos (pdf)

What does each AMS package do? en StackExchange

How to typeset equations in LaTeX (pdf)

Anterior: Insertando figuras, Siguiente: A vueltas con el idioma [Contenido]