Curso no convencional de LaTeX: ecuaciones

¡Por fin regresa el minicurso de LaTeX a sus hogares! Siento la tardanza, pero ha habido una tesis que presentar, un paro que pedir y un proyecto que crear.


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

Como dijimos el otro día, hay dos tipos de ecuaciones en LaTeX:

  • las que van dentro de una línea, que se escriben entre signos de dólar y se suelen conocer como inline
  • las que tienen línea propia, que usan el entorno equation o el atajo1 \[...\]

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:

  • amsmath (AMS Math), que mejora el comportamiento y el aspecto de las ecuaciones. Nos permite, por ejemplo, añadir un asterisco en el entorno equation para crear ecuaciones sin numerar.

  • amsthm (AMS Theorem), que define los entornos teorema y demostración.

  • amssymb (AMS Symbol), que carga a su vez amsfonts e incluye una colección de símbolos matemáticos.

Podemos cargarlos todos a la vez añadiendo esta línea al preámbulo2:

\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)):

  • Editores de ecuaciones online: hasta que le vayamos cogiendo el callo a las ecuaciones, aparte de la barrita del IDE tenemos editores online como este o este otro que es más cuco.
  • Detexify: si no sabemos cómo se llama un símbolo y, por lo tanto, no podemos buscar su comando tenemos Detexify, un cacharro en el que pintamos el símbolo que estamos buscando y nos localiza los más parecidos. Especialmente útil con la típica duda de ¿esa letra es xi o chi? o mi favorita ¿cómo se llama la R esa gorda de los números reales?. Hacemos el dibujillo y hala.

Símbolos comunes

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

  • Sumas, restas y exponenciales: se hacen con el símbolo de toda la vida +, - y ^
  • Multiplicaciones: aquí hay variedad según los gustos, si queremos el punto usamos el comando \cdot si nos gusta más el aspa usamos \times. Hacedme un favor y no me uséis ni la equis ni el asterisco.

  • Raíces: se hacen con el comando \sqrt{argumento} si son raíces cuadradas y añadiendo el numerito como argumento opcional (es decir, entre corchetes) para cualquier otra \sqrt[raíz]{argumento}

  • Integrales: funcionan con el comando \int, si queremos que tengan límites definidos no tenemos más que escribir \int_{inferior}^{superior}. Por ejemplo, esta integral impropia \int_{0}^{\infty} se conseguiría así \int_{0}^{\infty}. Si os fijáis las integrales, a diferencia de las raíces, no llevan llaves. Esto ocurre porque la raíz necesita saber cómo de largo es el contenido, la integral es simplemente el chirimbolo.

  • Sumatorios: son como las integrales pero con el comando \sum

  • Fraciones: tan sencillas como \frac{numerador}{denominador}

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, barras3, barras4 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:

  • \,: nos genera un espacio en blanco estrecho
  • ~: nos crea un espacio duro, es decir, un espacio que impide que se salte de línea en medio.

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 sencillito5:

% 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}

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:

  • Cursiva para las variables: LaTeX nos lo hace por defecto
  • Operadores y constantes rectos: para los operadores del propio LaTeX como \sin o \log no tenemos que hacer nada, los endereza de por sí. Para el resto tenemos dos opciones: usar \mathrm o definirlos como operadores en el preámbulo con \DeclareMathOperator del paquete amsmath. De esto último hablaremos más adelante, pero como sé que sois ansiosos os pongo cómo se haría:

\usepackage{amsmath}
\DeclareMathOperator{\comando}{descripción}
  • Matrices y vectores en negrita: para ello usaremos \mathbf para las letras y \boldsymbol para los símbolos o letras griegas.

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


Aquí lo dejamos por hoy, tenéis material en las referencias para jugar. Me contáis a ver vuestras experiencias 🙂

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)


  1. Yo no suelo usar el atajo porque me resulta más difícil de leer, pero, oyes, para gustos colores. 
  2. Recordemos: el preámbulo es lo que hay entre la definición del documento (\documentclass) y el inicio del entorno document (\begin{document}). 
  3. Como las de un determinante 
  4. Como las de una norma 
  5. Creo que hay una manera mejor de hacer de definir este comando pero no me acuerdo y soy completamente incapaz de encontrarlo. 
Anuncios

¡Opina sin miedo! (Puedes usar Markdown)

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s