Curso de LaTeX - lablibertario.files.wordpress.com · Filosof´ıa diferente: ... Permite al autor...

62
1 Herramientas Inform ´ aticas de las Matem ´ aticas en Ingenier´ ıa URL: http://matematicas.uclm.es/ind-cr/him/ Curso de L A T E X Ernesto Aranda Departamento de Matem´ aticas E.T.S. Ingenieros Industriales Universidad de Castilla - La Mancha B [email protected] T 926 295 457

Transcript of Curso de LaTeX - lablibertario.files.wordpress.com · Filosof´ıa diferente: ... Permite al autor...

1

Herramientas Informaticas de lasMatematicas en Ingenierıa

URL: http://matematicas.uclm.es/ind-cr/him/

Curso de LATEX

Ernesto Aranda

Departamento de Matematicas

E.T.S. Ingenieros Industriales

Universidad de Castilla - La Mancha

B [email protected]

T 926 295 457

1 Introduccion

1.1. ¿Que es LATEX?

¿Que es TEX?

Sistema de composicion de texto orientado a la creacion de documentos cientıficos

TEX no es un editor de texto tipo WYSIWYG (What You See Is What You Get)

TEX compone un texto como lo harıa un tipografo

Tratamiento global del documento→ facilidad para realizar tareas automaticas

Ejemplo: comandos TEX

∫ b

a

\int_aˆb

1.2. Un poco de historia

Donald E. Knuth

TEX (= tau epsilon chi) fue disenado por Donald E. Knuth (Universidad de Stanford)entre 1977–1978.

Objetivos

obtener la mas alta calidad, con independencia de los avances tecnologicos

sistema para ser usado por los propios autores

independiente de la plataforma en la que se use (la salida es la misma en todos lossistemas)

¡ es gratis !

¿Inconvenientes?

No es un editor WYSIWYG

Debemos proporcionar a TEX la informacion sobre las caracterısticas tipograficas deltexto (margenes, tipos de letra, . . . )

Filosofıa diferente: estrutura global del texto

Entonces, ¿que es LATEX?

Conjunto de macros escritos en TEX por Leslie Lamport

Permite al autor no tener que preocuparse de los detalles tipograficos

Posee todas las caracterısticas avanzadas de TEX

2

1.3 Mi primer documento LATEX 3

1.3. Mi primer documento LATEX

Ingredientes

El compilador de LATEX

Un editor de texto ASCII

Un visualizador de DVI (DeVice Independent)

Un poco de paciencia

Fichero Fuentetipo ASCII

extension .tex−→ LATEX −→

Fichero Finaltipo DVI

extension .dvi−→

PantallaImpresora

...

Figura 1 Esquema basico de funcionamiento de LATEX

Creacion del fichero fuente

Con cualquier editor de texto capaz de guardar en formato ASCII (p.e. Block de Notas,Wordpad,. . . ) escribid:

\documentclassarticle\begindocument

Mi primer documento en \LaTeX

\enddocument

Salvar como solo texto, con extension .tex (p.e. midoc.tex)

Compilacion

En una ventana de comandos, dentro del directorio donde se encuentra el documentointroducimos

$ latex midoc

Si listamos el contenido del directorio debemos obtener algo ası:

$ dir

midoc.aux midoc.dvi midoc.log midoc.tex

Para visualizar el fichero midoc.dvi necesitamos un visor adecuado. En nuestrocaso

$ yap midoc

El visor de DVI depende de la distribuion LATEX que tengamos

El fichero .dvi es independiente de la plataforma en la que se visualice

La impresion del fichero .dvi puede hacerse directamente a partir del visor (siempreque este lo permita)

4 Introduccion

Anadiendo texto a nuestro documento

La modificacion del documento debe pasar de nuevo por el proceso de edicion, com-pilacion y visualizacion.

Ejemplo: anadir la lınea

\documentclassarticle\begindocument

Mi primer documento en \LaTeX.La segunda frase de mi documento.

\enddocument

Mi primer documento en LATEX. La segundafrase de mi documento.

1.4. Programas adicionales

La impresion de un fichero .dvi obtenido tras la compilacion con LATEX puede hacer-se directamente a traves del visualizador. No obstante, inicialmente estos programas fueroncreados unicamente para la visualizacion por pantalla, y no para enviarlos a la impresora.

El programa DVIPS fue creado con la intencion de pasar de un fichero DVI a un ficheroPostscript PS, adecuado para la impresion.

1.4.1. LATEX y PDF

La conversion de un fichero PS a PDF puede hacerse con el programa PS2PDF incluidocon la distribucion MikTeX, o el programa Acrobat Distiller (no gratuito). No obstante hayotras alternativas:

el programa DVI2PDF que evita el tener que pasar antes por el fichero PS,PDFLATEX

Este ultimo es un programa similar a LATEX pero cuya salida no es un fichero DVI sinoun fichero PDF. La ejecucion se hace con la orden pdflatex

La principal diferencia entre LATEX y PDFLATEX esta en la inclusion de ficheros grafi-cos: los formatos que admiten cada uno de ellos son incompatibles entre sı, de manera quecuando insertamos ficheros graficos en un documento, solo sera posible usar uno de los dosprogramas, en funcion del formato de grafico elegido (consultar el Tema 7).

6 Instalacion de una distribucion LATEX

El resto de pasos son los habituales en una instalacion en Windows.

2.2. Configuracion de MiKTeX

Menu Inicio −→ Programas −→MiKTeX −→MiKTeX Options

2.3 MiKTeX Package Manager 7

En la pestana Languages:

Marcar nohyphenation y spanish (al menos). Situar el lenguaje spanish en primerlugar.

Volver a la pestana General, hacer click en Update Now y luego en Refresh Now

2.3. MiKTeX Package Manager

La instalacion de paquetes (vease Seccion 3.5.2) puede hacerse a traves del programaMiKTeX Package Manager. Es necesario establecer el lugar desde el que instalaremos lospaquetes, lo que se conoce como Repository, que puede hacerse desde Internet, una carpetalocal (Local Folder) o desde un CDROM proporcionado por MiKTeX.

8 Instalacion de una distribucion LATEX

Para la instalacion de paquetes simplemente seleccionar el paquete y pulsar el iconocorrespondiente

2.4. Editor WinEdt

URL: http://www.winedt.comWinEdt es un editor shareware especialmente disenado para hacer mas facil y comodo eltrabajo con LATEX

2.4.1. Instalacion

El proceso de instalacion es el habitual en un programa Windows

2.4 Editor WinEdt 9

2.4.2. Configuracion

Al inicial por primera vez el programa aparecera la siguiente ventana de configuracion:

Al pinchar sobre Shell Configuration Wi-zard accederemos a la siguiente ventana(en la pestana Filetype Associations) enla que pincharemos sobre Modify Filety-pe Associations

Esta ventana nos muestra la asociacion de archivos .tex que hara WinEdt. Aceptando

esta ventana, Windows relacionara los tipos de archivos anteriores con WinEdt.

10 Instalacion de una distribucion LATEX

2.4.3. Configuracion avanzada

WinEdt es altamente configurable, de formaque puede hacer la escritura de TEX y LATEXcomoda y eficiente. Por ejemplo asociar la \

sin necesidad de pulsar Alt Gr .

En Options −→ Settings

En la pestana Translations pinchamos sobre Keyboard y en la ventana introducimos el

texto "o" -> "\"

A continuacion marcamos la casilla Enable yhabremos hecho que la tecla \ funcione sinnecesidad de pulsar Alt Gr .

Otra caracterıstica interesante es la de escribirlas llaves de apertura y cierre a la vez, de ma-nera que no se produzcan mensajes de errorpor omision de alguna. En la misma venta-na de Settings, seleccionando la pestana Acti-ve Strings, hay que seleccionar la cadena quequeremos que se abra y cierre, por ejemplo

y activar la casilla Action.

2.4.4. Instalacion de diccionarios

WinEdt permite el uso simultaneo de diversos diccionarios (ingles por defecto). Para

instalar el diccionario espanol hemos de realizar los siguientes pasos:

Crear una carpeta con nombre spanish en:

C:\Archivos de programa\WinEdt Team\WinEdt\Dict

Descomprimir el archivo es.zip en la carpeta anteriormente creada.

2.4 Editor WinEdt 11

Abrir Dictionary Manager en Options −→ Dictionary

A continuacion pinchar sobre el boton de insercion (sobre la flecha del grafico)

En la casilla de diccionarios introducir el nombre del diccionario a insertar (p.e. spa-

nish) y activar la casilla Enable.

Sobre el icono Browser (en la flecha del grafico), hacer click y seleccionar el archivo

ES previamente instalado.

12 Instalacion de una distribucion LATEX

Finalmente marcar las casillas Load On Start y Save On Exit y hacer clik en OK.

2.5. Instalacion de Macros

Existen una serie de mejoras de WinEdt que facilitan la construccion de ciertas carac-terısticas de LATEX. Dichas mejoras se consiguen mediante la instalacion de macros, comopor ejemplo New, que crea el preambulo base de un texto.

El proceso de instalacion es el siguiente:Crear una carpeta con nombre new en:

C:\Archivos de programa\WinEdt Team\WinEdt\PluginsDescomprimir el archivo new.zip en dicha carpeta.En el menu Macros pinchar sobre Execute Macro

2.5 Instalacion de Macros 13

Buscar la carpeta anteriormente creada y seleccionar el fichero New

Una vez confirmada la instalacion, el macro puede ejecutarse en

Project −→ Recent Projects List −→ New Document

Se abre una ventana en la que podemos seleccionar algunos de las opciones y paquetes

que se incluiran en el preambulo

14 Instalacion de una distribucion LATEX

2.6. Compilacion desde WinEdt

Para compilar un fichero LATEX desde WinEdt solo es necesario pulsar el boton ade-cuado. Una vez abierto el fichero

pinchamos sobre el boton LATEX, abriendose una ventana de compilacion

Tras la compilacion, podemos visualizar el fichero DVI

El proceso se puede automatizar (compilacion + visualizacion) pinchando sobre el

2.7 Programas auxiliares 15

boton siguiente:

2.6.1. DVIPS

Para usar DVIPS desde WinEdt pinchar en el icono correspondiente. Para visualizar elfichero PS usamos el visor Ghostview, haciendo click en su icono:

2.6.2. DVIPDF y PS2PDF

Desde WinEdt pinchar en los iconos correspondientes.

2.6.3. PDFLATEX

Puede ejecutarse directamente desde WinEdt pinchado sobre los iconos correspon-dientes:

2.7. Programas auxiliares

En un entorno de trabajo con LATEX es conveniente tener instalados ciertos programas,como visores de archivos .ps y .pdf.

Acrobat ReaderPrograma bien conocido de visor de archivos .pdf con licencia gratuita.

16 Instalacion de una distribucion LATEX

Instalacion de Ghostscript y GhostviewDescargar de URL: http://www.cs.wisc.edu/˜ghost/Estos programas sirven para generar y visualizar ficheros PostScript (lenguaje natural

de impresoras). Es necesario tener instalados ambos, aunque solo se usara el visor Ghost-view. La instalacion no presenta ningun problema

18 Introduccion a LATEX

¿Como escribir estos caracteres?

\ \textbackslash\ \backslash (*)$ \$% \%ˆ \ˆ_ \_ \ \˜ \tilde (*)˜ \texttilde# \#

(*) modo matematico

3.3. Acentos

El fichero input en LATEX solo reconoce caracteres del alfabeto ingles. Para escribiracentos tenemos dos opciones:

Uso de comandos que producen acentos y letras no inglesas

\’a =: a \’e =: e\’\i =: ı \i =: ı\’A =: A \’E =: E\ˆo =: o \"o =: o

\cc =: c \cC =: C\‘e =: e \v o =: o\˜n =: n \˜N =: N?‘ =: ¿ !‘ =: ¡

Uso del paquete (vease seccion 3.5.2) \usepackage[latin1]inputenc

3.4. Comandos LATEX

Hay tres tipos de comandos en LATEX:

comandos sin argumento, e.g.

\alpha, \par, \sum,. . .

comandos con argumento, e.g.

\section〈tıtulo〉, \usepackage〈paquete〉,. . .

entornos, delimitados por

\begin〈nombre del entorno〉 \end〈nombre del entorno〉

Los comandos con argumentos y los entornos, eventualmente pueden llevar opcionesdelimitadas por [ ], e.g.,

\usepackage[latin1]inputenc

3.5 Estructura del fichero fuente 19

3.5. Estructura del fichero fuente

La estructura de todo fichero LATEX consta de dos partes:

preambulo

documento

3.5.1. Preambulo

Todo fichero que vaya a ser compilado con LATEX debe comenzar con la declaraciondel tipo de documento:

\documentclass[〈opciones〉]〈clase〉

donde clase ser refiere al estilo de documento que se va a usar.

Los valores mas comunes de clase son:

article: artıculos, pequenos documentos

report: memorias, proyectos,. . .

book: libros

letter: cartas

Cada uno de estos estilos establece unas caracterısticas particulares para el texto (dimen-siones de pagina, estilos de encabezados,. . . ).

Las opciones permiten modificar algunos aspectos del formateo, como el tamano dela fuente — 10pt, 11pt, 12pt, el tipo de papel a4paper, letterpaper o formatos de paginaonecolumn, twocolumn, landscape, etc.

Impresion con el uso de la opcion landscapeAunque en el visor Yap un fichero creado con la opcion landscape parece correcto, al

enviarlo a la impresora (directamente o vıa DVIPS) el resultado es erroneo. Para evitar estodebemos usar DVIPS con la opcion siguiente

dvips -t lanscape Fichero.dvi

3.5.2. Paqueterıa

Adicionalmente, el preambulo puede contener la inclusion de paquetes

\usepackage[〈opciones〉]〈paquete1〉\usepackage[〈opciones〉]〈paquete2〉

...

o alternativamente (si los paquetes no llevan opciones)

\usepackage〈paquete1,paquete2,. . . 〉

Los paquetes constituyen extensiones no estandar de LATEX que mejoran o implemen-tan nuevas caracterısticas.

En el preambulo tambien aparecen ordenes para controlar la aparicion y tipo de cabe-ceras y pies de pagina, etc.

Ejemplo Un preambulo tıpico podrıa ser

20 Introduccion a LATEX

\documentclass[a4paper,11pt,twocolumn]article\usepackage[latin1]inputenc\usepackageamsmath,times\pagestyleheadings

Otras opciones para el cambio de fuente son:palatino, bookman, newcent, chancery, etc.

3.5.3. Documento

El cuerpo del documento viene acotado por las ordenes

\begindocument

\enddocument

Cualquier cosa que siga a esta orden sera ignorada por el compilador.Es habitual que tras la orden \begindocument aparezcan una serie de comandos

que determinan el tıtulo, autores, afiliacion, etc., de uso frecuente en los artıculos.

\title〈Tıtulo del documento〉\author〈Autor〉\date〈Fecha〉\maketitle

El comando \maketitle es el encargado de mostrar estos contenidos. La no aparicion delmismo hara que el compilador ignore los contenidos de los comandos \title, \author,etc.

Del mismo modo, el resumen (o abstract) viene determinado por el entorno

\beginabstractResumen del documento\endabstract

El formato usado para estos comandos depende del estilo de documento que estemosusando. Por ejemplo:

report – en pagina separada sin numerararticle – tras el tıtulobook, letter – no admiten

El texto suele estar dividido en capıtulos, secciones, etc., que corresponden a loscomandos

\part \chapter \subsection\section \subsubsection

\paragraph\subparagraph

Excepto el comando \part, el resto son numerados consecutivamente de forma automatica.Por otro lado, en el estilo report, no se permite el comando \part, mientras que en articleno existe \chapter.

Ejemplo de documento tipo article

\documentclass[12pt]article\usepackageamsmath\usepackage[latin1]inputenc

3.5 Estructura del fichero fuente 21

\begindocument

\titleTıtulo del artıculo\authorAutor\date\today

\maketitle

\beginabstractResumen del artıculo.\endabstract

\sectionUna primera seccionEsta es la primera seccion del artıculo.

\subsectionSubseccionUna seccion dentro de una seccion se denomina subseccion.

\subsubsectionSubsubseccionEsto es una seccion dentro de una subseccion, o sea, una subsubseccion.

\paragraphParrafoEsto corresponde a un parrafo resaltado.

\beginthebibliography00

\bibitem1 Referencia numero uno.\bibitem2 Referencia numero dos.\bibitem3 Referencia numero tres.

\endthebibliography

\enddocument

22 Introduccion a LATEX

Tıtulo del artıculo

Autor

April 7, 2004

Abstract

Resumen del artıculo.

1 Una primera seccion

Esta es la primera seccion del artıculo.

1.1 Subseccion

Una seccion dentro de una seccion se denomina subseccion.

1.1.1 Subsubseccion

Esto es una seccion dentro de una subseccion, o sea, una subsubseccion.

Parrafo Esto corresponde a un parrafo resaltado.

References

[1] Referencia numero uno.

[2] Referencia numero dos.

[3] Referencia numero tres.

1

3.5 Estructura del fichero fuente 23

Observaciones

Los espacios en LATEX no tienen el significado usual. Para escribir parrafos distintosdebemos separarlos con una lınea en blanco o con el comando \par. Ası, las siguien-tes opciones producen lo mismo:

\documentclassarticle\begindocument

Mi primer documento en \LaTeX.La segunda frase de mi documento.Los espacios dejados en el texto no afectanal resultado final.\parEsta frase pertenece al segundo parrafo.

\enddocument

\documentclassarticle\begindocument

Mi primer documento en \LaTeX.La segunda frase de mi documento.Los espacios dejados enel texto no afectan al resultadofinal.

Esta frase pertenece al segundoparrafo.

\enddocument

Mi primer documento en LATEX. La segunda frase demi documento. Los espacios dejados en el texto noafectan al resultado final.Esta frase pertenece al segundo parrafo.

La numeracion de las secciones, subsecciones,. . . es automatica. La introduccion deuna nueva unidad entre las existentes lleva a una renumeracion, tambien automatica.

El formato del documento aparece por defecto, aunque es totalmente configurable.

La fecha, Abstract y References, aparecen en ingles (como lenguaje por defecto), paracambiarlo a espanol, es necesario usar el paquete babel en la forma

\usepackage[spanish]babel

Es posible introducir secciones sin numeracion anadiendo el caracter * al comando,como por ejemplo

\section*〈tıtulo de la seccion〉

Los comandos de seccion no solo abren nuevas unidades seccionales sino que guardanla informacion de las mismas en la generacion de los ındices.Para generar el ındice basta introducir el comando

\tableofcontents

y compilar dos veces.

24 Introduccion a LATEX

3.6. Cabeceras y pies de pagina

Las cabeceras y pies de paginas son definidas por los comandos \pagestyle y \pagenumbering.La estructura del comando \pagestyle es:

\pagestyle〈estilo〉

donde estilo puede ser uno de los siguientes:

empty: cabeceras y pies de pagina vacıosplain: numero de pagina en el pie, cabecera vacıaheadings: cabecera con el tıtulo de los capıtulos y secciones, sin piemyheadings: texto de la cabecera definido por el usuario

El comando \thispagestyle puede ser usado para cambiar el estilo de la pagina encurso, sin alterar el estilo del resto.

3.6.1. Numeracion

El comando \pagenumbering define el formato en el que seran impresos los numerosde pagina. Los parametros del mismo son

arabic numeracion arabiga (por defecto)roman numeros romanos en minusculaRoman numeros romanos en mayusculasalph numeracion alfabetica en minusculaAlph numeracion alfabetica en mayuscula

El comando \thepage produce el numero de pagina en el formato definido por \pagenumbering.La sintaxis de uso es

\pagenumbering〈formato〉

3.6.2. Cabeceras

Cuando el estilo seleccionado para las cabeceras es headings, LATEX toma informaciondel texto (el tıtulo del capıtulo, la seccion, etc.) para producir la cabecera, pero en algunoscasos el resultado no es satisfactorio, porque el tıtulo es mas largo de lo que cabe en unasola lınea. En esta situacion, las definiciones de capıtulo, seccion, etc. pueden ser ejecutadasdel siguiente modo:

\chapter[〈Tıtulo para la cabecera y el ındice〉]〈Tıtulo del capıtulo〉

Si el estilo escogido es myheadings las cabeceras son producidas mediante los coman-dos

\markboth〈Encabezado Izquierdo〉〈Encabezado Derecho〉

si el estilo es twoside, o el comando

\markright〈Encabezado〉

si el estilo es oneside.

26 Matematicas

Una formula bien conocida es∑n

k=1 k = n(n+1)2 .

Otro ejemplo es∫ 2π

0senx dx = 0.

Notese la diferencia conn∑

k=1

k =n(n+ 1)

2

∫ 2π

0

senx dx = 0

La primera ha sido escrita en modo texto y la segunda en modo display. Si queremosobtener resultados distintos en uno u otro modo debemos usar los comandos \textstyle(en modo display) o \displaystyle (en modo texto). Ası,

Una formula bien conocida esn∑

k=1

k =n(n+ 1)

2.

Otro ejemplo es∫ 2π

0

senx dx = 0.

Notese la diferencia con∑nk=1 k = n(n+1)

2

∫ 2π

0senx dx = 0

4.2. Construcciones diversas1

4.2.1. Fracciones

$$\frac\fracax-y+\fracbx+y1+\fraca-ba+b$$

ax−y + b

x+y

1 + a−ba+b

4.2.2. Matrices

$$\left( \beginarraylll1 & 2 & 3 \\ 4 & 5 & 6 \\ 7 & 8 & 9\endarray\right)

$$

1 2 34 5 67 8 9

1 Algunas pueden precisar los paquetes amsmath y amssymb

4.2 Construcciones diversas2 27

$$\left( \beginarrayccc1 & \cdots & n \\ 2 & \cdots & n+1 \\\vdots & \odots & \ddots \\n & \cdots 2n-1\endarray\right)

$$

1 · · · n2 · · · n+ 1...

. . ....

n · · · 2n− 1

\beginequation*\beginmatrix 0 & 1\\ 1 & 0 \endmatrix\qquad\beginpmatrix 0 & -i\\ i & 0 \endpmatrix\qquad\beginbmatrix a & b\\ c & d \endbmatrix\qquad\beginvmatrix 0 & 1\\ -1 & 0 \endvmatrix\qquad\beginVmatrix f & g\\ e & v \endVmatrix\endequation*

0 11 0

(0 −ii 0

) [a bc d

] ∣∣∣∣ 0 1−1 0

∣∣∣∣ ∥∥∥∥f ge v

∥∥∥∥

4.2.3. Funciones a trozos

$$\psi(x)=\begincases

Aeˆikx+Beˆ-ikx,& \mboxsi $x=0$,\\Deˆ- kx, & \mboxsi $x\neq0$.\endcases$$

ψ(x) =

Aeikx +Be−ikx, si x = 0,De−kx, si x 6= 0.

4.2.4. Arriba y abajo

$$a\stackrel\rm def= \alpha + \beta\quad\stackrel\beta \to 0\longrightarrow

$$a

def= α+ ββ→0−→

\beginequation*\sum_\substack0\leq i\leq m\\ 0>j>n

\endequation*

∑0≤i≤m0>j>n

\beginequation*\sumˆ\substack0\leq i\leq m\\ 0>j>n

\endequation*

0≤i≤m0>j>n∑

28 Matematicas

4.2.5. Construcciones diversas

abc \widetildeabc abc \widehatabc←−abc \overleftarrowabc

−→abc \overrightarrowabc

abc \overlineabc abc \underlineabc︷︸︸︷abc \overbraceabc abc︸︷︷︸ \underbraceabc√abc \sqrtabc n

√abc \sqrt[n]abc

f ′ f’ ~x \vecx

4.2.6. Numeros combinatorios

$$n \choose k =

\fracn!k!\, (n-k)!$$

(n

k

)=

n!k! (n− k)!

4.3. Sımbolos Matematicos

4.3.1. Letra griegas minusculas

α \alpha θ \theta o o τ \tau

β \beta ϑ \vartheta π \pi υ \upsilon

γ \gamma ι \iota $ \varpi φ \phi

δ \delta κ \kappa ρ \rho ϕ \varphi

ε \epsilon λ \lambda % \varrho χ \chi

ε \varepsilon µ \mu σ \sigma ψ \psi

ζ \zeta ν \nu ς \varsigma ω \omega

η \eta ξ \xi

4.3.2. Letras griegas mayusculas

Γ \Gamma Λ \Lambda Σ \Sigma Ψ \Psi

∆ \Delta Ξ \Xi Υ \Upsilon Ω \Omega

Θ \Theta Π \Pi Φ \Phi

4.3.3. Acentos en modo matematicoa \hata a \acutea a \baraa \dota a \brevea a \checkaa \gravea ~a \veca a \ddotaa \tildea

4.3.4. Sımbolos diversos

ℵ \aleph ′ \prime

∀ \forall ~ \hbar

∅ \emptyset ∃ \exists

ı \imath ∇ \nabla

¬ \neg \jmath√\surd [ \flat

` \ell > \top

\ \natural ℘ \wp

⊥ \bot ] \sharp

4.3 Sımbolos Matematicos 29

< \Re ‖ \|

♣ \clubsuit = \Im

∠ \angle ♦ \diamondsuit

∂ \partial 4 \triangle

♥ \heartsuit ∞ \infty

\ \backslash ♠ \spadesuit

f \mho \Box

♦ \Diamond @ \nexists

. . . \ldots. . . \ddots

· · · \cdots... \vdots

4.3.5. Operadores∑\sum

⋂\bigcap⊙

\bigodot∏

\prod⋃\bigcup

⊗\bigotimes∐

\coprod⊔

\bigsqcup⊕\bigoplus

∫\int∨

\bigvee⊎

\biguplus∮\oint

∧\bigwedge

4.3.6. Flechas

← \leftarrow ←− \longleftarrow

↑ \uparrow ⇐ \Leftarrow

⇐= \Longleftarrow ⇑ \Uparrow

→ \rightarrow −→ \longrightarrow

↓ \downarrow : \Rightarrow

=: \Longrightarrow ⇓ \Downarrow

↔ \leftrightarrow ←→ \longleft...

l \updownarrow ⇔ \Leftrightarrow

⇐ : \Longleft... m \Updownarrow

7→ \mapsto 7−→ \longmapsto

\nearrow ← \hookleftarrow

→ \hookrightarrow \searrow

\leftharpoonup \rightharpoonup

\swarrow \leftharpoondown

\rightharpoondown \nwarrow

\rightleftharpoons \leadsto

4.3.7. Relaciones≤ \leq ≥ \geq ≡ \equiv |= \models

≺ \prec \succ ∼ \sim ⊥ \perp

\preceq \succeq ' \simeq | \mid

\ll \gg \asymp ‖ \parallel

⊂ \subset ⊃ \supset ≈ \approx ./ \bowtie

⊆ \subseteq ⊇ \supseteq ∼= \cong on \Join

@ \sqsubset A \sqsupset 6= \neq ^ \smile

v \sqsubseteq w \sqsupseteq.= \doteq _ \frown

∈ \in 3 \ni /∈ \notin ∝ \propto

` \vdash a \dashv

30 Matematicas

4.3.8. Operadores binarios

± \pm ∩ \cap \diamond ⊕ \oplus

∓ \mp ∪ \cup 4 \bigtriangleup \ominus

× \times ] \uplus 5 \bigtriangledown ⊗ \otimes

÷ \div u \sqcap / \triangleleft \oslash

∗ \ast t \sqcup . \triangleright \odot

? \star ∨ \lor © \bigcirc C \lhd

\circ ∧ \land † \dagger B \rhd

• \bullet \ \setminus ‡ \ddagger E \unlhd

· \cdot o \wr q \amalg D \unrhd

4.3.9. Negaciones

6< \not< 6> \not>

6= \not= 6≤ \not\leq

6≥ \not\geq 6≡ \not\equiv

6≺ \not\prec 6 \not\succ

6∼ \not\sim 6 \not\preceq

6 \not\succeq 6' \not\simeq

6⊂ \not\subset 6⊃ \not\supset

6≈ \not\approx 6⊆ \not\subseteq

6⊇ \not\supseteq 6∼= \not\cong

6v \not\sqsubseteq 6w \not\sqsupseteq

6 \not\asymp

4.3.10. Delimitadores↑ \uparrow \ d \lceil

\ c \rfloor / /

b \lfloor 〉 \rangle ⇓ \Downarrow

〈 \langle ‖ \| m \Updownarrow

| | ↓ \downarrow e \rceil

⇑ \Uparrow l \updownarrow \ \backslash

4.3.11. Sımbolos AMS

\iint∫∫

\iiint∫∫∫

\iiiint∫∫∫∫

4.3.12. Funciones matematicasarc cos \arccos arc sen \arcsen arctan \arctan arg \arg

cos \cos cosh \cosh cot \cot coth \coth

csc \csc deg \deg det \det dim \dim

exp \exp gcd \gcd hom \hom ınf \inf

ker \ker lg \lg lım \lim Pr \Pr

lım sup \limsup ln \ln log \log max \max

mın \min lım inf \liminf sec \sec sen \sen

sinh \sinh sup \sup tan \tan tanh \tanh

4.3.13. Flechas AMS (disponibles con el paquete amssymb)

99K \dashrightarrow L99 \dashleftarrow

⇔ \leftleftarrows \leftrightarrows

W \Lleftarrow \twoheadleftarrow

\leftarrowtail " \looparrowleft

\leftrightharpoons x \curvearrowleft

\circlearrowleft \Lsh

4.3 Sımbolos Matematicos 31

\upuparrows \upharpoonleft

\downharpoonleft ( \multimap

! \leftrightsquigarrow ⇒ \rightrightarrows

\rightleftarrows ⇒ \rightrightarrows

\rightleftarrows \twoheadrightarrow

\rightarrowtail # \looparrowright

\rightleftharpoons y \curvearrowright

\circlearrowright \Rsh

\downdownarrows \upharpoonright

\downharpoonright \rightsquigarrow

4.3.14. Letras en otros estilos

4.3.14.1. Letras caligraficas

AB C D E F G HI J KLMN OP QRS T U V W X Y Z

usar \mathcal〈letra〉 o \cal 〈letra〉.

4.3.14.2. Letras dobles

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

usar \mathbb〈letra〉

4.3.14.3. Letras fraktur

AB CDE F G H I J K L MN OPQ R ST UV W X YZ

usar \mathfrak〈letra〉 con el paquete amssymb

4.3.14.4. Matematicas en negrilla

ABCDEFGHIJKLMNOPQRSTUVWXY Z

usar \mathbf〈letra〉

4.3.15. Sımbolos y WinEdt

Es posible obtener algunos de los sımbolos anteriores desde WinEdt:

32 Matematicas

4.4. Ecuaciones

4.4.1. Ecuaciones numeradas y sin numerar

\beginequation\varphi(x,z) = z - \gamma_10 x - \sum_m+n\geq 2 \gamma_mn xˆm zˆn

\endequation$$\varphi(x,z) = z - \gamma_10 x - \sum_m+n\geq 2 \gamma_mn xˆm zˆn$$

ϕ(x, z) = z − γ10x−∑

m+n≥2

γmnxmzn (1)

ϕ(x, z) = z − γ10x−∑

m+n≥2

γmnxmzn

4.4.2. Ecuaciones con mas de una lınea. El entorno array

El entorno array permite la colocacion alineada de elementos.

$$\beginarraylcll

\Psi(x,t) & = & A(\rm eˆ\rm ikx-\rm eˆ-\rm ikx)\rm eˆ-\rm i\omega t&\\

& = & D\sen (kx)\rm eˆ-\rm i\omega t, & D=2\rm iA\endarray

$$

Ψ(x, t) = A(eikx − e−ikx)e−iωt

= D sen(kx)e−iωt, D = 2iA

Para numerar una ecuacion de este estilo con un unico numero usamos el entornoequation en lugar de $$.

Ψ(x, t) = A(eikx − e−ikx)e−iωt

= D sen(kx)e−iωt, D = 2iA (2)

4.4.3. Entorno eqnarray

El entorno eqnarray es una variante del entorno array que permite numerar cadauna de las lıneas de una ecuacion:

ε =

∫∞0ε exp(−βε) dε∫∞

0exp(−βε) dε

(3)

= − ddβ

log[∫ ∞

0

exp(−βε) dε]

=1β

= kT. (4)

4.4 Ecuaciones 33

\begineqnarray\bar\varepsilon &=& \frac\int_0ˆ\infty\varepsilon\exp(-\beta\varepsilon)\,\rm d\varepsilon\int_0ˆ\infty\exp(-\beta\varepsilon)\,\rm d\varepsilon\nonumber\\

&=& -\frac\rm d\rm d\beta\log\left[\displaystyle\int_0ˆ\infty\exp(-\beta\varepsilon)\,\rm d\varepsilon\right]=\frac1\beta=kT.

\endeqnarray

Notas:

El comando \nonumber situado en una de las lıneas de la ecuacion puede ser usa-

do para suprimir la numeracion de dicha lınea. El comando \notag tiene el mismo

significado

El comando \tag〈texto〉 sustituye el numero por el contenido de texto entre parente-

sis. El comando \tag* suprime los parentesis.

El entorno eqnarray* es equivalente al anterior pero sin introducir numeracion. Los

comandos \tag y \tag* tambien funcionan en este entorno.

LATEX por defecto no permite cambiar de pagina diferentes lıneas de una ecuacion de

este tipo. Para permitirlo es necesario anadir en el preambulo el comando

\allowdisplaybreaks.

Para permitir el salto de pagina en una ecuacion local se puede poner \displaybreak

justo antes del \\ de la ultima lınea de la pagina.

4.4.4. Ecuaciones recuadradas

El uso de \fbox permite obtener lo siguiente:

∫ ∞

0

f(x) dx ≈n∑

i=1

wiexif(xi) (5)

\fboxsep 8pt\fboxrule 1pt\beginequation

\fbox$\displaystyle\int_0ˆ\infty f(x)\,\rm dx\approx\sum_i=1ˆnw_i\rm eˆx_if(x_i)$

\endequation

4.4.5. Entorno align

Este entorno se usa cuando hay mas de dos ecuaciones que deben ser alineadas verti-

calmente (normalmente son relaciones binarias o igualdades). align* suprime la numea-

racion.

34 Matematicas

\beginalignF_\rm fer(k) =& -\frac16 x_0ˆ3 t3\pi \left( \sum_l=1ˆ\infty

-\frac\nuˆ5tˆ4 (x_0ˆ2-l-\frac14)ˆ3\left[S\left(\frac\sqrtx_0ˆ2+lˆ2t;2 \right)

+ 2S\left(\frac\nut;2 \right)\right] \right)\\F_\rm red(t) =& -\frac16 x_0 ˆ3 t3\pi \sum_l=1ˆ\infty

\bigg\ \frac12\nu (x_0ˆ2+lˆ2)ˆ2 \nonumber\\& -\frac\nuˆ5tˆ4 (x_0ˆ2-l-\frac14)ˆ3\bigg[S

\bigg( \frac\sqrtx_0ˆ2+lˆ2t;2 \bigg)+2S\bigg(\frac\nut;2 \bigg)\bigg] \nonumber\\

& +V(x_e ,x_\alpha) -g \delta (x_e - x_\alpha) \bigg\.\endalign

Ffer(k) =− 16x30t

( ∞∑l=1

− ν5

t4(x20 − l − 1

4 )3

[S

(√x2

0 + l2

t; 2

)+ 2S

t; 2

)])(6)

Fred(t) =− 16x30t

∞∑l=1

1

2ν(x20 + l2)2

− ν5

t4(x20 − l − 1

4 )3

[S

(√x2

0 + l2

t; 2

)+ 2S

t; 2

)]+ V (xe, xα)− gδ(xe − xα)

. (7)

4.4.6. Entorno gather

Este entorno se usa para centrar en lıneas separadas dos o mas ecuaciones. La variantegather* suprime la numeracion.

\begingather\frac\int_0ˆ\infty\varepsilon\exp(-\beta\varepsilon)\,\rm d\varepsilon\int_0ˆ\infty\exp(-\beta\varepsilon)\,\rm d\varepsilon\frac\int_0ˆ\infty\varepsilon\exp(-\beta\varepsilon)\,\rm d\varepsilon\int_0ˆ\infty\exp(-\beta\varepsilon)\\\noalign\medskip\int_0ˆ\infty\exp(-\beta\varepsilon)\,\rm d\exp(-\beta\varepsilon)\frac\int_0ˆ\infty\varepsilon\exp(-\beta\varepsilon)\,\rm d\varepsilon\int_0ˆ\infty\exp(-\beta\varepsilon)\\\int_0ˆ\infty\exp(-\beta\varepsilon)\,\rm d\exp(-\beta\varepsilon)

\endgather

∫∞0ε exp(−βε) dε∫∞

0exp(−βε) dε

∫∞0ε exp(−βε) dε∫∞

0exp(−βε)

(8)∫ ∞

0

exp(−βε) d exp(−βε) (9)∫∞0ε exp(−βε) dε∫∞

0exp(−βε)

(10)∫ ∞

0

exp(−βε) d exp(−βε) (11)

4.4.7. Entorno alignat

Corresponde a varias estructuras “align” una junto a otra. Requiere un argumento queindica el numero de estructuras a escribir. Para un numero n de estructuras el numero desımbolos & por lınea debe ser de 2n− 1.

4.4 Ecuaciones 35

\beginalignat*2L_1 & = R_1 &\qquad L_2 & = R_2\\L_3 & = R_3 &\qquad L_4 & = R_4

\endalignat*

L1 = R1 L2 = R2

L3 = R3 L4 = R4

4.4.8. Alineaciones por partes

Es posible generar ciertas formulas formadas por subformulas, cada una de ellas consu propia alineacion. Los entornos asociados son aligned, gathered y alignedat. Cadauno de ellos toma un argumento opcional para especificar su posicion vertical con respectoal material de la otra estructura. Por defecto estara centrado ([c]).

\beginequation*\beginaligned[b]xˆ2 + yˆ2 & = 1\\

x & = \sqrt1-yˆ2\endaligned\qquad\begingathered[t](a+b)ˆ2 = aˆ2 + 2ab + bˆ2 \\(a+b) \cdot (a-b) = aˆ2 - bˆ2

\endgathered\endequation*

x2 + y2 = 1x =

√1− y2 (a+ b)2 = a2 + 2ab+ b2

(a+ b) · (a− b) = a2 − b2

4.4.9. Entorno multline

Este entorno es una variante que se usa para una ecuacion demasiado larga que no cabeen una unica lınea. La primera lınea se coloca en el margen izquierdo, las siguientes soncentradas y la ultima lınea se ajusta al margen derecho.

\beginmultline*\int_0ˆ\infty\varepsilon\exp(-\beta\varepsilon)\,\rm d\varepsilon\int_0ˆ\infty\exp(-\beta\varepsilon)\,\rm d\varepsilon\int_0ˆ\infty\varepsilon\exp(-\beta\varepsilon)\,\rm d\varepsilon\int_0ˆ\infty\exp(-\beta\varepsilon)\\

\noalign\medskip\int_0ˆ\infty\varepsilon\exp(-\beta\varepsilon)\,\rm d\varepsilon\int_0ˆ\infty\exp(-\beta\varepsilon)\,\rm d\varepsilon\int_0ˆ\infty\varepsilon\int_0ˆ\infty\exp(-\beta\varepsilon)

\endmultline*

∫ ∞

0

ε exp(−βε) dε∫ ∞

0

exp(−βε) dε∫ ∞

0

ε exp(−βε) dε∫ ∞

0

exp(−βε)

36 Matematicas

∫ ∞

0

ε exp(−βε) dε∫ ∞

0

exp(−βε) dε∫ ∞

0

ε

∫ ∞

0

exp(−βε)

4.5. Definiciones de Teoremas

Usualmente estas ordenes son incluidas en el preambulo.

\newtheoremthmTeorema\beginthmEste es un ejemplo del entornopara construir teoremas.\endthm\beginthmEste es un segundo teorema.\endthm

Teorema 1 Este es un ejemplo del entornopara construir teoremas.

Teorema 2 Este es un segundo teorema.

Notese que la numeracion de ambos es correlativa.

\newtheoremcolCorolario[thm]\begincol[Aranda, E. 2004]Este es un ejemplo del entornopara construir corolarios.\endcol

Corolario 3 (Aranda, E. 2004) Este es unejemplo del entorno para construir corola-rios.

Notese que se sigue la numeracion dada en los teoremas.

\newtheoremrmkNota[section]\beginrmkEste es un ejemplo del entornopara construir notas.\endrmk

Nota 4.5.1 Este es un ejemplo del entornopara construir notas.

Observese que la numeracion depende de la de la seccion en curso.

38 Edicion de texto

\Large ‘‘Todo saber tienede ciencia lo que tiene dematematica", Poincare \par

“Todo saber tiene de ciencia loque tiene de matematica”, Poin-care

\Large ‘‘Todo saber tienede ciencia lo que tiene dematematica", Poincare \par

“Todo saber tiene de ciencia loque tiene de matematica”, Poin-care

5.3. Formateando texto

Aunque la justificacion que hace LATEX del texto es a izquierda y a derecha, es posibleconstruir texto centrado, o justificado a derecha e izquierda con el entorno apropiado.

5.3.1. Texto centrado

El entorno center hace que el texto aparezca centrado. Si el texto fuera muy largo,LATEX se ocupa de partilo en varias lıneas, y si queremos indicarle el salto de lınea se uti-liza el comando \\, o equivalentemente \cr. No hay problema en que el texto contengaparrafos.

\begincenterEl ingenioso hidalgo \\D. Quijote de la Mancha \\[.3cm]Miguel de Cervantes Saavedra\endcenter

El ingenioso hidalgoD. Quijote de la Mancha

Miguel de Cervantes Saavedra

5.3.2. Alineacion a izquierda o derecha

De forma similar al entorno center existen los entornos flushright y flushleft paraalineacion a derecha e izquierda, respectivamente.

\beginflushleftEste texto aparecera \\alineado por su \\parte izquierda\endflushleft\beginflushrightAhora este texto \\tiene alineacion \\a la derecha\endflushright

Este texto apareceraalineado por suparte izquierda

Ahora este textotiene alineacion

a la derecha

5.3.3. Citas textuales y poemas

Existen otros entornos para resaltar partes de un texto, como citas textuales o poemas,de cierta longitud. LATEX posee entornos que nos permiten hacerlo: quote, quotation yverse, cuyo uso es

\beginquote texto \endquote\beginquotation texto \endquotation\beginverse texto \endverse

5.4 Interlineado, sangrıa, parrafos,. . . 39

El entorno quote es adecuado para una cita textual no larga,

... Bertrand Russell escribio:\beginquoteLas Matematicas puedenser definidas como aquel temaen el cual ni sabemos nuncalo que decimos ni si lo quedecimos es verdadero.\endquote

... Bertrand Russell escribio:

Las Matematicas pueden ser definidas comoaquel tema en el cual ni sabemos nunca loque decimos ni si lo que decimos es verda-dero.

El entorno quotation es mas apropiado para citas largas. Notese la diferencia conrespecto al anterior:

... Bertrand Russell escribio:\beginquotationLas Matematicas puedenser definidas como aquel temaen el cual ni sabemos nuncalo que decimos ni si lo quedecimos es verdadero.\endquotation

... Bertrand Russell escribio:

Las Matematicas pueden ser defi-nidas como aquel tema en el cual nisabemos nunca lo que decimos ni si loque decimos es verdadero.

Para escribir poesıa disponemos del entorno verse, donde cada verso es separado conel comando \\

\beginverseMaldigo la poesıa concebida como un lujo \\cultural por los neutrales \\que, lavandose las manos,se desentienden y evaden. \\Maldigo la poesıa de quien notoma partido hasta mancharse \\\rightline(\textscG. Celaya)\endverse

El codigo anterior genera

Maldigo la poesıa concebida como un lujocultural por los neutralesque, lavandose las manos, se desentienden y evaden.Maldigo la poesıa de quien no toma partido hasta

mancharse(G. CELAYA)

5.4. Interlineado, sangrıa, parrafos,. . .

El control del espacio entre lıneas del texto se puede cambiar en el preambulo con laorden

\renewcommand\baselinestretch〈Numero〉

40 Edicion de texto

donde Numero se refiere a un factor de interlineado, que por defecto es 1. Si ponemosNumero igual a 2 estaremos escribiendo a doble espacio, etc. Es posible fijar Numero aun valor decimal.

Al inicio de un parrafo, LATEX introduce un sangrado de forma automatica, que puedeser evitado con el comando

\noindent

Notese que el uso o no del paquete babel altera el funcionamiento del sangrado.El salto de lınea sin provocar un cambio de parrafo puede llevarse a cabo con uno de

los comandos siguientes:

\newline\\[〈Salto〉]

donde el argumento opcional Salto se refiere a la distancia vertical adicional a la que debesituarse la siguiente lınea. Si tal lınea no queda en la misma pagina, LATEX ignorara dichalongitud. La version

\\*

indica que la lınea que se inicia despues del comando no debe pasar a la pagina siguiente.Para aumentar la distancia entre parrafos pueden usarse los comandos

\smallskip\medskip\bigskip

el ultimo de los cuales aproximadamente supondrıa dejar una lınea en blanco, mientras quelos otros se refieren a la mitad y cuarta parte de este.

Para poner distancias entre palabras podemos usar alguno de los comandos siguientes

\ espacio entre palabras\quad longitud de una M\qquad longitud de dos M

Y los siguientes comandos introducen espacios tanto horizontales (si van en un textonormal) como verticales (si van entre parrafos)

\enspace espacio de longitud medio M\thinspace espacio de longitud 0,16667 M\negthinspace espacio negativo de longitud 0,16667 M

Es posible modificar con mayor precision las distintas longitudes (vease Seccion 10.1)con los comandos

\vspace〈longitud〉 anade espacio vertical\hspace〈longitud〉 anade espacio horizontal

5.5. Notas a pie de pagina

Las notas a pie de pagina se generan con el comando

\footnote〈texto de la nota〉

en la posicion del texto en la que queremos que aparezca la marca de la nota. La notaaparece tal y como puede verse en esta pagina.1

1 Vease como la nota ha sido producida: “ ... en esta pagina\footnoteVease como la nota ha sido ... .

5.6 Notas al margen 41

Las notas son numeradas correlativamente. No obstante, si queremos usar sımboloscomo ∗, †, . . . en lugar de numeros basta cambiar la representacion del contador del si-guiente modo:

\renewcommand\thefootnote\fnsymbolfootnote

y no olvidar que se dispone solo de nueve sımbolos.Las notas dentro del entorno minipage deben ser usadas con el comando

\footnotemark en el lugar deseado, y luego de salir del entorno minipage se escribe\footnotetextTexto. Lo mismo ocurre en un entorno tabular. No obstante el entornolongtable sı admite el uso habitual de \footnote.

5.5.1. Notas al final

En algunos casos puede ser conveniente hacer que las notas aparezcan todas juntas enel momento que se desee. El paquete endnotes implementa los comandos

\endnote[〈Numero〉]Texto\endnotemark[〈Numero〉]\endnotetext[〈Numero〉]Texto

que funcionan de forma similar a los correspondientes \footnote, etc. Para imprimir lasnotas bastara usar el comando

\theendnotes

Nota primera.1 Segunda nota.2

Aquı hay una tercera.3

Notas1Primera nota.2Segunda nota.3Tercera nota.

Mas texto a continuacion.

Nota primera.\endnotePrimera nota.Segunda nota.\endnoteSegunda nota.Aquı hay unatercera.\endnoteTercera nota.

\theendnotes\bigskipMas texto a continuacion

5.6. Notas al margen

La inclusion de notas al margen es similar a la de las notas al pie. El comando es

\marginpar[TextoIzquierda]TextoDerecha

Este comando crea una nota al margen cuyo contenido TextoDerecha (si se elude elargumento opcional) comienza a imprimirse a la misma altura en la que se imprime la lıneade texto principal. Si se emplea la opcion oneside, la nota se imprime a la derecha, y si seusa la opcion twoside, en el exterior.

Si se usa el argumento opcional, el texto TextoIzquierda aparecera cuando la notacorresponda al margen izquierdo y el texto TextoDerecha lo hara cuando la nota este enel margen derecho.

5.7. Division silabica

Cuando la inclusion de una palabra supera la longitud de lınea y su exclusion la hacedemasiado corta, LATEX introduce una separacion silabica segun un algoritmo que dependedel idioma en que este trabajando. En caso de que el algoritmo no funcione correctamente,

42 Edicion de texto

es posible indicar al compilador los posibles lugares en los que se puede dividir dichapalabra. El comando a utilizar es

\-

Este comando actua localmente sobre la palabra en cuestion, pero si queremos proporcionaral compilador informacion sobre como dividir ciertas palabras en todo el texto, es posibleusar la orden

\hyphenation〈palabra1,palabra2,palabra3,. . . 〉

con la division correspondiente, en la forma siguiente\hyphenationma-ter-ni-dad,al-bo-ro-to

5.8. Otros sımbolos

El uso de comillas dobles, simples, guiones, ordinales, puntos suspensivos y otrossımbolos esta ilustrado en el siguiente texto.

Las comillas ((dobles)) o ((francesas)) difieren de las “inglesas”, o las comillas‘simples’. Los guiones pueden ser -cortos-, –medios– o —largos—, y los puntossuspensivos ... a veces son mas cortos y a veces mas largos . . .Hay infinidad de sımbolos adicionales que no es necesario aprender, como c©,los ordinales 1a, 3er, 34o o el sımbolo del euro e, para el que es necesario el usodel paquete eurosym

El codigo anterior se ha generado con

Las comillas <<dobles>> o <<francesas>>difieren de las ‘‘inglesas",o las comillas ‘simples’. Los guiones puedenser -cortos-, --medios-- o ---largos---, y lospuntos suspensivos ... a veces son mascortos y a veces mas largos \dots

Hay infinidad de sımbolos adicionales que noes necesario aprender, como \copyright,los ordinales 1\textsuperscripta,3\textsuperscripter, 34\textsuperscriptoo el sımbolo del euro \euro, para el que esnecesario el uso del paquete \bf eurosym

5.9. Evitar la separacion de palabras

Si no se desea que en un texto dos palabras seguidas aparezcan en lıneas distintas,como en el texto siguiente

Los nombres propios con abreviaturas como el de A.Einstein, o la numeracion de capıtulos, como Seccion2.3 no deberıan aparecer en lıneas separadas.

es necesario emplear el caracter ˜. Ası escribirıamos A.˜Einstein, etc.

Los nombres propios con abreviaturas como el deA. Einstein, o la numeracion de capıtulos, como enSeccion 2.3 no deberıan aparecer en lıneas separadas.

5.10 Color 43

5.10. Color

El uso de color en LATEX necesita la inclusion del siguiente paquete

\usepackagecolor

Para escribir texto coloreado usamos los comandos

\color〈nombre del color〉 texto a colorear

o alternativamente

\texcolor〈nombre del color〉〈texto a colorear〉

Los nombres de colores mas usados son:

red green blue cyan magenta yellow

Es posible ampliar la lista de colores usados si empleamos la opcion usenames en lallamada del paquete. De este modo tendremos acceso a los colores siguientes:

GreenYellow Yellow Goldenrod Dandelion Apricot

Peach Melon YellowOrange Orange BurntOrange

Bittersweet RedOrange Mahogany Maroon BrickRed

Red OrangeRed RubineRed WildStrawberry Salmon

CarnationPink Magenta VioletRed Rhodamine Mulberry

RedViolet Fuchsia Lavender Thistle Orchid

DarkOrchid Purple Plum Violet RoyalPurple

BlueViolet Periwinkle CadetBlue CornflowerBlue MidnightBlue

NavyBlue RoyalBlue Blue Cerulean Cyan

ProcessBlue SkyBlue Turquoise TealBlue Aquamarine

BlueGreen Emerald JungleGreen SeaGreen Green

ForestGreen PineGreen LimeGreen YellowGreen SpringGreen

OliveGreen RawSienna Sepia Brown Tan

Gray Black White

Si compilamos con PDFLATEX debemos usar las opciones del paquete color usenames ydvipsnames.

6.4 Listas anidadas 45

6.4. Listas anidadas

Las listas anteriores pueden ser incluidas unas dentro de otras, tanto del mismo como

de distinto tipo, hasta cuatro niveles de inclusion (por defecto).

El sangrado de parrafo, la distancia entre renglones, etc. esta marcado por defecto,

aunque puede ser configurado por el usuario.

En el siguiente ejemplo mostramos listas mixtas, con cuatro niveles de inclusion:

Primer nivel en itemize

1. Primer nivel en enumerate (segundo nivel global)

• Segundo nivel en itemize (tercero global)

a) Segundo en enumerate (cuarto global)

b) Segundo elemento del cuarto nivel

• Vuelta al tercer nivel global (segundo en itemize)

2. Segundo nivel (primero en enumerate)

Primer nivel

\beginitemize\item Primer nivel en \tt itemize\beginenumerate\item Primer nivel en \tt enumerate (segundonivel global\beginitemize\item Segundo nivel en \tt enumerate

(tercero global)\beginenumerate\item Segundo en \tt enumerate

(cuarto global)\item Segundo elemento del cuarto nivel

\endenumerate\item Vuelta al tercer nivel global (segundo

en \tt itemize)\enditemize

\item Segundo nivel (primer en \tt enumerate)\endenumerate

\item Primer nivel\enditemize

6.5. Manipulacion de etiquetas en el entorno enumerate

El estilo de numeracion y las etiquetas que senalan cada lista son configurables facil-

mente. En el entorno enumerate, las etiquetas por defecto son:

46 Listas

1. Etiqueta de primer nivel2. Etiqueta de segundo nivel

a) Etiqueta de segundo nivelb) Etiqueta de segundo nivel

1) Etiqueta de tercer nivel2) Etiqueta de tercer nivel

a′ Etiqueta de cuartonivel

b′ Etiqueta de cuartonivel

3) Etiqueta de tercer nivel4) Etiqueta de tercer nivel

c) Etiqueta de segundo niveld) Etiqueta de segundo nivel

3. Etiqueta de primer nivel4. Etiqueta de primer nivel

La numeracion por defecto en la lista de ni-vel uno esta formada por numeros arabigos,el nivel dos por letras en minusculas, el niveltres son numeros nuevamente y el cuatro le-tras con apostrofe. Cada uno de estas etique-tas puede cambiarse redefiniendo apropiada-mente los comandos que los generan.La representacion de estos son los comandos\theenumi, \theenumii, \theenumiii y\theenumiv, uno para cada nivel. mientrasque las etiquetas que generan la construccionde tales comandos son \labelenumi,\labelenumii, \labelenumiii y\labelenumiv.

Si queremos cambiar este comportamiento por defecto en cualquier nivel, es necesarioredefinir ambos comandos, justo antes del inicio del entorno correspondiente. Por ejemplo,

\renewcommand\theenumi\Romanenumi\renewcommand\labelenumi[\textbf\theenumi]\renewcommand\theenumii\Alphenumii\renewcommand\labelenumii[\textbf\theenumi.\textit\theenumii]

El resultado es el siguiente:

[I] Primer nivel[I.A] Segundo nivel[I.B] Segundo nivel

[II] Primer nivel

Los comandos que permiten cambiar el es-tilo de la numeracion son \arabic (nume-ros), \roman, \Roman (numeracion roma-na, en minusculas y mayusculas) y \alph,\Alph (numeracion alfabetica, en minuscu-las y mayusculas). Tengase en cuenta que lis-tas alfabeticas con mas elementos que letrasgenerara errores en la compilacion.

6.6. Manipulacion de etiquetas en el entorno itemize

Primer nivelPrimer nivel

• Segundo nivel• Segundo nivel

Tercer nivel Tercer nivel

Cuarto nivel Cuarto nivel

Tercer nivel Tercer nivel

• Segundo nivel• Segundo nivel

Primer nivelPrimer nivel

El esquema de etiquetas por defecto eneste entorno es $\blacksquare$ () enel nivel uno, \textbullet (•) en el ni-vel dos, $\circ$ () en el nivel tres y$\diamond$ () en el nivel cuatro. La mo-dificacion de estas etiquetas se lleva a caboredefiniendo los comandos del nivel corres-podiente \labelitemi, \labelitemii,\labelitemiii y \labelitemiv.

6.6 Manipulacion de etiquetas en el entorno itemize 47

Por ejemplo, para cambiar la etiqueta de nivel uno por un trebol haremos

\renewcommand\labelitemi$\clubsuit$ ♣ Primer nivel♣ Primer nivel

6.6.1. Argumento opcional en el comando \item

El argumento opcional del comando \item en el entorno description esta tambiendisponible en los entornos enumerate y itemize, pudiendo ser utilizado para sobreescribirlas marcas automatizadas que generan ambos entornos.

56 Tablas

\hlineeste comando dibuja una lınea horizontal entre fila y fila. Debe aparecer solo antesde la primera fila, o justo a continuacion de \\. Dos comandos \hline dibujan doslıneas con un pequeno espacio entre ellas.

\clinen − mcomo el comando \hline, dibuja una lınea horizontal entre la columna n hasta lacolumna m. Solo puede aparecer detras de \\ y puede haber mas de uno.

\vlineeste comando dibuja una lınea vertical en la lınea en la que aparece de altura corres-pondiente a la fila en la que se encuentra.

\multicolumn〈numero〉coltextoengloba un numero de columnas dado por numero bajo una columna simple cuyaanchura corresponde a las que engloba, con formato dado en col y con el contenidode texto.

8.2. Ejemplos

Tabla con numerosuno dos trescuatro cinco seissiete ocho nuevediez once docetrece catorce

\begintabular|l|c|r|\hline\multicolumn3|c|Tabla con numeros\\\hlineuno & dos & tres \\\hline \hlinecuatro & cinco & seis \\\cline1-2siete & ocho & nueve \\\cline2-3diez & once & doce \\\cline1-2trece& \multicolumn2ccatorce \\\hline\endtabular

Paıs Total Indıgenas PorcentajeBolivia 6,9 4,9 71Guatemala 8,0 5,3 66Peru 20,0 9,3 47Ecuador 9,5 4,15 43

\begintabular|lrrc|\hlineBolivia & 6,9 & 4,9 & 71 \\\hline. . .Ecuador & 9,5 & 4,15 & 43 \\\hline\endtabular

Tablas con objetos fijos:

Estados Unidos 4,7 0,15Espana 1,82 0,25Francia 3,4 0,6

\begintabular|l|r@,l|r|\hlineEstados Unidos & 4 & 7 & 0,15 \\\hline. . .\endtabular

8.3 Parametros de estilo 57

Capıtulo 1: Temas 1 - 8Capıtulo 2: Temas 9 - 11Capıtulo 3: Temas 12 - 20

\begintabular|@\textbf\ Capıtulo r%@:\quad Lecciones r\%@\thispace-\thinspacel@\ |\hline\textbf1 & 1 & 8\\\textbf2 & 9 & 11\\\textbf3 & 12 & 20\\\hline\endtabular

Tablas con parrafos:

Esto es un parrafo in-sertado dentro de la cel-da de una tabla

El uso delarguısimasy absolu-tamenteeternas pala-bras crea unmal efectobienaventurado

\begintabular|p3cm|p1.6cm|\hlineEsto es un . . .& El uso de . . .. . .\endtabular

Para evitar la justificacion a ambos lados estan los comandos \raggedright (justifi-cacion a derecha), \raggedleft (izquierda) o \centering

Por otra parte, LATEX nunca divide la primera palabra de un parrafo, de modo que esnecesario iniciar el parrafo con algo (un espacio vacıo, por ejemplo).

El ejemplo anterior se puede corregir del siguiente modo

Esto es un parrafoinsertado dentro de lacelda de una tabla

El uso delarguısimasy absoluta-menteeternaspalabrascrea un malefectobienaventu-rado

\begintabular|p3cm|p1.6cm|\hline\raggedright Esto es un . . . &\raggedright El uso de . . .mal efecto\tabularnewline\hline& \hspace0cmbienaventurado \\\hline\endtabular

Observese como se ha usado el comando \tabularnewline en lugar de \\. Ambosson equivalentes, pero en este caso el segundo produce mensajes de error que son evitadoscon el primero.

8.3. Parametros de estilo

El estilo de las tablas esta definido por defecto por LATEX, y puede ser cambiado, glo-balmente en el preambulo, o de forma local, no dentro del entorno.

\tabcolsep corresponde a la mitad de la anchura del espacio insertado entre doscolumnas.

\arrayrulewidth es el grosor de las lıneas que conforman la tabla.

\doublerulesep es la separacion entre las lıneas dobles.

Para modificar estos parametros de estilo usamos las siguientes declaraciones:

58 Tablas

\setlength\tabcolsep〈dimension〉\setlength\arrayrulewidth〈dimension〉\setlength\doublerulesep〈dimension〉

\arraystretch modifica la distancia entre las filas. Se trata de un factor multipli-cativo, de modo que el valor estandar corresponde a 1, y un valor de 1.5 aumenta un50 % la distancia.

Para modificar este valor usamos la declaracion:

\renewcommand\arraystrech〈factor〉

8.4. Tablas como objetos flotantes

Al igual que las figuras, las tablas no deberıan (salvo excepciones) ser separadas enmas de una pagina, por lo que su ubicacion deberıa ser determinada por el compilador. Paratratar las tablas como un objeto flotante disponemos del entorno table, cuya sintaxis es

\begintableEntorno tabular\captionPie de la tabla\labeletiqueta\endtable

8.5. Tablas de longitud superior a una pagina

El entorno tabular produce un error si la tabla debe aparecer en mas de una paginadiferente. Para producir tablas de longitud superior disponemos del paquete longtable.

El entorno longtable es similar al entorno tabular como puede comprobarse en elsiguiente ejemplo.

8.5.1. Ejemplo

Tabla 6: Una tabla muy larga

Esta parte aparecera en la parte superiorPRIMERO1 SEGUNDO *TERCERO

Esta tabla es un ejemplo * 1del uso del entorno longtable. Recuerdese * 2

la necesidad de cargar el paquete * 3con \usepackagelongtable * 4

La estructura de las filas es la misma * 5que en el entorno tabular * 6

Esta lınea es la ultima de cada pagina

1 Es posible poner una nota al pie en la cabecera de la tabla usando \footnotemark y\footnotetext.

8.5 Tablas de longitud superior a una pagina 59

Tabla 6: (continuacion)

Esta parte aparecera en la parte superior de la continuacionPrimero Segundo * Tercero

El comando \\[.5cm] tiene el efecto * 7

habitual * 8Tengase en cuenta que un parrafo completocomo este no se rompera en varias paginas

* 9

El parrafo anterior ha hecho uso del * 10comando \centering * 11Aquı viene otra lınea Numero * 12Aquı viene otra lınea Numero * 13Aquı viene otra lınea Numero * 14Aquı viene otra lınea Numero * 15Aquı viene otra lınea Numero * 16Aquı viene otra lınea Numero * 17Aquı viene otra lınea Numero * 18Aquı viene otra lınea Numero * 19Aquı viene otra lınea Numero * 20Aquı viene otra lınea Numero * 21Aquı viene otra lınea Numero * 22Aquı viene otra lınea Numero * 23Aquı viene otra lınea Numero * 24Aquı viene otra lınea Numero * 25Aquı viene otra lınea Numero * 26Aquı viene otra lınea Numero * 27Aquı viene otra lınea Numero * 28Aquı viene otra lınea Numero * 29Aquı viene otra lınea Numero * 30

Ultimas lıneasde la tabla

8.5.2. Argumentos opcionales

Los argumentos opcionales en \beginlongtable son:

c La tabla es alineada al centro.l La tabla es alineada a la izquierda.r La tabla es alienada a la derecha.

Si no se especifica nada, la posicion se alinea en funcion del valor de \LTleft y \LTright.

60 Tablas

8.5.3. Codigo fuente

\beginlongtable|p2.5in||p1in@*c|\captionUna tabla muy larga\labellong\\\hline\hline\multicolumn3|c|Esta parte aparecera en la parte superior\hline\raggedleft \textscPrimero\footnotemark & \textscSegundo& \textscTercero \\ \hline\hline\endfirsthead\caption(continuacion)\\ \hline\hline\multicolumn3|c| Esta parte aparecera en la parte superior de la continuacion\\ \hline\raggedleft \textbfPrimero&\textbfSegundo&\textbfTercero \\\hline\hline\endhead\hline\multicolumn3|r|\small Esta lınea es la ultima de cada pagina\\\hline\endfoot\hline\multicolumn3|r|\emphUltimas lıneas\\\multicolumn3|l|\emphde la tabla\tabularnewline\hline \endlastfoot\footnotetextEs posible poner una nota al pie en la cabecera ...\raggedleft Esta tabla es un & ejemplo & 1 \\\raggedleft del uso del entorno longtable. & Recuerdese & 2 \\\raggedleft la necesidad de cargar & el paquete & 3 \\. . .Aquı viene otra lınea & Numero & 19\\\hline\endlongtable

62 Aspectos generales

Ademas, el comando \include siempre inicia una nueva pagina del documento en elque se inserta.

Una particion de documento tıpica puede ser esta:

\documentclassreport\inputmiestilo.sty\includeonlycap2,cap3\begindocument\includecap1\includecap2\includecap3\enddocument

9.2. Longitudes

En LATEX existen dos tipos de longitudes: rıgidas y elasticas. Los valores rıgidos sonvalores precisos que LATEX respeta, mientras que los valores elasticos poseen cierta holguraque el compilador usa para adaptar la composicion.

Entre los valores rıgidos, LATEX usa longitudes absolutas, o longitudes relativas a lafuente en uso. Las siguientes corresponden a las longitudes validas en LATEX:

Longitud Descripcionsp Unidad mas pequena: 1 mm=186712 sppt Punto: 1 pt=0,351 mmbp Punto grande: 1 in = 72 bpdd Punto Didot: 1 dd = 0,376 mmmm Milımetro: 1 mm = 2,845 ptpc Pica: 1 pc = 12 pt = 4,218 mmcc Cicero: 1 cc = 12 dd = 4,531 mmcm Centımetro: 1 cm = 28,45 ptin Pulgada: 1 in = 25,4 mm = 72,27 ptex Altura de una ‘x’em Anchura de una ‘M’:mu Unidad matematica (18 mu = 1 em)

de las cuales, las tres ultimas dependen del tamano de la fuente.Los comandos \bigskip, \medskip, etc. son longitudes elasticas que LATEX puede

modificar segun un rango. Por ejemplo, el comando \bigskip se define como

\vspace12pt plus 4pt minus 4pt

lo cual indica que el espacio vertical asignado es de 12pt pero puede ser aceptable cualquierlongitud entre 8pt y 16pt.

La modificacion de longitudes se puede llevar a cabo con los comandos

\setlength\nombre de la longitud〈valor〉\addtolengthnombre de la longitud〈valor〉

El primero asigna a la longitud el valor dado (rıgido o elastico), mientras que el segundoincrementa la longitud en el valor dado. Es posible crear nuevas longitudes con el comando

\newlength\nueva longitud

que poseen una longitud inicial de 0pt.

9.3 Parametros de una pagina 63

9.3. Parametros de una pagina

Una pagina en LATEX esta construida a partir de varios elementos: el encabezamientoo cabecera, el cuerpo central y el pie (que no debe confundirse con la zona reservada a lasnotas a pie de pagina que forman parte del cuerpo). En las Figuras 4 y 5 se muestran losdiferentes parametros de una pagina impar y par, respectivamente, en un documento a doscaras. A continuacion exponemos una breve descripcion de estos parametros

\hoffset Define el borde izquierdo de impresion + 1in.\oddsidemargin Denota el margen izquierdo de una pagina impar.\evensidemargin Denota el margen izquierdo en una pagina par. Si la opcion twoside

no ha sido seleccionada, \oddsidemargin y \evensidemargin

son iguales.\textwidth Anchura del texto.

\voffset Define el borde superior de impresion + 1in.\topmargin Espacio entre el offset vertical y la cabecera.\headheight Altura de la cabecera.\headsep Distancia entre la base de la cabecera y el cuerpo.\textheight Altura del cuerpo central.

\footskip Distancia entre el cuerpo central y el pie.\footheight Altura del pie.

\marginparsep Separacion entre el cuerpo y el margen para las notas.\marginparwidth Anchura del margen para las notas.\marginparpush Separacion vertical mınima entre dos notas al margen.

\parskip Espacio vertical entre dos parrafos.\parindent Anchura de la sangrıa de comienzo de parrafo.\topsep Espacio vertical extra que se anade a \parskip por encima y por

debajo de las listas.\itemsep Espacio vertical extra que se anade a \parskip entre dos elementos

de una lista.

La modificacion de cualquiera de estos parametros se lleva a cabo con

\setlengthparametrolongitud

64 Aspectos generales

Header

Body

Footer

Margin

Notes

i8 -

i7

?

6

i1 -

-i3

i10 -

-i9

6

?

i11

i2

?

6

6

?

i4

6

?

i5

6

?

i6

1 one inch + \hoffset 2 one inch + \voffset

3 \oddsidemargin = 17pt 4 \topmargin = 17pt

5 \headheight = 12pt 6 \headsep = 25pt

7 \textheight = 548pt 8 \textwidth = 390pt

9 \marginparsep = 10pt 10 \marginparwidth = 95pt

11 \footskip = 30pt \marginparpush = 7pt (not shown)

\hoffset = 0pt \voffset = 0pt

\paperwidth = 614pt \paperheight = 794pt

Figura 4 Dimensiones de una pagina impar

9.3 Parametros de una pagina 65

Header

Body

Footer

Margin

Notes

i8 -

i7

?

6

i1 -

-i3

i10 -

-i9

6

?

i11

i2

?

6

6

?

i4

6

?

i5

6

?

i6

1 one inch + \hoffset 2 one inch + \voffset

3 \evensidemargin = 62pt 4 \topmargin = 17pt

5 \headheight = 12pt 6 \headsep = 25pt

7 \textheight = 548pt 8 \textwidth = 390pt

9 \marginparsep = 10pt 10 \marginparwidth = 95pt

11 \footskip = 30pt \marginparpush = 7pt (not shown)

\hoffset = 0pt \voffset = 0pt

\paperwidth = 614pt \paperheight = 794pt

Figura 5 Dimensiones de una pagina par

10.1 Cajas tipo parrafo 67

\fboxrule Controla la anchura de la lınea (el valor por defecto es 0.4pt).

\fboxsep Controla el espacio entre el contenido de la caja y el rectangulo. El valor pordefecto es 0pt. En los ejemplos anteriores ha sido puesto a 6pt.

Texto con separacion 0pt

Texto con separacion 3pt

Texto con separacion 6pt

\fboxsep 0pt\fboxTexto con separacion 0pt

\fboxsep 3pt\fboxTexto con separacion 3pt

\fboxsep 6pt\fboxTexto con separacion 6pt

Grosor a 0.1pt

Grosor a 1pt

Grosor a 3pt

\fboxrule 0.1pt\fboxGrosor a 0.1pt

\fboxrule 1pt\fboxGrosor a 1pt

\fboxrule 3pt\fboxGrosor a 3pt

10.1. Cajas tipo parrafo

Para obtener un buen resultado con las cajas usadas anteriormente es conveniente queel texto no sobrepase el ancho de lınea fijado. Para usar cajas con un mayor contenido detexto existen las cajas tipo parrafo, que se construyen con el comando \parbox o con elentorno minipage.

El material es impreso como un parrafo dentro de una caja de anchura width, y posi-cionado respecto de la lınea base segun el parametro posicion que puede tomar los valoresc, t o b, para alineacion central, superior o inferior. Hay otros dos argumentos optativos(que exigen que todos los parametros optativos se utilicen) que son alto y posicion relativa,que se refieren a la altura de la caja, y a la posicion en altura dentro de la caja. La sintaxisde las ordenes son

\parbox[〈posicion〉][〈alto〉][〈posrel〉]〈width〉〈texto〉

\beginminipage[〈posicion〉][〈alto〉][〈posrel〉]〈width〉Texto\endminipage

Esta es una caja cuya longitud delınea equivale al 30 % de la longi-tud de la lınea en curso. lınea base

Las cajas tipo parrafo son tratadaspor el compilador como si fueranun unico caracter, alineandolas enfuncion del parametro de posicionopcional, que por defecto es c, esdecir, centrado.

Estas cajas han sido generadas del siguiente modo:

\parbox[b].3\linewidthEsa es una caja . . . en curso.\hfill lınea base \hfill\parbox.3\linewidthLas cajas tipo . . . decir, centrado.

68 Cajas

El entorno minipage funciona como una autentica pagina en la que es posible incluircasi cualquier construccion LATEX estandar. En el siguiente ejemplo, la lınea roja marca lalınea base

\beginminipage[b].3\linewidthEl entorno \emphminipage funciona casi comoel comando \emphparbox. La lıneabase esta alineada con

\endminipage\hrulefill\beginminipage[c].3\linewidthla mitad de este parrafo estrecho, quea su vez

\endminipage\hrulefill\beginminipage[t].3\linewidthse alinea con la lınea superior de laminipagina de la parte derecha. Es convenienteque el estudiante practique con diferentes alineaciones.

\endminipage

El entorno minipage funcionacasi como el comando parbox.La lınea base esta alineada con

la mitad de este parrafo estre-cho, que a su vez

se alinea con la lınea superiorde la minipagina de la parte de-recha. Es conveniente que el es-tudiante practique con las dife-rentes alineaciones.

Se pueden elaborar cajas mas sofisticadas como las del siguiente ejemplo:

Esta minipaginatiene una alturade tres centıme-tros, que es su-perior a la alturadel texto que con-tiene.

Esta tiene la mis-ma altura, pero eltexto esta verti-calmente centra-do.

Es evidente queaquı, el texto hasido alineado conla base.

Las cajas anteriores han sido hechas del siguiente modo

\fboxsep 12pt \fboxrule 1pt\fbox%\beginminipage[b][3cm][t]2cmEsta minipagina tiene

...texto que contiene.\endminipage\hfill

\fbox%\beginminipage[b][3cm][c]2cmEsta tiene la . . . centrado.\endminipage\hfill

\fbox%\beginminipage[b][3cm][b]2cmEs evidente que . . . con la base.\endminipage

10.2 Rellenando espacio entre cajas 69

10.2. Rellenando espacio entre cajas

La separacion producida entre las cajas de los ejemplos anteriores ha sido hecha concomandos tales como

\hfill \dotfill \hrulefill \vfill

que rellenan espacio entre objetos, sin necesidad de especificar exactamente dicho espacio.El funcionamiento de estos comandos se describe a continuacion:

\hfill insertado entre dos objetos situadas en una misma caja con anchura fijada (una lınea,por ejemplo), introduce un espacio vacıo hasta conseguir que aparezcan separadosentre sı lo maximo que permita la anchura de la caja.

\hrulefill Igual que \hfill pero en lugar de un espacio en blanco introduce una rayahorizontal.

\dotfill Igual que los anteriores, pero introduciendo una lınea de puntos.

\vfill Las mismas caracterısticas que \hfill pero aplicado a espacios verticales.

Principio FinPrincipio FinPrincipio . . . . . . . . . . . . . . . . . . . . . . . . Fin

Abajo

\beginminipage[c][3cm][c].4\linewidthPrincipio \hfill Fin \\Principio \hrulefill\ Fin \\Principio \dotfill \ Fin \\\vfill \centeringAbajo\endminipage

Aquı podemos ver otro ejemplo del uso de espacios entre cajas:

LPe

LaPeraEdiciones

S.L. FanteDirector de [email protected]

D. Pedro AprendizAvda. de la Fantasıa, 16Ciudad Imaginaria

Estimado amigo:

Tomamos nota de la peticion que nos hace y le agradecemos laconfianza que deposita en nuestra empresa.Los servicios que nos solicita requieren para su realizacion unuso intensivo de cajas. En este caso hemos creado un logoti-po ((casero)) que funciona como una caja. La otra caja creadaesta reservada para el director del proyecto, y finalmente otrapara el destinatario de la carta.

10.3. Algo mas de sofisticacion

10.3.1. Rectangulos

Las rayas de cualquier grosor pueden considerarse cajas rellenas de tinta. La sintaxisde estas rayas es:

\rule[〈elevacion〉]〈ancho〉〈alto〉

70 Cajas

que da lugar a un rectangulo solido de anchura ancho y altura alto elevada (opcionalmente)sobre la lınea base segun una distancia dada por elevacion.

Notese que si elevacion es una longitud negativa, el rectangulo se desplazara por deba-jo de la lınea base. Ası, \rule1cm1mm genera mientras que \rule[-.3cm]3in3mmgenera

Introduciendo rayas en cajas de anchura 0pt, es posible realizar el siguiente ejemplo

La raya se llama cana en tipografıa.Y esta otra se conoce como media cana.

El codigo que lo genera es

La raya \makebox[0pt][l]\rule[2.5pt]1cm1pt\rule1cm1pt se llama . . .\par. . . otra \makebox[0pt][l]\rule[4.5pt]1cm1pt\rule1cm3ptse conoce como . . .

10.3.2. Mover cajas verticalmente

Otra posibilidad interesante la constituye el comando \raisebox que permite levantaro bajar el contenido de la caja desde la lınea base. La sentecia de uso es:

\raisebox〈elevacion〉[〈prof 〉][〈altura〉]〈contenido〉

lınea base arriba lınea base abajo lınea base

Este ejemplo ha sido realizado con

\frameboxlınea base \raisebox1exarribalınea base \raisebox-1exabajo lınea base

72 Referencias cruzadas en LATEX

En el silogismo clasico\beginenumerate\item Todos los hombres son mortales.\labelpre1\item Socrates es un hombre.\labelpre2\item Por tanto, Socrates es mortal.\labelcon\endenumerateLas afirmaciones (\refpre1) y (\refpre2)son las premisas y (\refcon) es la conclusion.

genera la siguiente salidaEn el silogismo clasico

1. Todos los hombres son mortales.2. Socrates es un hombre.3. Por tanto, Socrates es mortal.

Las afirmaciones (1) y (2) son las premisas y (3) es la conclusion.

11.2.2. Elementos flotantes

Las figuras y tablas pueden ser tambien referenciadas teniendo cuidado en situar elcomando \label justo despues del comando \caption o incluso dentro de su argumento,como en el ejemplo mostrado a continuacion:

\begintable[h]\begincenter\begintabular|c|c|c|c|\hlineValor de $x$ & 1 & 2 & 3\\\hlineValor de $y$ & 1 & 8 & 27\\\hline\endtabular\captionValores observados de $x$ e $y$\labeltabxy\endcenter\endtableDos posibles relaciones entre $x$ e $y$ que satisfacenlos datos de la Tabla˜\reftabxy son $y=xˆ3$ e$y=6xˆ2-11x+6$

da lugar a la siguiente tabla:

Valor de x 1 2 3Valor de y 1 8 27

Tabla 8 Valores observados de x e y

Dos posibles relaciones entre x e y que satisfacen los datos de la Tabla 8son y = x3 e y = 6x2 − 11x + 6Las referencias cruzadas son perfectamente validas para referencias futuras, como pue-

de verse en la siguiente seccion (Subseccion 11.2.3)

11.2.3. Matematicas

En los documentos con contenido matematico abundan las referencias, ya sea a formu-las, figuras, teoremas, etc. El proceso de etiqueta es igual al hecho anteriormente: es nece-sario incluir el comando \label dentro del entorno correspondiente.

11.3 Cambiando contadores 73

Si hemos definido el entorno \newtheoremthmTeorema, entonces

\beginthm\labeldiffconToda funcion diferenciable es continua.\endthm

proporciona

Teorema 4 Toda funcion diferenciable es continua.

de modo que es posible referenciarlo del siguiente modo:

El recıproco del Teorema 4 es falso.

producido con

El recıproco del Teorema˜\refdiffcon es falso.

En ecuaciones:

\beginequation\labelsumsq(x+y)ˆ2=xˆ2+2xy+yˆ2\endequationCambiando $y$ por $-y$ en(\refsumsq) resulta \ldots

(x + y)2 = x2 + 2xy + y2 (12)

Cambiando y por −y en (12) resulta . . .

El paquete amsmath permite usar el comando \eqref en lugar de \ref para refe-renciar una ecuacion, con la diferencia de que el primero imprime automaticamente losparentesis alrededor del numero.

11.2.4. Referenciando paginas

En lugar de hacer referencia al numero de tabla o de ecuacion, a menudo es mas utildar la numeracion de la pagina donde se encuentra dicho objeto. El comando

\pageref〈etiqueta〉

imprime el numero de la pagina en la que se encuentra \label〈etiqueta〉. Por ejemplo,

vease la Tabla˜\reftabxy en la pagina˜\pagereftabxy

produce

vease la Tabla 8 en la pagina 72

11.3. Cambiando contadores

Cada uno de los elementos susceptibles de numeracion tiene asignado un contador quealmacena el numero en cuestion. El nombre del contador es el mismo que el del elementoa referenciar, ası el contador que almacena el numero del capıtulo es chapter, el delas ecuaciones equation, etc. Es posible manipular la forma en la que se representa uncontador del siguiente modo:

\renewcommand\theequation\Alphequation

que cambia la numeracion habitual de las ecuaciones por numeracion alfabetica en mayuscu-las.

Existen una serie de comandos que alteran los valores de los contadores, y que permi-ten manipularlos. Estos son:

74 Referencias cruzadas en LATEX

\setcounter〈contador〉〈valor〉

que asigna un valor al contador, con independencia del valor que tuviera antes,

\addtocounter〈contador〉〈valor〉

que incrementa el valor que en ese momento tuviera el contador. Este incremento puede sernegativo o positivo.

11.4. Paquetes adicionales

11.4.1. El paquete hyperref

Este paquete hace que las referencias cruzadas en un texto sean interactivas, es decir,que se pueda navegar por el texto en pantalla haciendo click sobre las referencias, saltandode una a otra. Es conveniente el el paquete sea cargado en ultimo lugar para asegurar sucorrecto funcionamiento, y que no entre en conflicto con otros. El paquete admite una grancantidad de opciones que se pueden especificar a traves del comando

\hypersetup〈opciones〉

Entre las mas habituales estan

\hypersetupcolorlinks=true,linkcolor=Blue

11.4.2. El paquete showkeys

Este paquete se encarga de mostrar las etiquetas utilizadas con el comando \label y\ref con objeto de facilitar las referencias cuando son abundantes. Existen algunas opcio-nes para mejorar su manejo, por ejemplo

\usepackage[notref,color]showkeys

que escribe dichas etiquetas en gris (para no alterar excesivamente el texto principal) y queno imprime las etiquetas generadas con \ref.

76 Bibliografıa

La referencia clasica en LATEX es [1]. Otras referencias interesantes son [2,3].

Bibliografıa

[1] Leslie Lamport, 1985. LATEX—A Document Preparation System—User’s Guide and Re-ference Manual, Addision-Wesley, Reading.

[2] Donald E. Knuth, 1989. Typesetting Concrete Mathematics, TUGBoat, 10(1):31-36.[3] Ronald L. Graham, Donald E. Knuth, and Ore Patashnik, 1989. Concrete Mathematics:

A Foundation for Computer Science, Addison-Wesley, Reading.

12.1.1. Indice de contenidos

El entorno bibliografıa crea una seccion del documento a modo de capıtulo (si la clasede documento es report) o seccion (si la clase es article). Sin embargo no aparece listadoen el ındice de contenidos. Para introducir dicho capıtulo o seccion en el ındice es necesarioanadir una lınea como la que sigue:

\addcontentsline〈ExtensionFichero〉〈Unidad〉〈TextoEntrada〉

El parametro ExtensionFichero se refiere a uno de los ficheros donde LATEX almacenainformacion sobre ındices de contenido, de figuras o tablas. Las extensiones respectivas sontoc, lof o lot.

El argumento Unidad se refiere a que tipo de unidad de estructura queremos asimi-lar dicha entrada, es decir, si se trata de una seccion, un capıtulo, etc. Los valores seransection, chapter, etc.

El TextoEntrada el lo que deseamos que apareza en el ındice correspondiente. Ası, laentrada a incluir sera,

\addcontentslinetocchapterBibliografıa

12.2. El programa BIBTEX

La elaboracion de entornos para bibliografıa puede automatizarse comodamente usan-do el programa BIBTEX. Dicho programa crea un entorno bibliografico para un documentoconcreto a partir de una base de datos previamente construida. De este modo, solo es ne-cesario mantener una base de datos y recurrir a ella para construir la bibliografıa de cadadocumento que escribamos.

La base de datos consiste en uno o varios archivos con extension .bib que debenposeer una estructura concreta. Por cada referencia debemos incluir una entrada en dichoarchivo, que sera etiquetada de forma similar a lo que se hace en un \bibitem.

En el momento en el que aparezca una cita a una de las referencias de nuestra base dedatos, esta sera automaticamente incluida en la bibliografıa del mismo a traves del programaBIBTEX.

Para usar dicho programa debemos incluir en nuestro archivo fuente un comando quellame a la base o bases de datos que queramos utilizar, del siguiente modo:

\bibliographydatabase1,database2

El comando anterior especifica que las entradas bibliograficas se colocaran en la po-sicion en la que aparece dicho comando y seran extraıdas de los archivos database1.bib ydatabase2.bib.1

1 Atencion al path en el que se encuentre el archivo.

12.3 Estilos BIBTEX 77

El estilo que aparecera en la bibliografıa viene especificado por el comando \bibliographystyle,que determinara el formato en el que apareceran las diferentes entradas. Por ejemplo,

\bibliographystyleplain

especifica que las entradas seran formateadas segun el estilo plain que se encuentra des-crito en el fichero (plain.bst). Es posible situar este comando en cualquier punto deldocumento despues de \begindocument.

12.3. Estilos BIBTEX

plain Estilo estandar. Las entradas son numeradas correlativamente por ordenalfabetico de autores.

unsrt Similar al estilo plain, pero las entradas son numeradas en el orden enque son citadas en el documento.

alpha Se diferencia con el estilo plain, en que las etiquetas de las entradas estanformadas por el nombre del autor y el ano de publicacion, en lugar de sernumeros.

abbrv Similar al estilo plain, pero las entradas son mas compactas, quedandoabreviados los nombres de pila de los autores, las revistas, etc.

acm Estilo usado en las revistas de la ACM (Association for Computing Ma-chinery). El formato usado difiere de los anteriores.

apalike Estilo usado en las revistas de la American Psychology Association. Pre-cisa del paquete apalike.

Otros estilos son:abstract.bst, agsm.bst, amsalpha.bst, authordatei.bst,authordate1-4.sty, bbs.bst, cbe.bst, cell.bst,dcu.bst, harvard.sty, ieeetr.bst, jtb.bst,kluwer.bst, named.bst, named.sty, natbib.sty,natbib.bst, nature.sty, nature.bst, phcpc.bst,phiaea.bst, phjcp.bst, phrmp.bst plainyr.bst,siam.bst

Ademas varias organizaciones, revistas, etc. han desarrollado sus propios estilos bi-bliograficos, algunos de los cuales vienen con la distribucion MikTeX (vease C:\texmf\bibtex\bst).

12.4. Pasos para ejecutar BIBTEX con LATEX

1. Al correr LATEX, se generara un listado de referencias para cada comando \cite queeste presente. Dicho listado aparecera en el fichero auxiliar .aux.

2. Ejecutar BIBTEX, el cual leera dicho fichero, las bases de datos y el fichero de estiloy escribira un fichero .bbl que contiene un entorno bibliografıa formateado segun elfichero .bst escogido. Los errores o avisos seran escritos en un fichero .blg.

3. En la siguiente compilacion de LATEX, se lee el fichero .bbl.4. Una tercera compilacion resuelve todas las referencias cruzadas.

Notese que las referencias que apareceran en el texto son aquellas que hayan sidocitadas mediante \cite, y no todas las presentes en la base de datos .bib.

En ocasiones, es posible querer incluir publicaciones que no son explıcitamente ci-tadas. Pare ellos usamos el comando \nocite en cualquier parte del documento. Dichocomando no produce texto alguno pero hace que la referencia citada sea incluidada porBIBTEX. El comando

\nocite*

hace que todas las entradas de la base de datos sean incluidas.

78 Bibliografıa

12.5. Creacion de bases de datos bibliograficas

La ventaja principal del uso del programa BIBTEX es la no necesidad de escribir unlistado de referencias para cada documento. Las referencias son escritas una sola vez yalmacenadas en la base (o bases) de datos correspondiente para usos futuros.

No obstante, es necesario crear las entradas de la base de datos segun un formatoespecıfico. Lo que sigue es un ejemplo de entrada:

@BOOKknuth:86a,AUTHOR ="Donald E. Knuth",TITLE =The \TeXbook,EDITION ="third"PUBLISHER ="Addison-Wesley",ADDRESS =Reading, MA,YEAR =1986

La primera palabra, prefijada por @, determina el tipo de entrada, que variara segun eltipo de publicacion que sea: libros, artıculos, prepublicaciones, etc. El resto de la informa-cion es escrita entre llaves, comenzando por la etiqueta (la que usaremos para la referenciacon el comando \cite), En el ejemplo anterior pondrıamos \citeknuth:86a. El restode la informacion sobre la referencia es introducida mediante varios campos, separados porcomas, en el formato que se aprecia. Los espacios son opcionales. La informacion de cadacampo puede ser incluida entre llaves o entre comillas dobles; sin embargo, si la informa-cion del campo consta unicamente de numeros, no son necesarios los delimitadores.

Cada tipo de entrada tiene una serie de campos requeridos y otros opcionales. En casode ausencia de algun campo requerido BIBTEX dara un informe de error.

Los tipos de referencias, los campos requeridos y los opcionales son:@article Artıculos en revistas

campos requeridos autor, title, journal, year.campos opcionales volume, number, pages, month, note

@book Libros con editorial conocidacampos requeridos author or editor, title, publisher, yearcampos opcionales volume or number, series, address, edition, month, note

@booklet Libros sin conocimiento de la editorial que lo publiquecampos requeridos titlecampos opcionales author, howpublished, address, month, year, note

@conference Artıculo en un recopilatorio de una conferenciacampos requeridos author, title, booktitle, yearcampos opcionales editor, volume or number, series, pages, address, month, organi-

sation, publisher, note@inbook Entrada para una parte de un libro

campos requeridos author or editor, title, chapter and/or pages, publisher, yearcampos opcionales volume or number, series, type, address, edition, month, note

@incollection Entrada para una parte de un libro con tıtulo propiocampos requeridos author, title, booktitle, publisher, yearcampos opcionales editor, volume or number, series, type, chapter, pages, address,

edition, month, note@inproceedings Artıculo en las publicaciones de un congreso

campos requeridos author, title, booktitle, yearcampos opcionales editor, volume or number, series, pages, address, month, organi-

sation, publisher, note@manual Entrada para documentacion de tipo tecnico

campos requeridos titlecampos opcionales author, organisation, address, edition, month, year, note.

@masterthesis Entrada para proyecto, tesina o master

12.5 Creacion de bases de datos bibliograficas 79

campos requeridos author, title, school, yearcampos opcionales type, address, month, note

@misc Documento que no se ajusta a ninguno de los demas tiposcampos requeridos nonecampos opcionales author, title, howpublished, month, year, note

@phdthesis Tesis doctoralcampos requeridos author, title, school, yearcampos opcionales type, address, month, note

@proceedings Recopilatorio de artıculos de una conferencia o congresocampos requeridos title, yearcampos opcionales editor, volume or number, series, address, month, organisation,

publisher, note@unpublished Documento no publicado con tıtulo y autor

campos requeridos author, title, notecampos opcionales month, year

12.5.1. El programa JabRef

La creacion y mantenimiento de una base de datos .bib puede resultar muy simple siusamos algunos programas disenados para manejar este tipo de archivos de forma sencilla.El programa JabRef es una aplicacion en lenguaje Java 2 que permite crear y mantenerestas bases de datos de forma facil e intuitiva.

2 Se requiere tener instalado Java