Você está na página 1de 286

Elaboracin de una clase en

para digitar la tesis de pre-grado en la Facultad de Ciencias

R. Ipanaqu, G. Gonzlez y G. Crespo

Instituto de Investigacin y Promocin para el desarrollo de la Universidad Nacional de Piura http://www.unp.edu.pe/institutos/iipd

ELABORACIN DE UNA CLASE EN

PARA DIGITAR LA TESIS DE PRE-GRADO EN LA FACULTAD DE CIENCIAS

R. IPANAQU G. GONZLEZ G. CRESPO


FACULTAD DE CIENCIAS UNIVERSIDAD NACIONAL DE PIURA PIURA, PER

Ttulo:
ATEX para digitar la Tesis de pre-grado en la Facultad Elaboracin de una clase en L

de Ciencias

Autores: ROBERT IPANAQU CHERO


robertchero@hotmail.com http://www.unp.edu.pe/pers/ripanaque https://sites.google.com/site/ripanaque

GUILLERMO C. GONZLEZ CREOLLO


gmogonzalez@gmail.com http://www.unp.edu.pe/pers/ggonzalez

GLORIA S. CRESPO GUERRERO


gloriasol48@hotmail.com

INSTITUTO DE INVESTIGACIN Y PROMOCIN PARA EL DESARROLLO (iipd)

Junio, 2011

UNIVERSIDAD NACIONAL DE PIURA


Urb. Miraores s/n, Castilla, Piura, PER

Prlogo
A Este libro no pretende ser un manual de L T EX, sino que constituye la
presentacin y manual ocial de la clase

Fc Unp

creada por los autores

con la nalidad de dotar a los estudiantes de la Facultad de Ciencias, de la Universidad Nacional de Piura, de una herramienta que facilite el uso

A de L T EX en la digitacin de la Tesis de pregrado.


En el primer captulo se dan los lineamientos elementales en el uso de las

A clases estndar de L T EX y que son ampliamente utilizadas para elaborar


diversos trabajos cientcos, a saber:

article, report

book.

Adems

se describe los comandos bsicos, que se utilizan en cualquiera de dichas clases, y que sirven para dar formato al texto, insertar y editar frmulas matemticas, manipulacin de listas, insertar grcos, insertar tablas, etc. El segundo captulo esta dedicado a la clase

beamer. En este captulo se

hace un breve recuento de los temas, combinaciones de colores, entornos, etc. ms utilizados en la clase

beamer. De esta manera se motiva al lector

A para que elabore sus presentaciones con L T EX.


Una vez que el lector se ha familiarizado con las clases y comandos tratados en los dos primeros captulos, en el tercer captulo se hace una

A breve descripcin de los elementos de la programacin en L T EX con la


nalidad que el lector aprecie la potencia del mismo. Finalmente, en el cuarto captulo, se describen los comandos de la clase creada, a la que se le ha llamado

Fc Unp , mostrando con un ejemplo

especco los resultados que se obtienen en forma automatizada tanto en formato como en el color del empaste (esto permite que el estudiante obi

tenga un archivo PDF de calidad profesional, el cual incluye hipervnculos, referencias y marcadores, todos stos interactivos).

R. Ipanaqu G. Gonzlez G. Crespo


Piura, Per

ii

Contenido
Prlogo
ATEX Captulo 1:Introduccin a L
ATEX Introduccin a la edicin de textos con L ATEX Instalacin de TEX/L

i 1
1 10 16 28 31 32 46 54 55 55 56 57 66 90 99 103 113 117 119 120
iii

El editor libre TEXMAKER


ATEX Instrucciones bsicas de L ATEX Estructura de los documentos L

Documentos bsicos ms utilizados Paquetes El paquete babel El paquete inputenc El paquete geometry Formato de pgina Edicin de texto Matemtica Listas Inclusin de grcos Tablas Referencias cruzadas Notas al pie y al margen Insercin de texto plano Bibliografa

El programa BibTex

123

Captulo 2:La clase beamer


Esquema general Comandos y entornos importantes en la clase beamer Primeros pasos Temas Temas estndar beamer Temas menores Personalizar temas Modicacin de color con structure Especicacin de colores con RGB Uso directo del color almacenado en structure Cambio de los marcadores de entornos de lista Cajas redondeadas y sombras Deshacerse de los iconos de navegacin Adicin de una footline informativo La portada Inclusin de grcos Overlays Navegar con hipervnculos Teoremas y relacionados Divisin de una diapositiva en columnas Alineacin vertical en las diapositivas El tamao de fuente por defecto El color de texto predeterminado Fuentes y estilos de letras Contraccin de diapositivas Cambio de anchos de margen Texto de color, fondos y cajas Bibliografa
iv

128
128 129 129 130 134 134 135 136 136 139 140 140 141 141 142 146 148 151 154 158 165 167 167 168 171 171 174 176

ATEX Captulo 3:Programacin con L

178
178 180 182 184 197 202 212 214 215

Creacin de comandos y entornos Entornos Compilacin por partes Conceptos bsicos sobre contadores y longitudes Programacin con TEX Manejo de cajas en TEX Repeticin de objetos Sistematizando tareas Condicionales y bucles

Captulo 4:La clase FcUnp


Introduccin Cmo invocar la clase FcUnp Comandos implementados Paquetes incorporados Un ejemplo especco Obtencin de la clase FcUnp Cdigo de la clase FcUnp

228
228 229 229 231 232 235 244

Conclusiones Recomendaciones Bibliografa

273 274 275

vi

1
Qu es TEX?
1

ATEX Introduccin a L

ATEX 1 Introduccin a la edicin de textos con L


ATEX 1.1 Conceptos referentes a TEX/L

T EX es un sistema de composicin de textos de alta calidad que fue creado por Donald E. Knuth a nales de la dcada de 1970; est dirigido en particular a aqullos textos que contienen una gran cantidad de expresiones matemticas. T EX en s es un procesador de macros, con una alta capacidad de programacin, un archivo *.tex es un archivo ASCII donde est el texto junto con determinadas instrucciones, que debe ser procesado por un compilador (el programa T EX). ste devuelve un archivo *.dvi que es independiente de la plataforma y que es el que nalmente se transformar al lenguaje de impresora. Utilizar T EX puro reviste una cierta dicultad, por lo que Knuth suministr una serie de macros para T EX a las que se denomin plain T EX. Estas macros son el conjunto mnimo de macros que se pueden utilizar de forma ecaz con T EX e incluyen algunos ejemplos de uso de rdenes T EX de alto nivel. Cuando alguien arma programar en T EX normalmente se reere a que lo hace en plain T EX.
1 El

nombre TEX representa el prejo (tau psilon chi), que signica arte.
1

ATEX? Qu es L
A L T EX es un paquete de macros para T EX originalmente escrito por Leslie
Lamport para proporcionar un sistema de procesamiento de documentos

A X proporciona ms simple de uso que T EX pero con toda su potencia. L T E


una serie de rdenes para describir la estructura del documento, de forma que el usuario nal no deba pensar mucho en la presentacin. Mediante distintas clases de documentos y paquetes adicionales, el mismo documento puede producirse con muchos diferentes aspectos.

ATEX? Qu son los paquetes AMS-TEX/AMS-L


AMS-TEX
es un paquete de macros para T EX. Escrito originalmente por

Michael Spivak para la Sociedad Americana de Matemtica (AMS) entre 1983 y 1985. Est basado en plain T EX pero proporciona ms medios para producir frmulas matemticas de aspecto profesional con menor esfuerzo por parte de los autores, con un gran cuidado en aspectos como el tamao y la posicin de las frmulas. Entre los aspectos tratados se encuentran las

ecuaciones de ms de una lnea, la numeracin de ecuaciones, las matrices,


los acentos dobles, sub y super ndices en varios niveles, as como otras

A cosas. Segn fue aumentando la popularidad de L T EX la AMS desarroll A A X AMS-L T EX que consiste en una coleccin de clases y paquetes para L T E que ofrece a los autores la funcionalidad de A MS-TEX.

ATEX en la creacin de sus docuClases de usuarios que utilizan TEX/L mentos

TEX- nico Conocedor de todas las minucias, argucias y misterios de TEX. TEX- perto Persona familiarizada con los comandos bsicos de TEX capaz de programar rutinas o macros T EX.

TEX- ncrata Persona

que ha asimilado la losofa T EX y que usa re-

A X pero que no conoce o no tiene inters en el gularmente T EX o L T E


funcionamiento interno del lenguaje T EX. 2

ATEX? 1.2 Qu ventajas tiene TEX/L

Funciona, es estable y multiplataforma


El formato de los archivos es mucho ms estable que en otros procesadores, cualquier cambio es realizado localmente y no repercute en efectos colaterales, existen implementaciones para distintas plataformas y en todas el resultado es exactamente el mismo (si se tienen los mismos estilos y tipos). Excelente calidad del documento nal con salida en distintos formatos: dvi, pdf, ps, etc.

Alta calidad en la edicin de ecuaciones


A Esta es una razn muy importante por la que L T EX es ampliamente utilizado en entornos cientcos. Muchas revistas aceptan o exigen los documen-

A tos escritos en L T EX. Este procesador ajusta los tamaos de parntesis,


integrales, subndices y superndices, alinea los elementos de las matrices, construye cajas, etc.

ATEX permite redactar fcilmente documentos estructurados L


A travs de distintas clases de documento y de su conjunto de macros,

A L T EX posibilita escribir textos dividindolos en captulos, secciones, subsecciones, controlando en todo momento la numeracin y las referencias cruzadas. Construye ndices de contenidos, tablas o guras. Ajusta los tamaos y tipos de letras segn la parte del documento en que se hallen.

Facilidad en la construccin de macros y rdenes


A poco de comenzar a usar este procesador, el usuario se encuentra deniendo o redeniendo rdenes para que stas se ajusten a sus preferencias personales. Por ejemplo, es posible que una determinada expresin aparezca repetidas veces en el texto. Nada ms fcil que denir una orden que reemplace a todo un bloque. O bien, es posible que no guste la forma en

A que L T EX numera las pginas, una redenicin al principio del documento


permite cambiar esto. 3

Se escribe en ASCII
Esto, que al principio puede parecer un inconveniente (ya que implica teclear mucho ms) se torna en ventaja al cabo del tiempo. Por un lado permite incrementar la velocidad de escritura (pues no hay que andar utilizando ratn o mens), por otro facilita el uso de cualquier editor de texto (no contiene caracteres de control) y permite su transmisin por correo electrnico (puede escribirse en ASCII de 7 bits). Esto hace que

A muchas revistas cientcas admitan artculos escritos en L T EX enviados


por e-mail. Ellos lo procesan en el lugar de destino, hacen los cambios necesarios y lo imprimen.

Es gratis
Porque Knuth lo decidi as, y no parece molestarle que otros ganen dinero vendiendo productos y servicios basados en T EX. De hecho, aunque algunas herramientas que se usan junto a T EX se ofrecen bajo la GNU General Public License (Copyleft); T EX en s, ni siquiera tiene esa restriccin. La nica restriccin impuesta por Knuth es que debe dar el mismo resultado en todas las implementaciones, para garantizar la absoluta portabilidad de los documentos escritos con T EX. Algunas empresas ofrecen

A X con elementos propios. implementaciones comerciales de T EX/L T E

ATEX? 1.3 Ventajas e inconvenientes que tiene TEX/L

Aprendizaje previo, no es un procesador del tipo WYSIWYG


A diferencia de los procesadores de tipo WYSIWYG lo que ves es lo que consigues (What you see what you get), que pueden usarse casi desde el

A primer da con resultados aceptables, L T EX requiere un periodo de aprendizaje antes de conseguir los primeros frutos. Incluso cuando ya se es un usuario medio o avanzado, siempre es conveniente tener cerca un manual. Este proceso de iniciacin consiste principalmente en aprenderse las rdenes esenciales. La contrapartida de este esfuerzo es que cuando se trabaja

A con L T EX y se compara el resultado con lo obtenido con otros procesadores, la salida de stos ltimos parece poco seria en cuanto se reere a las 4

frmulas matemticas. Algo como los dientes, que duelen al salir, pero luego se hacen imprescindibles.

No se ven los resultados hasta que se compila el archivo


Una de las decepciones que sufre el usuario novato es que no ven los frutos de su trabajo hasta que compila. Como suelen aparecer errores de compilacin, esto suele ser frustrante, aparte de conllevar una prdida de

A tiempo. Con el tiempo, los errores disminuyen. De todas formas, L T EX


no est especialmente dirigido a los aspectos puramente estticos de cada pgina en concreto, sino a los estructurales del documento. Si uno est

A interesado estrictamente en la esttica, L T EX no es el procesador adecuado.


ste basa la belleza de los documentos creados ms en la claridad, en el buen criterio y en una esttica agradable, que en la posibilidad de hacer fcilmente diseos rebuscados para cada pgina.

No permite introducir imgenes


Esta acusacin habitual no es en absoluto cierta. Simplemente hay que ser conscientes de los medios de visualizacin e impresin de que se dispone y obrar en consecuencia. Lo que no debe olvidarse nunca es que tanto T EX

A como L T EX estn pensados como lenguajes de composicin de documentos, no de autoedicin.

No tiene variedad de tipos (fuentes)


Es cierto que los tipos CM (Computer Modern) originalmente desarrollados por Knuth son limitados en cantidad y variedad, por lo que a medida

A que L T EX se difunda, han aumentado las demandas de ms tipos para


usos diversos. Aunque el crecimiento es todava lento, existe una gran cantidad de tipos disponibles. En las versiones para salidas postscript si es posible el uso de cualquier tipo, pero no se garantiza que las ecuaciones mantengan la calidad requerida. 5

doc.dvi

doc.tex

doc.aux

doc.log

Figura 1.1
1.4 Elementos que intervienen al procesar un documento

El documento fuente: Cmo creo un documento con TEX/LaTeX?


A X es realmente un lenguaje de programacin Como se ha dicho T EX/L T E
de textos. En el documento fuente original se introduce el texto a procesar junto con una serie de rdenes especicando cmo debe ser procesado ste. Este paso se realiza con un editor de texto, o con un ambiente de progra-

A X. macin especializado totalmente integrado para su uso con T EX/L T E

Cmo proceso, veo e imprimo un documento con TEX/LaTeX?


Dado un documento fuente

doc.tex,

ste se procesa mediante T EX si

A X si se han utilizado las se han utilizado las rdenes de plain T EX o L T E A rdenes de L T EX (Fig. 1.1). Se corrigen los posibles errores de sintaxis y
se repite el proceso hasta que stos se han eliminado.

Qu es un archivo *.aux?
A Documento auxiliar con informacin interna que L T EX usa para el conteo
y enumeracin automtica de secciones, ecuaciones, referencias bibliogrcas, etc. 6

Qu es un archivo *.log?
A Es el cuaderno de bitcora de L T EX con todos los detalles de la compilacin o del procesamiento, incluyendo los mensajes de error.

Qu es un archivo *.dvi?
Un archivo DVI (device independent) es uno de los archivos resultantes

A X. Su forma no depende al procesar el texto fuente a travs de T EX/L T E


del dispositivo que se vaya a utilizar para verlo/imprimirlo. Un archivo DVI est pensado para ser ledo por un conversor que produzca una salida adecuada para una determinada impresora, o para un determinado visualizador en la pantalla del ordenador. Los archivos DVI utilizan una codicacin interna de T EX de forma que un documento fuente debe producir exactamente el mismo archivo DVI, con independencia de la implementacin de T EX que se utiliza para producirlo.

Qu es un conversor?
Un conversor es un programa que toma su entrada de un archivo DVI y produce un archivo que puede enviarse a una impresora (mediante un driver) o una salida directa a una pantalla (mediante un previewer). Estos conversores normalmente son especcos a cada impresora o lenguaje de impresora. Por ejemplo, una impresora postscript entender siempre la salida de un conversor postscript, pero en general no de otros formatos.

Qu es el formato pdf?
PDF (Portable Document Format) es, como su nombre indica, un formato de archivos transportable entre distintas plataformas, creado por Adobe y especialmente diseado para visualizar documentos tal y como se han diseado. Permite usar colores, grcos, seguir enlaces e imprimir; pero, fundamentalmente, permite ver en la pantalla los documentos, siendo un formato compacto. Es muy similar a PS, pero no tiene capacidades de programacin. En relacin con T EX PDF es un formato que sustituye al 7

DVI. Los visualizadores de PDF ms recomendables son Acrobat Reader y Ghostview.

Qu es el postscript y el postscript encapsulado?


PostScript (PS) es un lenguaje de programacin para describir pginas. Como lenguaje estructurado permite la programacin (tiene estructuras de control y bucles). Fue desarrollado por Adobe. Existen varios intrpretes que permiten la visualizacin de este formato, Ghostscript por ejemplo. El formato PS se basa en describir cada pgina desde un origen de coordenadas que se sita en la esquina inferior izquierda de la pgina. PS encapsulado (EPS) es el formato estndar para importar y exportar archivos PS en cualquier tipo de entornos. Usualmente es un archivo que contiene una sola pgina que describe una gura. El archivo EPS est especialmente pensado para incluirlo en otros archivos PS, y es como cualquier otro archivo PS con algunas restricciones.

Grafo de las posibles conversiones de los distintos archivos obtenidos con ATEX/pdfTEX/pdfL ATEX TEX/L
*.tex pdflatex *.pdf latex *.dvi dvi2pdf *.pdf dvips *.ps ps2pdf *.pdf

Figura 1.2
ATEX y otros programas relacionados 1.5 Fuente de TEX/L

ATEX Distribuciones TEX/L


En principio se podra coger todo el sistema elemento a elemento y ponerlo todo en comn. Sin embargo, para que esto funcione correctamente, el tiempo requerido y la complejidad del trabajo son grandes. Por esta razn algunas personas o empresas ya lo han hecho y lo ofrecen preparado en lo que se denominan distribuciones. Se entiende por distribucin un conjunto

A de archivos binarios y paquetes de macros L T EX junto con otras utilidades


adicionales, hay distribuciones de libre distribucin GNU, Shareware (se 8

puede distribuir y probar, pero si se quiere usar regularmente es necesario pagar el registro) y otras de distribucin comercial.

Existen versiones para:

Atari, Amiga, UNIX, VMS, Os2, Windows NT, Mac y MS-DOS.

Las ms comunes distribuciones libres o shareware son:

Unix Linux

TeT EX teT EX NT EX OzT EX emT EX gT EX emT EX-TDS MikT EX fpT EX.

Macintosh DOS/OS2 Win32

En tanto, que las ms comunes distribuciones comerciales para windows son:

ScienticWord, ScienticWorkPlace y ScienticNotebook, los cuales ofrecen una forma de trabajo tipo casi WYSIWYG con un procesador T EX en segundo plano.

A Y, los editores de texto que trabajan especialmente bien con L T EX son:

Unix DOS/OS2 Win32 Linux

GNU emacs T EXshell WinEdt , Winshell , T EXMAKER , PCT EX32 kate, kile.

2 Fabrice Popineau 3 Shareware 4 GNU 5 GNU

es una versin de teTEX para Windows

Qu es CTAN?
Son las abreviaturas de Comprehensive T EX Archive Network (Red del Archivo Completo de T EX). Es una red mundial de software T EX Los

A servidores de CTAN contiene implementaciones de L T EX para prcticamente todos los sistemas operativos, as como los paquetes de macros T EX

A y L T EX y otros programas que pueden ser tiles. El software que all se


encuentra es GNU o shareware. Los servidores ms importantes de CTAN son:

EEUU Inglaterra Alemania

http://www.ctan.org/ http://www.tex.ac.uk/tex-archive/ http://www.dante.de/cgi-bin/ctan-index/

Para los usuarios hispanohablantes se ha creado el grupo CervanT EX el cual busca intercambiar experiencias sobre T EX y promover su uso en Hispanoamrica. La pgina Web ocial del grupo es

http://www.cervantex.org/

ATEX 2 Instalacin de TEX/L


2.1

MiKTEX
MiKTEX. Las caractersticas ms apreciables de MiKTEX

Una distribucin gratuita para Microsoft Windows, desarrollada por Christian Schenk es

son su habilidad de actualizarse por s mismo descargando nuevas versiones de componentes y paquetes instalados previamente, y su fcil proceso de instalacin. La versin actual de MiKT EX es 2.9 y est disponible en su pgina ocial (ver Fig. 1.3)

http://miktex.org
MiKT EX 2.9 requiere uno de los siguientes sistemas operativos Windows: 10

Windows 7 Windows Vista with Service Pack 2 (todas las ediciones excepto Starter Edition) Windows XP with Service Pack 3 (todas las ediciones excepto Starter Edition) Windows Server 2008 R2 Windows Server 2008 with Service Pack 2 Windows Server 2003 R2 Windows Server 2003 with Service Pack 2 Tenga en cuenta que MiKT EX 2.9 no funciona en plataformas Windows antiguas (Windows 9x/ME/NT/2000).

Figura 1.3 Porcin de la pgina web ocial de MiKTEX.


Despus de descargar MiKT EX se procede a su instalacin haciendo doble clic sobre el respectivo icono tras lo que aparece un

cuadro como el de la gura 1.4. A continuacin se ejecutan los siguientes pasos: 11

Figura 1.4
1. Activar la casilla de condiciones de instalacin del citado cuadro tal como se muestra en la gura 1.5.

Figura 1.5
2. Pulsar el botn

<Siguiente>

que se aprecia en la gura 1.6.

Figura 1.6
3. Pulsar el botn 4. Pulsar el botn

<Siguiente> <Siguiente>

que se aprecia en la gura 1.7. que se aprecia en la gura 1.8. 12

Figura 1.7

Figura 1.8

Figura 1.9
5. Pulsar el botn

<Start>

que se aprecia en la gura 1.9.

6. Esperar que concluya el proceso indicado en la gura 1.10.

7. Pulsar el botn

<Siguiente>

que se aprecia en la gura 1.11.

8. Finalizar el proceso pulsando el botn gura 1.12. 13

<Close>

que se aprecia en la

Figura 1.10

Figura 1.11

Figura 1.12
MiKT works al que se puede accesar EX 2.9 incluye el editor libre T EX desde el botn inicio (ver Fig. 1.13). T works es un editor multiplataEX forma extremadamente simple, no obstante requiere de cierto dominio de

A X que naturalmente no esta al alcance de quien tiene un cdigo T EX-L T E A primer contacto con L T EX.
Por ejemplo, para generar un documento T works y EX accesamos a T EX digitamos el cdigo 14

Figura 1.13

Figura 1.14
Hola mundo \bye
despus guardamos el archivo en donde creamos conveniente (en este caso se le ha asignado el nombre ejemplo1). Seguidamente, seleccionamos la opcin

pdfTeX

(ver Fig. 1.14) para luego presionar el botn de compi-

lacin (ver Fig. 1.15). Despus de seguir este proceso se podr apreciar el respectivo pdf (ver Fig. 1.16).

A Para generar un documento L T works, EX, despus de haber accesado a T EX


se digita el cdigo

\documentclass{article} \begin{document} Hola mundo \end{document}


despus se guarda el archivo en donde parezca conveniente (en este caso se le ha asignado el nombre ejemplo2). Seguidamente, se selecciona la opcin

pdfLaTeX

(ver Fig. 1.17) para luego presionar el botn de com-

Figura 1.15
15

Figura 1.16

Figura 1.17
pilacin (ver Fig. 1.15). Despus de seguir este proceso se podr apreciar el respectivo pdf (ver Fig. 1.19).

3 El editor libre TEXMAKER


T EX

MAKER

A es un editor libre de L T EX especialmente diseado para

A hacer ms fcil y cmodo el trabajo con L T EX.


La pgina web ocial de T EX

MAKER (ver Fig. 1.20) es

http://www.xm1math.net/texmaker
Despus de descargar T EX

MAKER se procede a su instalacin hacientras lo que aparece un

do doble clic sobre el respectivo icono

cuadro como el de la gura 1.21. A continuacin se ejecutan los siguientes pasos:

9. Pulsar el botn 10. Pulsar el botn

<I Agree> <Install>

que se aprecia en la gura 1.21.

que se aprecia en la gura 1.22.

Figura 1.18
16

Figura 1.19

Figura 1.20 Porcin de la pgina web ocial de TEXMAKER .

Figura 1.21
11. Esperar que concluya el proceso indicado en la gura 1.23. 12. Finalizar el proceso pulsando el botn gura 1.24. 17

<Close>

que se aprecia en la

Figura 1.22

Figura 1.23

Figura 1.24
13. Acceder a T EX directo 14. Elegir

MAKER

haciendo doble clic en el icono de acceso

que debe haberse creado en el escritorio (ver Fig. 1.25). de la opcin

<Congurar Texmaker>

<Opciones>

de la barra

de Men (ver Fig. 1.26). 15. Seleccionar

<Editor> de la ventana Congurar Texmaker Codicacin del editor.

y elegir

ISO-

8859-1

(para el reconocimiento de caracteres no pertenecientes al cElegir, adems, el

digo ASCII) en la opcin diccionario cin

ES_es.dic (para revisin ortogrca en espaol) en la opDiccionario. Aqu tambin es posible congurar: tipo y tamao

de letra, colores para entorno matemtico, comandos y palabras clave, as como los atajos (ver Fig. 1.27). 18

Figura 1.25
16. Finalmente, para que se actualicen las conguraciones se presiona el botn

<Aceptar>

que se ubica en la parte inferior (ver Fig. 1.27).

Despus de ejecutar los diecisis pasos antes descritos ya podemos ela-

A borar nuestro primer documento en L T EX con T EX

MAKER . No obstante,

para poder visualizar, en forma independiente, cualquier documento que elaboremos es preciso asegurarnos de tener instalado en el ordenador algn visor de archivos pdf. Los ms comunes en nuestro medio son el Acrobat

Reader y el Foxit Reader (ambos pueden descargarse en forma gratuita).

3.1 Prueba de la correcta instalacin de TEXMAKER


Despus de haber accedido a T EX pasos:

MAKER

realizaremos los siguientes

1. Pulsar el botn

<Nuevo>

que se aprecia en la gura 1.28. Despus

de esto aparecer automticamente una hoja en blanco como la que muestra en la gura 1.29. 2. Elegir

<Asistente para nuevo documento>

de la opcin

<Asistentes>

de la barra de Men (ver Fig. 1.30), tras lo cual debe aparecer un cuadro de dilogo como el de la gura 1.31. 19

Figura 1.26

Figura 1.27

20

Figura 1.28

Figura 1.29

21

Figura 1.30

Figura 1.31

22

Figura 1.32
3. Presionar el botn

<Aceptar>

ubicado en la parte inferior (ver Fig.

1.32). Despus de esto, la hoja en blanco ser llenada automticamente con el cdigo mostrado en la gura 1.33.

4. Escribir el texto:

Esto es una prueba. en el campo \begin{document} y \end{document} (ver g. 1.34).

ubicado entre

5. Crear una nueva carpeta y guardar en sta el archivo, asignndole un nombre. En nuestro caso convendremos en asignarle el nombre ejemplo (ver gs. 1.35 y 1.36).

6. Vericar que est activa la ventana de mensajes presionando el botn

<Messages/Log>,

mostrado en la gura 1.37, hasta que aparezca un

cuadro como el que se ha remarcado en la gura 1.38.

7. Presionar la tecla

<F6> y esperar a que se compile el documento y se

genere el respectivo archivo pdf. Al nalizar la compilacin debe aparecer un mensaje, como el que se muestra en la gura 1.39, indicando que el proceso ha terminado exitosamente.

8. Presionar la tecla

<F7> para poder ver el archivo pdf con el visor de

archivos pdf de T EX

MAKER (ver g. 1.40).


23

Figura 1.33

Figura 1.34

24

Figura 1.35

Figura 1.36

25

Figura 1.37

Figura 1.38

26

Figura 1.39

Figura 1.40

27

Para realizar cualquier cambio en el documento simplemente se accede al archivo tex (en este caso ejemplo.tex ), se hace el cambio y se actualiza presionado rpida de

<F6> y luego <F7> (no olvide guardar los cambios. Una forma hacer esto es presionando la combinacin <Ctrl>+<S>).

Tngase presente que en la carpeta donde se ha almacenado el archivo, al que se convino llamar ejemplo, se habrn creado cuatro archivos. Especcamente: ejemplo.tex, ejemplo.txt, ejemplo.aux y ejemplo.pdf. ste ltimo archivo constituye nuestro documento propiamente dicho. Si por alguna razn es abierto el archivo pdf (en este caso ejemplo.pdf ) con el Acrobat Reader, ste debe cerrarse antes de que se efecte cualquier

no permitir realizar ninguna actualizacin desde T EX

MAKER ; es decir despus de presionar <F6>, en la respectiva hoja de T EXMAKER ,


aparecer un mensaje de error en el cuadro de mensajes (ver g. 1.38).

cambio en el archivo tex (en este caso ejemplo.tex ), pues de lo contrario

ATEX 4 Instrucciones bsicas de L


4.1 Comandos
A Los comandos de L T EX comienzan con \ seguido de una secuencia de
letras .

Tipos y sintaxis de los comandos


Simples : \<comando> Con argumentos obligatorios: \<comando> {. . . }{. . . }. . . {. . . } Con argumentos obligatorios y opcionales: \<comando> [<opcionales>]{. . . }{. . . }. . . {. . . }

a maysculas y minsculas espacios son ignorados, por esta razn es importante forzar a que aparezcan stos mediante cualquiera de las siguientes secuencias: \<comando>\ , {\<comando>} o \<comando>{}.
28

6 Los comandos en L A TEX son sensibles 7 Luego de los comandos simples los

4.2 Declaraciones globales (bloques) y entornos

Declaraciones globales (bloques)


Son aquella declaraciones que limitan su alcance al bloque de texto contenido entre un par de llaves {. . . <texto> . . . } emparejadas.

Entornos
Son construcciones del documento que son tratadas de manera distinta del documento principal, deben especicarse en la forma: \begin{<entorno>}

<texto>
\end{<entorno>}

4.3 Comentarios, espacios en blanco y saltos de lnea

Comentarios
Todo texto que se encuentre a la derecha del smbolo % no es procesado, de esta forma se pueden agregar los comentarios dentro de un documento

A L T EX.

Espacios en blanco y saltos de lnea


A En una secuencia de espacios en blanco o de saltos de lnea, L T EX tiene
en cuenta solo el primer espacio en blanco o el primer salto de lnea.

4.4 Smbolos especiales

Smbolos especiales
Los siguientes smbolos (entre otros) no se pueden obtener directamente, es necesario especicarlos mediante comandos:

$ % 29

&

Tabla de smbolos especiales ms comunes


Smbolo \ { _ % Comando Smbolo & } $ # Comando

\textbackslash \{ \_ \%

\& \} \$ \#

4.5 Tilde, diresis, circunejo y virgulilla


A Dado que L T EX procesa archivos escritos con ASCII 7, los smbolos con
tilde, diresis, circunejo o virgulilla no se pueden obtener directamente, para esto existen unos comandos especiales, como por ejemplo: para la  puede usarse

\'a

\{'a}.

Smbolos con tilde, diresis, circunejo o virgulilla


Smbolo Comando Smbolo Comando

\'a \'e \'i \'o \'u

o o o o o

\{'a} \'{e} \{'i} \{'o} \{'u}

\"a \^a \~n \~N

o o o o

\"{a} \^{a} \~{n} \~{N}

Una herramienta importante para los latinos


Los comandos mostrados en la tabla previa caen en desuso si se utiliza una herramienta especialmente diseada para latinos (ver sec. 9), la cual debe invocarse desde nuestro archivo tex mediante

\usepackage[latin1]{inputenc}
30

ATEX 5 Estructura de los documentos L


5.1 Documentos bsicos ms utilizados

article book report beamer

Clase artculo, documentos cortos. Clase libro, documentos ms largos que contienen captulos. Clase reporte o informe tcnico. Clase diapositivas.

5.2 Estructura bsica de un documento


La estructura bsica de un documento ser de esta forma:

\documentclass[ <opciones >]{<clase >} < ttulo >, < autor >, < fecha >
Prembulo

< declaraciones:

paquetes

>

\begin{document} %(inicio documento) < comandos especiales : \maketitle >


Documento

< Cuerpo

del documento

>

\end{document} %(fin documento)


ATEX 5.3 Ejemplo de un documento L
El documento obtenido con el siguiente cdigo es de la clase puede apreciarse en la gura 1.41.

article

\documentclass{article} \usepackage[latin1]{inputenc} \author{A. U. Tor} \title{Primer Documento} \begin{document} \maketitle


31

\ste es mi primer documento escrito en \LaTeX. \end{document}

Figura 1.41

6 Documentos bsicos ms utilizados


6.1 La clase article
\documentclass[ <opciones >]{article} < declaraciones: paquetes,
Prembulo

comandos

>

< ttulo >, < autor >, < fecha >

\begin{document} \maketitle \begin{abstract}...\end{abstract} Documento \section{...} \subsection{...} \subsubsection{...} \end{document}


32

Comandos importantes en la clase article


\maketitle
Hace que se produzcan las lneas para el ttulo, autor y fecha. Debe ubicarse despus de

\begin{document},

si se omi-

te, no se generan dichos campos.

\date

Se imprime la fecha vigente del computador, o el valor que se ingrese al campo obligatorio, si se desea que no aparezca se debe escribir

\date{ }. \title, \author,

\thanks{...}

Se puede utilizar en

\date, \begin{abstract} . . . \end{abstract} \section{...}, \subsection{...},


etc.

produce notas al pie de pgina

con la informacin del autor. En este entorno se coloca el resumen del artculo y debe ubicarse despus de

\maketitle.
Secciones, subsecciones, etc., las cuales son numeradas automticamente.

Ejemplo de un documento escrito en la clase article


El documento que se obtiene con el siguiente cdigo puede apreciarse en la gura 1.42.

\documentclass{article} \usepackage[latin1]{inputenc} \title{La clase article en \LaTeX} \author{A. U. Tor \thanks{Catedrtico, UNP, autor@unp.edu.pe}} \date{}
33

\begin{document} \maketitle \begin{abstract} En este documento se exhibirn las caractersticas ms importantes de un artculo escrito en \LaTeX. \end{abstract} \section{Artculo en \LaTeX} Los artculos son la clase de documentos \LaTeX\ ms ampliamente utilizados, dada la sencillez en su creacin. \subsection{Estructura de un artculo} Este tipo de documento se puede dividir en dos partes, los campos de identificacin: ttulo, autor y fecha. Y el cuerpo del documento, en el cual el texto pertenece a una de las siguientes unidades divisionales: resumen, secciones, subsecciones, pargrafos, subpargrafos, etc. \end{document}

6.2 La clase book


\documentclass[ <opciones >]{book} < declaraciones: paquetes,
Prembulo

comandos

>

< ttulo >, < autor >, < fecha >


34

Figura 1.42 Primera pgina generada con la clase article.

35

\begin{document} \maketitle \frontmatter \mainmatter \chapter{...} Documento \section{...} \subsection{...} \appendix \backmatter \end{document}

Comandos importantes en la clase book


\maketitle
Fuerza a que se produzcan las lneas para el ttulo, autor y fecha. Al omitirlo no se generar la pgina del ttulo.

\frontmatter

Apertura del libro, se presenta todo aquel contenido que no tenga que ver con el tema central tratado en el libro: prlogo, agradecimientos, tabla de contenido, derechos de autor, ndice de guras, ndice de tablas, etc. La numeracin se realiza utilizando numeracin romana.

\mainmatter

Contiene la parte central del documento en la que se desarrolla el tema tratado en el libro. Aqu tambin se ubican los apndices, mediante el comando

\appendix, los cuales,

despus de ingresarse como captulos, son automticamente numerados con las letras maysculas A, B, C, . . .

36

\chapter{...}, \section{...},
etc.

Captulos, secciones, etc., las cuales corresponden a la parte central y son numeradas automticamente. Es el cierre del documento, contiene el ndice alfabtico, bibliografa, conclusiones, reconocimientos, informacin editorial, etc. Los captulos no son numerados.

\backmatter

Ejemplo de un documento escrito en la clase book


El documento que se obtiene con el siguiente cdigo puede apreciarse en las guras 1.43, 1.44, 1.45, 1.46 y 1.47.

\documentclass{book} \usepackage[latin1]{inputenc} \title{La clase book en \LaTeX} \author{A. U. Tor \thanks{Catedrtico, UNP, autor@unp.edu.pe}} \date{} \begin{document} \maketitle \frontmatter \chapter{Prlogo} La clase book facilita la digitacin de libros de alta calidad. \tableofcontents
37

\mainmatter \chapter{Libro en \LaTeX} Los libros son la clase de documentos \LaTeX\ ms completa. \section{Estructura de un libro} Este tipo de documento se puede dividir en tres partes, la apertura: prlogo, agradecimientos, tabla de contenidos, etc. La parte central del documento, en la que se desarrolla el tema tratado y el texto pertenece a una de las siguientes unidades divisionales: captulos secciones, subsecciones, etc. Y el cierre del documento que contiene la bibliografa, conclusiones, recomendaciones, etc. \backmatter \begin{thebibliography}{CM} \bibitem{Ar} Aranda, E. CURSO DE LATEX. Departamento de Matemticas, E.T.S. Ingenieros Industriales, Universidad de Castilla, La Mancha. (2008). \end{thebibliography} \end{document}

6.3 La clase report


La clase

report

es similar a la clase

cara y tiene disponible el entorno una pgina independiente.

book, aunque imprime por una sola abstract para generar el resumen en
38

Figura 1.43 Portada generada con la clase book.

39

Figura 1.44 Pgina del prlogo generada con la clase book.

40

Figura 1.45 Pgina de la tabla de contenidos generada con la

clase book. El inconveniente del ttulo en ingls se supera usando el paquete babel (ver seccin 8).

41

book. El inconveniente del ttulo en ingls se supera usando el paquete babel (ver seccin 8)

Figura 1.46 Pgina del primer captulo generada con la clase

42

Figura 1.47 Pgina de la bibliografa generada con la clase book. El inconveniente del ttulo en ingls se supera usando el paquete babel (ver seccin 8)

43

\documentclass[ <opciones >]{report} < declaraciones: paquetes,


Prembulo

comandos

>

< ttulo >, < autor >, < fecha >

\begin{document} \maketitle \chapter{...} Documento \section{...} \subsection{...} \appendix \end{document}

Comandos importantes en la clase report


\maketitle
Fuerza a que se produzcan las lneas para el ttulo, autor y fecha. Al omitirlo no se generar la pgina del ttulo.

\chapter{...}, Captulos, secciones, etc., las cuales \section{...}, corresponden a la parte central y son
etc. numeradas automticamente.

Ejemplo de un documento escrito en la clase report


El documento que se obtiene con el siguiente cdigo puede apreciarse en las guras 1.48, 1.49, 1.50, 1.51, 1.52 y 1.53.

\documentclass{report} \usepackage[latin1]{inputenc} \title{La clase report en \LaTeX} \author{A. U. Tor \thanks{Catedrtico, UNP, autor@unp.edu.pe}} \date{}
44

\begin{document} \maketitle \begin{abstract} La clase report es similar a la clase book, aunque imprime por una sola cara y tiene disponible el entorno abstract para generar el resumen en una pgina independiente. \end{abstract} \chapter*{Prlogo} %(El * evita la palabra Chapter) La clase report facilita la digitacin de reportes de alta calidad. \tableofcontents \chapter{Reporte en \LaTeX} Los reportes son la clase de documentos \LaTeX\ ms completa. \section{Estructura de un reporte} Este tipo de documento se puede dividir en tres partes, la apertura: prlogo, agradecimientos, tabla de contenidos, etc. La parte central del documento, en la que se desarrolla el tema tratado y el texto pertenece a una de las siguientes unidades divisionales: captulos secciones, subsecciones, etc. \begin{thebibliography}{CM}

45

\bibitem{Ar} Aranda, E. CURSO DE LATEX. Departamento de Matem\'{a}ticas, E.T.S. Ingenieros Industriales, Universidad de Castilla, La Mancha. (2008). \end{thebibliography} \end{document}

6.4 La clase beamer


beamer nos permite realizar diapositivas, estilo Power Point pero A utilizando todas las herramientas que nos proporciona L T EX. beamer es el
La clase estndar para realizar diapositivas no enfocadas a vender algo, sino enfocadas a presentar conocimiento tcnico, incluso realizar diapositivas para presentar artculos de investigacin. Debe tenerse presente que

beamer

diferencia de Power Point, MindManagment, Impress, etc, no esta enfocado a que la presentacin se vea bonita o agradable sino a que este estructurada, ordenada, coherente y legible (ver Cap. 2).

7 Paquetes
Un paquete (en ingls package ) es un conjunto de macros (instrucciones

A X) que permiten agregar nuevos recursos y utilizar mejor los de T EX o L T E


existentes. La sintaxis para invocar un paquete es la siguiente

\usepackage[<opciones >]{<nombre >}


Los paquetes propiamente dichos son archivos con extensin

sty. Algu-

nos paquetes son muy populares y tienen un estatus semi-ocial pero no vienen instalados en implementaciones corrientes. El usuario debe aprender a instalarlos, lo cual depende tanto de la plataforma computacional utilizada como de la implementacin local. 46

Figura 1.48 Portada generada con la clase report

47

Figura 1.49 Pgina del resumen generada con la clase report. El inconveniente del ttulo en ingls se supera usando el paquete babel (ver seccin 8)

48

Figura 1.50 Pgina del prlogo generada con la clase report.

49

Figura 1.51 Pgina de la tabla de contenidos generada con la

clase report. El inconveniente del ttulo en ingls se supera usando el paquete babel (ver seccin 8)

50

report. El inconveniente del ttulo en ingls se supera usando el paquete babel (ver seccin 8)

Figura 1.52 Pgina del primer captulo generada con la clase

51

Figura 1.53 Pgina de la bibliografa generada con la clase

report. El inconveniente del ttulo en ingls se supera usando el paquete babel (ver seccin 8)

52

7.1 Paquetes estndar ms utilizados

amsmath, amssymb, amsthm geometry

Utilizados para la edicin de textos, manejo de smbolos, teoremas y sus respectivas demostraciones.

Proporciona una forma simple e intuitiva de ajustar los mrgenes, adems permite variar libremente el tamao y la orientacin del papel.

babel inputenc graphicx subgure hyperref

Utilizado para generar documentos en idiomas distintos al ingls. Utilizado para obtener caracteres no pertenecientes al conjunto ASCII. Es utilizado para realizar la inclusin de grcas. Permite introducir guras con ms de un grco, y pies de guras personalizados. Permite generar enlaces activos para las referencias, notas al pie, captulos, secciones, etc. en el ndice general, as como marcadores.

color multicol PSTricks fancyhdr fancychap

Permite la inclusin de textos en color y colocar fondos coloreados. Permite escribir un documento a dos o ms columnas. Se utiliza para la creacin, manipulacin y transformacin de guras geomtricas. Se utiliza para controlar complemente el contenido y la apariencia de los encabezados y pies de pgina. Permite cambiar la presentacin de la primera pgina para los captulos. 53

fancybox colortbl longtable caption makeidx

Permite la inclusin de caja con bordes coloreados y decorados. Permite colorear las las, columnas o casillas de una tabla. Permite extender tablas por dos o ms pginas. Permite manipular la apariencia de los epgrafes o rtulos de la tablas y grcas. Permite generar automticamente ndices alfabticos y temticos.

Todos los paquetes previamente mencionados son distribuidos gratuitamente por la CTAN (ver subseccin 1.5); no obstante en las dos secciones siguientes se har una breve mencin de los paquetes

babel, inputenc

geometry,

debido a su inmediato requerimiento.

8 El paquete babel
El paquete

babel

permite generar textos en diferentes idiomas. Dado un

idioma en particular se tiene la escritura en dicho idioma de los ttulos de la tabla de contenidos, lista de tablas, lista de guras, captulos, bibliografa, etc. As como la particin automtica en patrones silbicos respetando las normas del idioma elegido. La sintaxis de este paquete es la siguiente:

\usepackage[<idioma>,

<options>]{

babel}

Por ejemplo, en este trabajo se ha utilizado el idioma espaol y una opcin para que los prrafos de inicio de captulo, seccin o subseccin no presenten sangra de primera lnea. Esto se ha conseguido digitando

\usepackage[spanish,es-noindentfirst]{babel}
en el prembulo. 54

Para cambiar de idioma en cualquier parte del documento se utiliza el

\selectlanguage{<idioma>}, y para saber encuentra en uso se utiliza el comando \languagename.


comando

el idioma que se

9 El paquete inputenc
El paquete

inputenc permite el uso directo de caracteres que no pertene\usepackage[<options>]{inputenc}

cen al conjunto ASCII. La sintaxis de este paquete es la siguiente:

La opcin recomendada para nuestro idioma es

latin1. As pues, en el

prembulo de nuestro documento deberemos escribir

\usepackage[latin1]{inputenc}
tras lo cual, por ejemplo, ya no es preciso utilizar el cdigo a tildada sino que directamente digitamos

\'{a}

para la

.
etc. sin recurrir

Para digitar este trabajo se ha utilizado este paquete, por ese motivo se utilizan directamente los smbolos

, , , , , , , ,

al cdigo mencionado en la subseccin 4.5.

10 El paquete geometry
El paquete

geometry proporciona una forma simple e intuitiva de ajustar

los parmetros de colocacin del texto en un documento; adems, nos permite variar libremente el tamao y orientacin del papel, siendo muy til su empleo para la produccin de posters (tamao DIN-A0), pequeos folletos, etc. El ajuste de los diferentes parmetros debe hacerse con argumentos optativos en la carga del paquete con ejemplo, con:

\usepackage{geometry}.

As por

\usepackage[papersize={841mm,1189mm}8 ,lmargin=2cm, rmargin=2cm,tmargin=2cm,bmargin=2cm]{geometry}


papersize={210mm,297mm} por a4paper.
8 Para

el caso de tamaos estandarizados como el tamao DIN-A4 puede sustituirse


55

se denira un tamao de papel DIN-A0 (841mm taran los mrgenes izquierdo, derecho, superior tivamente. A modo de otro ejemplo, con

1189mm), y se ajuse inferior a 2cm, respec-

\usepackage[landscape]{geometry}
se cambiara la orientacin del papel, a horizontal.

11 Formato de pgina
11.1 Parmetros del formato de pgina
\headheight \headsep
Altura del encabezado.

Espacio entre la base del encabezado y el tope del cuerpo del

documento.

\marginparsep

Ancho de las notas al margen. Espacio entre el cuerpo del documento y las notas al

\marginparwidth
margen.

\footskip

Distancia vertical entre la base del cuerpo del documento y la

base del footer

11.2 Modicacin de los parmetros del formato de pgina


Los parmetros del formato de pgina se modican mediante:

\setlength{\<parametro>}{<longitud>}
As, por ejemplo, para modicar la distancia vertical entre la base del cuerpo del documento y la base del footer habra que escribir en el prembulo:

\setlength{\footskip}{1cm}
lo general el footer es la lnea donde se ubica la numeracin, siempre que la numeracin est en la parte inferior del documento.
56
9 Por

12 Edicin de texto
12.1 Tipos
A L T EX elige el tamao y tipo de las fuentes usadas segn una estructura
lgica. Para cambiar directamente se pueden usar las instrucciones siguientes

Comando

Tipo Letra romana

Abrev.

\textrm{<texto >} \textit{<texto >}

\rm \it \tt \bf \sf \sl \sc

Letra itlica

\texttt{<texto >} Mquina de escribir \textbf{<texto >} \textsf{<texto >} \textsl{<texto >} \textsc{<texto >}

Letra negrita
Letra sans serif
Letra inclinada

Letra versalita

Cada uno de los tipos de fuentes bsicos tiene su modo enftico, el cual se obtiene por medio de comando

\emph{<texto >}

A continuacin se muestra una tabla que contiene ejemplos acerca de los resultados obtenidos al usar el modo enftico en los tipos de fuentes bsicos. 57

El modo enftico. El modo enftico. El modo enftico.

\emph{El

modo enftico}.

El modo enftico. El modo enftico.

\textit{El

modo enftico.

\emph{El

modo enftico}.}

El modo enftico. El modo enftico. \texttt{El


modo enftico.

\emph{El

modo enftico}.}

El modo enftico. El modo enftico.


\textbf{El
modo enftico.

\emph{El

modo enftico}.}

El modo enftico. El modo enftico.


\textsf{El
modo enftico.

\emph{El

modo enftico}.}

El modo enftico.

El modo enftico.

\textsl{El

modo enftico.

\emph{El

modo enftico}.}

El modo enftico. El modo enftico.

\textsc{El

modo enftico.

\emph{El

modo enftico}.}

El comando

\textnormal{<texto >}

devuelve a la fuente por defecto.

Tambin es posible el uso de cualquier otra fuente que se tenga instalada.

12.2 Tamaos

El tamao de la fuente depende de la seelccin por defecto. Los comandos para modicarlo son 58

Comando

Tamao Letra normal

\normalsize \small \footnotesize \scriptsize \tiny \large \Large \LARGE \huge \Huge

Letra pequea
Letra ms pequea
Letra muy pequea

La letra ms pequea

Letra grande
Letra ms grande

Letra muy grande

La letra ms grande

Letra enorme

Estos comandos afectan al texto que sigue a partir de su aparacin, o al rea delimitada entre parntesis. Por ejemplo

Estas palabras aparecern en {\tiny letra pequea}

Estas palabras aparecern en

letra

pequea

Para ajustar automticamente el espacio entre renglones, de acuerdo con el tamao de letra en uso, se cuenta con el comando de su uso es el siguiente

\par. Un ejemplo

{\Large ``Todo saber tiene de ciencia lo que tiene de matemtica'', Poincar} {\Large ``Todo saber tiene de ciencia lo que tiene de matemtica'', Poincar \par}
59

Todo saber tiene de ciencia lo que tiene de matemtica, Poincar Todo saber tiene de ciencia lo que tiene de matemtica, Poincar

12.3 Formato de texto

Texto centrado
El entorno

center

hace que el texto aparezca centrado. Si el texto fuera

A muy largo, L T EX se ocupa de partirlo en varias lneas, y si se quiere indicar


el salto de lnea se utiliza el comando

\\.

\begin{center} El ingenioso hidalgo\\ D. Quijote de la Mancha \end{center}

El ingenioso hidalgo D. Quijote de la Mancha

Alineacin a izquierda o derecha


De forma similar al entorno

center

existen los entornos

flushright

flushleft
mente.

para alineacin del texto a derecha e izquierda, respectiva-

\begin{flushleft} Este texto aparecer\\ alineado por su\\ parte izquierda \end{flushleft} \begin{flushright} Este texto aparecer\\ alineado por su\\ parte derecha \end{flushright}

Este texto aparecer alineado por su parte izquierda

Este texto aparecer alineado por su parte derecha

Tngase presente que el uso del comando

\\,

en los tres casos previos,

es opcional y depende de la extensin que queramos asignar a cada rengln del texto en questin. 60

Citas textuales y poemas


Existen otros entornos para resaltar partes de un texto, como citas textuales o poemas, de cierta longitud. Los entornos que nos permiten hacerlo son:

quote, quotation quote

verse.

A continuacin se da una breve descrip-

cin de estos entornos. El entorno es adecuado para una cita textual no larga.

... B. Russell escribi: \begin{quote} Las matemticas pueden ser definidas como aquel tema en el cual ni sabemos nunca lo que decimos ni si lo que decimos es verdadero. \end{quote}

... B. Russell escribi: Las matemticas pueden ser denidas como aquel tema en el cual ni sabemos nunca lo que decimos ni si lo que decimos es verdadero.

El entorno

quotation

es ms apropiado para citas largas. Ntese la

diferencia con respecto al anterior.

... B. Russell escribi: \begin{quotation} Las matemticas pueden ser definidas como aquel tema en el cual ni sabemos nunca lo que decimos ni si lo que decimos es verdadero. \end{quotation}

... B. Russell escribi: Las matemticas pueden ser denidas como aquel tema en el cual ni sabemos nunca lo que decimos ni si lo que decimos es verdadero.

Para escribir poesa disponemos del entorno es separado con el comando

verse,

donde cada verso

\\.
61

He aqu un poema \begin{verse} Voy a la casa donde no viviremos,\\ miro los muros que no levantarn,\\ huelo las bugambilas que no crecern,\\ y con los hijos que jams tendremos,\\ salgo a ver el mar ...\\ donde se han hundido tantas cosa nuestras.\\ \rightline{\textsc{(M. Scorza)}} \end{verse}
El cdigo del cuadro anterior genera el siguiente texto:

He aqu un poema Voy a la casa donde no viviremos, miro los muros que no levantarn, huelo las bugambilias que no crecern y con los hijos que jams tendremos salgo a ver el mar ... donde se han hundido tantas cosa nuestras.

(M. Scorza)

Interlineado, sangra y espacios


El espacio entre lneas del texto se puede cambiar en el prembulo con la orden

\renewcommand{\baselinestretch}{<nmero >}
donde nmero se reere a un factor de interlineado, que por defecto es Por ejemplo, si se pone:

1.

\renewcommand{\baselinestretch}{2},
se estar escribiendo a doble espacio. Es posible jar nmero a un valor decimal. 62

El espacio entre prrafos del texto se puede cambiar en el prembulo con la orden

\setlength{\parskip}{<longitud >}
donde longitud se reere a una medida. Por ejemplo si se pone:

\setlength{\parskip}{2cm}
se estar estableciendo un espacio de 2cm entre prrafos del texto.

A Al inicio de un prrafo L T EX introduce un sangrado de forma automtica, que puede ser evitado con el comando

\noindent.

La longitud del sangrado del texto se puede cambiar en el prembulo con la orden

\setlength{\parindent}{<longitud >}
donde longitud se reere a una medida, como en el caso previo. El salto de lnea sin provocar un cambio de prrafo puede llevarse a cabo con uno de los siguientes comandos

\newline

\\[salto ].

Donde

el argumento opcional salto se reere a la distancia vertical adicional a la que debe situarse la siguiente lnea. Si tal lnea no queda en la misma

A pgina, L T EX ignorar dicha longitud. La versin

\\*

indica que la lnea

que se inicia despus del comando no debe pasar a la pgina siguiente. Para aumentar la distancia entre prrafos pueden usarse los comandos

\smallskip, \medskip

\bigskip,

el ltimo de los cuales aproxima-

damente supondra dejar una lnea en blanco, mientras que los otros se reeren a la mitad y cuarta parte de ste, respectivamente. Para poner distancias entre palabras podemos usar alguno de los comandos siguientes: M) y

(espacio entre palabras),

\quad

(longitud de una

\qquad

(longitud de dos M). Tambin se cuenta con los llamados

micro-espacios que son producidos por los comandos: equivalente a un sexto de un micro-espacios) y

\quad), \;
63

(dos

\, (un micro-espacio micro-espacios), \: (tres

\!

(un micro-espacio negativo).

Y los siguientes comandos introducen espacios tanto horizontales (si

\enspace (espacio de longitud medio M), \thinspace (espacio de longitud 0.16667 M) y \negthinspace (espacio negativo de longitud 0.16667 M).
van en un texto normal) como verticales (si van entre prrafos),

Notas a pie de pgina


Las notas a pie de pgina se generan con el comando

\footnote{<texto

de la nota >} en la posicin del texto en la que queremos que aparezca la


marca de la nota. El espacio entre entre el texto y el pie de pgina se puede cambiar en el prembulo con la orden

\setlength{\skip\footins}{<longitud >}
donde longitud se reere a una medida. Por ejemplo si se pone:

\setlength{\skip\footins}{2cm}
se estar estableciendo un espacio de 2cm entre entre el texto y el pie de pgina. El espacio entre entre pies de pgina se puede cambiar en el prembulo con la orden

\setlength{\footnotesep}{<longitud >}
donde longitud se reere a una medida, como en el caso previo. La lnea que separa los pies de pgina del texto tambin se puede cam-

A biar en el prembulo. El cdigo que L T EX usa por defecto para elaborar


dicha lnea es

\newcommand{\footnoterule}{ \vspace*{-3pt} \noindent\rule{2in}{0.4pt} \vspace*{2.6pt} }


64

Para modicar la lnea en cuestin debemos escribir, por ejemplo, en el prembulo

\renewcommand{\footnoterule}{ \vspace*{-3pt} \noindent\rule{10in}{2pt} \vspace*{2.6pt} }


lo que aumentara el largo y grosor de dicha lnea (Note que al inicio del primer cdigo se usa

\newcommand,

mientras que al inicio del segundo,

\renewcommand).

Divisin silbica
Cuando la inclusin de una palabra supera la longitud de lnea y su ex-

A clusin la hace demasiado corta, L T EX introduce una separacin silbica


segn un algoritmo que depende del idioma en que est trabajando. En caso de que el algoritmo no funcione correctamente, es posible indicar al compilador los posible lugares en los que se puede dividir dicha palabra. El comando a utilizar es

\-.

Por ejemplo, reemplazando la palabra

incomible

por

in\-co\-mi\-ble

Este comando acta localmente sobre la palabra en cuestin, pero si queremos proporcionar al compilador informacin sobre cmo dividir ciertas palabras en todo el texto, es posible usar, en el prembulo, la orden

\hyphenation{<palabra1

palabra2 ...>}

con la divisin correspondiente, en la siguiente forma

10

\hyphenation{ma-ter-ni-dad al-bo-ro-to}.
Las palabras se separan con espacios en blanco, sin signos de puntuacin.
10 Lamentablemente

slo la primera forma admite tildes, virgulillas, etc.


65

Evitar la separacin de palabras


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

Los nombre propios como A. Einstein no deberan aparecer en lneas separadas. Los nombre propios como A.~Einstein no deberan aparecer en lneas separadas.

Los

nombre

propios

como

A.

Einstein no deberan aparecer en lneas separadas.

Los

nombre

propios

como

A. Einstein no deberan aparecer en lneas separadas.

13 Matemtica
13.1 Modos texto y display
T EX fue especialmente diseado para producir documentos de carcter cientco con un contenido importante de matemtica. Precisamente, es

A X la calidad en la escritura de tipografa matemtica donde T EX y L T E


marcan la diferencia.

A En esencia L T EX divide la introduccin de tipografa matemtica segn


se haga en la misma lnea del prrafo en que se est escribiendo (modo

texto ), o en prrafos separados (modo display ).


La tipografa matemtica escrita en modo texto, ha de ser introducida entre

$,

mientras que para hacerlo modo display, lo ms comn es

encerrar la expresin entre puede ser entre

$$

$$

(aunque, equivalentemente, tambin

\[

\]). equation,
que esencialmente tiene el

Por otra parte, puesto que es muy frecuente el referenciar una frmula matemtica en un texto, el entorno mismo funcionamiento que para futuras referencias. 66

$$,

aade adems un nmero a la ecuacin

Ejemplo
El siguiente ejemplo muestra los funcionamientos de los modos texto y display.

Sea $\{ \tilde\gamma_{ij} \}_{0\leq i+j\leq 2n}$ una sucesin de nmeros reales tales que $\tilde\gamma_{00}>0$. Consideramos ${\cal C}[t_1,t_2]$ el conjunto de polinomios complejos en $t_1$ y $t_2$ de grado $2n$ y definimos $\tilde\varphi:{\cal C} [t_1,t_2]\longrightarrow\mathbb{C}$ el funcional lineal complejo que interpola a la sucesin $\tilde\gamma_{ij}$, es decir $$\tilde\varphi(t_1^i t_2^j) = \tilde\gamma_{ij}.$$
{ ij }0i+j 2n tales que 00 > 0.
Sea y denimos una sucesin de nmeros reales Consideramos

C [t1 , t2 ]

el conjun-

to de polinomios complejos en

t1 y t2 de grado 2n : C [t1 , t2 ] C el funcional lineal ij ,


es decir

complejo que interpola a la sucesin

j (ti ij . 1 t2 ) =

Los comandos \textstyle y \displaystyle


Determinadas construcciones matemticas adquieren un tamao distinto segn es escriban en modo texto o display. Por ejemplo:

La frmula $\sum_{k=1}^{n}k = \frac{n(n+1)}{2}$ es bien conocida.


67

La frmula

n k =1 k

n(n+1) es 2

bien conocida.

La frmula

La frmula $$\sum_{k=1}^{n}k = \frac{n(n+1)}{2}$$ es bien conocida.

k=
k =1

n(n + 1) 2

es bien conocida.

La primera ha sido escrita en modo texto y la segunda en modo display. Si se quiere obtener resultados distintos en uno u otro modo debe usarse los comandos texto). As:

\textstyle (en modo display) o \displaystyle (en modo

La frmula $\displaystyle\sum_{k=1}^{n}k = \frac{n(n+1)}{2}$ es bien conocida. La frmula $$\textstyle\sum_{k=1}^{n}k = \frac{n(n+1)}{2}$$ es bien conocida.

n
La frmula

k =
k =1

n(n + 1) 2

es bien conocida.

La frmula

n k =1 k

n(n+1) 2

es bien conocida.

13.2 Construcciones diversas


Tngase presente que algunas de las construcciones pueden precisar los paquetes

amsmath
Fracciones

amssymb.

$$ \frac{\frac{a}{x-y}+\frac{b}{x+y}} {1+\frac{a-b}{a+b}} $$
68

a x y

1+

b x +y ab a+b

Matrices

$$ \left( \begin{array}{lll} 1 & 2 & 3 \\4 & 5 & 6 \\7 & 8 & 9 \end{array}\right) $$

1 2 3 4 5 6 7 8 9

$$ \left( \begin{array}{ccc} 1 & \cdots & n \\2 & \cdots & n+1 \\ \vdots & \ddots & \vdots \\ n & \cdots & 2n-1 \end{array}\right) $$

n 1 2 n + 1 . . .. . . . . . n 2n 1

\begin{equation*} \begin{matrix} 0 & 1\\1 & 0 \end{matrix}\qquad \begin{pmatrix} 0 & -i\\i & 0 \end{pmatrix}\qquad \begin{bmatrix} a & b\\c & d \end{bmatrix}\qquad \begin{vmatrix} 0 & 1\\-1 & 0 \end{vmatrix}\qquad \begin{Vmatrix} f & g\\e & v \end{Vmatrix} \end{equation*}
0 i i 0 0 1 f g e v 1 0

0 1 1 0

a b c d
69

Observe, en el ltimo ejemplo, que el entorno alternativo aade ninguna numeracin a la ecuacin.

equation* no

Funciones a trozos

$$ \psi(x)=\begin{cases} Ae^{ikx}+Be^{-ikx}, & \text{si $x=0$,}\\ De^{- kx}, & \text{si $x\neq 0$.} \end{cases} $$ Aeikx + Beikx , (x) = Dekx ,
Arriba y abajo

si si

x = 0, x = 0.

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


a = +
def

\begin{equation*} \sum_{\substack{0\leq i\leq m\\0>j>n}}\phi(i,j) \end{equation*}


(i, j )
0im 0>j>n

\begin{equation*} \sum^{\substack{0\leq i\leq m\\0>j>n}}\phi(i,j) \end{equation*}


70

0im 0>j>n

(i, j )

Adornos y operadores

abc abc abc

\widetilde{abc}

abc

\widehat{abc} \overrightarrow{abc} \underline{abc}

\overleftarrow{abc} abc

\overline{abc}

abc

abc \overbrace{abc} abc \sqrt{abc} f

abc \underbrace{abc} n abc \sqrt[n]{abc} x

f^\prime

\vec{x}

Nmeros combinatorios

$${\n \choose k} = \frac{n!}{k!\,(n-k)!}$$

n k

n! k ! (n k )!

Fracciones generalizadas y continuas

El comando

\genfrac se puede utilizar para producir fracciones perso-

nalizadas, con la sintaxis:

\genfrac{Delim.Izqdo}{Delim.Derecho}{GrosorLnea} {Tamao}{Numerador}{Denominador}
0, 1, 2 y 3, que corres\displaystyle, \textstyle, \scriptstyle
71

Para Tamao, se puede elegir entre los valores ponden respectivamente a y

\scripscriptstyle.

$$\genfrac{\{}{\}}{0pt}{}{ij}{k}= g^{k1}\genfrac{[}{]}{0pt}{}{ij}{1} +g^{k2}\genfrac{[}{]}{0pt}{}{ij}{2}$$

ij k

= g k1

ij ij +g k2 1 2

Las fracciones continuas se obtienen a travs del comando

\cfrac.

\frac{4}{\pi}=1+\cfrac{1^2}{2+ \cfrac{3^2}{2+ \cfrac{5^2}{2+\dotsb}}}

4 =1+ 2+

12 32 2+ 52 2 +

Los comandos

\genfrac

\cfrac

son propios del paquete

amsmath.

13.3 Texto en expresiones matemticas


\text{texto }

La instruccin

se usa para incluir texto en modo matem-

tico. ste comando se utiliza principalmente en los despliegues, ya que en el discurso corriente el modo matemtico est delimitado por los smbolos

$. $$\text{Para todo }\varepsilon >0 \text{ existe }\delta >0\text{ tal que }|x-a|<\delta \text{ implica }|f(a)-f(x)|<\varepsilon.$$
Para todo

>0

existe

>0

tal que

|xa| <

implica

|f (a)f (x)| < .

72

13.4 Tipos de letra en modo matemtico

$\mathrm{abc...}$ $\mathrm{ABC...}$ $\mathit{abc...}$ $\mathit{ABC...}$ $\mathsf{abc...}$ $\mathsf{ABC...}$ $\mathtt{abc...}$ $\mathtt{ABC...}$ $\mathbf{abc...}$ $\mathbf{ABC...}$ $\mathcal{ABC...}$

abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMN OPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRS . . . XYZ ABCDEFGHIJ KLMN OPQRS . . . X YZ

$\mathfrak{abc...}$ abcdefghijklmnopqrstuvwxyz $\mathfrak{ABC...}$ ABCDEFGHIJKLMNOPQRSTUVWXYZ $\mathbb{ABC...}$


ABCDEFGHIJKLMNOPQRSTUVWXYZ

Tngase en cuenta que los tipos quete

\mathfrak

\mathbb

requieren del pa-

amssymb.

13.5 Smbolos matemticos en negrilla


El comando

\mathbf

afecta solamente a las letras del alfabeto ordinario,

a los nmeros y a las letras griegas mayscula no inclinadas. El pquete

amsmath incluye el comando \pmb (o \boldsymbol) con los que se obtienen


los smbolos en negrita. 73

$$\text{Para todo } \pmb{varepsilon} >0 \text{ existe }\pmb{delta} >0\text{ tal que }|x-a|<\pmb{delta}\text{ implica }|f(a)-f(x)|<\pmb{varepsilon}.$$
Para todo

>0

existe

>0

tal que

|xa| <

implica

|f (a)f (x)| < .

13.6 Tamao de fuente en modo matemtico


Para realizar el cambio del tamao del texto matemtico se puede utilizar los modicadores del texto normal, pero con la precaucin de que el modicador aplicado debe ser llamado antes de ingresar a un modo matemtico.

{\tiny $f_x:A\to\mathbb{R}^2$}

f x : A R2

{\small $f_x:A\to\mathbb{R}^2$} fx : A R2 {\Large $f_x:A\to\mathbb{R}^2$} fx : A R2 {\Huge $f_x:A\to\mathbb{R}^2$}

f x : A R2

13.7 Alineacin de frmulas


Para alinear frmulas y/o separarlas en dos o ms renglones el paquete

amsmath dispone de una coleccin de sosticados entornos: multline, gather, align, split, aligned, gatered y flalign.
Con cualquiera de estos entornos se puede usar el comando

\intertext

para insertar renglones de texto en el despliegue. Solamente se puede usar despus de neacin.

\\,

y es especialmente til con

align,

ya que preserva la ali-

multline
Se utiliza para dividir frmulas, sin alinearlas, en dos o ms renglones, estos se separan con

\\,

el primer rengln aparece alineado a la izquier74

da, el ltimo a la derecha y el resto centrados. Todo el texto recibe una nica numeracin en el ltimo rengln. El entorno ninguna numeracin.

multline* no produce

\begin{multline} (a+b)^3 = (a+b)(a+b)(a+b) \\ = (a^2 + 2ab + b^2)(a+b) \\ = (a+b)(a^2 + 2ab + b^2) \\ = a^3 + 3a^2b + 3ab^2 + b^3 \end{multline}
(a + b)3 = (a + b)(a + b)(a + b) = (a2 + 2ab + b2 )(a + b) = (a + b)(a2 + 2ab + b2 ) = a3 + 3a2 b + 3ab2 + b3
(1.1)

\begin{multline*} (a+b)^3 = (a+b)(a+b)(a+b) \\ = (a^2 + 2ab + b^2)(a+b) \\ = (a+b)(a^2 + 2ab + b^2) \\ = a^3 + 3a^2b + 3ab^2 + b^3 \end{multline*}
(a + b)3 = (a + b)(a + b)(a + b) = (a2 + 2ab + b2 )(a + b) = (a + b)(a2 + 2ab + b2 ) = a3 + 3a2 b + 3ab2 + b3

75

gather

Con este entorno a diferencia de

multline

todos los renglones aparecen

centrados y para cada uno se genera una numeracin. Usando el modicador

\notag

se puede eliminar la numeracin en renglones particulares.

Con la versin

gather*

no se produce numeracin alguna.

\begin{gather} (a+b)^3 = (a+b)(a+b)(a+b) \\ = (a^2 + 2ab + b^2)(a+b) \\ = a^3 + 3a^2b + 3ab^2 + b^3 \end{gather}
(a + b)3 = (a + b)(a + b)(a + b) = (a2 + 2ab + b2 )(a + b) = a3 + 3a2 b + 3ab2 + b3
(1.2) (1.3) (1.4)

\begin{gather} (a+b)^3 = (a+b)(a+b)(a+b) \\ = (a^2 + 2ab + b^2)(a+b) \notag\\ = (a+b)(a^2 + 2ab + b^2) \\ = a^3 + 3a^2b + 3ab^2 + b^3 \notag \end{gather}
(a + b)3 = (a + b)(a + b)(a + b) = (a2 + 2ab + b2 )(a + b) = (a + b)(a2 + 2ab + b2 ) = a3 + 3a2 b + 3ab2 + b3
76 (1.6) (1.5)

\begin{gather*} (a+b)^3 = (a+b)(a+b)(a+b) \\ = (a^2 + 2ab + b^2)(a+b) \\ = a^3 + 3a^2b + 3ab^2 + b^3 \end{gather*}
(a + b)3 = (a + b)(a + b)(a + b) = (a2 + 2ab + b2 )(a + b) = a3 + 3a2 b + 3ab2 + b3

align
Este entorno a diferencia de

gather

permite alinear las frmulas con res-

pecto a un smbolo al cual es necesario colocar inmediatamente antes un Los renglones se separan con Con el modicador

&.

\\. Todos los renglones aparecen numerados.


no se produce numeracin alguna.

\notag

se puede eliminar la numeracin en renglones

particulares; con la versin

align*

\begin{align} (a+b)^3 &= (a+b)(a+b)(a+b) \\ &= (a^2 + 2ab + b^2)(a+b) \\ &= (a+b)(a^2 + 2ab + b^2) \\ &= a^3 + 3a^2b + 3ab^2 + b^3 \end{align}
(a + b)3 = (a + b)(a + b)(a + b) = (a2 + 2ab + b2 )(a + b) = (a + b)(a2 + 2ab + b2 ) = a3 + 3a2 b + 3ab2 + b3
(1.7) (1.8) (1.9) (1.10)

77

\begin{align} (a+b)^3 &= (a+b)(a+b)(a+b) \notag \\ &= (a^2 + 2ab + b^2)(a+b) \\ &= (a+b)(a^2 + 2ab + b^2) \\ &= a^3 + 3a^2b + 3ab^2 + b^3 \notag \end{align}
(a + b)3 = (a + b)(a + b)(a + b) = (a2 + 2ab + b2 )(a + b) = (a + b)(a2 + 2ab + b2 ) = a3 + 3a2 b + 3ab2 + b3
(1.11) (1.12)

\begin{align*} (a+b)^3 &= (a+b)(a+b)(a+b) \\ &= (a^2 + 2ab + b^2)(a+b) \\ &= (a+b)(a^2 + 2ab + b^2) \\ &= a^3 + 3a^2b + 3ab^2 + b^3 \end{align*}
(a + b)3 = (a + b)(a + b)(a + b) = (a2 + 2ab + b2 )(a + b) = (a + b)(a2 + 2ab + b2 ) = a3 + 3a2 b + 3ab2 + b3

split
Similar al entorno

align, pero con la diferencia de que todo el despliegue equation


o

recibe un nico nmero que aparece centrado verticalmente. Este entorno debe estar bajo el alcance del entorno 78

align.

\begin{equation} \begin{split} (a+b)^3 &= (a+b)(a+b)(a+b) \\ &= (a^2 + 2ab + b^2)(a+b) \\ &= (a+b)(a^2 + 2ab + b^2) \\ &= a^3 + 3a^2b + 3ab^2 + b^3 \end{split} \end{equation}
(a + b)3 = (a + b)(a + b)(a + b) = (a2 + 2ab + b2 )(a + b) = (a + b)(a2 + 2ab + b2 ) = a3 + 3a2 b + 3ab2 + b3
(1.13)

aligned
Sirve para construir bloques alineados independientes que pueden ser ubicados unos al lado de otros, o de otro tipo de material (como parntesis y corchetes). Estos bloques aparecen centrados verticalmente, a menos que

t (tope) o b (base). Este entorno debe estar bajo el alcance del entorno equation y con esto adquiere la numerase usen los argumentos opcionales cin de este entorno, para eliminar totalmente la numeracin es necesario utilizar el entorno

equation*.

\begin{equation} \begin{aligned} a &= b + c + d \\ z &= x + y \\ m &= n


79

\end{aligned} \qquad \begin{aligned} A &= B + C + D \\ Z &= X + Y \end{aligned} \qquad \begin{aligned} \phi &= \mu +\nu +\eta \end{aligned} \end{equation}
a=b+c+d z =x+y m=n

A=B+C +D Z =X +Y

=++

(1.14)

\begin{equation*} \begin{aligned}[t] a &= b + c + d \\ z &= x + y \\ m &= n \end{aligned} \qquad \begin{aligned} \phi &= \mu +\nu +\eta \end{aligned} \end{equation*}
a=b+c+d z =x+y m=n
80

A=B+C +D Z =X +Y

=++

gathered

Sirve para construir bloques independientes cuyas frmulas aparecen centradas horizontalmente que pueden ser ubicados unos al lado de otros, o de otro tipo de material (como parntesis y corchetes). Estos bloques aparecen centrados verticalmente, a menos que se usen los argumentos opcionales del

t (tope) o b (base). Este entorno debe estar bajo el alcance entorno equation y con esto adquiere la numeracin de este entorno,

para eliminar totalmente la numeracin es necesario utilizar el entorno

equation*. \begin{equation} \begin{gathered}[t] a &= b + c + d \\ z &= x + y \\ m &= n \end{gathered} \qquad \begin{gathered}[t] A &= B + C + D \\ Z &= X + Y \end{gathered}[t] \qquad \begin{gathered} \phi &= \mu +\nu +\eta \end{gathered} \end{equation}
a=b+c+d z =x+y m=n
81

A=B+C +D Z =X +Y

=++

(1.15)

\begin{equation*} \begin{gathered}[b] a &= b + c + d \\ z &= x + y \\ m &= n \end{gathered} \qquad \begin{gathered}[b] A &= B + C + D \\ Z &= X + Y \end{gathered}[b] \qquad \begin{gathered} \phi &= \mu +\nu +\eta \end{gathered} \end{equation*}
a=b+c+d z =x+y m=n A=B+C +D Z =X +Y =++

align
El entorno

flalign

se usa como

align

para construir bloques alineados,

pero que aade espacio proporcional entre columnas, de manera que el despliegue se imprime de extremo a extremo de la pgina. Para separar la columnas se utilizan

&.

Cada una de las lneas del despliegue adquiere un

nmero, pero se puede usar el comando

\notag

para eliminar la numera-

cin de renglones particulares. La versin estrella ( numeracin. 82

flalign*)

no produce

\begin{flalign} a &= b + c & A &= B + C & \phi &= \mu + \nu + \eta\\ z &= x + y & Z &= X + Y \notag\\ m &= n \end{flalign}
a=b+c z =x+y m=n A=B+C Z =X +Y
(1.17)

=++

(1.16)

13.8 Uso del comando \intertext


El comando

\intertext

permite aadir lneas de texto en cualquiera de

los entornos de alineacin, de tal manera que se preserva la alineacin dada por el entorno.

\begin{align} \intertext{Dado que por la regla de la cadena se tiene la igualdad} (fg)^{\prime} &= f^{\prime}g + fg^{\prime}\\ \intertext{la cual se puede reescribir como} fg^{\prime} &= (fg)^{\prime} - f^{\prime}g\\ \intertext{entonces se concluye que} \int fg^{\prime} &= \int (fg)^{\prime} - \int f^{\prime}g \end{align}

Dado que por la regla de la cadena se tiene la igualdad

(f g ) = f g + f g
83

(1.18)

la cual se puede reescribir como

f g = (f g ) f g
entonces se concluye que

(1.19)

fg =

(f g )

fg

(1.20)

13.9 Parntesis y signos de agrupacin


Para los smbolos de los parntesis y de los corchetes se usan las teclas

A usuales, para los dems smbolos L T EX provee de una variada gama de


comandos para producir dichos signos de agrupacin. A continuacin se listan los comandos de los signos ms usualmente utilizados.

{ \{

} \}

\langle
|

\rangle \|

\vert

\Vert

\lfloor \lceil

\rfloor \rceil

Para aumentar el tamao de los smbolos de agrupacin se usan los modicadores

\left

\right

antes del smbolo. stos se deben usar en

pares, de ser necesario, se usan los comandos formar el par. Los comandos

\left.

\right.

para

\left

\right

no producen los mejores resultados,

A para esto, L T EX provee los modicadores


84

\big, \Big, \bigg, \Bigg,

los

cuales permiten tener un mejor control sobre el tamao de los signos de agrupacin. Adems de los modicadores anteriores el paquete

amsmath provee una

versin mejorada de stos, en una versin de parejas de izquierda a derecha:

\bigl \bigr, \Bigl \Bigr, \biggl \biggr, \Biggl \Biggr.

$((a_1b_1)-(a_2b_2)) ((a_2b_1)+(a_1b_2))$

((a1 b1 ) (a2 b2 ))((a2 b1 ) + (a1 b2 ))

$\big((a_1b_1)-(a_2b_2) \big)\big((a_2b_1)+ (a_1b_2)\big)$

(a1 b1 ) (a2 b2 ) (a2 b1 ) + (a1 b2 )

$\bigg((a_1b_1)-(a_2b_2) \bigg)\bigg((a_2b_1)+ (a_1b_2)\bigg)$

(a1 b1 ) (a2 b2 )

(a2 b1 ) + (a1 b2 )

$\Big((a_1b_1)-(a_2b_2) \Big)\Big((a_2b_1)+ (a_1b_2)\Big)$

(a1 b1 ) (a2 b2 )

(a2 b1 ) + (a1 b2 )

$\Bigg((a_1b_1)-(a_2b_2) \Bigg)\Bigg((a_2b_1)+ (a_1b_2)\Bigg)$

(a1 b1 ) (a2 b2 )

(a2 b1 ) + (a1 b2 )

85

13.10 Teoremas y estructuras relacionadas

El comando

\newtheorem{<nombre >}{<rtulo >} (que es preferible ubi-

car en el prembulo del documento) dene una estructura numerada, creando el entorno <nombre > con su respectivo contador. <rtulo > aparece impreso cuando se invoca el entorno.

\documentclass{book}
. . .

\newtheorem{miteorema}{Teorema} \newtheorem{micorolario}{Corolario}
. . .

\begin{document}
. . .

\begin{miteorema} El conjunto $G\subset K\big[\bar{X}\big]$, $0\not\in G$, es una base de Grbner s y slo si $\forall f\in {\rm Id}(G)$ con $f\not=0$ se tiene una representacin estndar de $f$ en $G$. \end{miteorema} \begin{miteorema} Sea $G\subset K\big[\bar{X}\big]$ finito y con $0\not\in G$, Supongamos que: $\forall g_1,g_2\in G$, ${\rm spol}(g_1,g_2)$ es igual a cero o tiene una $t$-representacin en $G$, para algn $t<{\rm mcm}(HM(g_1),HM(g_2))$; entonces $G$ es una base de Grbner. \end{miteorema} \begin{micorolario} Para todos lo polinomios $p\in I$, se define la aplicacin $v_1(p)=HM\big(w\big(HM(p)\big)\big)$. Entonces $\forall p_1,p_2\in I$ con $HM(p_1)\not=HM(p_2)$
86

se tiene que $v_1(p_1)\not=v_1(p_2)$. \end{micorolario}


. . .

\end{document}
, 0 G, es una base de Grbner s y Teorema 1 El conjunto G K X
slo si en

f Id(G)

con

f =0

se tiene una representacin estndar de

G.
nito y con

Teorema 2 Sea G K X g1 , g2 G, spol(g1 , g2 ) G,


para algn Grbner.

es igual a cero o

0 G, Supongamos que: tiene una t-representacin en


entonces

t < mcm(HM (g1 ), HM (g2 ));

es una base de

Corolario 1 Para
HM (p2 )

todos lo polinomios . Entonces

v1 (p) = HM w HM (p)
se tiene que

p I , se dene la aplicacin p1 , p2 I con HM (p1 ) =

v1 (p1 ) = v1 (p2 ).

El comando

\newtheorem permite que los entornos, que dena el usua-

rio, adquieran una numeracin subordinada respecto de los captulos, secciones, etc.

\documentclass{book}
. . .

\newtheorem{miteorema}{Teorema}[section] \newtheorem{micorolario}{Corolario}[section]
. . .

\begin{document} . . . \begin{miteorema} El conjunto $G\subset K\big[\bar{X}\big]$, ... se tiene una representacin estndar de $f$ en $G$. \end{miteorema}
87

\begin{miteorema} Sea $G\subset K\big[\bar{X}\big]$ ... entonces $G$ es una base de Grbner. \end{miteorema} \begin{micorolario} Para todos lo polinomios $p\in I$, ... se tiene que $v_1(p_1)\not=v_1(p_2)$. \end{micorolario}
. . .

\end{document}

Teorema 13.1 El
estndar de

conjunto

GK X

, ... se tiene una representacin

en

G.
nito y con

Teorema 13.2 Sea G K X


base de Grbner.

0 G,

... entonces

es una

Corolario 13.1 Para todos lo polinomios p I , ... se tiene que v1(p1) =


v1 (p2 ).

El comando

\newtheorem

tambin permite que la numeracin de los

entornos denidos por el usuario sea correlativa, y no como en el caso previo que cada entorno se numeraba por separado.

\documentclass{book}
. . .

\newtheorem{miteorema}{Teorema}[section] \newtheorem{micorolario}[miteorema]{Corolario}
. . .

\begin{document}
. . . 88

\begin{miteorema} El conjunto $G\subset K\big[\bar{X}\big]$, ... se tiene una representacin estndar de $f$ en $G$. \end{miteorema} \begin{miteorema} Sea $G\subset K\big[\bar{X}\big]$ ... entonces $G$ es una base de Grbner. \end{miteorema} \begin{micorolario} Para todos lo polinomios $p\in I$, ... se tiene que $v_1(p_1)\not=v_1(p_2)$. \end{micorolario}
. . .

\end{document}

Teorema 13.1 El
estndar de

conjunto

GK X

, ... se tiene una representacin

en

G.
nito y con

Teorema 13.2 Sea G K X


base de Grbner.

0 G,

... entonces

es una

Corolario 13.3 Para todos lo polinomios p I , ... se tiene que v1(p1) =


v1 (p2 ).

El texto de los entornos denidos por el usuario estn, por defecto, en modo enftico. Es posible cambiar el modo enftico a modo normal utilizando el comando

\rm.

\documentclass{book}
. . .

\newtheorem{miteorema}{Teorema}[section] \newtheorem{micorolario}[miteorema]{Corolario}
. . . 89

\begin{document}
. . .

\begin{miteorema} {\rm El conjunto $G\subset K\big[\bar{X}\big]$, ... se tiene una representacin estndar de $f$ en $G$.} \end{miteorema} \begin{miteorema} {\rm Sea $G\subset K\big[\bar{X}\big]$ ... entonces $G$ es una base de Grbner.} \end{miteorema} \begin{micorolario} {\rm Para todos lo polinomios $p\in I$, ... se tiene que $v_1(p_1)\not=v_1(p_2)$.} \end{micorolario}
. . .

\end{document}

Teorema 13.1 El
estndar de

conjunto

G K X

, ... se tiene una representacin

en

G.
nito y con

Teorema 13.2 Sea G K X


base de Grbner.

0 G,

... entonces

es una

Corolario 13.3 Para todos lo polinomios p I , ... se tiene que v1(p1) =


v1 (p2 ).

14 Listas
Existen tres tipos de entornos para crear listas formateadas

\begin{enumerate} \begin{itemize} \begin{description}

texto listado

\end{enumerate} \end{itemize} \end{description}

texto listado

texto listado
90

14.1 Entorno enumerate

1. Se trata de listas secuenciadas numricamente. 2. Los nmeros son consecutivos comenzando por 1, en cada llamada al entorno.

\begin{enumerate} \item Se trata de listas secuenciadas numricamente. \item Los nmeros son consecutivos comenzando por 1, en cada llamada al entorno. \end{enumerate}
6. Es posible inicializar la numeracin a partir de un nmero diferente de 1 utilizando el comando

\addtocounter.

7. Por ejemplo, aqu se inicializa la numeracin a partir de 6.

\begin{enumerate} \addtocounter{enumi}{5} \item Es posible inicializar la numeracin a partir de un nmero diferente de 1 utilizando el comando \texttt {\textbackslash addtocounter}. \item Por ejemplo, aqu se inicializa la numeracin a partir de 6. \end{enumerate}

14.2 Entorno itemize

Cada uno de los items son indicados con un smbolo determinado. La longitud del texto no tiene lmite.

\begin{itemize} \item Cada uno de los \emph{items} son indicados con un smbolo determinado.
91

\item La longitud del texto no tiene lmite. \end{itemize}

14.3 Entorno description

Primero: Parece claro el funcionamiento de este entorno. Observacin: No es un entorno demasiado frecuente.
\begin{description} \item[Primero:] Parece claro el funcionamiento de este entorno. \item[Observacin:] No es un entorno demasiado frecuente. \end{description}

14.4 Listas anidadas


Las listas previas pueden ser incluidas unas dentro de otras, tanto del mismo como de distinto tipo, hasta cuatro niveles de inclusin (por defecto). El siguiente es un ejemplo que muestra listas mixtas, con cuatro niveles de inclusin:

Primer nivel en

itemize enumerate
(segundo nivel global) (tercero global)

1. Primer nivel en

Segundo nivel en

enumerate

a ) Segundo en

enumerate

(cuarto global)

b ) Segundo elemento del cuarto nivel

Vuelta al tercer nivel global (segundo en

itemize)

2. Segundo nivel (primer en Primer nivel

enumerate)

92

\begin{itemize} \item Primer nivel en {\tt itemize} \begin{enumerate} \item Primer nivel en {\tt enumerate} (segundo nivel global) \begin{itemize} \item Segundo nivel en {\tt enumerate} (tercero global) \begin{enumerate} \item Segundo en {\tt enumerate} (cuarto global) \item Segundo elemento del cuarto nivel \end{enumerate} \item Vuelta al tercer nivel global (segundo en {\tt itemize}) \end{itemize} \item Segundo nivel (primer en {\tt enumerate}) \end{enumerate} \item Primer nivel \end{itemize}

14.5 Manipulacin de etiquetas en el entorno enumerate


El estilo de numeracin y las etiquetas que sealan cada lista son congurables fcilmente. En el entorno enumerate, las etiquetas por defecto son:

1. Etiqueta de primer nivel

a ) Etiqueta de segundo nivel


1) Etiqueta de tercer nivel

a Etiqueta de cuarto nivel b Etiqueta de cuarto nivel


2) Etiqueta de tercer nivel

b ) Etiqueta de segundo nivel


2. Etiqueta de primer nivel 93

\begin{enumerate} \item Etiqueta de \begin{enumerate} \item Etiqueta de \begin{enumerate} \item Etiqueta de \begin{enumerate} \item Etiqueta de \item Etiqueta de \end{enumerate} \item Etiqueta de \end{enumerate} \item Etiqueta de \end{enumerate} \item Etiqueta de \end{enumerate}

primer nivel segundo nivel tercer nivel cuarto nivel cuarto nivel tercer nivel segundo nivel primer nivel

La numeracin por defecto en la lista de nivel uno est formada por nmeros arbigos, el nivel dos por letras en minsculas, el nivel tres son nmeros nuevamente y el cuatro, letras con apstrofe. Cada una de estas etiquetas puede cambiarse redeniendo apropiadamente los comandos que las generan. Tales comandos son: y

\theenumi, \theenumii, \theenumiii \labelenumi, \labelenumii,

\theenumiv,

uno para cada nivel. Mientras que las etiquetas que gene-

ran la construccin de dichos comandos son

\labelenumiii y \labelenumiv. Si se quiere cambiar este comportamiento por defecto en cualquier nivel, es necesario redenir ambos comandos, justo antes del inicio del entorno correspondiente. Por ejemplo,

1. Etiqueta de primer nivel 1.1. Etiqueta de segundo nivel 1.1.1. Etiqueta de tercer nivel 1.1.1.1. Etiqueta de cuarto nivel 1.1.1.2. Etiqueta de cuarto nivel 1.1.2. Etiqueta de tercer nivel 94

1.2. Etiqueta de segundo nivel 2. Etiqueta de primer nivel

\renewcommand{\theenumii}{\arabic{enumii}} \renewcommand{\labelenumii}{\theenumi.\theenumii.} \renewcommand{\labelenumiii}{\theenumi.\theenumii. \theenumiii.} \renewcommand{\theenumiv}{\arabic{enumiv}} \renewcommand{\labelenumiv}{\theenumi.\theenumii. \theenumiii.\theenumiv.} \begin{enumerate} \item Etiqueta de primer nivel \begin{enumerate} \item Etiqueta de segundo nivel \begin{enumerate} \item Etiqueta de tercer nivel \begin{enumerate} \item Etiqueta de cuarto nivel \item Etiqueta de cuarto nivel \end{enumerate} \item Etiqueta de tercer nivel \end{enumerate} \item Etiqueta de segundo nivel \end{enumerate} \item Etiqueta de primer nivel \end{enumerate}
O, podra ser, 1) Etiqueta de primer nivel 1.1) Etiqueta de segundo nivel 1.1.1) Etiqueta de tercer nivel 1.1.1.1) Etiqueta de cuarto nivel 1.1.1.2) Etiqueta de cuarto nivel 95

1.1.2) Etiqueta de tercer nivel 1.2) Etiqueta de segundo nivel 2) Etiqueta de primer nivel

\renewcommand{\labelenumi}{\theenumi)} \renewcommand{\theenumii}{\arabic{enumii}} \renewcommand{\labelenumii}{\theenumi.\theenumii)} \renewcommand{\labelenumiii}{\theenumi.\theenumii. \theenumiii)} \renewcommand{\theenumiv}{\arabic{enumiv}} \renewcommand{\labelenumiv}{\theenumi.\theenumii. \theenumiii.\theenumiv)} \begin{enumerate} \item Etiqueta de primer nivel \begin{enumerate} \item Etiqueta de segundo nivel \begin{enumerate} \item Etiqueta de tercer nivel \begin{enumerate} \item Etiqueta de cuarto nivel \item Etiqueta de cuarto nivel \end{enumerate} \item Etiqueta de tercer nivel \end{enumerate} \item Etiqueta de segundo nivel \end{enumerate} \item Etiqueta de primer nivel \end{enumerate}
Los comandos que permiten cambiar el estilo de la numeracin son

\arabic

(nmeros arbigos),

minsculas y maysculas) y

\roman, \Roman (numeracin romana, en \alph, \Alph (numeracin alfabtica, en mi-

nsculas y maysculas). Tngase en cuenta que listas alfabticas con ms elementos que letras del alfabeto generar errores en la compilacin. 96

[ ] Etiqueta de primer nivel

I [I-B ] Etiqueta de segundo nivel


[ -A] Etiqueta de segundo nivel [

II] Etiqueta de primer nivel

\renewcommand{\theenumi}{\Roman{enumi}} \renewcommand{\labelenumi}{[\textbf{\theenumi}]} \renewcommand{\theenumii}{\Alph{enumii}} \renewcommand{\labelenumii}{[\textbf{\theenumi}\textit{\theenumii}]} \begin{enumerate} \item Etiqueta de primer nivel \begin{enumerate} \item Etiqueta de segundo nivel \item Etiqueta de segundo nivel \end{enumerate} \item Etiqueta de primer nivel \end{enumerate}

14.6 Manipulacin de etiquetas en el entorno itemize


El esquema de etiquetas por defecto en este entorno es ( ) en el nivel uno,

nivel tres y

$\bullet$ () en el nivel dos, $\diamond$ ( ) en el nivel cuatro. La modicacin


y

$\blacksquare$ $\circ$ () en el
de estas

etiquetas se lleva a cabo redeniendo los comandos del nivel correspodiente

\labelitemi, \labelitemii, \labelitemiii


Etiqueta de primer nivel

\labelitemiv.

Etiqueta de segundo nivel

Etiqueta de tercer nivel Etiqueta de cuarto nivel Etiqueta de cuarto nivel 97

Etiqueta de tercer nivel

Etiqueta de segundo nivel

Etiqueta de primer nivel

\begin{itemize} \item Etiqueta de \begin{itemize} \item Etiqueta de \begin{itemize} \item Etiqueta de \begin{itemize} \item Etiqueta de \item Etiqueta de \end{itemize} \item Etiqueta de \end{itemize} \item Etiqueta de \end{itemize} \item Etiqueta de \end{itemize}

primer nivel segundo nivel tercer nivel cuarto nivel cuarto nivel tercer nivel segundo nivel primer nivel

Por ejemplo, para cambiar la etiqueta de nivel uno por un trbol puede hacerse

Etiqueta de primer nivel Etiqueta de primer nivel

\renewcommand{\labelitemi}{$\clubsuit$} \begin{itemize} \item Etiqueta de primer nivel \item Etiqueta de primer nivel \end{itemize}
98

15 Inclusin de grcos
ATEX 15.1 Grcos en L
A Los formatos ms recomendables para incluir grcos en L T EX son el
Encapsulated PostScript (EPS) y el formato PostScript (PS). Si usamos

A PDFL T EX, los formatos ms comunes son PDF, PNG o JPG. Los archivos
son insertados mediante el comando

\includegraphics. Para poder usar

dicho comando es preciso cargar el paquete digitando

\usepackage{graphicx}
en el prembulo.

15.2 El comando \includegraphics


La sintaxis de este comando es

\includegraphics[<opciones >]{<nombre
Algunas opciones disponibles son

del archivo >}

width height scale

Anchura del grco. Altura del grco. Dene un factor de escala a aplicar en ambas direcciones.

angle

Especica un ngulo de rotacin en grados sexagesimales.

natwidth

Especica la anchura originaria del grco cuando es PNG, o JPG y aun as se va a

A incluir en L T EX.
natheight Especica la altura originaria del grco cuando es PNG o JPG y aun as se va a

A incluir en L T EX.
99

\includegraphics[width=2cm]{logo.eps}

\includegraphics[width=2cm, height=1cm]{logo.eps}

\includegraphics[height=2cm, angle=45]{logo.eps}

\includegraphics[scale=0.25, angle=60]{logo.eps}

15.3 Figuras otantes


La inclusin de guras puede presentar problemas a la hora de ubicarlas en el texto pues al no poder ser divididas no pueden aparecer en cualquier punto del documento. Para resolver este problema, es necesario tratar este tipo de objetos como objetos otantes, que son situados donde el compilador estima conveniente.

15.4 Creacin de guras otantes


figure, en cuyo interior situamos el correspondiente grco con \includegraphics. La sintaxis del
Las guras otantes se crean con el entorno entorno es 100

Figura 1.54 Ejemplo de gura


\begin{figure}[<posicin >] \centering \includegraphics{gura } \caption{<pie de la gura >} \label{<etiqueta >} \end{figure}
Los comandos

\caption y \label son opcionales y sirven para situar \label. El comando \label despus del \caption.
debe ser

una leyenda para la gura, que aparecer numerada. Dicha numeracin se asignar a la etiqueta situado inmediatamente Si el comando El comando

\caption

no aparece se cre auna gura sin numerar. (normalmente situado al inicio del do-

\listoffigures

cumento) genera una lista con todas las guras incluidas en el documento. El comando

\caption

puede llevar un argumento opcional que espe-

cica el texto que aparecer en la Lista de Figuras. En caso de no aparecer, dicho texto es el mismo que el argumento obligatorio del comando.

La gura otante 1.54 ha sido creada con el siguiente cdigo

\begin{figure} \centering \includegraphics[scale=0.25]{logo.eps} \caption{Ejemplo de figura} \label{ej} \end{figure}


101

15.5 Posicionamiento de guras


La posicin en la que la gura aparece en el texto est determinada por el argumento opcional que puede ser una (o ms de una) de las siguientes letras

h, t, b, p.

Sita la gura all donde aparece el entorno. Esta opcin no puede ser ejecutada siempre, pues es posible que el grco no entre en el espacio de pgina que reste.

t b p

Sita la gura en la parte superior de la pgina. Sita la gura en la parte inferior de la pgina. Sita la gura en una pgina separada.

Si no se especica la posicin, el compilador toma por defecto la secuencia

[tbp].

A Cuando se incluye una gura otante, L T EX leer la gura y la tendr


en memoria hasta que encuentre una posicin que considere adecuada para incluirla en el texto.

15.6 El paquete subfigure


El paquete

subfigure

permite introducir guras con ms de un grco.

Para utilizarlo debe colocarse en el prembulo

\usepackage{subfigure}

Por ejemplo, la gura 1.55 se ha creado con el cdigo 102

(a) It is a little logo

(b) It is a big logo

Figura 1.55 Varias grcas en una gura


\begin{figure} \centering \subfigure[It is a little logo]{ \qquad\includegraphics[scale=0.15]{logo.eps}\qquad} \subfigure[It is a big logo]{ \qquad\includegraphics[scale=0.25]{logo.eps}\qquad} \caption{Varias grficas en una figura} \label{ej2} \end{figure}

16 Tablas
Las tablas son construcciones alineadas que, en principio, no pueden aparecer en ms de una pgina. El entorno para producir tales construcciones es

tabular,

cuya sintaxis es

\begin{tabular}[<pocisin >]{<colocacin >}


las

\end{tabular}
El signicado de los argumentos es el siguiente

posicin Posicin

vertical de la tabla respecto de la lnea base. Puede

tomar los valores

t la lnea superior de la tabla se alinea con la lnea base, b la lnea inferior de la tabla se alinea con la lnea base.
Si no aparece el parmetro, se centrar respecto de la lnea base. 103

colocacin Alineacin

de las columnas. Debe aparecer una entrada por

cada columna de la tabla adems de entradas opcionales para delimitar los bordes entre cada columna. Los formatos posibles para cada columna son

l alineacin a la izquierda, c la columna aparecer centrada, r alineacin a la derecha, p{wd} elemento tipo prrafo. El texto aparecer en un prrafo de anchura wd, con la lnea superior alineada con las otras columnas, *{num}{cols} abreviacin para repeticin de formato. Por ejemplo,
*{3}{c}
es equivalente a

ccc.

Los elementos para separacin de columnas son

| dibuja una lnea vertical, || dibuja dos lneas verticales prximas, @{texto} inserta texto entre dos columnas. til para cuando los valores
de una misma columna deben estar separados por una marca determinada (guin, punto decimal, etc.) La expresin

@{texto }

elimina el

espacio automtico que se pone entre cada columna y lo sustituye por el texto. Si se necesita espacio blanco extra, debe ser implcitamente incluido.

16.1 Filas
Cada una de las las tendr la estructura siguiente

elemento1 & elemento2 & . . . & elementon \\


Es decir, el smbolo y el comando

& se utiliza para separar dos columnas consecutivas

\\ para separar una la de la siguiente. Todas las las, salvo


104

la ltima debe ser nalizada con este comando.

Otros comandos son

\hline este

comando dibuja una lnea horizontal entre la y la. Debe

aparecer slo antes de la primera la, o justo a continuacin de Dos comandos ellas.

\\.

\hline dibujan dos lneas con un pequeo espacio entre

\cline{n m} como el comando \hline, dibuja una lnea horizontal entre la columna

hasta la columna

m.

Slo puede aparecer detrs de

\\

y puede haber ms de uno.

\vline este comando dibuja una lnea vertical en la lnea en la que aparece
de altura correspondiente a la la en la que se encuentra.

\multicolumn{<nu mero>}{col}{texto} engloba un nmero de columnas dado por nmero bajo una columna simple cuya anchura corresponde a las que engloba, con formato dado en col y con el contenido de texto.

16.2 Ejemplos
\begin{tabular}{|l|c|r|} \hline uno & dos & tres \\ \hline cuatro & cinco & seis \\ \hline \end{tabular}
uno cuatro dos cinco tres seis 105

\begin{tabular}{|l|c|r|} \hline \multicolumn{3}{|c|}{Tabla con nmeros}\\ \hline\\ uno & dos & tres \\ \hline \hline cuatro & cinco & seis \\ \cline{1-2} siete & ocho & nueve \\ \cline{2-3} diez & once & doce \\ \cline{1-2} trece & \multicolumn{2}{c}{catorce} \\ \hline \end{tabular}

Tabla con nmeros uno dos tres

cuatro siete diez trece

cinco ocho once

seis nueve doce

catorce

106

\begin{tabular}{|lrrc|} \hline Pas & Total & Indgenas & Porcentaje \\ \hline\hline Bolivia & 6,9 & 4,9 & 71 \\ \hline Guatemala & 8,0 & 5,3 & 66 \\ \hline Per & 20,0 & 9,3 & 47 \\ \hline Ecuador & 9,5 & 4,15 & 43 \\ \hline \end{tabular}

Pas

Total

Indgenas

Porcentaje

Bolivia Guatemala Per Ecuador

6,9 8,0 20,0 9,5

4,9 5,3 9,3 4,15

71 66 47 43

\begin{tabular}{|l|r@{,}l|r|} \hline Estados Unidos & 14 & 7 & 10,5 \\ \hline Italia & 1 & 82 & 0,25 \\ \hline Francia & 3 & 4 & 0,6 \\ \hline \end{tabular}
107

Estados Unidos Italia Francia

14,7 1,82 3,4

10,5 0,25 0,6

Cuadro 1.1 Ejemplo de tabla.

\begin{tabular}{|@{\textbf{\ Captulo }}r % @{:\quad Lecciones }r % @{\thinspace-\thinspace}l@{\ }|} \hline \textbf{1} & 1 & 8 \\ \textbf{2} & 9 & 11 \\ \textbf{3} & 12 & 20 \\ \hline \end{tabular}

Captulo 1: Captulo 2: Captulo 3:

Lecciones Lecciones

1-8 9 - 11

Lecciones 12 - 20

\begin{tabular}{|p{3.5cm}|p{2cm}|} \hline Esto es un prrafo insertado dentro de la celda de una tabla. & El uso de largusimas y absolutamente eternas palabras crea un mal efecto. \\ \hline & bienaventurado. \\ \hline \end{tabular}
108

Esto es un prrafo insertado dentro de la celda de una tabla.

El uso de largusimas absolutamente eternas palabras crea un mal y

efecto. bienaventurado.

Para evitar la justicacin a ambos lados estn los comandos (justiacin a derecha),

\raggedleft

(izquierda) o

\raggedright \centering

A Por otra parte, L T EX nunca divide la primera palabra de un prrafo,


de modo que es necesario iniciar el prrafo con algo (un espacio vaco, por ejemplo). El ejemplo anterior se puede corregir del siguiente modo

\begin{tabular}{|p{3.5cm}|p{2cm}|} \hline \raggedright Esto es un prrafo insertado dentro de la celda de una tabla. & \raggedright El uso de largusimas y absolutamente eternas palabras crea un mal efecto. \tabularnewline \hline & \hspace{0cm}bienaventurado. \\ \hline \end{tabular}
109

Esto es un prrafo insertado dentro de la celda de una tabla.

El uso de largusimas y absolutamente eternas palabras crea un mal efecto. bienaventurado.

Obsrvese cmo se ha usado el comando

\tabularnewline en lugar de

\\. Ambos son equivalentes, pero en este caso el segundo produce mensajes
de error que son evitados con el primero.

16.3 Parmetros de estilo


A El estilo de las tablas est denido por defecto por L T EX, y puede ser
cambiado, globalmente en el prembulo, o de forma local, no dentro del entorno. Los parmetros para realizar cambios de estilo en las tablas son

\tabcolsep corresponde

a la mitad de la anchura del espacio insertado

entre dos columnas (valor por defecto: 6pt),

\arrayrulewidth es el grosor de las lneas que conforman la tabla (valor


por defecto: 0.4pt),

\doublerulesep es la separacin entre las lneas dobles (valor por defecto:


2pt), 110

\arraystretch modica la distancia entre las las. Se trata de un factor


multiplicativo, de modo que el valor estndar corresponde a 1, y un valor de 1.5 aumenta un 50 % la distancia.

Para realizar modicaciones en estos parmetros se usan las siguientes declaraciones

\setlength\tabcolsep{<dimensin >} \setlength\arrayrulewidth{<dimensin >} \setlength\doublerulesep{<dimensin >} \renewcommand{\arraystretch}{<factor >} \setlength{\tabcolsep}{20pt} \setlength{\arrayrulewidth}{2pt} \renewcommand{\arraystretch}{3} \begin{tabular}{|l|c|r|} \hline uno & dos & tres \\ \hline cuatro & cinco & seis \\ \hline \end{tabular}

uno

dos

tres

cuatro

cinco

seis

16.4 Tablas como objetos otantes


Al igual que las guras, las tablas no deberan (salvo excepciones) ser separadas en ms de una pgina, por lo que su ubicacin debera ser deter111

minada por el compilador. Para tratar las tablas como un objeto otante disponemos del entorno

table,

cuya sintaxis es

\begin{table}[<posicin >] \centering entorno tabular \caption{<pie de la tabla >} \label{<etiqueta >} \end{table}
Por ejemplo, la tabla 1.2 ha sido generada con el siguiente cdigo

\begin{table} \centering \begin{tabular}{|l||c|c|l|} \hline $a^n$ & 1 & 2 & 3 \\ \hline\hline 1 & 1 & 1 & 1\\\cline{2-4} 2 & 2 & 4 & 8\\\cline{2-4} 3 & 3 & 9 & 27\\\cline{2-4} 4 & 4 & 16 & 64\\\hline \end{tabular} \caption{Potencias} \label{ejt} \end{table}

an
1 2 3 4

1 1 2 3 4

2 1 4 9 16

3 1 8 27 64

Cuadro 1.2 Potencias


112

17 Referencias cruzadas
17.1 Qu son las referencias cruzadas?
Es habitual en los documentos cientcos hacer referencias a partes del documento como captulos, secciones, frmulas, tablas, guras, etc. Cada

A uno de estos elementos es numerado automticamente por L T EX por orden


de aparicin, pero si queremos hacer una referencia a alguno de ellos, no es necesario conocer dicho nmero. El procedimiento consiste en etiquetar el entorno en cuestin, de manera que el compilador almacena el nmero de referencia para un posterior uso. Por ejemplo, la subseccin inicial de esta seccin (subseccin 17.1) ha sido etiquetada del siguiente modo

\subsection{Qu son las referencias cruzadas?\label{subsec:intro}}


y la referencia de la lnea anterior ha sido producida con

...inicial de esta seccin (subseccin \ref{subsec:intro}) ha sido etiquetada ... \label{sec:intro} no es necesario que siga inmediatamente al argumento de \section, es decir, puede ser situada en cualquier
La etiqueta parte de la seccin, pero no debe interferir con otro elemento susceptible de numeracin. La primera vez que se compila el chero que contiene referencias cruzadas, (p.e. en el

fichero.tex) la informacin sobre las referencias es almacenada A chero fichero.aux y al nal de la compilacin L T EXimprime el

siguiente aviso

LaTeX Warning: There were undefined references. LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right.
Una segunda compilacin sobre el documento pondr las referencias correctamente. 113

La clave con la que nombramos una etiqueta puede ser cualquier secuencia de letras, dgitos o caracteres de puntuacin, teniendo en cuenta

A que L T EX distingue entre maysculas y minsculas.

17.2 Entornos referenciables

Listas
Adems de la numeracin de captulos o secciones, cada elemento de un entorno enumerate puede ser etiquetado aadiendo el correspondiente comando

\label

a cada entrada

\item.

Por ejemplo

En el silogismo clsico \begin{enumerate} \item Todos los hombres son mortales.\label{pre1} \item Scrates es un hombre.\label{pre2} \item Por tanto, Scrates es mortal.\label{con} \end{enumerate} Las afirmaciones (\ref{pre1}) y (\ref{pre2}) son las premisas y (\refcon) es la conclusin.
En el silogismo clsico

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

Las armaciones (1) y (2) son las premisas y (3) es la conclusin.

Elementos otantes
Las guras y tablas pueden ser tambin referenciadas teniendo cuidado en situar el comando

\label

justo despus del comando

\caption

o incluso

dentro de su argumento, como en el ejemplo mostrado a continuacin 114

\begin{table}[h] \begin{center} \begin{tabular}{|c|c|c|c|} \hline Valor de $x$ & 1 & 2 & 3 \\ \hline Valor de $y$ & 1 & 8 & 27 \\ \hline \end{tabular} \caption{Valores observados de $x$ e $y$}\label{tabxy} \end{center} \end{table} Dos posibles relaciones entre $x$ e $y$ que satisfacen los datos de la Tabla \ref{tabxy} son $y=x^3$ e $y=6x^2-11x+6$.

Valor de Valor de

x y

1 1

2 8

3 27

Cuadro 1.3 Valores observados de x e y

Dos posibles relaciones entre 1.3 son

y=x

xey y = 6x 11x + 6.
2

que satisfacen los datos de la Tabla

Matemtica
En los documentos con contenido matemtico abundan las referencias, ya sea a frmulas, guras, teoremas, etc. El proceso de etiqueta es igual al hecho anteriormente: es necesario incluir el comando entorno correspondiente. Si se ha denido el entorno 13.10), entonces 115

\label

dentro del

\newtheorem{thm}{Teorema}

(vea la Sec.

\begin{thm}\label{diffcon} Toda funcin diferenciable es continua. \end{thm} El recproco del Teorema \ref{diffcon} es falso.

Teorema 17.1 Toda funcin diferenciable es continua.


El recproco del Teorema 17.1 es falso.

En el caso de las ecuaciones se tiene

\begin{equation}\label{sumsq} (x+y)^2=x^2+2xy+y^2 \end{equation} Cambiando $y$ por $-y$ en (\ref{sumsq}) resulta \ldots

(x + y )2 = x2 + 2xy + y 2
Cambiando

(1.21)

por

en (1.21) resulta . . .

El paquete

amsmath permite usar el comando \eqref en lugar de \ref

para referenciar una ecuacin, con la diferencia de que el primero imprime automticamente los parntesis alrededor del nmero.

Referenciacin de pginas
En lugar de hacer referencia al nmero de tabla o de ecuacin, a menudo es til dar la numeracin de la pgina donde se encuentra dicho objeto. El comando

\pageref{<etiqueta >}
imprime el nmero de la pgina en la que se encuentra Por ejemplo 116

\label{<etiqueta >}.

vase la Tabla \ref{tabxy} en la pgina \pageref{tabxy}.


produce

vase la Tabla 1.3 en la pgina 115.

18 Notas al pie y al margen


18.1 Comandos para insertar pies de pgina
Para insertar una nota al pie de pgina se usa el comando

\footnote[<nmero >]{<texto

de la nota >}

ste comando inserta una nota al pie de pgina con el texto de <texto

de la nota >y el nmero especicado en <nmero >. si <nmero >se omite,


se usa la numeracin automtica. Este comando no se admite dentro de una caja, ni dentro de otro

\footnote,

ni dentro del entorno

\tabular.

Las notas al pie de pgina dentro de una mini-pgina aparecen en la parte inferior de sta, no en la parte inferior de la pgina vigente. Por ejemplo, el siguiente cdigo

Mi primera nota\footnote{Numerada atomticamente} y mi segunda nota\footnote[201]{Numerada especficamente.}.


Produce

Mi primera nota

11

y mi segunda nota

201

y las respectivas notas aparecen al pie de esta pgina.


11 Con 201 Con

numeracin atomtica numeracin especca.


117

18.2 Insercin de pies de pgina en lugares prohibidos


El comando

\footnotemark[<nmero >] produce slo la marca \footnote.

que se-

ala la nota al pie de pgina en el texto. El argumento <nmero >funciona igual que el de El comando

\footnotetext[<nmero >]{<texto de la nota >} produ-

ce la nota al pie de pgina, sin insertar ninguna marca. El argumento <nmero > especica el smbolo que identica la nota. Este comando est restringido, as como Los comandos

\footnote.

\footnotemark y \footnotetext se usan en conjuncin

para crear notas en sitios no permitidos, primero insertando la marca en el lugar prohibido y luego colocando el texto fuera del sitio prohibido, simulando as el pie en la pgina.

18.3 Modicacin de los contadores de los pies de pgina


El comando

\renewcommand{\thefootnote}{<estilo >}

permite modi-

car el estilo de la marca que seala las notas al pie de pgina.

\arabic{footnote} 1, 2, 3, . . . \roman{footnote}
culas: i, ii, iii, . . .

produce marcas con la numeracin por defecto:

produce marcas con nmeros romanos en mins-

\Roman{footnote} produce marcas con nmeros romanos en maysculas: I, II, III, . . .

\alph{footnote}

produce marcas con la letsras del alfabeto en mi-

nsculas: a, b, c, . . .

\Alph{footnote}

produce marcas con la letsras del alfabeto en ma-

ysculas: A, B, C, . . .

\fnsymbol{footnote}

produce marcas con smbolos: *, 118

...

18.4 Notas al margen


La inclusin 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 el argumento opcional) comienza a imprimirse a la misma altura en la que se imprime la lnea de texto principal. Si se emplea la opcin

oneside,

la nota se imprime a la derecha, y si se usa la opcin twoside,

en el exterior. Si se usa el argumento opcional, el texto TextoIzquierda aparecer cuando la nota corresponda al margen izquierdo y el texto TextoDerecha lo har cuando la nota est en el margen derecho. Por ejemplo

Cuntame poeta cmo es la luna y no la de un tal Louis Armstrong. No olvides poeta tu sueo de volar con la pluma del ala y la necesidad. Cuntame poeta si es el desamor lo que constituye el diccionario del amor\ldots\marginpar{Ariel\\Dufey\\Ramos.}.
produce

Cuntame poeta cmo es la luna y no la de un tal Louis Armstrong. No olvides poeta tu sueo de volar con la pluma del ala y la necesidad. Cuntame poeta si es el desamor lo que constituye el diccionario del amor. . . . Ariel Dufey

19 Insercin de texto plano


Los archivos de

Ramos.

texto plano (en ingls plain text) son aquellos que estn

compuestos nicamente por texto sin formato, slo caracteres. Estos caracteres se pueden codicar de distintos modos dependiendo de la lengua usada. Algunos de los sistemas de codicacin ms usados son: ASCII, ISO-8859-1 o Latn-1, Unicode, etc. . . . 119

Se les conoce tambin como archivos de texto llano, o texto simple, por carecer de informacin destinada a generar formatos (negritas, subrayado, cursivas, tamao, etc.) y tipos de letra (por ejemplo, Arial, Times, Courier, etc.).

A L T EX cuenta con el entorno

\minipage

para imprimir texto plano.

Los caracteres reservados pierden su signicado especial y son impresos literalmente. Los espacios y cambios de rengln son tenidos en cuenta. La capacidad del texto impreso es bastante limitada.

\begin{verbatim} head(expr):=block( if symbolp(expr) then symbol elseif numberp(float(expr)) then real elseif not freeof( %i,expr) then complex else part(expr,0) )$ \end{verbatim} head(expr):=block( if symbolp(expr) then symbol elseif numberp(float(expr)) then real elseif not freeof(%i,expr) then complex else part(expr,0) )$
El comando plano.

\verb@texto @ se usa para imprimir una sola lnea de texto

20 Bibliografa
20.1 El entorno thebibliography
La bibliografa es el entorno que permite al autor listar las referencias utilizadas y citarlas en algn punto del texto. La estructura es similar a la de una lista enumerada donde cada entrada viene marcada por el comando

\bibcite

y es referenciada desde el comando

\cite,

que producir un

nmero de referencia o el nombre del autor, segn sea el estilo escogido. 120

El entorno se dene del siguiente modo

\begin{thebibliography}[<etiqueta mayor >] \bibitem[<leyenda1 >]{<referencia1 >} Ttulo, autor, ... \bibitem[<leyenda2 >]{<referencia2 >} Ttulo, autor, ... \end{thebibliography}
El argumento etiqueta mayor indica la anchura de la mayor etiqueta que vaya a aparecer. Por ejemplo, si vamos a introducir entre 10 y 99 publicaciones, entonces deberemos comenzar con

\begin{thebibliography}[99].

Si vamos a referenciar con el nombre del autor, entonces debemos poner el nombre ms largo que vayamos a usar, El argumento opcional de

\begin{thebibliography}[nombre].
leyenda se utiliza para modicar

\bibitem,

la identicacin en la lista de referencias, en lugar de un nmero. El argumento referencia ser la etiqueta usada para referenciar la cita. Se usa a travs del comando

\cite:

\cite{etiqueta1 } \cite{etiqueta1,etiqueta2,...}
Si queremos aadir algn dato ms a la referencia (nmero de pgina donde aparece, o el captulo, etc.) usamos un argumento opcional

\cite[pgina

25 ]{etiqueta1 }

El siguiente cdigo muestra un ejemplo de funcionamiento del entorno

12

La referencia clsica en \LaTeX\ es \cite{GH}. Otras referencias interesantes son \cite{GU,Kn} . . . \begin{thebibliography}{9} . . .
12 La

bibliografa que aparece en dicho cdigo corresponde a la bibliografa de este libro.


121

\bibitem{GH} Griffiths, D and Higham, D. LEARNING LATEX. The Society for Industrial and Applied Mathematics (1997). \bibitem{Gu} Gurari, E. WRITING WITH TEX. McGraw-Hill, Inc. (1994). \bibitem{Kn} Knuth, D. THE TEXBOOK. Adisson-Wesley Publishing Company (1991). . . . \end{thebibliography}
A La referencia clsica en L T EX es [3]. Otras referencias interesantes son
[4, 5]

20.2 ndice de contenidos


El entorno bibliografa crea una seccin del documento a modo de captulo (si la clase de documento es

report)

o seccin (si la clase es

article).

Sin embargo no aparece listado en el ndice de contenidos. Para introducir dicho captulo o seccin en el ndice es necesario aadir una lnea como la que sigue

\addcontentsline{<ExtensinFichero >}{<Unidad >} {<TextoEntrada >}


El parmetro ExtensinFichero se reere a uno de los cheros donde

A L T EX almacena informacin sobre ndices de contenido, de guras o tablas.


Las extensiones respectivas son

toc, lof

lot.

El argumento Unidad se reere a qu tipo de unidad de estructura queremos asimilar dicha entrada, es decir, si se trata de una seccin, un captulo, etc. Los valores sern El

section, chapter,

etc.

TextoEntrada

el lo que deseamos que apareza en el ndice corres-

pondiente. As, la entrada a incluir ser

\addcontentsline{toc}{chapter}{Bibliografa}
122

21 El programa BibTex
La elaboracin de entornos para bibliografa puede automatizarse cmodamente usando el programa BibT EX. Dicho programa crea un entorno bibliogrco para un documento concreto a partir de una base de datos previamente construida. De este modo, slo es necesario mantener una base de datos y recurrir a ella para construir la bibliografa de cada documento que escribamos. La base de datos consiste en uno o varios archivos con extensin

.bib

que deben poseer una estructura concreta. Por cada referencia debemos incluir una entrada en dicho archivo, que ser 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 de datos, sta ser automticamente incluida en la bibliografa del mismo a travs del programa BibT EX. Para usar dicho programa debemos incluir en nuestro archivo fuente un comando que llame a la base o bases de datos que queramos utilizar, del siguiente modo

\bibliography{database1,database2 }
El comando anterior especica que las entradas bibliogrcas se colocarn en la posicin en la que aparece dicho comando y sern extradas de los archivos

database1.bib

database2.bib13 .

El estilo que aparecer en la bibliografa viene especicado por el comando

\bibliographystyle, que determinar el formato en el que aparecern

las diferentes entradas. Por ejemplo

\bibliographystyle{plain}
especica que las entradas sern formateadas segn el estilo se encuentra descrito en el chero (

plain

que

plain.bst).

Es posible situar este co-

mando en cualquier punto del documento despus de


13 Atencin

\begin{document}.

al path en el que se encuentre el archivo.


123

21.1 Estilos de BibTeX

plain Estilo estndar. Las entradas son numeradas correlativamente por


orden alfabtico de autores.

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

alpha Se diferencia con el estilo plain, en que las etiquetas de las entradas
estn formadas por el nombre del autor y el ao de publicacin, en lugar de ser nmeros.

abbrv Similar al estilo plain, pero las entradas son ms compactas, quedando abreviados los nombres de pila de los autores, las revistas, etc.

acm Estilo usado en las revistas de la ACM (Association for Computing


Machinery).

apalike Estilo usado en las revistas de la American Psychology Association. Precisa del paquete

apalike.

Adems varias organizaciones, revistas, etc. han desarrollado sus propios estilos bibliogrcos, algunos de los cuales vienen con la distribucin MiKT EX (vase

C:\Archivos de programa\MiKTeX 2.9\bibtex\bst).

21.2 Pasos para ejecutar BibTeX con LaTeX


A 1) Al correr L T EX, se generar un listado de referencias para cada co-

\cite que auxiliar .aux.


mando

est presente. Dicho listado aparecer en el chero

2) Ejecutar BibT EX, el cual leer dicho chero, las bases de datos y el

.bbl que contiene un entorno bibliografa formateado segn el hero .bst escogido. Los errores o avisos sern escritos en un chero .blg.
chero de estilo y escribir un chero

A 3) En la siguiente compilacin de L T EX, se lee el chero

.bbl.

4) Una tercera compilacin resuelve todas las referencias cruzadas. 124

Ntese que las referencias que aparecern en el texto son aquellas que hayan sido citadas mediante datos

\cite, y no todas las presentes en la base de

.bib. \nocite
en cualquier

En ocasiones, es posible querer incluir publicaciones que no son explcitamente citadas. Pare ellos usamos el comando

parte del documento. Dicho comando no produce texto alguno pero hace que la referencia citada sea incluida por BibT EX. El comando

\nocite{*}

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

21.3 Creacin de bases de datos bibliogrcas


La ventaja principal del uso del programa BibT EXes la no necesidad de escribir un listado de referencias para cada documento. Las referencias son escritas una sola vez y almacenadas en la base (o bases) de datos correspondiente para usos futuros. No obstante, es necesario crear las entradas de la base de datos segn un formato especco. Lo que sigue es un ejemplo de entrada

@BOOK{knuth:86a, AUTHOR ="Donald E. Knuth", TITLE ={The \TeX{}book}, EDITION ="third" PUBLISHER ="Addison-Wesley", ADDRESS ={Reading, MA}, YEAR =1986}
La primera palabra, prejada por

@,

determina el tipo de entrada, que

variar segn el tipo de publicacin que sea: libros, artculos, prepublicaciones, etc. El resto de la informacin es escrita entre llaves, comenzando por la etiqueta (la que usaremos para la referencia con el comando

\cite),

En el ejemplo anterior pondramos

\cite{knuth:86a}.

El resto

de la informacin sobre la referencia es introducida mediante varios campos, separados por comas, en el formato que se aprecia. Los espacios son opcionales. La informacin de cada campo puede ser incluida entre llaves 125

o entre comillas dobles; sin embargo, si la informacin del campo consta nicamente de nmeros, no son necesarios los delimitadores. Cada tipo de entrada tiene una serie de campos requeridos y otros opcionales. En caso de ausencia de algn campo requerido BibT EX dar un informe de error. Los tipos de referencias, los campos requeridos y los opcionales son

@article

Artculos en revistas. autor, title, journal, year. volume, number, pages, month, note.

campos requeridos campos opcionales

@book

Libros con editorial conocida. author or editor, title, publisher, year. volume or number, series, address, edition, month,

campos requeridos campos opcionales


note.

@booklet

Libros sin conocimiento de la editorial que lo publique. title. author, howpublished, address, month, year, note.

campos requeridos campos opcionales

@conference

Artculo en un recopilatorio de una conferencia. author, title, booktitle, year. editor, volume or number, series, pages, address,

campos requeridos campos opcionales

month, organization, publisher, note.

@inbook

Entrada para una parte de un libro. author or editor, title, chapter and/or pages, publis-

campos requeridos
her, year.

campos opcionales
month, note.

volume or number, series, type, address, edition,

@incollection

Entrada para una parte de un libro con ttulo propio. author, title, booktitle, publisher, year. editor, volume or number, series, type, chapter, pa-

campos requeridos campos opcionales

ges, address, edition, month, note.

@inproceedings

Artculo en las publicaciones de un congreso. author, title, booktitle, year. 126

campos requeridos

campos opcionales

editor, volume or number, series, pages, address,

month, organization, publisher, note.

@manual

Entrada para documentacin de tipo tcnico. title. author, organisation, address, edition, month, year,

campos requeridos campos opcionales


note.

@masterthesis

Entrada para proyecto, tesina o master. author, title, school, year. type, address, month, note.

campos requeridos campos opcionales

@misc

Documento que no se ajusta a ninguno de los dems tipos. none. author, title, howpublished, month, year, note.

campos requeridos campos opcionales

@phdthesis

Tesis doctoral. author, title, school, year. type, address, month, note.

campos requeridos campos opcionales

@proceedings

Recopilatorio de artculos de una conferencia o congreso. title, year. editor, volume or number, series, address, month,

campos requeridos campos opcionales

organization, publisher, note.

@unpublished

Documento no publicado con ttulo y autor. author, title, note. month, year.

campos requeridos campos opcionales

127

2
1 Esquema general
La clase

La clase beamer

beamer

A es una clase de L T EX para la creacin de diapositivas.

\documentclass[ <opciones>]{beamer} < declaraciones: temas,


Prembulo

paquetes, comandos

>

< ttulo >, < autor >, < fecha >

\begin{document} \maketitle \begin{frame} . . . \end{frame} Documento . . . \begin{frame} . . . \end{frame} \end{document}


128

2 Comandos y entornos importantes en la clase beamer


\maketitle
Fuerza a que se produzcan las lneas para el ttulo, autor y fecha. Al omitirlo no se generar la diapositiva del ttulo.

frame

Entorno para insertar una nueva diapositiva.

3 Primeros pasos
La estructura bsica de un archivo el siguiente cdigo:

beamer

es bastante simple. Considere

\documentclass{beamer} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel} \deftranslation[to=spanish]{Theorem}{Teorema} \usepackage{multicol} \title{La clase beamer en \LaTeX} \author{A. U. Tor \thanks{Catedrtico, UNP, autor@unp.edu.pe}} \begin{document} \maketitle \begin{frame}{Primera diapositiva} Una frmula:
129

\[\int_{-\infty}^\infty e^{-x^2} \, dx = \sqrt{\pi}\] Una lista: \begin{multicols}{2} \begin{itemize} \item itemized item 1 \item itemized item 2 \item itemized item 3 \end{itemize} \begin{enumerate} \item enumerated item 1 \item enumerated item 2 \item enumerated item 3 \end{enumerate} \end{multicols} \begin{theorem} En un tringulo rectngulo, el cuadrado de la hipotenusa es igual a la suma de los cuadrados de los otros dos lados. \end{theorem} \end{frame} \end{document}
el cual produce las diapositivas que se muestran en las guras 2.1 y 2.2.

4 Temas
El aspecto general de una diapositiva mente mediante la aplicacin de un

beamer se puede alterar drsticatema beamer a la diapositiva.

Por ejemplo el siguiente cdigo, en el cual se usa el tema Madrid :

\documentclass{beamer}
130

Figura 2.1 Diapositiva del ttulo.

Figura 2.2 Una diapositiva elemental.

131

\usetheme{Madrid} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel} \deftranslation[to=spanish]{Theorem}{Teorema} \usepackage{multicol} \title{La clase beamer en \LaTeX} \author{A. U. Tor \thanks{Catedrtico, UNP, autor@unp.edu.pe}} \begin{document} \maketitle \begin{frame}{Primera diapositiva} Una frmula: \[\int_{-\infty}^\infty e^{-x^2} \, dx = \sqrt{\pi}\] Una lista: \begin{multicols}{2} \begin{itemize} \item itemized item 1 \item itemized item 2 \item itemized item 3 \end{itemize} \begin{enumerate} \item enumerated item 1 \item enumerated item 2
132

Figura 2.3 Diapositiva del ttulo.


\item enumerated item 3 \end{enumerate} \end{multicols} \begin{theorem} En un tringulo rectngulo, el cuadrado de la hipotenusa es igual a la suma de los cuadrados de los otros dos lados. \end{theorem} \end{frame} \end{document}

el cual produce las diapositivas que se muestran en las guras 2.3 y 2.4. Compare las diapositivas de las guras 2.3 y 2.4 con las de las guras 2.1 y 2.2, y observe los cambios drsticos, incluyendo el marco aadido alrededor del teorema, los marcadores 3D redondeados para las listas, y la franga inferior que incluye la fecha y nmero de la diapositiva, entre otras cosas. 133

Figura 2.4 Una diapositiva elemental.

5 Temas estndar beamer


beamer viene con una gran seleccin de temas. Los temas llevan el nombre
de varias ciudades, como Boadilla, Madrid, Copenhague, y Singapur, donde el autor y sus colaboradores han creado los diseos de las diapositivas. Algunos temas son:

Boadilla Madrid

Copenhagen

Warsaw Pittsburgh Rochester


ja mejor (trabacomo

Singapore

\usetheme[height=7mm]{Rochester})

Malmoe

6 Temas menores
beamer
tambin proporciona lo que puede considerarse temas menores. Estos controlan algunos aspectos de la apariencia de una diapositiva. Puede invocar uno o ms de estos temas menores, en relacin con un tema principal para alterar/modicar las caractersticas del tema principal. Los Temas menores

beamer

se dividen en 4 categoras: 134

Temas outer controlan las decoraciones de una diapositiva, como el texto


y los grcos que aparecen en la cabecera de una diapositiva y las secciones de pie de pgina. Por ejemplo,

\useoutertheme{shadow}

aade una sombra en 3-D a algunos elementos del encabezado.

Temas inner controlan

el rea interior de una diapositiva, tales como

marcadores/vietas para temes listas y cajas colocadas alrededor de teoremas. Por ejemplo,

\useinnertheme{rounded} da un aspecto re-

dondeado y 3-D a las cajas que contienen teoremas cajas y los marcadores de temes.

Temas font controlan formas de fuentes y tamaos de diversos elementos


de una presentacin de diapositivas. Por ejemplo, (el

\usefonttheme{serif} cambia las fuentes del documento a serif


valor predeterminado es sans-serif ).

Temas color controlan


ejemplo,

los colores del ttulo, ttulo de cuadro, vietas,

y muchos otros elementos de una presentacin de diapositivas. Por

\usecolortheme{albatross} cambia de color el beamer por

defecto de forma bastante drstica.

7 Personalizar temas
Hay un gran nmero de formas en que se puede ajustar con precisin el aspecto general de un tema que pueden ser de utilidad. A lo largo de esta seccin, se usa el tema Rochester. El lector puede aplicar estas ideas a cualquier otro tema

beamer. Aqu se van a describir algunas ideas

beamer.

Observacin: La opcin [height=7mm] (usado en los ejemplos de las


subsecciones siguientes) especica el espesor de la banda horizontal que aparece en el borde superior de una diapositiva cuyo tema es Rochester. Tngase en cuenta que esta opcin es especca de Rochester. No se aplica a otros temas. 135

\documentclass{beamer} \usetheme[height=7mm]{Rochester}

Cdigo de una parte del prembulo

Figura 2.5 Color almacenado en structure, por defecto.

8 Modicacin de color con structure


El color, por defecto, almacenado en

structure corresponde con un cierto structure a Brown

matiz de azul como se puede ver en la gura 2.5. El resultado de cambiar el color almacenado en se

puede ver en la gura 2.6. Ntese cmo la estructura afecta a muchos elementos, entre ellos las vietas y los iconos de navegacin. El color Brown es uno de un gran nmero de nombres de color denidos en el archivo

dvipsnam.def

A que forma parte de la distribucin estndar de L T EX. La

gura 2.7 muestra ms posibles colores. Adicionalmente, se cuenta con los colores denidos en

svgnam.def

que tambin forma parte de la distribu-

A cin estndar de L T EX(ver Fig. 2.8).

9 Especicacin de colores con RGB


Si el conjunto de colores denidos en dvipsnam.def llegara a parecer demasiado limitado, es posible denir nuestros propios colores especicando sus componentes RGB. Cada componente RGB debe estar en el rango de 136

\documentclass[xcolor=dvipsnames]{beamer} \usecolortheme[named=Brown]{structure} \usetheme[height=7mm]{Rochester}

Cdigo de una parte del prembulo

Figura 2.6 Color almacenado en structure cambiado a Brown.

Figura 2.7 Los 68 colores estndar incluidos en dvipsnam.def.


137

Figura 2.8 Los 148 colores estndar incluidos en svgnam.def.

138

\documentclass[xcolor=dvipsnames]{beamer} \usecolortheme[named=Plum]{structure} \usetheme[height=7mm]{Rochester} \setbeamertemplate{items}[ball]

Cdigo de una parte del prembulo

Figura 2.9 Color almacenado en structure cambiado a un color


similar a oro, el cual se dene con RGB.

0 255. Por ejemplo, con RGB={205,173,0} conseguimos un color similar


a oro (ver Fig. 2.9). Las componentes de RGB se pueden administrar ya sea como enteros en el rango de

0 255 o como nmeros fraccionarios en el rango de 0.00 1.00.

Para especicar este ltimo, utilice la versin en minsculas de la opcin rgb, como en:

rgb={0.2264,0.1561,0.0000}.

10 Uso directo del color almacenado en structure


\textcolor{red}{texto en color} produce un texto en color. Aqu, el color, red, asignado al texto es esttico. Un efecto dinmico se logra mediante el uso del comando \structure{texto en color}. El texto dado ser colorado segn el color almacenado en structure. Cuando se cambia el color almacenado en structure, por ejemplo del azul al oro,
El comando el color del texto cambiar de acuerdo con el cambio. 139

\documentclass[xcolor=dvipsnames]{beamer} \usecolortheme[named=Plum]{structure} \usetheme[height=7mm]{Rochester} \setbeamertemplate{items}[ball]

Cdigo de una parte del prembulo

Figura 2.10 Marcadores de entornos de lista simulando esferas.

11 Cambio de los marcadores de entornos de lista


El tema Rochester usa marcadores cuadrados para las listas con vietas y listas numeradas. El comando

\setbeamertemplate{items}[ball] cam\setbeamertemplate{items}
tenemos:

bia los marcadores para simular esferas, como se muestra en la gura 2.10. Entre las posibles opciones a

ball esferas circle discos rectangle rectngulos default triangles

12 Cajas redondeadas y sombras


Para aadir esquinas redondeadas y una sombra a la caja que rodea el teorema se usa Fig. 2.11). 140

\setbeamertemplate{blocks}[rounded][shadow=true] (ver

\documentclass[xcolor=dvipsnames]{beamer} \usecolortheme[named=OliveGreen]{structure} \usetheme[height=7mm]{Rochester} \setbeamertemplate{items}[ball] \setbeamertemplate{blocks}[rounded][shadow=true]

Cdigo de una parte del prembulo

Figura 2.11 Diapositiva con cajas redondeadas y sombras.


Para conseguir esquinas redondeadas, pero sin sombras, ajuste el valor de

shadow

as:

[shadow=false].

13 Deshacerse de los iconos de navegacin


La mayora de los temas

beamer

ponen una la de iconos de navegacin

en las diapositivas. (Vea las pequeas marcas a lo largo del borde inferior de la diapositiva que se muestra en la gura 2.11.) Para desactivar el dibujo de los iconos de navegacin en las diapositivas, aada el comando:

\setbeamertemplate{navigation symbols}{} a su documento (ver Fig.


2.12).

14 Adicin de una

footline informativo

Una footline es una estrecha franja a lo largo del borde inferior de una diapositiva que muestra el nombre del autor, el ttulo de la presentacin, el nmero de diapositiva y otra informacin til. 141

\documentclass[xcolor=dvipsnames]{beamer} \usecolortheme[named=Apricot]{structure} \usetheme[height=7mm]{Rochester} \setbeamertemplate{items}[ball] \setbeamertemplate{blocks}[rounded][shadow=true] \setbeamertemplate{navigation symbols}{}

Cdigo de una parte del prembulo

Figura 2.12 Diapositiva sin iconos de navegacin.


Los temas

beamer

Boadilla y Madrid proporcionan un footline por de-

fecto. Otros temas no lo hacen. Sin embargo, es posible aadir un footline a cualquier tema por medio del comando (ver Fig. 2.13).

\useoutertheme{infolines}
de t-

\useoutertheme{infolines} antes \usetheme[height=7mm]{Rochester}, en caso contrario se cortar el


Recuerde que debe colocar tulo de la diapositiva.

15 La portada
beamer proporciona una manera fcil de hacer una portada para su presentacin. En el siguiente cdigo se usa el comando \maketitle para generar
una portada y una diapositiva sencilla (ver Figs. 2.14 y 2.15).

\documentclass{beamer} \usetheme{Madrid} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel}


142

\documentclass[xcolor=dvipsnames]{beamer} \usecolortheme[named=Apricot]{structure} \useoutertheme{infolines} \usetheme[height=7mm]{Rochester} \setbeamertemplate{items}[ball] \setbeamertemplate{blocks}[rounded][shadow=true] \setbeamertemplate{navigation symbols}{} \usepackage[latin1]{inputenc} \author{Robert Ipanaqu} \title{Clase Beamer} \institute{UNP}

Cdigo de una parte del prembulo

Figura 2.13 Diapositiva con footline aadido.

143

\deftranslation[to=spanish]{Theorem}{Teorema} \author[R. Ipanaqu]{Robert Ipanaqu Chero} \title[Monotona y Concavidad con el \emph{Mathematica}] { Intervalos de Monotona y Concavidad de Funciones No Trascendentes con el \emph{Mathematica} } \subtitle{Uso de Programacin Funcional} \institute[UNP]{ Departamento Acadmico de Matemtica\\ Universidad Nacional de Piura\\ Urb. Miraflores s/n, Castilla, Piura, PER\\[2ex] \texttt{robertchero@hotmail.com} } \begin{document} \maketitle \begin{frame}{Una diapositiva sencilla} Hola. \end{frame} \end{document}

15.1 Elementos de la portada


Los elementos de la portada se especican a travs de los comandos

\title,

\subtitle, \author, \institute, \date. Los datos proporcionados a estos comandos no slo aparecen en la portada, sino tambin en la seccin

footline de las diapositivas siguientes (ver Fig. 2.15).


Cada elemento de la portada se puede especicar mediante un nico argumento, como en: 144

Figura 2.14 Portada.

Figura 2.15 Obsrvese que parte de la informacin proporcionada en el prembulo, tal como el ttulo, autor, etc, tambin aparece en el footline de la diapositiva que sigue a la portada.

145

\title{Universidad Nacional de Piura}


o usando dos argumentos, como en:

\title[UNP]{Universidad Nacional de Piura}


El argumento opcional, UNP (entre corchetes) es la forma abreviada del nombre del instituto. Las formas largas de los elementos de la portada se utilizan en la portada. Las formas cortas de tales elementos se utilizan en los pies de pgina de las diapositivas posteriores. Tenga en cuenta que si una forma corta no se proporciona, a continuacin, la forma larga se utilizan en los pies de pgina. Si formas largas son demasiado largas, los pies de pgina pueden quedar ilegibles.

16 Inclusin de grcos
beamer
reconoce imgenes en cualquiera de los formatos: pdf, png y jpg (tenga en cuenta que PostScript no est entre estos). El siguiente cdigo genera dos diapositivas. En la primera se incluyen dos grcos, sin entorno, y en la segunda un grco dentro del entorno

gure (ver Figs. 2.16 y 2.17).

\documentclass{beamer} \usetheme{Copenhagen} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel} \begin{document} \begin{frame}{Grficos} Los intervalos de monotona de la funcin $\sqrt[3]{x^2-2x}$:
146

Figura 2.16 Grcos sin entorno.


\begin{center} \includegraphics[scale=0.8]{f7}\\[3ex] \includegraphics[scale=0.5]{f8} \end{center} \end{frame} \begin{frame} Aqu tenemos los intervalos de concavidad: \begin{figure} \includegraphics[scale=0.8]{f9} \caption{Intervalos de concavidad de la funcin $\sqrt[3]{x^2-2x}$.} \end{figure} \end{frame} \end{document}

16.1 Conversin de una imagen Encapsulated PostScript a pdf


Una imagen Encapsulated PostScript es aquella almacenada en un archivo

A de extensin eps. Para que L T EX realice la conversin automtica de una


147

Figura 2.17 Grco dentro del entorno gure.


imagen en formato eps a pdf, y as poder incluirla en una diapositiva, bastar con colocar en el prembulo:

\usepackage{epstopdf}

17 Overlays
Probablemente, el efecto ms interesante conseguido por

beamer

son las

superposiciones, que dan la apariencia de exposicin con pausas de una diapositiva. Lograr el efecto de superposicin en ple: basta con insertar el comando

beamer

es bastante sim-

\pause

en cualquier lugar en el que

desee colocar pausar la pantalla. Por ejemplo, use el eiguiente cdigo para exponer en una lista con vietas el contenido de un artculo (ver Fig. 2.18).

\documentclass{beamer} \usetheme{default} \usepackage[latin1]{inputenc} \begin{document} \begin{frame}{Resumen de la charla}


148

Figura 2.18 Al compilar el archivo respectivo en formato pdf y


mostrarlo con un visor de PDF, como el Acrobat Reader, los temes se exponen uno a uno a medida que se avance a travs de la pgina del documento en la forma habitual.

\begin{itemize} \item Introduccin \pause \item Declaracin del teorema principal \pause \item Prueba del teorema principal \pause \item Conclusiones \end{itemize} \end{frame} \end{document}
149

El uso del comando

\pause no se limita a las listas, es posible utilizarlo

en cualquier lugar en una diapositiva. Por ejemplo, el siguiente cdigo produce los resultados mostrados en la gura 2.19.

\documentclass{beamer} \usetheme{Copenhagen} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel} \deftranslation[to=spanish]{Definition}{Definicin} \begin{document} \begin{frame} \begin{definition}[Identificacin] Una aplicacin $ f:X\to Y $ entre dos espacios topolgicos es una \textit{identificacin} si es continua y biyectiva. \end{definition} \pause \begin{definition}[Suma Topologica] Sean $ X $ e $ Y $ dos espacios topolgicos y sea \pause \[ X\oplus Y=X\times\{0\}\cup Y\times\{1\}\;. \] \pause Es posible identificar de forma natural a $ X $ con $ X\times\{0\} $ y a $ Y $ con $ Y\times\{1\} $, de modo que ahora $ X\cap Y=\emptyset $. Considerando a $ X\oplus Y $
150

Figura 2.19 Un visor de pdf expondr el archivo resultante de


un prrafo a la vez.

con la topologa para la cual un conjunto $ A $ es abierto si y slo si $ A\cap X $ es abierto en $ X $ y $ A\cap Y $ es abierto en $ Y $. Al espacio $ X\oplus Y $ se le llamar suma topolgica de $ X $ e $ Y $. \end{definition} \end{frame} \end{document}

18 Navegar con hipervnculos


Durante una presentacin de diapositivas, a veces es necesario saltar varias diapositivas para volver a recordar a la audiencia una frmula o una imagen. Nadie quiere ir a la pgina en cuestin a travs de 17 diapositivas y volver a travs de las mismas a donde se encontraba inicialmente. 151

Los hipervnculos de un archivo pdf le permiten saltar de una diapositiva a cualquier otra con un clic del ratn. El cdigo dado ms abajo dene dos diapositivas. (El lector debe imaginar que se trata de un gran nmero de diapositivas que no se muestran aqu para ahorrar espacio.) Una de las diapositivas se identica con la etiqueta

label=intro

en su comando

\begin{frame}.

Esta es nuestra

diapositiva objetivo. La otra diapositiva contiene el cdigo

\hyperlink{intro}{aqu}.

La

palabra aqu aparecer en rojo en el visor de pdf (el color de los hipervnculos se prescribe en el comando el visor va a saltar a la diapositiva

\hypersetup). Al hacer clic en aqu, etiquetada con intro.

Alternativamente, un hipervnculo puede ser dibujado como un botn beamer. Por ejemplo, para crear un botn con el texto aqu en l, hacemos:

\hyperlink{intro}{\beamerbutton{aqu}}.

Hay cuatro estilos de botones diferentes disponibles:

\beamerbutton{aqu}: \beamergotobutton{aqu}: \beamerskipbutton{aqu}: \beamerreturnbutton{aqu}:


Los botones slo tienen apariencia diferente, pero todos hacen lo mismo. Utilice el que mejor se ajusta a su propsito. He aqu el cdigo que genera las dos diapositivas mencionadas en el tercer prrafo de esta seccin, las cuales se muestran en la gura 2.20.

\documentclass{beamer} \usetheme{Copenhagen} \hypersetup{colorlinks=true,linkcolor=red} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel}


152

Figura 2.20 Dos diapositivas vinculadas.


\begin{document} \begin{frame}[label=intro]{Introduccin} Esta es la introduccin. \end{frame} \begin{frame}{Otra diapositiva} Si hace clic \hyperlink{intro}{aqu}, saltar a la diapositiva etiquetada con ``intro''. Haciendo clic \hyperlink{intro}{\beamerbutton{aqu}} tambin saltar a dicha diapositiva. \end{frame} \end{document}

18.1 Volviendo a la pgina de llamada


Ahora ya sabe cmo saltar de la pgina regresar a la pgina

N1

a la pgina

N2 .

Pero, cmo

N1 ?

Bueno, puede desplazarse por todas las pginas 153

intermedias para llegar all, pero eso no es muy profesional. Para ir a la pgina de donde vino en un solo paso:

Si usa Acrobat Reader:


En Linux y Windows: presione en simultneo las teclas

Alt

Left

Arrow.
En Mac: presione en simultneo las teclas

Cmd

Left Arrow.

Si usa Xpdf:
Presione la tecla

b.

Observacin: Otra manera de volver a la pgina de llamada sera mediante la adicin de otro hipervnculo que funcione en el sentido opuesto. As se pone un hipervnculo en la pgina un hipervnculo en la pgina

N1

que lleve a la pgina

N2 ,

N2

que llev4 a la pgina

N1 .

Este truco es

algo difcil de utilizar en la prctica. Supongamos que se tiene una frmula importante de la pgina

N4 , N1 ,

cada uno de ellos

N1 . Se desea poner enlaces en pginas N2 y N3 y que lleve a la pgina N1 . Pero una vez en la pgina N2
o

podra ser confuso en cuanto a cul de las pginas

N3

N4

se

supone que se debe volver.

19 Teoremas y relacionados
En

beamer

A los siguientes entornos L T EX estn predenidos:

theorem corollary definition example proof


Los temas

beamer

controlan el aspecto de estos entornos. Por ejemplo,

el siguiente cdigo genera la dispositiva que se muestra en la gura 2.21.

\documentclass{beamer}
154

\usetheme{Singapore} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel} \deftranslation[to=spanish]{Theorem}{Teorema} \deftranslation[to=spanish]{Definition}{Definicin} \begin{document} \begin{frame}{Teoremas y relacionados} \begin{definition} Un tringulo rectngulo que tiene un ngulo recto es llamado \emph{tringulo rectngulo}. \end{definition} \begin{theorem} En un tringulo rectngulo, el cuadrado de la hipotenusa es igual a la suma de los cuadrados de los dos lados. \end{theorem} \begin{proof} Dejamos la demostracin como ejercicio para nuestro astuto lector. Tambin sugerimos que el lector generalice la prueba a las geometras no euclidianas. \end{proof} \end{frame} \end{document}

Si cambiamos el tema a

\usetheme{Warsaw},
155

la dispositiva toma el

aspecto mostrado en la gura 2.22.

Figura 2.21 Aspecto de los teoremas y relacionados segn el tema Singapore.

tema Warsaw.

Figura 2.22 Aspecto de los teoremas y relacionados segn el

156

Estos entornos estn denidos en el paquete tomticamente en

amsmath

que se carga au-

beamer. Por lo tanto, es posible denir nuestros propios

entornos, segn la necesidad que se presente. Por ejemplo, si ponemos

\newtheorem{proposition}{Proposicin}
en el prembulo, entonces ser posible usar, en el documento, el entorno

\begin{proposition} ... \end{proposition}

Observacin: Puede resultar ms prctico denir todos los entornos,


de teoremas y relacionados, que vamos a utilizar mediante el comando:

\newtheorem{...}{...}

(no olvide que el primer campo no debe incluir

tildes, ni diresis, ni virgulillas, etc.) Por ejemplo, el siguiente cdigo produce la diapositiva de la gura 2.23.

\documentclass{beamer} \usetheme{Warsaw} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel} \newtheorem{teorema}{Teorema} \newtheorem{definicion}{Definicin} \newtheorem{lema}{Lema} \newtheorem{proposicion}{Proposicin} \begin{document} \begin{frame}{Teoremas y relacionados} \begin{definicion} Un tringulo rectngulo que tiene un ngulo recto es llamado \emph{tringulo rectngulo}. \end{definicion}
157

Figura 2.23 Personalizacin de entornos matemticos.


\begin{proposicion} En un tringulo rectngulo, el cuadrado de la hipotenusa es igual a la suma de los cuadrados de los dos lados. \end{proposicion} \begin{proof} Dejamos la demostracin como ejercicio para nuestro astuto lector. Tambin sugerimos que el lector generalice la prueba a las geometras no euclidianas. \end{proof} \end{frame} \end{document}

20 Divisin de una diapositiva en columnas


El entorno columns de

beamer proporciona una manera fcil de dividir una

diapositiva verticalmente en columnas. Esto es particularmente til en el posicionamiento de las guras en una diapositiva o la creacin de varias columnas de listas. El cdigo siguiente genera, a manera de ejemplo, la dispositiva mostrada en la gura 2.24.

\documentclass{beamer}
158

\usetheme{Warsaw} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel} \begin{document} \begin{frame}{Divisin de una diapositiva en columnas} La lnea que est leyendo esta escrita en una sola columna. Ahora vamos a dividir la diapositiva en dos columnas. \bigskip \begin{columns} \begin{column}{0.5\textwidth} He aqu la primera columna. Anotaremos una lista en esta. \begin{itemize} \item Este es un item \item Este es otro item \item Otro item ms \end{itemize} \end{column} \begin{column}{0.3\textwidth} He aqu la segunda columna. Pondremos una figura en esta. \centerline{\includegraphics[width=0.9\textwidth]{math}} \end{column} \end{columns} \bigskip

159

Figura 2.24 Divisin de una diapositiva en columnas.


La lnea que est leyendo esta escrita en una sola columna. \end{frame} \end{document}

Observaciones:
Para dividir una diapositiva en tres o ms columnas, agregue la cantidad adecuada de

\begin{column}...\end{column}. \textwidth. \textwidth

Slo asegrese

de que la suma de las respectivas anchuras no sobrepase la anchura de la diapositiva, que es

Dentro de cada columna, la variable

se redene para

referirse al ancho de esa columna. Por ejemplo, en el cdigo previo, la anchura de la imagen se ajusta en

0.9\textwidth

que signica

0.9

veces la anchura de la columna que contiene la imagen.

Resulta ms fcil dar anchos de columnas en trminos de fracciones de

\textwidth.

Si lo desea, sin embargo, puede especicar an-

churas absolutas, como por ejemplo: esto, debe saber que el tamao

\begin{column}{30mm}. Para total de una diapositiva beamer es

128mm 96mm.
160

20.1 Alineacin vertical


Observe que en la diapositiva de ejemplo anterior, los puntos medios verticales de las dos columnas se alinean horizontalmente. Diremos que las columnas son centro-alineadas, para abreviar. La opcin

[t]

del entorno columns, como en

\begin{columns}[t], [c]
para la centro-

hace a las columnas super-alineadas. Otras opciones son

[b]

para la infra-alineacin y

alineacin (que es la predeterminada). En el siguiente ejemplo las columnas estn super-alineadas (ver Fig.

??).
\documentclass{beamer} \usetheme{Warsaw} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel} \begin{document} \begin{frame}{Divisin de una diapositiva en columnas} La lnea que est leyendo esta escrita en una sola columna. Ahora vamos a dividir la diapositiva en dos columnas. \bigskip \begin{columns}[t] \begin{column}{0.5\textwidth} He aqu la primera columna. Anotaremos una lista en esta. \begin{itemize} \item Este es un item \item Este es otro item
161

Figura 2.25 Diapositiva con columnas super-alineadas.


\item Otro item ms \end{itemize} \end{column} \begin{column}{0.3\textwidth} He aqu la segunda columna. Pondremos una figura en esta. \centerline{\includegraphics[width=0.9\textwidth]{math}} \end{column} \end{columns} \bigskip La lnea que est leyendo esta escrita en una sola columna. \end{frame} \end{document}

20.2 Alineacin vertical con imgenes


A veces puede que la opcin

[t]

para la super-alineacin produzca re-

sultados inesperados. El siguiente ejemplo muestra un caso como tal. La 162

nica diferencia entre este ejemplo y el anterior es que se ha intercambiado la imagen y el texto en la segunda columna (ver Fig. 2.26).

\documentclass{beamer} \usetheme{Warsaw} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel} \begin{document} \begin{frame}{Divisin de una diapositiva en columnas} La lnea que est leyendo esta escrita en una sola columna. Ahora vamos a dividir la diapositiva en dos columnas. \bigskip \begin{columns}[t] \begin{column}{0.5\textwidth} He aqu la primera columna. Anotaremos una lista en esta. \begin{itemize} \item Este es un item \item Este es otro item \item Otro item ms \end{itemize} \end{column} \begin{column}{0.3\textwidth} \centerline{\includegraphics[width=0.9\textwidth]{math}} He aqu la segunda columna. Pondremos una figura en esta. \end{column}
163

Figura 2.26 Diapositiva con resultados inesperados. Como puede


verse, las columnas no estn super-alineadas en absoluto!

\end{columns} \bigskip La lnea que est leyendo esta escrita en una sola columna. \end{frame} \end{document}

Lo que est sucediendo es que la parte inferior de la imagen se toma como punto de referencia de la imagen. Por lo tanto la parte inferior de la imagen est alineada con la parte superior de la primera columna. Esto no es lo que queremos!

Queremos la parte superior de la imagen se tome como punto de referencia, de modo que la parte superior de la imagen est alineada con la parte superior de la primera columna. Para lograr esto, na la opcin de alineacin (ver Fig. 2.27). 164

beamer proporcio-

[T].

El ejemplo siguiente muestra el resultado

Figura 2.27 Diapositiva super-alineada.

21 Alineacin vertical en las diapositivas


21.1 Alineacin vertical en cada diapositiva
El contenido de las diapositivas

beamer se centra verticalmente dentro de

las diapositivas. Esto es particularmente notable si hay muy poco material en la diapositiva. Utilice las opciones

t, c

con

\begin{frame}

para que el contenido

de la diapositiva aparezca alineado en la parte superior, central o inferior de la diapositiva, respectivamente. La opcin por defecto es Las guras 2.28, 2.29 y 2.30 muestran esto.

c.

21.2 Alineacin vertical para todo el documento


Es posible congurar la alineacin vertical de todo el documento, dando una de las opciones

al

\documentclass.

Por ejemplo:

\documentclass[t]{beamer}
har que el contenido de todas las diapositivas sean super-alineados. Se puede anular este efecto para diapositivas individuales utilizando las opciones

con

\begin{frame}.
165

\documentclass{beamer} \usetheme{Singapore} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel} \begin{document} \begin{frame}[t]{Alineacin superior} Este es el contenido de la diapositiva. \end{frame} \end{document}

Cdigo de la diapositiva

Figura 2.28 Diapositiva con alineacin superior.


Cdigo de la diapositiva

\documentclass{beamer} \usetheme{Singapore} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel} \begin{document} \begin{frame}[c]{Alineacin central} Este es el contenido de la diapositiva. \end{frame} \end{document}

Figura 2.29 Diapositiva con alineacin central.


166

\documentclass{beamer} \usetheme{Singapore} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel} \begin{document} \begin{frame}[b]{Alineacin inferior} Este es el contenido de la diapositiva. \end{frame} \end{document}

Cdigo de la diapositiva

Figura 2.30 Diapositiva con alineacin inferior.

22 El tamao de fuente por defecto


El tamao de fuente por defecto de

beamer

es de 11 puntos. Es posible

ajustar el tamao de fuente predeterminado a

8, 9, 10, 11, 12, 14, 17

20

en la lnea de

predeterminada

\documentclass. Por a 14 puntos, hacer:

ejemplo, para establecer la fuente

\documentclass[14pt]{beamer}

23 El color de texto predeterminado


El texto normal de

beamer

es negro sobre fondo blanco. El siguiente co-

mando en el prembulo cambia el color de todo el texto normal a prpura:

\setbeamercolor{normal text}{fg=purple}

(ver Fig. 2.31)

Observacin: El texto normal es el texto en el cuerpo principal de una


diapositiva. Los encabezados y el pies de pgina no son texto normal. Los colores de estos elementos son controlados por 167

structure.

Por ejemplo,

\documentclass{beamer} \usetheme{Singapore} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel} \setbeamercolor{normal text}{fg=purple} \begin{document} \begin{frame}{Texto normal en color prpura} Este es el contenido de la diapositiva. \end{frame} \end{document}

Cdigo de la diapositiva

Figura 2.31 Diapositiva con texto normal en color prpura.


el comando siguiente cambia los ttulos de las diapositivas (y otros) a prpura:

\setbeamercolor{structure}{fg=purple}

(ver Fig. 2.32)

24 Fuentes y estilos de letras


La informacin almacenada en

structure, relacionada con fuentes, deter-

mina el tipo de letra para representar los elementos estructurales de una presentacin como encabezados, pies de pgina y algunas entradas de la portada. La fuente por defecto para la mayora de los temas es como se muestra en la gura 2.33. Vamos a cambiar el tipo de letra a romana cursiva. Tenga en cuenta los cambios en la portada, los encabezados y pies de pgina (ver Fig. 2.34). Otros ejemplos se aprecian en las guras 2.35 y 2.36. 168

\documentclass{beamer} \usetheme{Singapore} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel} \setbeamercolor{structure}{fg=purple} \begin{document} \begin{frame}{Ttulo en color prpura} Este es el contenido de la diapositiva. \end{frame} \end{document}

Cdigo de la diapositiva

Figura 2.32 Diapositiva con ttulo en color prpura.

\documentclass[14pt]{beamer} \usetheme{Boadilla} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel}

Cdigo de una parte del prembulo

Figura 2.33 Diapositiva en formato por defecto.

169

\documentclass[14pt]{beamer} \setbeamerfont{structure}{family=\rmfamily,shape=\itshape} \usetheme{Boadilla} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel}

Cdigo de una parte del prembulo

Figura 2.34 Diapositiva en formato romana cursiva.

\documentclass[14pt]{beamer} \setbeamerfont{structure}{shape=\itshape} \usetheme{Boadilla} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel}

Cdigo de una parte del prembulo

Figura 2.35 Diapositiva en formato cursiva.

170

\documentclass[14pt]{beamer} \setbeamerfont{structure} {family=\rmfamily,series=\bfseries,shape=\itshape} \usetheme{Boadilla} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel}

Cdigo de una parte del prembulo

Figura 2.36 Diapositiva en formato romana negrita y cursiva.


24.1 Fuentes de temas
beamer
ofrece un conjunto predenido de opciones de fuente que afectan

no slo a los elementos estructurales, sino tambin el texto normal y las matemticas. Las guras 2.37, 2.38, 2.39 y 2.40 muestran algunos ejemplos.

25 Contraccin de diapositivas
Para colocar un poco de material extra en una diapositiva posible especicar un factor de contraccin ( como en la gura 2.41.

beamer,

es

shrink)

de esa diapositiva,

26 Cambio de anchos de margen


El tamao de una diapositiva

beamer

es de

128mm 96mm.

Estas di-

mensiones son jas y no se deben cambiar. Es permisible, sin embargo, cambiar las anchuras de los mrgenes izquierdo y derecho. Estos estn establecidos a

1cm

por defecto.

Con los siguientes comandos (ubicados en el prembulo), se cambia el ancho de los mrgenes izquierdo y derecho a te: 171

6mm y 2mm, respectivamen-

\documentclass[14pt]{beamer} \usefonttheme{serif} \usetheme{Boadilla} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel}

Cdigo de una parte del prembulo

Figura 2.37 Diapositiva con fuente de tema serif.

\documentclass[14pt]{beamer} \usefonttheme[stillsansseriftext]{serif} \usetheme{Boadilla} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel}

Cdigo de una parte del prembulo

Figura 2.38 Diapositiva con fuente de tema serif, excepto el texto normal.

172

\documentclass[14pt]{beamer} \usefonttheme[stillsansseriftext,stillsansserifmath]{serif} \usetheme{Boadilla} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel}

Cdigo de una parte del prembulo

Figura 2.39 Diapositiva con fuente de tema serif, excepto el texto normal y la variables del modo matemtico.

\documentclass[14pt]{beamer} \usefonttheme{structuresmallcapsserif} \usetheme{Boadilla} \usepackage[latin1]{inputenc} \usepackage[spanish]{babel}

Cdigo de una parte del prembulo

Figura 2.40 Diapositiva con fuente de tema structuresmallcapsserif.

173

\begin{frame}[shrink=5]{Una diapositiva sencilla} A continuacin algunas ecuaciones: \[\sen^2x+\cos^2x=1\] \[a^2x+b^2y=c^2z\] \[\sum_{n=1}^{\infty}\frac{1}{n^2}=\frac{\pi^2}{6}\] \[\int_0^1x^2\,dx=\frac{1}{3}\] \end{frame}

Cdigo de la diapositiva

Figura 2.41 Diapositiva comprimida.


\setbeamersize{text margin left=6mm} \setbeamersize{text margin right=2mm}
tambin es posible combinar ambos comandos en uno solo:

\setbeamersize{text margin left=6mm, text margin right=2mm}

27 Texto de color, fondos y cajas


El texto en color en

beamer se produce utilizando el comando estndar de

A L T EX, como en:

\textcolor{blue}{Este texto est en azul}

Observacin: El comando \structure{Este es un texto en color}


puede ser usado para dibujar el texto especicado en el color almacenado en

structure

(ver Sec. 10).

El color del fondo de texto se establece con el comando

\colorbox.

\colorbox{yellow}{Este texto tiene fondo amarillo}


174

Es posible combinar varios colores y elementos de fuente para lograr resultados interesantes. Por ejemplo:

\colorbox{yellow}{ \textcolor{red}{ \textbf{ Texto en negrita, color rojo y fondo amarillo } } }

Para incluir texto en una caja:

\fcolorbox{red}{yellow}{Una caja amarilla con borde rojo}

El grosor del borde es controlado por la variable establecer el grosor del borde en 4 puntos:

\fboxrule.

Vamos a

\setlength{\fboxrule}{4pt} \fcolorbox{red}{white}{Una caja blanca con borde rojo de 4pt de grosor}

La separacin entre el borde y el objeto encerrado es controlado por la variable

\fboxsep.

Vamos a establecer la separacin a cero:

\setlength{\fboxrule}{4pt} \setlength{\fboxsep}{0pt} \fcolorbox{red}{white}{Una caja blanca con borde rojo y separacin de 0pt}

175

28 Bibliografa
Se puede incluir bibliografa usando el comando estndar

\thebibliography
No obstante,

beamer

dispone de plantillas para mostrar artculos y libros

de forma ms agradable. Tales plantillas se invocan con

\beamertemplatearticlebibitems
y con

\beamertemplatebookbibitems
respectivamente. A modo de ejemplo se presenta el siguiente cdigo el cual genera una diapositiva como la que se muestra en la gura 2.42.

\begin{frame}{Bibliografa} \begin{thebibliography}{CM} \beamertemplatearticlebibitems \bibitem{Bra} BRAVO, Juan E. y otros. ``El Mtodo de Newton-Raphson''. Revista Scientia et Technica Num. 27 (2005). \beamertemplatebookbibitems \bibitem{Bur} BURDEN, R. y FAIRES, J. Douglas. ``Anlisis numrico''. Mxico; Thomson (2002). \bibitem{Chur} CHURCHILL, R. y BROWN, J. ``Anlisis numrico''. Editorial McGraw-Hill; USA (1998).
176

\end{thebibliography} \end{frame}

Figura 2.42 Diapositiva de la bibliografa.

177

ATEX Programacin con L

El compilador T EX contiene aproximadamente 300 secuencias de control (comandos) llamadas primitivas. stas son operaciones de bajo nivel que no pueden ser descompuestas en acciones ms simples. El resto de lo que propiamente se llama T EX unas 600 instrucciones, son macros, es decir, comandos denidos a partir de las 300 primitivas, haciendo uso de las capacidades de compilador (es decir, lenguaje de programacin) de TEX.

A Asimismo, el procesador de textos L T EX es otro conjunto de macros construidas a partir de comandos T EX. En ste captulo se introducirn las herramientas bsicas de programacin disponibles en T EX, tiles para denir nuevos comandos o entornos, modicar parmetros, automatizar tareas, en denitiva personalizar nuestro documento.

1 Creacin de comandos y entornos


1.1 Comandos
En sta seccin describiremos cmo utilizar el comando

\newcommand para

A denir nuevos comandos L T EX que puedan ayudarnos a simplicar el realizar tareas repetitivas. Para la denicin de un nuevo comando se dispone de tres posibilidades

\newcommand{\NombreComando}[NumArg][ArgDefecto]{Definicion} \renewcommand{\NombreComando}[NumArg][ArgDefecto]{Definicion} \providecommand{\NombreComando}[NumArg][ArgDefecto]{Definicion}


178

\NombreComando es el nombre que queremos asignar al nuevo comando, NumArg indica el nmero de argumentos que va a tener (comprendido entre 1 y 9), ArgDefecto es el valor por defecto de un argumento optativo (el primero de ellos), y Definicion contiene la denicin del comando, donde los distintos argumentos se denotan como #1, #2, etc . . .
donde Entre estas tres versiones existen diferencias importantes.

\newcommand

se utiliza para denir nuevos comandos, por lo que debemos estar seguros de que el comando a denir no existe.

\renewcommand se utiliza para rede-

nir comandos ya existentes, reescribiendo y borrado la denicin anterior del comando. Finalmente,

\providecommand dene el nuevo comando s-

lo en el caso de que el comando no exista; en caso contrario la nueva denicin carece de efecto. Para cada una de estas tres posibilidades existen versiones con y sin asterisco; las versiones con asterisco (

\newcommand*{\NombreComando}

[NumArg]{ArgDef}{Def},
risco (

etc . . . ) no permiten que los argumentos pue-

dan extenderse a ms de un prrafo, mientras que las versiones sin aste-

\newcommand{\NombreComando}[NumArg]{ArgDef}{Def}, etc . . . )

permiten que los argumentos se extiendan a ms de un prrafo.

1.2 Ejemplos
Es preferible que ubicar las deniciones de los nuevos comandos en el prembulo.

Supongamos que la expresin

(x1 , x2 , . . . , xn ) aparece frecuentemente

en nuestro documento. Podemos entonces denir

\newcommand{\vect}{(x_1,x_2,\dots,x_n)} con lo cual, cada vez que escribamos $\vect$ (el comando) se imprimir (x1 , x2 , . . . , xn ).

nombre del nuevo

Ahora compliquemos un poco el ejemplo con la introduccin de argumentos variables. Si por ejemplo escribimos

\newcommand{\vect}[1]{(#1_1,#1_2,\dots,#1_n)}
(aadiendo un argumento, que se sustituye en la frmula con  179

#1),

escribiendo con

$\vect{x}$ obtendramos (x1 , x2 , . . . , xn ), $\vect{a}$ se tendra (a1 , a2 , . . . , an ), etc . . .

mientras que

Aadiendo ms argumentos, podemos obtener construcciones ms complejas, por ejemplo, deniendo

\newcommand{\vect}[2]{(#1_1,#1_2,\dots,#1_#2)} $\vect{x}{n}$ dara como resultado (x1 , x2 , . . . , xn ), mientras con $\vect{a}{p}$ se obtendra (a1 , a2 , . . . , ap ).

que

Practiquemos ahora la denicin de comandos con argumentos optativos, que toman un determinado valor por defecto. Por ejemplo, construyamos

\newcommand{\nuevovector}[2][x]{(#1_1,#1_2,\dots,#1_#2)} donde la  x entre corchetes es el valor por defecto del argumento opcional (siempre el primero). As, escribiendo $\nuevovector{n}$ $\nuevovector{p}$ obtendramos (x1 , x2 , . . . , xn ) y (x1 , x2 , . . . , xp )
respectivamente, mientras que aadiendo un argumento optativo cambiaramos el valor por defecto de  ,

x $\nuevovector[a]{n}$

dara

(a1 , a2 , . . . , an ).

2 Entornos
Tambin es posible denir nuevos entornos, o redenir entornos ya existentes; para ello se dispone de los siguientes comandos

\newenvironment{NombreEntorno}[NumArg][ArgDef]{DefEntrada} {DefSalida} \renewenvironment{NombreEntorno}[NumArg][ArgDef]{DefEntrada} {DefSalida}


que funcionan de un modo similar a los comandos del tipo

\newcommand,

en cuanto a que admiten argumentos (hasta 9), opcionalmente con el primero de ellos optativo. La diferencia reside en que en el argumento

DefEntrada

se indican las rdenes que se deben ejecutar antes de entrar

en el entorno, y en el argumento

DefSalida
180

la que se deben ejecutar al

salir del entorno. Una vez denido el nuevo entorno, se debe invocar de la siguiente forma

\begin{NuevoEntorno}{Arg1}...{ArgN} Texto y comandos \end{NuevoEntorno}


Al igual que en el caso de los comandos, existen versiones sin y con asterisco, con el mismo signicado, es decir, que respectivamente admiten o no argumentos de ms de un prrafo. Por ejemplo, construyamos un entorno que cree una minipgina de anchura variable por defecto media pgina), centrada, y con el texto en negrita

\newenvironment{mientorno}[1][0.5]{\begin{center}% \begin{minipage}{#1\textwidth}\bfseries}{\end{minipage}% \end{center}}


y tras denir ste nuevo entorno, tecleando

\begin{mientorno} Ejemplo de texto con una anchura estndar de media pgina, centrado, y en tipo de letra negrita. \end{mientorno}
obtenemos

Ejemplo de texto con una anchura estndar de media pgina, centrado, y en tipo de letra negrita.
o, si queremos emplear el argumento optativo y reducir la anchura del texto a

0.3

veces la anchura de texto (

\textwidth)

\begin{mientorno}[0.3] Ejemplo de texto con una anchura de un tercio de pgina, centrado, y en tipo de letra negrita \end{mientorno}
181

Ejemplo de texto con una anchura de un tercio de pgina, centrado, y en tipo de letra negrita.
Es importante tener en cuenta que los argumentos de un entorno slo pueden utilizarse en la denicin de entrada (

DefEntrada).

Si los necesi-

tamos en la denicin de salida, podemos utilizar el truco de guardarlos convenientemente, empleando un comando

\newcommand

para ello. En el

siguiente ejemplo, creamos un entorno cita para escribir citas, dando el nombre del autor como argumento

\newenvironment{cita}[1]{\newcommand{\autor}{#1}% \begin{quote}\itshape``}{''\end{quote}\centerline{\autor}}
Tras lo cual, por ejemplo

\begin{cita}{Andres Fernndez} Nuestras vidas son los ros que van a parar al mar, que es el morir \end{cita}
produce

 Nuestras vidas son los ros que van a parar al mar, que es el morir 
Andres Fernndez

3 Compilacin por partes


Imaginemos que estamos escribiendo un documento largo (un libro, por ejemplo). Es conveniente, a la hora de depurar errores, escribir y compilar

A cada parte por separado. Para ello L T EX proporciona dos posibilidades


182

El comando

\input{Fichero.tex} produce que el compilador, al en-

contrar esta instruccin, lee el chero indicado en el argumento y contina compilando dicho chero. En el argumento del comando podemos dar, si el chero no se encuentra en el directorio actual, el camino hasta l. Debe tenerse cuidado de que instrucciones clave como

\documentclass o \begin{document} no se dupliquen. Entonces,

para escribir un libro, por ejemplo, podemos tener un documento con la siguiente estructura

\documentclass[opciones]{book} \usepackage{paquete1} ..... \begin{document} %\input{capitulo1.tex} %\input{capitulo2.tex} %\input{capitulo3.tex} ...... \end{document}


y, al hacer la depuracin de errores, descomentar individualmente cada una de las lneas

\input{fichero.tex}.

Tambin es posible utilizar

este comando para otros usos, por ejemplo, incluir listas de instrucciones

\newcommand y personalizaciones diversas que podamos querer \input, el coextensin .tex en

hacer comunes a varios documentos. Una alternativa ms cmoda es utilizar, en vez de mando

\include{Fichero}

(es esencial omitir la

ste caso). Entonces, en el prembulo se puede colocar el comando

\includeonly{Fichero1,Fichero2,...},

que hace que slo se in-

cluyan en la compilacin los cheros que aparecen en el argumento. Es importante mencionar que al comenzar y terminar, la orden

\include induce un salto de pgina (ms exactamente, \clearpage, que adems expulsa elementos otantes
captulos de un libro o tesis. 183

un comando pendientes),

por lo que esta alternativa es conveniente utilizarla slo para incluir

4 Conceptos bsicos sobre contadores y longitudes


4.1 Contadores
A En su funcionamiento habitual, L T EX utiliza un amplio nmero de contadores con el n de enumerar distintos elementos de un documento: pginas, secciones, tablas, guras, etc... Cada contador tiene un nombre que permite identicarlo; as,

page

es el contador que identica pginas,

chapter captulos, etc... En lo sucesivo, denotaremos ese nombre como NombreContador. Cada contador lleva asociados una serie de elementos
de diferente signicado: nombre, valor (siempre un nmero entero) y formato, ste ltimo pudiendo tomar variadas formas: (I, II, III..., a, b, c...) Se dispone de los siguientes formatos de contador

\arabic{NombreContador} \alph{NombreContador} \Alph{NombreContador} \roman{NombreContador} \Roman{NombreContador} \fnsymbol{NombreContador}

1, 2, 3, 4, . . .
a, b, c, d, . . . (nota 1) A, B, C, D, . . . (nota 1) I, II, III, IV . . . (nota 2) I, II, III, IV, . . . *, **, ***, ****, . . . (nota 3)

Nota 1: El valor del contador no puede superar 27 (nmero de letras en


el abecedario.

Nota 2: El

resultado mostrado es el que se obtiene con

babel,

opcin

spanish.

Sin ello, se obtendra i, ii, iii, ... No obstante, aunque se

use el paquete

babel

con la opcin

spanish

es posible obtener las

minsculas en la numeracin romana insertando el siguiente cdigo en el prembulo

\makeatletter \def\@roman#1{\romannumeral #1} \makeatother


184

Nota 3: Igualmente,
spanish;

el resultado mostrado es el obtenido con

babel

en caso contrario, se utilizan las marcas inglesas: *,

, ...

En ambos casos, el valor no puede ser superior a 6.

Asociado a cada contador existe un comando, llamado representacin del contador, que permite imprimir el valor del contador

NombreContador en alguno de los formatos descritos; el comando es \theNombreContador.


A Cuando L T EX dene un nuevo contador, le asigna inicialmente la representacin correspondiente al formato podemos redenirla mediante el

\arabic; si queremos cambiarla, comando \renewcommand*; veamos unos

ejemplos de lo que se puede hacer

Este ejemplo muestra cmo obtener el nmero de la pgina en curso; sta pgina es la nmero \thepage, en la representacin original.\\ \renewcommand*{\thepage}{\roman{page}} Ahora esta cambiada a nmeros romanos; sta pgina es la nmero \thepage.\\ \renewcommand*{\thepage}{[Sec. % \thesection\ -- Pg. \arabic{page}]} Luego, algo ms elaborado; sta pgina es la nmero \thepage.\\ \renewcommand*{\thepage}{\arabic{page}} Finalmente, volvemos al formato original; sta pgina es la nmero \thepage.
Este ejemplo muestra cmo obtener el nmero de la pgina en curso; sta pgina es la nmero 185, en la representacin original. Ahora esta cambiada a nmeros romanos; sta pgina es la nmero clxxxv. Luego, algo ms elaborado; sta pgina es la nmero [Sec. 4  Pg. 185]. Finalmente, volvemos al formato original; sta pgina es la nmero 185. Podemos cambiar los valores de un contador con los siguientes comandos 185

\setcounter{NombreContador}{Valor} Asigna al contador NombreContador el valor entero Valor, con independencia del
anterior.

valor

\addtocounter{NombreContador}{Valor} Incrementa NombreContador con la cantidad Valor, que puede ser positiva o negativa.

Esta es la seccin \thesection. Pero podemos a\~{n}adirle 2 fcilmente; \addtocounter{section}{2} ahora estamos en la seccin \thesection. Mejor lo dejamos como estaba, porque si no las restantes secciones quedaran numeradas incorrectamente (esto es, el efecto de estos cambios de numeracin es \emph{global}). \addtocounter{section}{-2}
Esta es la seccin 4. Pero podemos aadirle 2 fcilmente; ahora estamos en la seccin 6. Mejor lo dejamos como estaba, porque si no las restantes secciones quedaran numeradas incorrectamente (esto es, el efecto de estos cambios de numeracin es global ). Podemos recuperar el valor numrico de un contador, independientemente de su representacin, con el comando

\value{NombreContador}
lo cual es til para la gestin de contadores, como veremos a continuacin. Se denen nuevos contadores con la instruccin

\newcounter{NuevoContador}[ContadorExistente] NuevoContador, y le asigna cero como valor inicial. El argumento ContadorExistente es optativo, y sirve para subordinar NuevoContador al contador ya existente ContadorExistente,
que introduce un contador de nombre 186

subsection est subordinado al contador section: incrementar en una unidad el contador section implica que el contador subsection se reinicia a cero automticamente.
de la misma forma que, por ejemplo, el contador Veamos un ejemplo de cmo introducir un nuevo contador, con el n de enlazar varias listas enumerate manteniendo la numeracin (

enumi

es

A el contador estndar L T EX para los tems de primer nivel en entornos


enumerate)

Las primeras lecciones son las siguientes: \newcounter{conserva} \begin{enumerate} \item Nmeros reales \item Nmeros complejos \setcounter{conserva}{\value{enumi}} \end{enumerate} Mas adelante, se estudiarn temas ms complicados: \begin{enumerate} \setcounter{enumi}{\value{conserva}} \item Continuidad \item Derivacin \end{enumerate}
Las primeras lecciones son las siguientes:

1) Nmeros reales 2) Nmeros complejos

Mas adelante, se estudiarn temas ms complicados:

3) Continuidad 4) Derivacin

Debe mencionarse que al crear un nuevo contador se crea automticamente el comando

\theNuevoContador,
187

con la denicin

\arabic{

NuevoContador}

por defecto.

Cuando se modica un contador con los comandos

\setcounter

\addtocounter,

los contadores subordinados no se ponen a cero; para

obtener se efecto, se dispone de los comandos

\stepcounter{NombreContador} Incrementa NombreContador en una


unidad, y reinicia todos los contadores subordinados a ste.

\refstepcounter{NombreContador} Lo mismo que el anterior, pero declarando tambin como valor del comando \ref el texto generado por \theNuevoContador cuando se utilizan referencias cruzadas con los comandos \label y \ref.
Veamos un pequeo ejemplo que ilustra como utilizar estos comandos; denimos

\newcounter{prg}[section]\newcounter{linea}[prg] \newcommand*{\lin}{% \addtocounter{linea}{1}\thelinea\quad} \renewcommand*{\theprg}{\arabic{section}.\arabic{prg}} \newenvironment*{programa}{% \refstepcounter{prg} \begin{center}Programa~\theprg\end{center} \obeylines\obeyspaces}{\par}


Y, luego utilizamos nuestro nuevo entorno,

programa,

as

\begin{programa} Entrada: $N$, $x_1,x_2,\ldots,x_N$. Salida: $SUMA=\sum_{i=1}^Nx_i$. \lin $SUMA=0$. \lin Para $i=1,2,\ldots,N$: $SUMA=SUMA+x_i$. \lin SALIDA($SUMA$); PARAR. \end{programa}
con lo que se obtiene

Programa 4.1 188

Entrada: Salida: 1 2 3

N , x1 , x2 , . . . , xN .
N i=1 xi .

SU M A =

SU M A = 0.
Para

i = 1, 2, . . . , N : SU M A = SU M A + xi .

SALIDA(SU M A); PARAR.

4.2 Longitudes
A Al igual que con los contadores, L T EX es tambin capaz de crear y modicar variables de tipo Longitud. Las longitudes que habitualmente utiliza

A L T EX pueden tomar dos tipos de valores

Rgidas: Toman un valor determinado; por ejemplo \quad = 11.747 pt,


\thinspace
= 1.958 pt,

\hoffset

= -28.45274 pt .

Elsticas: Toman

A un valor que L T EX puede modicar dentro de unos

lmites, a n de optimizar la composicin del documento. Por ejemplo,

\bigskip, \medskip
El comando

\smallskip.

\bigskip

se dene como

\vspace{12pt plus 4pt minus 4pt}


A lo cual quiere decir que L T EX debe introducir un espacio vertical de 12
pt, aunque tiene la libertad de incrementarlo o reducirlo en 4 pt, segn convenga a n de distribuir el espacio de forma homognea. Alguna de las holguras

plus

minus

pueden estar ausentes en la denicin, pero si

ambas aparecen deben estar en se orden. Los comandos

\bigskip, \medskip
y

\smallskip,

respectivamente,

tienen asociadas longitudes elsticas con valores almacenados en

\bigskip-

amount, \medskipamount
1 Hay

\smallskipamount,

por lo que tales coman-

dos se deniran de hecho como

que tener cuidado en no confundir el concepto de longitud y del valor que toma una longitud; \hoffset es una longitud, mientras que \quad y \thinspace son comandos que dejan en blanco un espacio horizontal de valor rgido
189

\bigskip \medskip

\vspace{\bigskipamount} \vspace{\medskipamount}

\smallskip \vspace{\smallskipamount}
y donde cada una de stas longitudes elsticas toma valores

\bigskipamount \medskipamount \smallskipamount

:: :: ::

12.0pt plus 4.0pt minus 4.0pt 6.0pt plus 2.0pt minus 2.0pt 3.0pt plus 1.0pt minus 1.0pt

Puede obtenerse el valor de cualquier longitud con el comando

\the\NombreLongitud
donde

NombreLongitud

es el nombre de la longitud; ste comando siem-

pre expresa las longitudes en unidades pt, con el punto como separador decimal. Al igual que ocurra con los contadores, los valores de una longitud pueden modicarse. Existen dos comandos para ello

\setlength{\NombreLongitud}{Valor} Asigna a la longitud \NombreLongitud un valor igual al argumento Valor, que debe

ser

una longitud (sto es, expresada en unidades cm, pt, etc...). Puede ser un valor tanto rgido como elstico (por ejemplo, 5mm plus 1mm minus 2mm). Tambin es posible que (

\textwidth)

con quizs un

Valor sea una variable de longitud factor multiplicativo (0.5\textwidth, \NombreLongitud un valor es uti-

por ejemplo). Una forma alternativa de asignar a lizar la sintaxis

\NombreLongitud=Valor

o bien

\NombreLongitud Valor.

\addtolength{\NombreLongitud}{Valor} Suma a la longitud \NombreLongitud la cantidad Valor, que puede ser positiva o negativa. 190

Al contrario que lo que ocurra con los contadores, cuyas asignaciones tienen carcter global (es decir, trascienden el grupo dentro del cual han sido declaradas, y tienen efecto en todo el resto del documento), las asignaciones de longitud tienen por defecto carcter local ; si se realizan dentro de un grupo, el valor anterior a la asignacin se recupera a la salida del grupo. En el caso de que deseemos un efecto global, puede ser aconsejable realizar tales asignaciones en el prembulo del documento. Se pueden denir nuevas longitudes con el comando

\newlength{\NuevaLongitud}
que crea una nueva longitud llamada

\NuevaLongitud; es importante que

\NuevaLongitud

A no sea ni un comando ni una longitud L T EX ya exis-

tentes, en cuyo caso obtendramos un mensaje de error. Por defecto, las nuevas longitudes son creadas con un valor inicial 0.0 pt. Para la gestin de valores de longitud son tiles los siguientes comandos

\settowidth{\NombreLongitud}{Objeto} \settoheight{\NombreLongitud}{Objeto} \settodepth{\NombreLongitud}{Objeto}


que calculan, respectivamente, la anchura (width), altura (height) y profundidad

(depth) de un objeto, asignando el valor resultante a la longitud

\NombreLongitud.

Ejemplos
Imaginemos que queremos medir la longitud asociada al comando Para ello podemos denir una nueva longitud

\quad.

\newlength{\longi}
a continuacin, asociamos a comando

\longi

la anchura del espacio asociado al

\quad

\settowidth{\longi}{\quad}
2 Distancia

por debajo de la lnea de base.


191

tras lo cual, el comando

\the\longi

muestra el valor 9.99756pt.

Ahora creamos otra longitud

\newlength{\longitud}
que empleamos para medir la anchura, altura, y profundidad de la palabra

Integral.

\newlength{\longitud} \noindent La anchura de la palabra {\Large Integral} es \settowidth{\longitud}{\Large Integral} \the\longitud, su altura es \settoheight{\longitud}{\Large Integral} \the\longitud\ y su profundidad es \settodepth{\longitud}{\Large Integral} \the\longitud.
La anchura de la palabra Integral es 50.93025pt, su altura es 11.0184pt y su profundidad es 3.11137pt.

Veamos un ltimo ejemplo

\newlength{\longA} \settowidth{\longA}{xxxxx} \begin{center} xxxxx\\ xxxxx\hspace{\longA}xxxxx\\ xxxxx\hspace{\longA}xxxxx\hspace{\longA}xxxxx\\ xxxxx\hspace{\longA}xxxxx\\ xxxxx \end{center}


xxxxx xxxxx xxxxx xxxxx xxxxx

xxxxx

xxxxx

xxxxx

xxxxx 192

Longitudes elsticas fil


En este apartado describiremos dos unidades de longitud elsticas:

fil

fill

A que L T EXutiliza para introducir espacios de longitud variable. Ambas proporcionan dos diferentes grados de elasticidad innita;

fil es una unidad fil


(y por tanto,

de longitud elstica innitamente ms grande que cualquier longitud rgida, mientras que

fill

es innitamente ms grande que

que cualquier longitud rgida). Basados en stas unidades de longitud, existe una variedad de comandos

\fill

Es una longitud, de valor

0pt plus 1fill.

\stretch{n} Es una longitud de valor 0pt y holgura un nmero n de unidades fill (entero o decimal). As, \fill equivale a \stretch{1}. \hfill y \vfill equivalen a \hspace{\fill} y \vspace{\fill}, respectivamente. La utilidad del comando \stretch{n}
De ste modo, los comandos est en la posibilidad de separar objetos con espacios proporcionales a diversas cantidades. Vase el siguiente ejemplo

Colocamos un texto centrado:\\[2mm] \vrule\hspace{\stretch{1}}Texto centrado\hspace{\stretch{1}}\vrule\par Ahora colocamos un texto con el doble de espacio a un lado que al otro:\par \noindent\vrule\hspace{\stretch{1}}% Texto\hspace{\stretch{2}}\vrule\par Otro ejemplo, con la distancia entre T1 y T2 igual a tres veces la distancia a los m\'{a}rgenes:\par \noindent\vrule\hspace{\stretch{1}} T1\hspace{\stretch{3}}T2 \hspace{\stretch{1}}\vrule
Colocamos un texto centrado: Texto centrado 193

Ahora colocamos un texto con el doble de espacio a un lado que al otro: Texto Otro ejemplo, con la distancia entre T1 y T2 igual a tres veces la distancia a los mrgenes: T1 T2

(para imprimir la barra vertical de referencia al comienzo y nal de lnea en el ejemplo anterior, hemos utilizado el comando una marca en blanco con los comandos

\vrule; podemos poner \mbox{} o \null).

\hfill \hfil

\vfill \vfil

(ya descritos).

Anlogos a los anteriores, pero empleando para la

elasticidad una unidad

fil

en lugar de

fill. fil
y

El siguiente ejemplo ilustra la diferencia entre las unidades

fill

\noindent A \hfil B \hfil C \\ D \hfill E \hfill F \par


A D B E C F

Porqu cambian las posiciones de B y C en la primera lnea? La res-

A puesta est en que, antes de cortar una lnea, L T EX introduce un espacio


de elasticidad variable, a n de evitar que las lneas cortas se estiren hacia la derecha. ste espacio se controla a travs de la longitud que por defecto tiene el valor

\parfillskip, \hfil. En el

0pt plus 1fil. \hfill

Por tanto, en el primer

ejemplo se equilibran los espacios asociados a tres comandos segundo caso, esto no sucede, dado que de elasticidad innitamente ms grande.

corresponde a un grado

\hfilneg y \vfilneg Equivalen, respectivamente, a \hspace{0pt plus -1fil} y a \vspace{0pt plus -1fil}, y permiten cancelar el efecto de los comandos \hfil y \vfil; por ejemplo \parindent=0pt \parfillskip=0pt
194

\newcommand*{\centrar}[1]{\vrule\hfil #1\hfil\vrule} \centrar{Centrado}\par \centrar{Centrado anulado\hfilneg}\par \centrar{\hfilneg Centrado anulado}


Centrado Centrado anulado Centrado anulado

\hss Equivale a \hspace{0pt plus 1fil minus 1fil}, e interviene en la denicin de los comandos \leftline, \rightline y \centerline. \vss Anlogo vertical, que equivale a \vspace{0pt plus 1fil minus 1fil}.
Los siguientes comandos (algunos de ellos ya mencionados anteriormente) tienen un efecto similar a

\hfill,

con la diferencia de que en el

espacio intermedio introducen diversos smbolos de extensin variable (en direccin horizontal)

\hrulefill

Raya

A\hrulefill B\hrulefill C
A B C

\dotfill

Raya

A\dotfill B\dotfill C
A................................B................................C

downbracefill y \upbracefill Llaves hacia abajo o hacia arriba, respectivamente.

\leftarrowfill

\rightarrowfill
195

Flechas a izquierda y de-

recha, respectivamente.

\parindent=0pt \parfillskip=0pt \mbox{}\hspace{\stretch{1}}A% \hspace{\stretch{3}}\mbox{}\\[-3pt] \mbox{}\downbracefill\mbox{}% \hspace{\stretch{2.3}}\mbox{}\\ B\hspace{\stretch{1}}C% \hspace{\stretch{1}}D\\[-7pt] \mbox{}\hspace{\stretch{2.3}}% \mbox{}\upbracefill\mbox{}\\ \mbox{}\hspace{\stretch{1}}E% \hspace{\stretch{2}}F% \hspace{\stretch{1}}\mbox{}\\[-5pt] \mbox{}\hspace{\stretch{0.5}}% \rightarrowfill% \hspace{\stretch{0.5}}\mbox{}\\
A

Antes de continuar es preciso reasignar los valores por defecto a:

\parfillskip
es

(para evitar que las lneas cortas, como la ltima de este prrafo, se estiren a la derecha), esto

\parfillskip = 0pt plus 1fil


y tambin a cualquier

\parindent (para que se sangre automticamnete el inicio de


prrafo), esto es

\parindent=18pt
Finalmente, describiremos los comandos respectivamente, colocan Objeto en una 196

\rlap{Objeto} y \llap{Objeto}; caja de anchura 0pt (por lo que

el cursor no se mueve), con el objeto saliendo hacia la derecha o izquierda de la caja. Por ejemplo

Tachamos la palabra izquierda% \llap{\rule[2.5pt]{48pt}{0.4pt}} y seguimos escribiendo.\par \hfil \rlap{uno}\llap{dos}\vrule \par \hfil \llap{dos}\rlap{uno}\vrule
Tachamos la palabra izquierda y seguimos escribiendo. dosuno dosuno

5 Programacin con TEX


5.1 Otro modo de denir comandos
Anteriormente hemos visto cmo denir nuevos comandos mediante la utilizacin de los comandos tipo

\newcommand

A de L T EX. Existe un modo

alternativo, empleando comandos de ms bajo nivel de T EX (de hecho,

A ste es el modo estndar de construir macros L T EX). Para ello existe el


comando

\def,

con la siguiente sintaxis

\def\NuevoComando#1...#9{Definicion}
donde

\NuevoComando es el nombre del nuevo comando, #1...#9 los argu-

mentos de que depende (hasta 9), y entre llaves su denicin. Por ejemplo, denamos

\def\ecuacion#1#2{\ensuremath{#1_1^2+#1_2^2+\cdots+#1_#2^2=1}}
2 2 2 \ecuacion{z}{5} produce z1 + z2 + . . . + z5 . Ntese el uso del comando \ensuremath{Formula}, que tiene como resultado asegurar que la expresin Formula se ejecuta dentro del modo matemtico (por lo cual, no es necesario abrir y cerrar signos $ antes y despus del comando \ecuacion).
tras lo cual, 197

El comando limitadores de

\def, a diferencia del \newcommand, permite elegir los delos argumentos (que con \newcommand siempre deben ser

llaves, o corchetes para los argumentos optativos). Adems, es incluso posible prescindir de las llaves al escribir los argumentos del comando; por ejemplo, en el caso anterior podramos haber escrito mismo resultado que

\ecuacion z5 con el

\ecuacion{z}{5}: TEX lee secuencialmente los argu#1, #2,... #n.

mentos tras el nombre del comando. Para elegir delimitadores especiales entre los argumentos, simplemente los incluimos entre Por ejemplo, redenimos

\ecuacion

como

\def\ecuacion#1;#2:{\ensuremath{#1_1^2+#1_2^2+\cdots+#1_#2^2=1}}
lo cual indica que el primer argumento debe terminar con   y el segundo

: 2 . . . + z5 .

con  . Ahora debemos escribir

\ecuacion z;5:

para obtener

2 2 z1 + z2 +

5.2 Deniciones globales


Todos los comandos creados con

\newcommand, \providecommand o \def, (o redenidos con \renewcommand) son locales ; es decir, si estn denidos \prueba
dentro del

dentro de un grupo, su accin estar restringida a se grupo. En el ejemplo siguiente se ve cmo la redenicin del comando entorno itemize carece de efecto fuera de ste

\def\prueba{Prueba 1} \begin{itemize} \def\prueba{Prueba 2} \item \prueba \end{itemize} \prueba


Prueba 2

Prueba 1 Si queremos denir un comando global (con efecto fuera del grupo donde es denido) se puede utilizar cualquiera de estas dos alternativas 198

\global\def\NuevoComando#1...#9{Definicion} \gdef\NuevoComando#1...#9{Definicion} \global a la denicin, o bien usamos el comando \gdef. El comando \global tambin puede usarse paes decir, o bien anteponemos el comando ra hacer globales otro tipo de asignaciones de tipo local, como por ejemplo las modicaciones de longitudes (

\setlength

\addtolength).

\def\prueba{Prueba 1} \begin{itemize} \global\def\prueba{Prueba 2} \item \prueba \end{itemize} \prueba


Prueba 2

Prueba 2

5.3 El comando \let


Imaginemos que denimos un comando en funcin de otros comandos, y los comandos en los que se basa cambian. Este cambio se trasladar entonces al nuevo comando

\noindent\def\uno{1}Uno: \uno \\ \def\dos{\uno\uno} Dos: \dos \\ \def\uno{uno} Uno: \uno \ Dos: \dos
Uno: 1 Dos: 11 Uno: uno Dos: unouno En ocasiones, puede necesitarse denir un comando que sea independiente de los cambios que se produzcan en los comandos sobre los que est denido. Con esta utilidad est construido el comando

\let, que saca una

copia de un comando para que funcione siempre de la misma manera, con 199

independencia de redeniciones posteriores de comandos. Se utiliza con la sintaxis

\let\NuevoComando=\ComandoExistente
que puede usarse tambin en caso de comandos con argumentos (cuidando de que el comando antiguo y su copia tengan el mismo nmero de argumentos). El ejemplo siguiente ilustra el funcionamiento de

\let

\noindent\def\uno{1}Uno: \uno \\ \def\dos{\uno\uno} Dos: \dos \\ \let\UNO=\uno \def\DOS{\UNO\UNO} \def\uno{uno} Uno: \uno \\ Dos: \dos \ \ DOS: \DOS
Uno: 1 Dos: 11 Uno: uno Dos: unouno DOS: 11

5.4 Manipulacin de contadores y longitudes a travs de TEX


Veamos ahora cmo se trabaja con contadores y longitudes desde el punto de vista de T EX. Se pueden realizar operaciones con tres tipos de magnitudes

Contadores: Corresponden a registros tipo count, y se denen con el comando

\newcount\NuevoContador;

el registro puede almacenar n-

meros enteros entre -214783647 y +214783647.

Longitudes rgidas: Corresponden a registros tipo dimen, y se denen


con el comando

\newdimen\NuevaLongitud.

Longitudes elsticas: Existen dos tipos de registro


skip:
se denen con

\newskip\NuevaLongitud\verb.

muskip: anlogo de longitud elstica, que se utiliza slo en el modo matemtico; se denen con \newmuskip\NuevaLongitud.
200

Existen comandos para realizar las cuatro operaciones aritmticas bsicas (suma, resta, multiplicacin y divisin) con todos los registros anteriores (ambas sintaxis, con

advance

advance by,

etc..., son equivalentes)

\advance\NombreRegistro Numero \advance\NombreRegistro by Numero donde Numero debe ser una


longitud, si tratamos con registros de tipo longitud, o un nmero entero, si trabajamos con un contador.

\multiply\NombreRegistro Numero \multiply\NombreRegistro by Numero


siempre un entero.

donde

Numero

debe ser

\divide\NombreRegistro Numero \divide\NombreRegistro by Numero donde Numero tambin debe


de ser un entero. En el caso de un contador, se almacenar la parte entera de la divisin; en el caso de longitudes, stas se transforman primero a unidades

sp

(la ms pequea de T EX;

1 sp = 65536 pt)

y el resultado se redondea a un mltiplo entero de sta unidad.

Veamos unos ejemplos

\newskip\LongElastica \LongElastica=% 10pt plus 1fill minus 2fill% \par \the\LongElastica \advance\LongElastica by % 5pt plus 3fill minus 1fill% \par \the\LongElastica \multiply\LongElastica by 3% \par \the\LongElastica \divide\LongElastica by 2 \par \the\LongElastica
10.0pt plus 1.0ll minus 2.0ll 15.0pt plus 4.0ll minus 3.0ll 201

45.0pt plus 12.0ll minus 9.0ll 22.5pt plus 6.0ll minus 4.5ll

En el caso de longitudes rgidas, existe un forma alternativa de multiplicarlas por un factor: y

\Longitud1=Numero\Longitud2 (donde \Longitud1

\Longitud2 pueden ser la misma). Este procedimiento de multiplicacin \Longitud1


sea elstica, la accin anterior la

tiene la ventaja de que pueden utilizarse factores no enteros (0.5, 1.25, etc...). En el caso de que

transforma automticamente en una rgida; por ejemplo, tras

\LongElastica=10pt plus 1fill minus 2fill \LongElastica=2.5\LongElastica \the\LongElastica


da como resultado 22.5pt plus 6.0ll minus 4.5ll.

El siguiente ejemplo ilustra cmo manejar contadores, deniendo un nuevo comando

\hora

que calcula la hora, a partir del contador

\time,

que almacena el nmero de minutos despus de la medianoche (probar como ejercicio que el comando funciona correctamente)

\def\hora{\newcount\horas \newcount\minutos % (Definimos dos nuevos contadores) \horas=\time \global\divide\horas by 60 % (la parte entera de la division produce la hora) \minutos=\horas \multiply\minutos by 60 \advance\minutos by -\time \global\multiply\minutos by -1 % (multiplicamos las horas por 60, restamos \time, % y cambiamos de signo para obtener los minutos) \the\horas:\ifnum\minutos<10 0\fi\the\minutos} % (se imprime horas:minutos, con un cero extra si minutos < 10)

6 Manejo de cajas en TEX


Cuando T EX compone un documento, trabaja manejando diversos objetos como si fuesen cajas con tres diferentes dimensiones (altura, anchura y 202

profundidad), medidas con respecto a un punto de referencia. Por ejemplo, las lneas se componen alineando las cajas asociadas a cada carcter, segn la lnea base. Entonces, cada lnea se convierte a su vez en una caja, que se alinea (ahora verticalmente), y as sucesivamente hasta que se construye la pgina. Existen tres modos fundamentales de trabajo de T EX, a la hora de componer cajas

Modo horizontal: TEX agrupa cajas alinandolas horizontalmente unas


junto a otras, a lo largo de la lnea base, creando una nueva caja de anchura igual a la suma de anchuras, y de altura y profundidad iguales a la mayor de las alturas y profundidades de las cajas, respectivamente. Existen dos sub-modos diferentes dentro del modo horizontal Ordinario: Es el caracterstico cuando se construyen prrafos; se alinean caracteres horizontalmente, y despus se va cortando para formar lneas de la misma anchura. T EX estira o contrae los espacios para optimizar el resultado nal. Restringido: En este modo, slo se alinean las cajas horizontalmente, sin posibilidad de dividir la caja resultante en cajas ms pequeas. Dentro de este modo, no se entienden los comandos asociados a saltos de lnea, prrafo, etc...

Modo vertical: Se agrupan las cajas verticalmente unas sobre otras (manteniendo los puntos de referencia en la misma vertical), creando una caja con anchura igual a la mayor de las anchuras de las subcajas, y con altura total (suma de altura y profundidad) igual a la suma de alturas y profundidades de las subcajas. Al igual que para el modo horizontal, existen dos sub-modos Ordinario: Es el modo por defecto, en el cual T EX va recogiendo todas las cajas creadas en los modos horizontal y matemtico, para empaquetarlas verticalmente. Interno: Se limita a apilar verticalmente cajas, creando una caja indivisible (por ejemplo, cuando se construyen las columnas de una tabla o matriz). 203

Modo matemtico: Se abre para escribir smbolos o frmulas matemticas, existe en dos variantes, ordinario (o tipo prrafo) y resaltado (para frmulas centradas y resaltadas), las cuales ya se han descrito en la seccin correspondiente.

En los sucesivo, discutiremos algunos comandos de T EX tiles para crear y colocar cajas (que por supuesto, pueden ser utilizados dentro de

A A X, como ya se ha repetido, cualquier documento L T EX; al n y al cabo, L T E


no es ms que un conjunto de macros construidas a partir de T EX, que es el lenguaje de bajo nivel que realmente compila el documento fuente).

6.1 Cajas horizontales: \hbox


El comando

\hbox{Material} crea cajas indivisibles, en las que el conte-

nido se escribe de izquierda a derecha. El argumento Material es procesado en modo horizontal restringido, y puede estar compuesto de varias cajas. En realidad, el comando

\mbox

A de L T EX no es ms que

\hbox

\def\mbox#1{\leavevmode\hbox{#1}}
(el comando

\leavevmode

se asegura de salir del modo vertical, si

estuvisemos dentro de l). Cada caja creada mediante diente con el gusto

\hbox tiene una anchura natural depende la anchura del Material incluido en ella. Al igual que ocurra comando \makebox, es posible cambiar dicha anchura a nuestro

\hbox to Ancho{Material} Crea una caja de anchura Ancho y coloca en ella el material de izquierda a derecha. Si la anchura del material es menor que

Ancho,

se estirarn los espacios elsticos para ocupar

todo el espacio disponible, mientras que si es mayor, el material sobresaldr de la caja (con lo que se sobreescribir en texto que venga a continuacin); vase el siguiente ejemplo (donde se aade n de remarcar las cajas

\fbox

\parindent 0pt Normal:


204

\fbox{\hbox{caja ejemplo}} (texto) \\ Estiramos: \fbox{\hbox to 3cm{caja ejemplo}} (texto) \\ Contraemos: \fbox{\hbox to 1cm{caja ejemplo}} (texto)
Normal: caja ejemplo (texto) Estiramos: caja ejemplo (texto)

Contraemos: caja ejemplo (texto)

\hbox spread Ancho{Material} Es anlogo al anterior, con la diferencia de que aumenta (o disminuye si el valor es negativo) la anchura natural de la caja en la cantidad

Ancho

\parindent 0pt Estiramos: \fbox{\hbox spread 5mm{caja ejemplo}} (texto) \\ Contraemos: \fbox{\hbox spread -5mm{caja ejemplo}} (texto)
Estiramos: caja ejemplo (texto)

(texto) Contraemos: caja ejemplo

Con lo ya visto, podemos ahora entender la denicin de los comandos

\leftline, \centerline, \rlap,

etc..., que muestran la potencia de

combinar las manipulaciones de cajas y longitudes

\def\leftline#1{\hbox to \hsize{#1\hss}} \def\rightline#1{\hbox to \hsize{\hss#1}} \def\centerline#1{\hbox to \hsize{\hss#1\hss}} \def\rlap#1{\hbox to 0pt{#1\hss}} \def\llap#1{\hbox to 0pt{\hss#1}}
donde recordemos que el comando

\hss equivale a \hspace{0pt plus 1fil minus 1fil}; la longitud \hsize almacena la anchura del texto: normalmente equivale a \textwidth, aunque puede modicarse a voluntad. 205

6.2 Cajas verticales: \vbox


Las cajas verticales se construyen con el comando

\vbox{Material}; este

comando inicia el modo vertical interno, aunque es posible que T EX ya est en se modo antes de invocar el comando. El comportamiento del comando depende de si la caja vertical contiene texto en el nivel ms alto, o si contiene el comando casos la anchura ser la de ejemplos

\vrule (explicado ms adelante); en ambos una lnea de texto (\hsize). Veamos algunos

\parindent 0pt \fbox{\vbox{Texto de prueba \hbox{Una caja} \hbox{Otra caja}}} \fbox{\vbox{\hbox{Una caja} Texto de prueba \hbox{Otra caja}}} \fbox{\vbox{\hbox{Una caja} \hbox{Otra caja} \hbox{Otra caja mas}}} \fbox{\vbox{\hsize 4cm Texto de prueba \hbox{Una caja} \hbox{Otra caja}}} \par % Ntese la diferencia entre % modos horizontal y vertical: \fbox{\vbox{Texto de prueba}} \par \fbox{\vbox{\hbox{Texto de prueba}}}
Texto de prueba Una caja Otra caja Una caja Texto de prueba Otra caja Una caja Otra caja Otra caja mas Texto de prueba Una caja Otra caja

Texto de prueba Texto de prueba

Al igual que con las cajas horizontales, se puede jar de antemano la altura de una caja vertical con 206

\vbox to Alto{Material}
por

\vbox spread Alto{Material} \hbox


(cambiando

cuyo signicado es idntico a lo ya visto para

Ancho \vbox

Alto).

Es interesante remarcar la exibilidad y potencia del comando de T EX; a diferencia de lo que ocurre con

\hbox, no existen realmente coA mandos en L T EX con tanta capacidad; por ejemplo, \parbox o el entorno
minipage permiten jar la altura de la caja, pero adems requieren jar su anchura, lo cual puede ser un inconveniente. El comando

\vbox to Alto{Material} alinea la lnea base de la caja

global con la lnea base de la ltima caja (es decir, la inferior) incluida en la caja vertical. Existen tambin los comandos

\vtop to Ancho{Material}
con la lnea base (ATENCIN: del modo matemtico).

\vcenter to Ancho{Material}
slo se puede emplear dentro

que alinean, respectivamente, la parte superior y central de la caja total

\vcenter

\parindent 0pt \fbox{\vbox to 5mm{\hbox{Texto 1}}} \fbox{\vbox to 10mm{\hsize 3cm% \vfil\centerline{Texto 2}\vfil}} \fbox{\vtop to 5mm% {\vfil\hbox{Texto 3}}}
Texto 2 Texto 3

Texto 1

6.3 Moviendo cajas


Dependiendo del modo (horizontal o vertical) en el que nos encontremos, disponemos de diversos comandos para desplazar cajas. En el modo horizontal, podemos desplazar cajas verticalmente con

\raise Desplazamiento

\lower Desplazamiento
207

donde dos

Desplazamiento es cualquier longitud. De hecho, stos dos comanson esencialmente el mismo, ya que \raise D = \lower -D. Al usar

stos comandos, la lnea base queda inalterada, aunque la altura y profundidad pueden cambiar. La nueva altura y profundidad de la caja se calculan dependiendo de los desplazamientos. Vase el siguiente ejemplo, donde se remarca la lnea base con el comando

\hrule

Texto de prueba; Texto de prueba; Texto de prueba\\ \fbox{\hbox{\hbox to 0pt{\vbox{\hrule width 6cm}} \hbox{pepe} \lower3mm\hbox{pepe}\hbox{pepe}}}\ andres\ jaime\hspace{5mm} \fbox{\hbox{\hbox to 0pt{\vbox{\hrule width 6cm}} \hbox{pepe} \raise5mm\hbox{pepe} \hbox{pepe}}} \ andres \ jaime \\ Texto de prueba; Texto de prueba; Texto de prueba\\ \hrule
Texto de prueba; Texto de prueba; Texto de prueba pepe pepe pepe andres jaime pepe pepe pepe andres jaime

Texto de prueba; Texto de prueba; Texto de prueba

El comando

\kern

Longitud se utiliza con carcter general para des-

plazar cajas una cantidad Longitud (que puede ser negativa). La direccin del desplazamiento, horizontal o vertical, depende que en que modo est T EX trabajando; en el modo horizontal (en una caja

\hbox)

el desplaza-

miento es horizontal, mientras que en el modo vertical (en una caja

\vbox)

el desplazamiento es vertical. Veamos como ejemplo el cdigo T EX para obtener el logotipo  T EX

\hbox{T\kern-.1666em\lower.5ex\hbox{E}\kern-.125ex X}
Para mover horizontalmente las componentes de una caja vertical se utilizan los comandos

\vbox

\moveleft Desplazamiento

\moveright Desplazamiento

Es interesante hacer notar que la anchura de la caja tras los desplazamientos slo se modica con desplazamientos a la derecha, y no a la 208

izquierda: la anchura se calcula comenzando en el punto de referencia y extendindose hacia la derecha hasta la parte derecha de la componente ms alejada; por ejemplo (ntese cmo ahora se utiliza car las cajas, en vez de alrededor)

\fbox,

que dejaba un

\frame para remarpequeo espacio \fboxsep

\frame{\vbox{\hbox{\frame{T}}% \hbox{\frame{E}}\hbox{\frame{X}}}} \hspace{1cm}\frame{\vbox{\moveleft10pt% \hbox{\frame{T}}\moveright10pt\hbox% {\frame{E}}\hbox{\frame{X}}}}% \hspace{1cm} \frame{\vbox{\hbox{\frame{T}}% \moveleft12pt\hbox{\frame{E}}% \moveright12pt\hbox{\frame{X}}}}


T E X X T E E X T

6.4 Modicando, creando y reutilizando cajas


A Hemos visto ya el modo de guardar y reutilizar cajas en L T EX; veremos
ahora el modo, ms general, de manipularlas a travs de T EX. Podemos declarar una caja nueva con el comando cual se almacena una caja en la variable

\newbox\NombreCaja, \NombreCaja con

tras lo

\setbox\NombreCaja=Caja
A diferencia del comando con el comando

\sbox,

que slo maneja cajas horizontales,

\setbox

Caja puede ser tanto horizontal como vertical.

Otra forma de declarar cajas es hacer uso de los registros (256) de los que T EX dispone para guardar cajas. Estn numerados de 0 a 255, estando el nmero 255 reservado para la caja de la pgina. Podramos entonces, en vez de declarar primero cajas numeradas con 209

NombreCaja

con

\newbox,

crear directamente

\setbox1=Caja1
reemplazar

\setbox2=Caja2
por 1, 2, ...)

etc...

(tras lo cual, para todos los comandos descritos a continuacin, se debera

\NombreCaja

Para insertar dentro de un documento los contenidos de una caja, se emplean los comandos

\box\NombreCaja

Tras ser usado, borra el contenido de la caja. Usa el contenido de la caja sin borrarlo.

\copy\NombreCaja
Por ejemplo duce A

\setbox1=\hbox{A} \fbox{\box1} \fbox{\box1} pro, mientras que \setbox1=\hbox{A} \fbox{\copy1} \fbox{\copy1}


A.

produce

Para una caja

\NombreCaja dada, las siguientes longitudes almacenan, \ht\NombreCaja \dp\NombreCaja

respectivamente, los valores de anchura, altura y profundidad de la caja

\wd\NombreCaja

\newbox\NuevaCaja y asignamos \setbox\NuevaCaja=\hbox{A B C} tras lo cual, \the\wd\NuevaCaja


Vase el siguiente ejemplo; denimos: produce 37.94351pt (la anchura de la caja). Podemos estirar la caja con

\wd\NuevaCaja=2\wd\NuevaCaja tras lo cual \frame{\copy\NuevaCaja}


produce A B C . Los siguientes comandos son anlogos a

\box

\copy,

pero, en vez

de simplemente escribir el contenido de la caja, las desmembran en sus subcomponentes en el momento de ser usadas. Hay versiones horizontal y vertical, as como versiones  o no la caja tras ser usada

\box

y 

\copy, que respectivamente vacan

\unhbox\NombreCaja \unhcopy\NombreCaja \unhbox

\unvbox\NombreCaja \unvcopy\NombreCaja

El siguiente ejemplo ilustra la diferencia entre simplemente copiar una caja, y desmembrarla con

\setbox1=\hbox{A B} \setbox2=\hbox to 2.0\wd1{\unhcopy1}


210

\frame{\copy2} \setbox3=\hbox{A B} \setbox4=\hbox to 2.0\wd3{\copy3} \frame{\copy4}


A B A B

en el primer caso, tras desmembrar la caja, al construir una caja de anchura doble a la primitiva los elementos se reparten tratando de llenar toda la caja; en el segundo, al estar la caja intacta, los elementos se mantienen a la derecha de la caja

\box4,

que contiene a

\box3.

6.5 Rayas horizontales y verticales


En T EX se pueden utilizar dos tipos de rayas o cajas negras; las horizontales,

\hrule,

y las verticales,

especicar tres dimensiones:

\vrule. Para cada una de ellas Anchura, Altura y Profundidad

se pueden

\hrule height Altura width Anchura depth Profundidad \vrule height Altura width Anchura depth Profundidad
puede omitirse cualquiera de estos tres parmetros, en cuyo caso T EX asignar valores por defecto

Altura 0.4 pt y Profundidad 0 pt, si la raya es horizontal (\hrule). Anchura 0.4 pt,
si la raya es vertical (

\vrule).

El resto de dimensiones se obtiene extendiendo la raya indenidamente hasta completar el tamao de la caja que la contiene.

La diferencia esencial entre

\hrule \vbox,

\vrule

reside en que

\hrule

es material vertical, por lo que slo puede ser utilizado entre prrafos o dentro de una caja vertical mientras que

\vrule

es material

horizontal, por lo que slo puede utilizarse dentro de un prrafo o de una caja horizontal

\hbox.

\hbox{Ejemplo \vrule width 2pt\vbox to


211

25pt{linea \par vertical}} \vspace{3mm} \vbox{\hbox to 4cm{Otro ejemplo} \kern 1mm\hrule height 1pt\kern 1mm \hbox to 3cm{linea horizontal}}
linea Ejemplo Otro vertical ejemplo

linea horizontal

\hbox{\vbox{\hbox to 25mm{\hfil% \hbox{Texto 1}\hfil}\kern2pt\hrule}% \vrule \lower7.5mm\vbox to 15mm{\hrule% \kern-11pt\hbox to 25mm{\hfil% \hbox{Texto 2}\hfil}\vfil\hbox to 25mm{\hfil\hbox{Texto 3}\hfil}% \kern2pt\hrule}}
Texto 2 Texto 1 Texto 3

7 Repeticin de objetos
Veremos ahora otro modo de repetir objetos, ligeramente diferente del comando

\multiput

ya visto. En vez de proporcionar el nmero de objetos

a repetir, puede interesarnos llenar un cierto espacio, de longitud ja o variable, con copias de un objeto. Mediante el comando

\leaders se pueden

obtener copias de un objeto en tal forma. Para ello, debemos especicar el objeto a copiar y el espacio que debe ser completado con copias de tal objeto. La sintaxis del comando es la siguiente

\leaders Objeto \hskip Longitud


donde hay que tener en cuenta que

Objeto debe ser una caja, y Longitud


o

puede ser cualquier longitud (incluyendo elsticas). Se puede reemplazar

\hskip 1fil
ejemplo

por simplemente

\hfil,
212

\hskip 1fill

por

\hfill.

Por

\noindent\null\leaders\hrule\hfill \null\\[2mm] \null\leaders\hbox{/\textbackslash}% \hskip.4\hsize\null\\[2mm] \hbox to 4cm{\leaders\hbox{\frame{\hbox to 10pt{\vbox to 10pt{}}} }\hfill}

/\/\/\/\/\/\/\/\/\/\/\/\

Es importante tener en cuenta que es necesario marcar los puntos

\leaders, sobre todo si estamos utilizando longitudes elsticas. Es por eso que se utiliza en el ejemplo anterior \null (otras posibilidades equivalentes seran \mbox{} o \kern0pt).
entre los que acta el comando En el caso de que el objeto a repetir no sea un mltiplo entero del tamao de la caja que contiene a las copias del objeto, aparecer cierta asincrona. Para solucionar esto, se dispone de otras dos variantes de

\leaders

para repetir un objeto

\cleaders Objeto \hskip Longitud \xleaders Objeto \hskip Longitud


mientras que

\leaders aparta el espacio sobrante a la derecha, \cleaders

reparte el espacio sobrante a ambos lados (centrando las copias del objeto en la caja);

\xleaders distribuye el espacio sobrante entre cada copia del

objeto, ajustando las copias del objeto a la caja; por ejemplo

\frame{\hbox to 4cm{\leaders% \hbox{$\bigotimes$}\hfill}}\par \frame{\hbox to 4cm{\cleaders% \hbox{$\bigotimes$}\hfill}}\par \frame{\hbox to 4cm{\xleaders% \hbox{$\bigotimes$}\hfill}}


213

De igual manera a lo ya visto, se pueden repetir objetos en la direccin vertical; para ello, simplemente se cambia el segundo argumen-

\leaders (\vskip Longitud).


to del comando

de horizontal (

\hskip Longitud)

a vertical

8 Sistematizando tareas
Veremos ahora una serie de comandos tiles para sistematizar tareas; imaginemos que cada vez que se inicia un prrafo, frmula, caja, ..., queremos que se ejecuten una serie de comandos. Para ello, se tienen las siguientes posibilidades

\everypar{Comandos} Antes de empezar a dar formato a cada prrafo, se ejecutan Comandos. Veamos un ejemplo, en el que denimos un nuevo contador prrafo, y para cada prrafo, se le pone como ttulo Prrafo n en negrita y centrado

\parindent 0pt \parskip 10pt \newcounter{parrafo} \setcounter{parrafo}{0} \everypar{\addtocounter{parrafo}{1} \centerline{\bfseries Prrafo % \theparrafo}\\[1mm]} Esto es un primer prrafo de ejemplo; en el cdigo anterior...\par ...se puede ver cmo incrementamos el valor del contador \texttt{parrafo al empezar cada prrafo...\par ...y l recuperamos, para imprimirlo, con el comando \verb@\theparrafo@.

Prrafo 1
214

Esto es un primer prrafo de ejemplo; en el cdigo anterior...

Prrafo 2
...se puede ver cmo incrementamos el valor del contador empezar cada prrafo...

parrafo

al

Prrafo 3
...y lo recuperamos, para imprimirlo, con el comando

\theparrafo.

\everymath{Comandos}
do texto).

Anlogo a

\everypar;

se ejecutan los co-

mandos cada vez que entremos en modo matemtico ordinario (o mo-

\everydisplay{Comandos}

En este caso, los comandos se ejecutan

cada vez que se abre el modo matemtico resaltado. Imaginemos que queremos que todas las frmulas resaltadas se escriban en color rojo; para conseguirlo, simplemente se puede declarar

\everydisplay{

\color{red}}. \everyhbox{Comandos}
( y

\everyvbox{Comandos}

Ejecutan los co-

mandos cada vez que comienze una caja horizontal (

\hbox) o vertical

\vbox),

respectivamente.

9 Condicionales y bucles
El compilador T EX posee amplias capacidades a la hora de programar diversas acciones. Adems de poder manejar diversos registros (contadores, longitudes, cajas) con total exibilidad, su potencia se ve reforzada al ser posible incluir bucles y condicionales dentro de un documento. Un condicional es una estructura de control que elige entre diversas acciones en funcin del valor de una variable lgica; su forma general es

IF <Test> [Instrucciones A] ELSE [Instrucciones B] END IF


lo cual signica que, de cumplirse la condicin

<Test>,

se ejecutarn las

instrucciones  , y de no cumplirse, las instrucciones  . En lenguaje T EX, el condicional se escribe 215

\if<Test> [Parte A] \else [Parte B] \fi


aunque podemos prescindir de cualquiera de las partes ( simplemente

B),

y tener

\if<Test> [Parte A] \fi

\if<Test> \else [Parte B] \fi

(el ltimo, correspondera a una versin de negacin del condicional). Los condicionales pueden anidarse sin problemas; cada que corresponde con el ms reciente

\fi

se asume

\if. A continuacin describiremos al<Test>

gunos de los 17 condicionales que estn denidos en T EX, correspondientes a diversos formatos de la condicin

\ifnum Numero1 Relacion Numero2 Relacion igual a <, > =. Como ejemplo, denimos un contador \cuatrodigit, que imprime
Se utiliza para comparar nmeros enteros, con nmeros es formato de cuatro dgitos, con independencia de su tamao

\def\cuatrodigit#1{% \ifnum #1<1000 0\fi \ifnum #1<100 0\fi \ifnum #1<10 0\fi #1}
tras lo cual

\cuatrodigit{8} - \cuatrodigit{18} \cuatrodigit{198} - \cuatrodigit{1238}


produce: 0008 - 0018 - 0198 - 1238.

\ifodd Numero
sirve para comprobar si un nmero entero es impar. En el caso de que queramos analizar el valor de un determinado contador, recordemos que debemos sustituir

Numero

por

\value{NombreContador},

si es-

A tamos trabajando con un contador denido en L T EX. Por contra, si


el contador ha sido denido en T EX(con perar el valor numrico con

\newcount), \the\NombreContador o
Por ejemplo, compilando 216

podemos recu-

\number\NombreContador.

Esta pgina es \iffodd\value{page} impar \else par\fi


obtendremos Esta pgina es impar, si es impar, o Esta pgina es par si es par.

\ifdim Dimension1 Relacion Dimension2


se utiliza para comparar dos longitudes. Como ejemplo, vamos a construir un comando que crea una caja enmarcada con un texto en tamao

\huge

(que ser el primer argumento del comando) y un texto

de leyenda, que se colocar centrada si la longitud de la leyenda es menor que la del texto principal, o en estilo prrafo si es mayor

Juan y Ana Juan y Ana


necesitan

\newlength{\anchura} \def\textoresaltado#1#2{% \setbox1=\hbox{\fbox{\huge#1}} \settowidth{\anchura}{#2}\vbox{\copy1% \vspace{6pt}\ifdim\anchura<\wd1\hbox to\wd1{\hss#2\hss}\else% \hbox{\parbox{\wd1}{#2}}\fi}} \textoresaltado{Juan y Ana}{quieren un coche}\par\medskip \textoresaltado{Juan y Ana}{necesitan comprarse un coche nuevo porque el antiguo se les ha quedado viejo}

quieren un coche

com-

prarse un coche nuevo porque el antiguo se les ha quedado viejo

\ifhmode

\ifvmode
217

\ifmmode

sirven para comprobar, respectivamente, si estamos dentro del modo

horizontal, vertical, o matemtico (en cada caso, no se distingue entre los diferentes sub-modos). Por ejemplo, el comando

\ensuremath

de

A L T EX est denido como

\newcommand{\ensuremath}[1]{\ifmmode #1\else $#1$\fi} \ifcase Numero [Caso n=0] \or [Caso n=1] \or ... [Caso n=M] \else [Caso n=Otro Numero] \fi
sirve para ejecutar diferentes acciones, de acuerdo a los valores que tome la variable si

Numero

(que puede, por ejemplo, ser un contador);

n=0

se ejecutaran las primeras instrucciones, si

n=1

las, segundas,

y as sucesivamente hasta trucciones despus de que

M; opcionalmente podemos colocar ms ins\else, que se ejecutarn si Numero es menor

0 o mayor que M. Vase el siguiente ejemplo, que traduce nmeros

naturales a notacin hexadecimal

\def\hexadec#1{\ifcase #1 % 0\or 1\or 2\or 3\or 4\or % 5\or 6\or 7\or 8\or 9\or % A\or B\or C\or D\or E\or F\fi}
Comando Resultado 7 C

\hexadec{7} \hexadec{12}

\ifx Argumento1Argumento2
compara dos argumentos entre s, siendo verdadero si son iguales y falso si son distintos.

Argumento1

Argumento2

pueden ser carac-

teres, cajas, comandos... Es importante puntualizar que, al comparar cadenas de caracteres o cajas, es necesario con anterioridad incluir tales contenidos en sendos comandos, que sern despus comparados. Por ejemplo

\def\a{Hola} \def\b{Hola} \def\c{hola} \def\d{H} \def\e{\hbox{hola}} \def\f{\hbox{hola}}


218

Comparaci\'{o}n 1: \ifx AA iguales \else distintos \fi\\ % (caracteres aislados son comparables) Comparacin 2: \ifx \a\b iguales \else distintos \fi\\ Comparacin 3: \ifx \a\c iguales \else distintos \fi\\ Comparacin 4: \ifx H\d iguales \else distintos \fi\\ Comparacin 5: \ifx \c\e iguales \else distintos \fi\\ Comparacin 6: \ifx \e\f iguales \else distintos \fi\\
Comparacin 1: iguales Comparacin 2: iguales Comparacin 3: distintos Comparacin 4: distintos Comparacin 5: distintos Comparacin 6: iguales

A L T EX tambin proporciona algunos condicionales predenidos, que es


bueno conocer

\if@twoside twoside
o

\if@twocolumn
respectivamente, y falsos en caso contrario.

son verdaderos si se est procesando el documento con las opciones

twocolumn

\@ifnextchar Caracter{ParteA}{ParteB} Se procesa ParteA en caso de que el siguiente caracter coincida Caracter, y ParteB en caso contrario. Este condicional es muy

con uti-

A lizado en L T EX en los comandos que utilizan argumentos opcionales,


caracterizados por ir entre corchetes. Veamos un ejemplo de cmo denir un comando con dos argumentos, uno de ellos optativo; queremos recuadrar un texto dado con una lnea de grosor variable, defecto 219

0.4 pt por

\def\mirecuadro[#1]#2{{\fboxrule#1\fbox{#2}}} \makeatletter \def\recuadro{\@ifnextchar[{\mirecuadro}{ \mirecuadro[0.4pt]}} \makeatother


Tras esto,

\recuadro{Prueba}

resultar en

Prueba , mientras que deberemos escribir

si queremos cambiar el grosor de lnea a

1pt,

\recuadro[1pt]{Prueba} Prueba . Por qu los comandos \makeatletter y \makeatother? La razn est en que, por defecto, est prohibido utilizar el smbolo @ en los comandos dentro de
un documento; ste comando se utiliza frecuentemente en las clases de documentos o paquetes, por lo que se restringe su uso para evitar coincidencias casuales con comandos ya denidos. El comando

\makeatletter levanta \makeatother la vuelve

esta prohibicin, mientras que el comando a recuperar.

Podemos utilizar lo aprendido en el ejemplo anterior para construir comandos ms complicados. Por ejemplo, procedamos a modicar el comando

\recuadro

(renombrndolo a

\Recuadro)

para que ahora admita

dos argumentos optativos, segn la sintaxis

\Recuadro[Grosor](Color){Texto} Grosor la anchura del recuadro (0.4pt por defecto), y Color su color (rojo por defecto). Utilizando recursivamente el condicional \@ifnextchar
siendo se obtiene el resultado deseado.

\makeatletter \def\Mirecuadro(#1)#2{{\color{#1}\fbox{\color{black}#2}}} \def\Mirecuadroaux[#1]{\fboxrule#1\@ifnextchar(% {\Mirecuadro}{\Mirecuadro(red)}} \def\Recuadro{\@ifnextchar[{\Mirecuadroaux}{ \Mirecuadroaux[0.4pt]}} \makeatother


220

\Recuadro{Hola} Hola \Recuadro[2pt](blue){Hola}

Hola

9.1 Nuevos condicionales


Volviendo a T EX, veremos ahora la forma de denir nuevos condicionales con el comando

\newif,

de sintaxis

\newif\ifNombre
donde

Nombre corresponder al nombre del nuevo condicional. El comando \newif se encarga de denir tres nuevos comandos \Nombretrue
Asigna a la variable lgica

Nombre

el valor verdadero. el valor falso.

\Nombrefalse

Asigna a la variable lgica

Nombre

\ifNombre... \else... \fi Nuevo condicional, que ejecuta una accin u otra segn el valor que se le haya asignado anteriormente a la variable lgica

Nombre.

Como ejemplo, denamos un nuevo entorno ocultar, de forma que el texto dentro de tal entorno se muestre o no en el documento nal, dependiendo del valor de una variable lgica

\newbox\boxocultar \newif\ifocultar \newenvironment{ocultar} {\setbox\boxocultar\vbox\bgroup} {\egroup\ifocultar\else\par\unvbox\boxocultar\fi}


tras esta denicin, si se coloca el comando

\ocultartrue,

todo el texto

dentro de entornos ocultar que estn a continuacin de este comando no se ver en el documento nal; en cambio, sustituyndolo por

\ocultarfalse,

se reestablecer el texto dentro de tales entornos, por ejemplo

\ocultartrue \begin{ocultar} texto de prueba que no se ve


221

\end{ocultar} \ocultarfalse \begin{ocultar} texto de prueba que si se ve \end{ocultar}


texto de prueba que si se ve La utilidad de ste entorno puede estar, por ejemplo, en la inclusin de notas y comentarios que puede convenirnos suprimir en el documento nal; aadir un comando

\ocultartrue es ms rpido que comentar lneas una

por una. Merece la pena analizar un poco la denicin del nuevo entorno 1)

\newbox\boxocultar Dene una nueva caja para almacenar el texto


oculto.

2)

\setbox\boxocultar\vbox\bgroup Abre una caja vertical y la almacena en \boxocultar; ntese el empleo del comando \bgroup: ste
comando es anlogo a  {, es decir, es un delimitador de grupo. La sutileza radica en que, de usar directamente  {, habra un conicto con la sintaxis del comando

\newenvironment
Tras ha-

3)

{\egroup\ifocultar\else\par\unvbox\boxocultar\fi}
dentro del entorno, se cierra con

ber abierto la caja vertical, y haberse rellenado con todo el texto

\egroup (anlogo a  }); recordemos

que todo lo que iba entre el primer conjunto de llaves corresponde a

A las instrucciones L T EX a ejecutar al entrar en el entorno, mientras


que este segundo conjunto de instrucciones corresponde a lo que debe hacerse al salir del entorno. Tras eso, se comprueba con

ifocultar

si el texto debe ocultarse, en cuyo caso, no se hace nada, y, en caso contrario, se deshace e imprime la caja

\boxocultar.

9.2 Bucles
Se realizan bucles con el comando

\loop ParteA \if... ParteB \repeat


donde

ParteA

ParteB

son conjuntos de comandos, y

\if

es cualquier

condicional, sin la correspondiente partcula 222

\fi.

T EX procesa primero

ParteA;

si la condicin es verdadera, procesa

ParteB,

y repite el proceso

comenzando de nuevo por

ParteA; si no, inmediatamente se sale del bucle. Denamos como ejemplo un comando que imprima los primeros n nmeros

naturales

\newcount\minum \def\numeros#1{\ifnum#1< 1% \else 1\minum=1\loop \advance\minum by 1% \ifnum\minum<#1, \the\minum\repeat\fi} \numeros{40}


1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40

A En L T EX estn predenidos bucles asociados a condicionales especcos, tiles para manejar nmeros y longitudes

\@whilenum{TestNum} \do {Accion} \@whiledim{TestLong} \do {Accion}


En ellos, se evala la relacin numrica

TestNum

TestLong

(compa-

racin de nmeros o longitudes, respectivamente); mientras sea verdadera se procesarn las instrucciones en

Accion,

terminando el bucle en el mo-

mento en que la relacin sea falsa. El siguiente ejemplo calcula la sucesin de todos los nmeros pares menores que uno dado

\newcount\cuenta \makeatletter \def\pares#1{% \minum=2\@whilenum\minum<#1\do {\the\minum, \advance\minum by 2}} \makeatother Los n\'{u}meros pares menores que 95 son: \pares{95}
223

Los nmeros pares menores que 95 son: 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94,

Tambin es posible denir bucles en los que la condicin de control sea un condicional

\ifNombre

denido en T EX con

\newif

\@whilesw\ifNombre\fi{Accion}
con lo que T EX procesar los comandos de

Accion hasta que el condicional for


/

\ifNombre

sea falso.

Finalmente, se pueden tambin construir estructuras 

next,

en

las cuales se ejecuta una serie de acciones para cada uno de los elementos de una lista. Se utiliza la sintaxis

\@for\Nombre:=\lista\do{Accion}
donde

\Nombre

es una variable (que no hace falta denirla previamente)

que va almacenando los diferentes elementos de una lista ( debe ser previamente denida con

\lista),

que

\def;

los elementos de la lista han de

estar separados entre s por comas. En el siguiente ejemplo, primeramente denimos a travs de T EX un comando

\longitud{Palabra} para contar \lista

el nmero de letras de una palabra, que luego utilizamos para crear un tabla con las longitudes de una lista de palabras almacenadas en

\newcount\nna \def\longitud#1{\nna=0% \expandafter\contar#1\end\number\nna} \def\contar#1{% \ifx#1\end\let\next=\relax \else\advance\nna by1 \let\next=\contar\fi\next} La longitud de la frase ``pepe tiene un coche'' es de \longitud{pepe tiene un coche} caracteres no blancos
La longitud de la frase pepe tiene un coche es de 16 caracteres no blancos 224

\def\lista{Pepe,Juan,Andr\'{e}s,Antonio} \begin{tabular}{l} Nombre y longitud \\ \hline \makeatletter \@for\nombre:=\lista \do{\hbox to 30mm{\nombre\hss}% \longitud{\nombre} \\ } \makeatother \end{tabular}
Nombre y longitud Pepe Juan Andrs Antonio 4 4 7 7

9.3 Otros ejemplos

Invertir una palabra


\def\Invertir#1{% \def\INV{}\INVCAD#1\end\INV}% \def\INVCAD#1{% \ifx#1\end\let\next=\relax \else\CONCAD#1% \let\next=\INVCAD\fi\next}% \def\CONCAD#1{\edef\INV{#1\INV}} \Invertir{Espejo}Espejo\par Curioso\Invertir{Curioso}
ojepsEEspejo CuriosoosoiruC 225

Nmeros primos
\newif\ifprime \newif\ifunknown % \newcount\n \newcount\p % \newcount\d \newcount\a % \def\primes#1{2,~3 % (#1 is at least 3) \n=#1 \advance\n by-2 % n more to go \p=5 % odd primes starting with p \loop\ifnum\n>0 \printifprime\advance\p by2 \repeat} \def\printp{, % we will invoke \printp if p is prime \ifnum\n=1 \fi \number\p \advance\n by -1 } \def\printifprime{\testprimality \ifprime\printp\fi} \def\testprimality{{\d=3 \global\primetrue \loop\trialdivision \ifunknown\advance\d by2 \repeat}} \def\trialdivision{\a=\p \divide\a by\d \ifnum\a>\d \unknowntrue\else\unknownfalse\fi \multiply\a by\d \ifnum\a=\p \global\primefalse\unknownfalse\fi}

Tras lo cual,

\primes{200}

calcula e imprime los 200 primeros nmeros

primos: 2, 3 , 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997, 1009, 1013, 1019, 1021, 1031, 1033, 1039, 1049, 1051, 1061, 1063, 1069, 1087, 1091, 226

1093, 1097, 1103, 1109, 1117, 1123, 1129, 1151, 1153, 1163, 1171, 1181, 1187, 1193, 1201, 1213, 1217, 1223.

227

4
1 Introduccin

La clase FcUnp

Cualquier estudiante de pregrado de la Facultad de Ciencias de la Universidad Nacional de Piura (FC-UNP) que desea redactar su tesis se encuentra con el inconveniente de generar, en formato adecuado, las primeras cinco pginas de la misma; as como, las pginas de la lista de contenidos, lista de guras, lista de tablas, anexos, apndices y resumen. Adems de la carencia de un adecuado editor de frmulas matemticas que son de uso comn a tales estudiantes.

Este trabajo presenta la clase

Fc Unp

que permite, al estudiante de

pregrado de la FC-UNP, redactar todo el trabajo tesis de acuerdo con el formato que exige el Reglamento de Tesis de dicha facultad. Adicionalmente, y dado que es requisito presentar un ejemplar de la tesis en formato virtual, la clase

Fc Unp

permite obtener un archivo PDF de la

A misma, mediante PDFL T EX. De este modo, el alumno que utilice la clase

Fc Unp para redactar su trabajo de tesis se concentrar nicamente en el


otra parte, si la FC-UNP ocializa el uso de dicha clase obtendr como

contenido del mismo, sin tener que invertir tiempo en darle formato. Por

benecio que la totalidad de los trabajos tendrn un formato nico y de nivel profesional. 228

2 Cmo invocar la clase FcUnp


La clase

A Fc Unp es una modicacin de la clase estndar book de L T EX.

Por tanto, es posible que el estudiante utilice todos los comandos de book en la preparacin del cuerpo de la tesis. La clase

Fc Unp

se invoca reem-

plazando book por fcunp en la primera lnea del documento:

\documentclass{fcunp} % \begin{document} <Cuerpo de la tesis> \end{document}

3 Comandos implementados
3.1 Comando para separar datos ingresados
1)

\and
Permite separar diversos datos, tales como: nombres de autores, nombres de patrocinadores, dedicatorias, etc.

3.2 Comandos para ingresar datos


1)

\school{<n >}
Permite ingresar un nmero entero positivo entre ra identicar la Escuela Profesional. Admite la Escuela de Biologa,

1 y 5, incluidos, papara referirse a

n = 1

n = 2

para referirse a la Escuela de Fsica,

n=3

para referirse a la Escuela de Matemtica,

n=4

para referirse

a la Escuela de Electrnica Estadstica.

n = 5

para referirse a la Escuela de

Cabe mencionar que de acuerdo al nmero ingresado se obtendr automticamente la primera primera pgina (cubierta) en el color asignado a la respectiva escuela. 2)

\title{<Ttulo

de la tesis >}

Permite ingresar el ttulo de la tesis. 229

3)

\author{<Autor

de la tesis >}

Permite ingresar el nombre del autor de la tesis. En caso de ser dos autores los nombres de los mismos debern ir separados con el comando

\and.
4)

\sponsor{<Patrocinador >}
Permite ingresar el nombre del patrocinador de la tesis. En caso de ser dos patrocinadores los nombres de los mismos debern ir separados con el comando

\and.
del Jurado >}

5)

\jury{<Miembros

Permite ingresar los nombres de los miembros del Jurado de la tesis, los mismos que se separarn con el comando 6)

\and.

\dedication{<Dedicatoria >}
Permite ingresar la dedicatoria del autor. En caso de ser dos autores las dedicatorias de los mismos debern ir separadas con el comando

\and.
7)

\acknowledgments{<Agradecimientos >}
Permite ingresar los agradecimientos del autor, los mismos que se separarn con el comando

\and.

8)

\resumen{<Resumen >}
Permite ingresar el resumen de la tesis.

9)

\palabrasclave{<Palabras \abstract{<Resumen \keywords{<Palabras

clave >}

Permite ingresar las palabras clave. 10)

en ingls >}

Permite ingresar el resumen en idioma ingls. 11)

clave en ingls >}

Permite ingresar las palabras clave en idioma ingls.

3.3 Comandos para generar pginas


1)

\makecover
Permite generar la portada. 230

2)

\maketitle
Permite generar la pgina de ttulo.

3)

\makesignature
Permite generar la pgina de rmas.

4)

\makededication
Permite generar la pgina de la(s) dedicatoria(s).

5)

\makeacknowledgments
Permite generar la pgina de los agradecimientos.

3.4 Otros comandos


1)

\frontmatter
Apertura de la tesis. La numeracin de las pginas ubicadas despus de este comando se realiza con nmeros romanos.

2)

\mainmatter
Parte central de la tesis. Aqu tambin se ubican las conclusiones y recomendaciones mediante el comando el comando

\annex

y los apndices

\conclusions, los anexos con con el comando \appendix.

3)

\backmatter
Cierre de la tesis.

4 Paquetes incorporados
La clase

A Fc Unp incorpora los siguientes paquetes estndar de L T EX:

geometry Este paquete se utiliza para establecer los mrgenes de pgina


de la Tesis.

babel Este paquete se utiliza activando la opcin spanish con la nalidad


de conseguir una adecuada particin silbica de las palabras.

inputenc Este paquete se utiliza activando la opcin latin1 con la nalidad de permitir el uso y la compilacin de caracteres que no corresponden al cdigo ASCII. 231

amsthm Este

paquete se utiliza para darle un formato adecuado a las

deniciones, teoremas, corolarios, lemas, proposiciones, etc. y tambin a las demostraciones.

graphicx Este formato se utiliza para poder insertar grcos y es preciso


incluirlo en la clase pues de otra forma no se podra incluir el logo de la UNP en la cubierta.

epstopdf Este paquete se utiliza para convertir los grcos .eps a .pdf
A y poder as generar el archivo PDFL T EX.

hyperrefn Este
estndar

paquete constituye una ligera modicacin del paquete

hyperref y se utiliza para generar los hipervnculos del ndi-

ce general, de las referencias, de las direcciones web, as como tambin para generar los marcadores.

5 Un ejemplo especco
El ejemplo que se presenta en esta seccin permite observar el cdigo elemental de una tesis, as como algunas pginas importantes en formato

dvi

(ver Figs. 4.1, 4.2, 4.3, 4.4 y 4.5), generadas con la clase

Fc Unp .

A Adems en las guras 4.6 y 4.7 se aprecia la salida obtenida por PDFL T EX
con el paquete

hyperrefn que permite generar hipervnculos y marcadores

en forma automtica. La lnea 1 del cdigo anexado invoca la clase

Fc Unp . La lnea 3 invoca

tres paquetes, de la American Mathematical Society, para trabajar con matemtica. Las lneas 517, muestran el correcto uso de los comandos

para ingresar datos y del comando para separar datos ingresados ; mientras que las lneas 2327, 77 y 78 muestran el correcto uso de los comandos

para generar pginas. Las lneas 21, 35 y 67, separan la apertura, la parte
central y el cierre de la tesis y las lneas 53, 60 y 64 indican el inicio de las conclusiones (y recomendaciones), los anexos y apndices, respectivamente. El resto de lneas terminan de completar el cuerpo del documento

A y son de uso comn en cualquier documento L T EX generado con la clase


estndar book. 232

Cdigo Anexado

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

\documentclass{fcunp} \usepackage{amssymb,amsmath,amsfonts} \school{3} \title{``Ttulo de la Tesis''} \author{Primer Autor \and Segundo Autor} \sponsor{Primer patrocinador \and Segundo patrocinador} \jury{Presidente \and Secretario \and Vocal} \dedication{Primera dedicatoria.\\\textit{Primer Autor} \and Segunda dedicatoria.\\\textit{Segundo Autor}} \acknowledgments{Primer agradecimiento. \and Segundo agradecimiento.} \resumen{Este es el resumen.} \palabrasclave{Palabraclave1, palabraclave2.} \abstract{This is the abstract.} \keywords{Keyword1, keyword2.} \begin{document} \frontmatter \makecover \maketitle \makesignature \makededication \makeacknowledgments \chapter{Prlogo} ste es el prlogo. \tableofcontents \listoffigures \chapter{Introduccin}
233

33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65

sta es la introduccin. \mainmatter \chapter{Este es el primer captulo} Texto para el primer captulo. \section{La primera seccin del primer captulo} Texto para la primera seccin del primer captulo. \begin{equation}ax^2+bx+c=0\,.\end{equation} \chapter{Este es el segundo captulo} \section{La primera seccin del segundo captulo} Texto para la primera seccin del segundo captulo. \begin{figure} \centering \includegraphics[scale=0.5]{img/unp.eps} \caption{Mi primera figura.} \end{figure} \conclusions \chapter{Conclusiones} Aqu van las conclusiones. \chapter{Recomendaciones} Aqu van las recomendaciones. \annex \chapter{Este es un anexo} Texto para el anexo. \appendix \chapter{Este es un apndice}
234

66 67 68 69 70 71 72 73 74 75 76 77 78 79 80

Texto para el apndice. \backmatter \begin{thebibliography}{CM} \bibitem{Buh} Buhmann, M. D. (2004). Radial Basis Functions: Theory and Implementations. Cambridge University Press. United Kingdom. \end{thebibliography} \makeresumen \makeabstract \end{document}
Fin

Adicionalmente, el texto referente a las escuelas y al ttulo profesional, as como el color de las primeras pginas, es modicado en forma automtica cuando el cdigo de la lnea 5 se sustituye por

\school{1} (Fig. 4.8, izquierdaarriba), \school{2} (Fig. 4.8, derechaarriba), \school{4} (Fig. 4.8, izquierdaabajo) y \school{5} (Fig. 4.8, derechaabajo).

6 Obtencin de la clase FcUnp


El Reglamento de Tesis de la Facultad de Ciencias, la clase archivo PDF de este libro, el paquete

Fc Unp , un

ejemplo.tex, ejemplo.dvi

partir del primero con la clase

Fc Unp ) pueden obtenerse desde

hiperrefn; as como los archivos ejemplo.pdf (los dos ltimos generados a

https://sites.google.com/site/ripanaque/docencia
235

Figura 4.1 Cuatro primeras pginas (dvi outputs) de la tesis


formateadas con la clase Fc Unp .

236

Figura 4.2 Los agradecimientos, el prlogo y el ndice general y (dvi outputs) son automticamente formateadas con la clase Fc Unp .

237

Figura 4.3 El ndice de guras, la introduccin y las primeras pgimas de los captulos I y II (dvi outputs) son automticamente formateadas con la clase Fc Unp .

238

Figura 4.4 Las conclusiones, recomendaciones, anexos y apndices (dvi outputs) son automticamente formateadas con la clase Fc Unp .

239

Figura 4.5 La bibliografa, el resumen y el abstract (dvi outputs)


tambin son automticamente formateadas con la clase Fc Unp .

240

Figura 4.6 Salida formateada por Fc Unp y producida por


A PDFL TEX con el paquete hyperrefn, con sus respectivos marcadores.

241

Figura 4.7 Salida formateada por Fc Unp y producida por


A PDFL TEX con el paquete hyperrefn, con sus respectivos hipervnculos y marcadores.

242

Figura 4.8 Formato automtico por escuelas con Fc Unp .

243

7 Cdigo de la clase FcUnp


%% %% %% %% %% %% %% %% Este es el archivo `fcunp.cls', generado con texmaker. Copyright 2011 Este archivo consiste en una modificaci\'{o}n, de la clase book, hecha por el Prof. R. Ipanaqu\'{e}

\NeedsTeXFormat{LaTeX2e}[1995/12/01] \ProvidesClass{fcunp}[2011/01/01 v2.0 LaTeX document class for the Bachelor Thesis of the Sciences Faculty at the National University of Piura] \newcommand\@ptsize{}% tama\'{n}o de letra 12 \newif\if@mainmatter\@mainmattertrue \newif\if@chapter\@chaptertrue \newif\if@conclusions\@conclusionsfalse \newif\if@annex\@annexfalse \newif\if@appendix\@appendixfalse \newif\if@final\@finaltrue \newcommand{\setstretch}[1]{% control de espacio con \setstretch \def\baselinestretch{#1}% \@currsize } \newif\if@pdftex \@pdftexfalse% condicional para pdfLaTeX \ifx\pdfoutput\undefined \else \ifx\pdfoutput\relax \else
244

\ifcase\pdfoutput \else \@pdftextrue \fi \fi \fi %Define tama\~{n}o de papel \setlength\paperheight{297mm} \setlength\paperwidth{210mm} %Fin %control de viudas y hu\'{e}rfanas \widowpenalty=10000 \clubpenalty=10000 %Fin %Para evitar los overfull a toda costa \pretolerance=9000 \tolerance=9000 %Fin %Define tama\~{n}o de letra \renewcommand\@ptsize{2} %Fin \DeclareOption{draft}{\@finalfalse\setlength\overfullrule{5pt}} \if@compatibility\else \DeclareOption{final}{\@finaltrue\setlength\overfullrule{0pt}} \fi %Formato por defecto \ExecuteOptions{final}
245

\ProcessOptions \input{bk1\@ptsize.clo} \renewcommand\baselinestretch{2} \setlength{\parskip}{10pt} \setlength{\footnotesep}{5mm} \setlength\parindent{12mm} \@lowpenalty 51 \@medpenalty 151 \@highpenalty 301 \setcounter{topnumber}{2} \renewcommand\topfraction{.7} \setcounter{bottomnumber}{1} \renewcommand\bottomfraction{.3} \setcounter{totalnumber}{3} \renewcommand\textfraction{.2} \renewcommand\floatpagefraction{.5} \setcounter{dbltopnumber}{2} \renewcommand\dbltopfraction{.7} \renewcommand\dblfloatpagefraction{.5} %Numeraci\'{o}n de p\'{a}ginas \def\ps@headings{% \let\@oddfoot\@empty \def\@oddhead{\hfil\thepage}} %Fin %T\'{i}tulo \def\title#1{\gdef\@title{\MakeUppercase{#1}}} %Fin %Oculta textos \newbox\boxocultar \newif\ifocultar
246

\newenvironment{ocultar} {\setbox\boxocultar\vbox\bgroup} {\egroup\ifocultar\else\par\unvbox\boxocultar\fi} %Fin %Autor \newcounter{@au} \def\author#1{\gdef\@author{#1}} \def\authorname{\def\and{\par}\MakeUppercase\@author} \def\authornumber{ \begingroup \setcounter{@au}{1}% \def\and{\stepcounter{@au}}% \ocultartrue% \begin{ocultar} \@author \end{ocultar} \endgroup} \def\authorsig{ \begingroup \setcounter{@au}{1}% \def\and{\vfill%\vskip 2em \rule{6.5cm}{0.25pt}\vskip 0.2em \textit{Ejecutor}\vskip -3.75em \stepcounter{@au}}% \setbox0=\vbox{\@author}% \rule{6.5cm}{0.25pt}\vskip 0.2em \textit{Ejecutor}\vskip -3.75em \@author%
247

\endgroup} %Fin %Escuela \def\school#1{\gdef\@school{#1}} \def\schoolname{% \ifcase \@school% \relax \or% CIENCIAS BIOL\'{O}GICAS%1 \or% F\'{I}SICA%2 \or% MATEM\'{A}TICA%3 \or% INGENIER\'{I}A ELECTR\'{O}NICA Y TELECOMUNICACIONES%4 \or% ESTAD\'{I}STICA%5 \else% \normalfont{\small !`Error: N\'{u}mero no v\'{a}lido!}% \fi% }% \def\professionaltitlename{% \ifcase \@school% \relax \or%1 LICENCIADO EN CIENCIAS BIOL\'{O}GICAS% \or%2 LICENCIADO EN F\'{I}SICA% \or%3 LICENCIADO EN MATEM\'{A}TICA% \or%4 INGENIERO ELECTR\'{O}NICO Y DE TELECOMUNICACIONES%
248

\or%5 LICENCIADO EN ESTAD\'{I}STICA% \else% \normalfont{\small !`Error: N\'{u}mero no v\'{a}lido!} \fi% }% %Fin %Elabora la cubierta \RequirePackage{color} \definecolor{celeste}{rgb}{0.49,0.847,0.95} \definecolor{azulfi}{rgb}{0,0.2,0.5} \definecolor{gris}{rgb}{0.8,0.8,0.8} \definecolor{azulel}{rgb}{0,0.2,0.7} \definecolor{azules}{rgb}{0,0,0.3} \definecolor{blanco}{rgb}{1.0,1.0,1.0} \definecolor{oro}{rgb}{0.84,0.69,0.16} \def\professionalcolorname{% \ifcase \@school% \relax \or%1 \if@final celeste\else blanco\fi% \or%2 \if@final azulfi\else blanco\fi% \or%3 \if@final gris\else blanco\fi% \or%4 \if@final azulel\else blanco\fi% \or%5 \if@final azules\else blanco\fi% \else% blanco%otherwise \fi%
249

}% %Fin \newcommand\makecover{% \if@pdftex \pdfbookmark{Cubierta}{cover} \fi \authornumber% \pagecolor{\professionalcolorname} \begin{titlepage} \vspace*{-3em}\hspace*{-4em} \setlength{\fboxrule}{2pt} \fcolorbox{oro}{\professionalcolorname}{ \begin{minipage}[c][224mm]{140mm} \vspace{3ex} \centering {\bf\large\color{oro} UNIVERSIDAD NACIONAL DE PIURA \par\color{oro} FACULTAD DE CIENCIAS} \vskip 1em {\bf\normalsize\color{oro} ESCUELA PROFESIONAL DE \schoolname} \vfill \includegraphics[scale=0.5]{unp.eps} \vfill {\bf\normalsize\color{oro} \@title} \vfill {\ifcase \c@@au% \relax \or% \bf\color{oro}\authorname \or% \bf\color{oro}\authorname%
250

\else% \normalfont{\small !`Error: La cantidad m\'{a}xima de ejecutores es 2!}% \fi} \vfill {\bf\normalsize\color{oro} TESIS PARA OPTAR EL T\'{I}TULO PROFESIONAL \par\color{oro} DE \professionaltitlename} \vfill {\bf\normalsize\color{oro} PIURA -- PER\'{U}}% \vspace{3ex} \end{minipage} } \end{titlepage} } %Fin %Elabora la portada \newcommand\maketitle{% \if@pdftex \pdfbookmark{Portada}{title} \fi \authornumber% \pagecolor{white} \begin{titlepage} \vspace*{-2.5em}\hspace*{-4em} \begin{minipage}[c][224mm]{140mm} \centering {\bf\large UNIVERSIDAD NACIONAL DE PIURA \par FACULTAD DE CIENCIAS} \vskip 1em
251

{\bf\normalsize ESCUELA PROFESIONAL DE \schoolname} \vfill {\bf\normalsize\@title} \vfill {\ifcase \c@@au% \relax \or% \bf\authorname \or% \bf\authorname% \else% \normalfont{\small !`Error: La cantidad m\'{a}xima de ejecutores es 2!}% \fi} \vfill {\bf\normalsize TESIS PARA OPTAR EL T\'{I}TULO PROFESIONAL \par DE \professionaltitlename} \vfill {\bf\normalsize\@today}% \end{minipage} \end{titlepage} } %Fin %Patrocinador \newcounter{@pat} \def\sponsor#1{\gdef\@sponsor{#1}} \def\sponsornumber{ \begingroup \setcounter{@pat}{1}% \def\and{\stepcounter{@pat}}% \ocultartrue% \begin{ocultar}
252

\@sponsor \end{ocultar} \endgroup} \def\sponsorsig{ \begingroup \setcounter{@pat}{1}% \def\and{\vfill \rule{6.5cm}{0.25pt}\vskip 0.2em \stepcounter{@pat} \textit{Co--Patrocinador}\vskip -3.75em}% \setbox0=\vbox{\@sponsor}% \rule{6.5cm}{0.25pt}\vskip 0.2em \textit{Patrocinador}\vskip -3.75em \@sponsor% \endgroup} %Fin %Jurado \newcounter{@jur} \def\jury#1{\gdef\@jury{#1}} \def\jurynumber{ \begingroup \setcounter{@jur}{1}% \def\and{\stepcounter{@jur}}% \ocultartrue% \begin{ocultar} \@jury \end{ocultar} \endgroup}

253

\def\jurysig{ \begingroup \setcounter{@jur}{1}% \def\and{\vfill \rule{6.5cm}{0.25pt}\vskip 0.2em \stepcounter{@jur} \ifcase \c@@jur% \relax\or\relax\or\relax\or\relax% \or \textit{Secretario Jurado de Tesis}\vskip -3.75em \or \textit{Vocal Jurado de Tesis}\vskip -3.75em \fi}% \setbox0=\vbox{\@jury}% \rule{6.5cm}{0.25pt}\vskip 0.2em \textit{Presidente Jurado de Tesis}\vskip -3.75em \@jury% \endgroup} %Fin %Elabora la pagina de firmas \newcommand\makesignature{% \if@pdftex \pdfbookmark{Firmas}{signature} \fi \authornumber% \sponsornumber% \jurynumber% \begin{titlepage} \vspace*{-2.5em}\hspace*{-4em} \begin{minipage}[c][221mm]{140mm} \centering {\bf\large UNIVERSIDAD NACIONAL DE PIURA \par FACULTAD DE CIENCIAS} \vskip 1em
254

{\bf\normalsize ESCUELA PROFESIONAL DE \schoolname} \vfill\vfill {\ifcase \c@@au% \relax \or% \normalfont\authorsig \or% \normalfont\authorsig% \else% \normalfont{\small !`Error: La cantidad m\'{a}xima de ejecutores es 2!}% \fi} \vfill {\ifcase \c@@pat% \relax \or% \normalfont\sponsorsig \or% \normalfont\sponsorsig% \else% \normalfont{\small !`Error: La cantidad m\'{a}xima de patrocinadores es 2!}% \fi} \vfill {\ifcase \c@@jur% \relax \or% \normalfont{\small !`Error: La cantidad de miembros del Jurado es 3!} \or% \normalfont{\small !`Error: La cantidad de miembros del Jurado es 3!} \or% \normalfont\jurysig% \else% \normalfont{\small !`Error: La cantidad de miembros del Jurado es 3!}% \fi} \end{minipage} \end{titlepage}
255

} %Fin %Dedicatoria \def\dedication#1{\gdef\@dedication{#1}} \def\dedicationname{ \begingroup% \par% \def\and{\vskip 3cm\leftskip 4cm}% \leftskip 4cm% \@dedication\par% \endgroup} %Fin %Elabora la pagina de dedicatoria \newcommand\makededication{% \if@pdftex \pdfbookmark{Dedicatoria}{dedication} \fi \begin{titlepage} \vspace*{0em} \begin{center}% {\bf\large DEDICATORIA} \end{center} \vfill \setlength\parindent{0cm}\dedicationname \vfill\vfill \end{titlepage} } %Fin %Agradecimiento
256

\def\acknowledgments#1{\gdef\@acknowledgments{#1}} \def\acknowledgmentsname{ \begingroup% \def\and{\item} \begin{itemize} \item\@acknowledgments \end{itemize} \endgroup} %Elabora la pagina de agradecimiento \newcommand\makeacknowledgments{% \if@pdftex \pdfbookmark{Agradecimientos}{acknowledgments} \fi \authornumber% \begin{titlepage} \vspace*{0em} \begin{center}% {\bf\large AGRADECIMIENTOS} \vskip 4em \ifcase \c@@au% \relax \or% \hskip -6em El autor desea\; \or% \hskip -6em Los autores desean\;% \fi% expresar su m\'{a}s sincero agradecimiento: \acknowledgmentsname \end{center} \end{titlepage} } %Fin

257

%resumen \def\resumen#1{\gdef\@resumen{#1}} \def\palabrasclave#1{\gdef\@palabrasclave{#1}} \newcommand\makeresumen{% \begin{titlepage} \chapter{Resumen} \vskip 1.2em \setstretch{1} \@resumen \section*{Palabras Clave} \@palabrasclave \end{titlepage} } %Fin %abstract \def\abstract#1{\gdef\@abstract{#1}} \def\keywords#1{\gdef\@keywords{#1}} \newcommand\makeabstract{% \begin{titlepage} \chapter{Abstract} \vskip 1.2em \setstretch{1} \@abstract \section*{Keywords} \@keywords \end{titlepage} } %Fin \newcommand*\chaptermark[1]{}
258

\setcounter{secnumdepth}{2} \newcounter {chapter} \newcounter {section}[chapter] \newcounter {subsection}[section] \newcounter {subsubsection}[subsection] \newcounter {paragraph}[subsubsection] \newcounter {subparagraph}[paragraph] \renewcommand \thechapter {\@arabic\c@chapter} \renewcommand \thesection {% \thechapter.\@arabic\c@section} \renewcommand\thesubsection {\thesection.\@arabic \c@subsection} \renewcommand\thesubsubsection{\thesubsection.\@arabic \c@subsubsection} \renewcommand\theparagraph {\thesubsubsection.\@arabic \c@paragraph} \renewcommand\thesubparagraph {\theparagraph.\@arabic \c@subparagraph} \newcommand\@chapapp{\chaptername} \newcommand\frontmatter{% \cleardoublepage \@mainmatterfalse \pagenumbering{roman}} \newcommand\mainmatter{% \cleardoublepage \@mainmattertrue \pagenumbering{arabic}} \newcommand\backmatter{% \cleardoublepage \@mainmatterfalse} \newcommand\chapter{\cleardoublepage \thispagestyle{empty}%
259

\global\@topnum\z@ \@afterindentfalse \secdef\@chapter\@schapter} \def\@chapter[#1]#2{% \ifnum \c@secnumdepth >\m@ne \if@mainmatter \refstepcounter{chapter}% \typeout{\@chapapp\space\thechapter.}% \if@chapter \addcontentsline{toc}{chapter}% {\protect\numberline{\@Roman\thechapter}{#1}} \fi \if@conclusions \addcontentsline{toc}{chapter}% {#1} \fi \if@annex \addcontentsline{toc}{chapter}% {\protect\numberline{Anexo \thechapter}{ \hskip 7ex #1}} \fi \if@appendix \addcontentsline{toc}{chapter}% {\protect\numberline{Ap\'{e}ndice \thechapter}{ \hskip 11ex #1}} \fi \else \addcontentsline{toc}{chapter}{#1} \fi \else \addcontentsline{toc}{chapter}{#1}% \fi \chaptermark{#1}%
260

\addtocontents{lof}{\protect\addvspace{10\p@}}% \addtocontents{lot}{\protect\addvspace{10\p@}}% \@makechapterhead{#2}% \@afterheading} \def\@makechapterhead#1{% \vspace*{50\p@}% {\parindent \z@ \centering \normalfont \ifnum \c@secnumdepth >\m@ne \if@mainmatter \if@chapter \large\bfseries\MakeUppercase% \@chapapp\space \@Roman\thechapter \fi \if@conclusions \relax \fi \if@annex \large\bfseries\MakeUppercase% \@chapapp\space \thechapter \fi \if@appendix \large\bfseries\MakeUppercase% \@chapapp\space \thechapter \fi \par\nobreak \fi \fi \interlinepenalty\@M \setstretch{1.5} \large \bfseries \MakeUppercase{#1}\par\nobreak \vskip 40\p@ }} \newcounter{aux}
261

\def\@schapter#1{\if@pdftex \stepcounter{aux}% \pdfbookmark{#1}{\theaux}% \fi \@makeschapterhead{\MakeUppercase{#1}}% \@afterheading} \def\@makeschapterhead#1{% \vspace*{50\p@}% {\parindent \z@ \centering \normalfont \interlinepenalty\@M \large \bfseries #1\par\nobreak \vskip 40\p@ }} \newcommand\section{\@startsection {section}{1}{\z@}% {-5ex \@plus -1ex \@minus -.2ex}% {1.5ex \@plus .2ex}% {\setstretch{1.5} \large\bfseries}} \newcommand\subsection{\@startsection{subsection}{2}{\z@}% {-3.25ex\@plus -1ex \@minus -.2ex}% {1.25ex \@plus .2ex}% {\setstretch{1.5} \normalsize\bfseries}} \newcommand\subsubsection{ \@startsection{subsubsection}{3}{\z@}% {-3.25ex\@plus -1ex \@minus -.2ex}% {1.25ex \@plus .2ex}% {\setstretch{1.5} \normalsize\itshape\bfseries}} \newcommand\paragraph{\@startsection{paragraph}{4}{\z@}% {3.25ex \@plus1ex \@minus.2ex}% {-1em}%
262

{\setstretch{1.5} \normalsize\itshape\bfseries}} \newcommand\subparagraph{ \@startsection{subparagraph}{5}{\parindent}% {3.25ex \@plus1ex \@minus .2ex}% {-1em}% {\setstretch{1.5} \itshape\normalsize\bfseries}} \setlength\leftmargini {2.5em} \leftmargin \leftmargini \setlength\leftmarginii {2.2em} \setlength\leftmarginiii {1.87em} \setlength\leftmarginiv {1.7em} \setlength\leftmarginv {1em} \setlength\leftmarginvi {1em} \setlength \labelsep {.5em} \setlength \labelwidth{\leftmargini} \addtolength\labelwidth{-\labelsep} \@beginparpenalty -\@lowpenalty \@endparpenalty -\@lowpenalty \@itempenalty -\@lowpenalty \renewcommand\theenumi{\@arabic\c@enumi} \renewcommand\theenumii{\@alph\c@enumii} \renewcommand\theenumiii{\@roman\c@enumiii} \renewcommand\theenumiv{\@Alph\c@enumiv} \newcommand\labelenumi{\theenumi.} \newcommand\labelenumii{(\theenumii)} \newcommand\labelenumiii{\theenumiii.} \newcommand\labelenumiv{\theenumiv.} \renewcommand\p@enumii{\theenumi} \renewcommand\p@enumiii{\theenumi(\theenumii)} \renewcommand\p@enumiv{\p@enumiii\theenumiii}
263

\newcommand\labelitemi{\textbullet} \newcommand\labelitemii{\normalfont\bfseries \textendash} \newcommand\labelitemiii{\textasteriskcentered} \newcommand\labelitemiv{\textperiodcentered} \newenvironment{description} {\list{}{\labelwidth\z@ \itemindent-\leftmargin \let\makelabel\descriptionlabel}} {\endlist} \newcommand*\descriptionlabel[1]{\hspace\labelsep \normalfont\bfseries #1} \newenvironment{verse} {\let\\\@centercr \list{}{\itemsep \z@ \itemindent -1.5em% \listparindent\itemindent \rightmargin \leftmargin \advance\leftmargin 1.5em}% \item\relax} {\endlist} \newenvironment{quotation} {\list{}{\listparindent 1.5em% \itemindent \listparindent \rightmargin \leftmargin \parsep \z@ \@plus\p@}% \item\relax} {\endlist} \newenvironment{quote} {\list{}{\rightmargin\leftmargin}% \item\relax} {\endlist} \newenvironment{titlepage} {\cleardoublepage \thispagestyle{empty}}%
264

{\newpage} \newcommand\conclusions{\par \@chapterfalse% \@conclusionstrue} \newcommand\annex{\par \@chapterfalse% \@conclusionsfalse% \@annextrue% \setcounter{chapter}{0}% \setcounter{section}{0}% \gdef\@chapapp{\annexname}% \gdef\thechapter{\@arabic\c@chapter}} \newcommand\appendix{\par \@chapterfalse% \@conclusionsfalse% \@annexfalse% \@appendixtrue% \setcounter{chapter}{0}% \setcounter{section}{0}% \gdef\@chapapp{\appendixname}% \gdef\thechapter{\@Alph\c@chapter}} \setlength\arraycolsep{5\p@} \setlength\tabcolsep{6\p@} \setlength\arrayrulewidth{.4\p@} \setlength\doublerulesep{2\p@} \setlength\tabbingsep{\labelsep} \skip\@mpfootins = \skip\footins \setlength\fboxsep{3\p@} \setlength\fboxrule{.4\p@} \@addtoreset {equation}{chapter} \renewcommand\theequation {\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@equation}
265

\newcounter{figure}[chapter] \renewcommand \thefigure {\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@figure} \def\fps@figure{tbp} \def\ftype@figure{1} \def\ext@figure{lof} \def\fnum@figure{\figurename\nobreakspace\thefigure} \newenvironment{figure} {\@float{figure}} {\end@float} \newenvironment{figure*} {\@dblfloat{figure}} {\end@dblfloat} \newcounter{table}[chapter] \renewcommand \thetable {\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@table} \def\fps@table{tbp} \def\ftype@table{2} \def\ext@table{lot} \def\fnum@table{\tablename\nobreakspace\thetable} \def\footnote{\@ifnextchar[{\@xfootnote}{\stepcounter {\@mpfn}\xdef\@thefnmark{\thempfn}% \@footnotemark\@footnotetext}} \newenvironment{table} {\@float{table}} {\end@float} \newenvironment{table*} {\@dblfloat{table}} {\end@dblfloat} \newlength\abovecaptionskip \newlength\belowcaptionskip \setlength\abovecaptionskip{10\p@}
266

\setlength\belowcaptionskip{10\p@} \long\def\@makecaption#1#2{% \vskip\abovecaptionskip \sbox\@tempboxa{\small\bfseries #1. \normalfont #2}% \ifdim \wd\@tempboxa >\hsize \small\bfseries #1. \normalfont #2\par \else \global \@minipagefalse \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% \fi \vskip\belowcaptionskip} \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} \DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} \DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} \DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} \DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} \DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} \DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} \DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal} \DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal} \newcommand\@pnumwidth{1.55em} \newcommand\@tocrmarg{2.55em} \newcommand\@dotsep{4.5} \setcounter{tocdepth}{1} \newcommand\tableofcontents{% \chapter{\contentsname} \setstretch{1.5} \@starttoc{toc} \setstretch{2} } \newcommand*\l@chapter[2]{% \ifnum \c@tocdepth >\m@ne \addpenalty{-\@highpenalty}%
267

\vskip 0.5em\@plus\p@ \setlength\@tempdima{2em}% \begingroup \parindent \z@ \rightskip \@pnumwidth \parfillskip -\@pnumwidth \leavevmode \bfseries \advance\leftskip\@tempdima \hskip -\leftskip #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2} \par\penalty\@highpenalty \endgroup \fi} \newcommand*\l@section{\vskip -0.5em\@dottedtocline{1}{ 2em}{2.3em}} \newcommand*\l@subsection{\@dottedtocline{2}{5.3em}{3.2em}} \newcommand*\l@subsubsection{\@dottedtocline{3}{8.5em}{4.1em}} \newcommand*\l@paragraph{\@dottedtocline{4}{11.5em}{5em}} \newcommand*\l@subparagraph{\@dottedtocline{5}{13.5em}{6em}} \newcommand\listoffigures{% \chapter{\listfigurename}% \setstretch{1.5} \@starttoc{lof}% \setstretch{2} } \newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}} \newcommand\listoftables{% \chapter{\listtablename}% \setstretch{1.5} \@starttoc{lot}% \setstretch{2} } \let\l@table\l@figure \newdimen\bibindent
268

\setlength\bibindent{1.5em} \newenvironment{thebibliography}[1] {\chapter{\bibname}% \setstretch{1.5} \list{\@biblabel{\@arabic\c@enumiv}}% {\settowidth\labelwidth{\@biblabel{#1}}% \leftmargin\labelwidth \advance\leftmargin\labelsep \@openbib@code \usecounter{enumiv}% \let\p@enumiv\@empty \renewcommand\theenumiv{\@arabic\c@enumiv}}% \sloppy \clubpenalty4000 \@clubpenalty \clubpenalty \widowpenalty4000% \sfcode`\.\@m} {\def\@noitemerr {\@latex@warning{Empty `thebibliography' environment}}% \endlist \setstretch{2}} \newcommand\newblock{\hskip .11em\@plus.33em\@minus.07em} \let\@openbib@code\@empty \newcommand\@idxitem{\par\hangindent 40\p@} \newcommand\subitem{\@idxitem \hspace*{20\p@}} \newcommand\subsubitem{\@idxitem \hspace*{30\p@}} \newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax} \renewcommand\footnoterule{% \kern10\p@ \hrule\@width0.6\columnwidth % \kern10.6\p@} \kern6.0\p@}
269

\@addtoreset{footnote}{chapter} \newcommand\@makefntext[1]{% \setstretch{1.25} \parindent 1em% \noindent \hb@xt@1.8em{\hss\@makefnmark}#1} \newcommand\contentsname{Contents} \newcommand\listfigurename{List of Figures} \newcommand\listtablename{List of Tables} \newcommand\bibname{Bibliography} \newcommand\indexname{Index} \newcommand\figurename{Figure} \newcommand\tablename{Table} \newcommand\partname{Part} \newcommand\chaptername{Chapter} \newcommand\annexname{Anexo} \newcommand\appendixname{Appendix} \def\@today{ PIURA -- PER\'{U}\\ \ifcase\month\or ENERO\or FEBRERO\or MARZO\or ABRIL\or MAYO\or JUNIO\or JULIO\or AGOSTO\or SEPTIEMBRE\or OCTUBRE\or NOVIEMBRE\or DICIEMBRE\fi \space -- \number\year} \pagestyle{headings} \pagenumbering{arabic} %Paquetes adicionales \RequirePackage[left=4cm,top=4cm,right=3cm,bottom=3cm]{geometry} \RequirePackage[spanish,es-noindentfirst,es-nodecimaldot]{babel} \def\@roman#1{\romannumeral #1} %fin

270

%Formato para teoremas, definiciones, etc \RequirePackage{amsthm} \newtheoremstyle{unp}% name of the style to be used {10pt}% space above {10pt}% space below {}% body font {0pt}% indent amount {\bfseries}% theorem head font {.}% punctuation after theorem head {.5em}% space after theorem head \newline=linebreak {\thmnumber{#2}. \thmname{#1}\thmnote{#3}}% theorem head spec \theoremstyle{unp} \newtheorem{@ux}{}[section] \newtheorem{definition}[@ux]{Definici\'{o}n} \newtheorem{lemma}[@ux]{Lema} \newtheorem{theorem}[@ux]{Teorema} \newtheorem{corollary}[@ux]{Corolario} \newtheorem{comment}[@ux]{Comentario} \newtheorem{assertion}[@ux]{Aserci\'{o}n} \newtheorem{proposition}[@ux]{Proposici\'{o}n} \newtheorem{example}[@ux]{Ejemplo} %fin %S\'{i}mbolo lqqd \newcommand{\dingfamily}{\fontencoding{U}\fontfamily{ding} \selectfont} \newcommand{\@chooseSymbol}[1]{{\dingfamily\symbol{#1}}} \newcommand{\RectangleBold}{\@chooseSymbol{'166}} \renewcommand{\qedsymbol}{\RectangleBold} %fin %Funciones matem\'{a}ticas especiales \newcommand\abs[1]{\lvert#1\rvert}
271

\newcommand\norm[1]{\lVert#1\rVert} %fin \if@pdftex \RequirePackage[pdftex]{graphicx} \RequirePackage{epstopdf} \RequirePackage[ pdftex, pdfauthor={Prof. Robert Ipanaque}, pdftitle={Tesis de Licenciatura}, pdfsubject={Para alumnos egresantes del nivel Pre-grado de la FC-UNP}, pdfkeywords={fcunp.cls}, bookmarksnumbered]{hyperrefn} \else \RequirePackage{graphicx} \fi %% %% End of file `fcunp.cls'.

272

Conclusiones
Este artculo presenta la clase

Fc Unp

que permite redactar la tesis de

pregrado de cualquier estudiante de la FC-UNP, ajustndose al formato exigido por el Reglamento de Tesis de la mencionada Facultad. Los comandos implementados en dicha clase permiten que el estudiante se concentre nicamente en el contenido de la tesis sin tener que invertir tiempo en darle formato al mismo. Adems, la clase

Fc Unp permite obtener una archivo

A PDF producido por PDFL T EX, el cual constituye un requisito adicional


que exige la FC-UNP.

273

Recomendaciones
Se recomienda divulgar el uso de la plantilla

Fc Unp

en la Facultad de

Ciencias para que los alumnos egresantes digiten sus respectivos trabajos de Tesis de este modo se obtiene uniformidad en los trabajos presentados y

A se familiariza al alumno en el uso de L T EX siendo esto ltimo esencial para


cuando los alumnos decidan cursan estudios de postgrado en la capital o en el extranjero.

A Adicionalmente, se sugiere elaborar una clase en L T EX para digitar la


tesis de grado.

274

Bibliografa
[1] Aranda, E. CURSO DE LATEX. Departamento de Matemticas, E.T.S. Ingenieros Industriales, Universidad de Castilla, La

http://www.wiphala.net/courses/tools/latex/KAS_ LATEX/2008-I (2008).


Mancha. [2] Cubides, C., Rojas, A. y Pardo, C. CURSO BSICO DE LATEX.

http://www.emis.de/journals/RCE/IntroLatex

(2006).

[3] Griths, D and Higham, D. LEARNING LATEX. The Society for Industrial and Applied Mathematics (1997). [4] Gurari, E. WRITING WITH TEX. McGraw-Hill, Inc. (1994). [5] Knuth, D. THE TEXBOOK. Adisson-Wesley Publishing Company (1991). [6] Lamport, L. LATEX. A DOCUMENT PREPARATION SYSTEM. Addison-Wesley Publishing Company (1994). [7] Molina Luis M. LTEX: PROCESAMIENTO DE TEXTOS CIENTFICOS EN ALTA CALIDAD. Departamento de Fsica Terica, At-

http://metodos.fam.cie. uva.es/~latex/apuntes/apuntes.html (2011).


mica y ptica. Facultad de Ciencias. [8] Mora, FICOS W. y Borbn, A. EDICIN de DE TEXTOS Instituto CIENTTecnolgi-

LATEX.

Escuela

Matemtica

http://www.cidse.itcr.ac.cr/revistamate/ HERRAmInternet/Latex/wmlatexrevista (2008).


co de Costa Rica. 275

[9] Mori, L. WRITING A THESIS WITH LATEX. The PracTex Journal (2008). [10] Rostamian, Rouben. A BEAMER QUICKSTART.

http://www.

math.umbc.edu/~rouben/beamer/

(2004).

[11] Shultis, J. LATEX NOTES. Prentice Hall, New Jersey (1994).

276

Você também pode gostar