Mostrando entradas con la etiqueta Latex. Mostrar todas las entradas
Mostrando entradas con la etiqueta Latex. Mostrar todas las entradas

domingo, 28 de julio de 2013

Latex para físicos

LaTeX for Physicists

To get LaTex running on a windows system,
  1. Download and install MikTex
  2. Download and install TeXnicCenter
  3. Download the LaTex for Physicists Header
  4. Copy the header to the folder where you will save your document
  5. Add \input{header.tex} to the first line of your document as in this template
The LaTeX for Physicists Header has the following features:
  • Sets font size to 11pt
  • Includes commonly needed packages
  • Reduces page margins to 0.75in for more space
  • Redefines \maketitle to save space
  • Removes page numbers
  • Changes enumeration to letters as in physics exercises
  • \v{ } makes bold vectors (\v is redefined to \vaccent)
  • \uv{ } makes bold unit vectors with hats
  • \gv{ } makes bold vectors of greek letters
  • \abs{ } makes the absolute value symbol
  • \avg{ } makes the angled average symbol
  • \d{ }{ } makes derivatives (\d is redefined to \underdot)
  • \dd{ }{ } makes double derivatives
  • \pd{ }{ } makes partial derivatives
  • \pdd{ }{ } makes double partial derivatives
  • \pdc{ }{ }{ } makes thermodynamics partial derivatives
  • \ket{ } makes Dirac kets
  • \bra{ } makes Dirac bras
  • \braket{ }{ } makes Dirac brackets
  • \matrixel{ }{ }{ } makes Dirac matrix elements
  • \grad{ } makes a gradient operator
  • \div{ } makes a divergence operator (\div is redefined to \divsymb)
  • \curl{ } makes a curl operator
  • \={ } makes numbers appear over equal signs (\= is redefined to \baraccent)
General LaTeX tips:
  • Use "$ ... $" for inline equations
  • Use "\[ ... \]" for equations on their own line
  • Use "\begin{center} ... \end{center}" to center something
  • Use "\includegraphics[width=?cm]{filename.eps}" for images - must compile to dvi then use dvipdfm from a batch file
  • Use "\begin{multicols}{2} ... \end{multicols}" for two columns
  • Use "\begin{enumerate} \item ... \end{enumerate}" for parts of physics exercises
  • Use "\section*{ }" for sections without numbering
  • Use "\begin{cases} ... \end{cases}" for piecewise functions
  • Use "\mathcal{ }" for a caligraphic font
  • Use "\mathbb{ }" for a blackboard bold font
Below is a list of commonly used builtin symbols 
LaTeX Symbol Search - search for LaTeX code by its mathematical name
Comprehensive List of Symbols


Traído sin escrúpulos desde:
http://www.dfcd.net/articles/latex/latex.html

jueves, 13 de junio de 2013

Instalar fuentes en Latex (caso Ubuntu en particular)

Resulta que se quiere compilar un archivo con fuentes raras como la "oldgerman" o similares y uno no cuenta con ellas instaladas en el sistema.

Utilizaré el ejemplo de las fuentes yfonts y las yswab, yswabase, y similares.

1.- Lo primero es bajar las fuentes del CTAN:

http://www.ctan.org/tex-archive/macros/latex/contrib/yfonts/ para los archivos yfonts.dtx y el yfonts.ins

2.- Crear una carpeta llamada yfonts en donde se quiera (en el lugar de la descarga si se quiere) y copiar ahí esos arhivos.

3.- Compilar las fuentes. Es decir,

      a) abrir una terminal (Ctrl+Alt+t). Ubicarse en el directorio yfonts creado (cd /home/usuario/Descargas/yfonts) y ejecutar

latex yfonts.ins

y después

latex yfonts.dtx

Esto con la finalidad de crear los archivos de las fuentes. En mi caso particular, tuve que descargar el archivo german.sty y copiarlo dentro del directorio yfonts para que la compilación (latex yfonts) fuera exitosa. No hay que asustarse, si lo hice es porque al compilar inicialmente me salió un error donde me indicaba que faltaba el paquete german.sty. Después de copiar el german.sty, realicé la compilación latex yfonts.ins y latex yfonts.dtx otra vez.

     b) abrir yfonts.ins con TexMaker, emacs o su editor de tex favorito y compilar con la opción "latex". Repetir la operación con yfonts.dtx

4.-  Copiar la carpeta yfonts en el lugar donde el programa tex lee sus fuentes. Calma. ¿Cómo saber en dónde hacer eso? Bueno, cada sistema ubica las carpetas donde más le gusta pero no es difícil darse cuenta de ello pues, al compilar, se  muestra la ubicación en donde latex está buscando la fuente y despliega un error. Por ejemplo, en mi caso viene algo como :

? /tex-live/font/source/public/yswab.mf not found

Lo que nos da la ruta en dónde instalar las fuentes que queremos. En mi sistema queda entonces en

/usr/share/tex-live/font/source/public/

Por lo que sólo queda copiar la carpeta

sudo cp -r /home/usuario/Descargas/yfonts    /usr/share/tex-live/font/source/public/

5.- Recargar el latex

sudo texhash

6.- A disfrutar de las fuentes nuevas!

Como último detalle, por las fuentes que estaba ocupando, yo tuve que descargar  un par de fuentes más para completar el paquete de fuentes y únicamente las copié a la carpteta yfonts en /usr/share/tex-live/font/source/public/yfonts y recargué el latex (sudo texhash).

domingo, 5 de mayo de 2013

Incluir páginas de archivo PDF en Latex

Cuando se está escribiendo la tesis, a veces es necesario incluir los artículos que se publicaron en el camino de la realización de la tesis, ya sea como apéndice o como parte del cuerpo de alguna sección.

Para empezar, hay que añadir al preámbulo del archivo .tex en donde queremos incluir el pdf

\usepackage{pdfpages}

Después, para incluir el archivo, por ejemplo las páginas 2,4 y de la 6 a la 10 del archivo TQ1.pdf, le damos

\includepdf[pages={2,4,6-10},scale=.8,pagecommand={}]{TQ1.pdf}

Y, finalmente, se compila con PDFLaTeX (no con Latex) y queda bien.

La opción pagecommand={} es para que aparezca la numeración que estamos utilizando en nuestro documento .tex, de lo contrario, sólo aparecerá la numeración que viene en cada página del pdf añadido.
La opción scale=.8 es para escalar el tamaño del pdf.

La documentación completa del paquete está en:

http://www.ctan.org/tex-archive/macros/latex/contrib/pdfpages 

lunes, 4 de octubre de 2010

Preámbulo y comandos en Latex

Obtenido vilmente con copy paste de

http://www.cidse.itcr.ac.cr/revistamate/HERRAmInternet/Latex/wmlatexrevista/node4.html

Preámbulo y cuerpo


Un documento básico en LATEX se compone de dos partes: el preámbulo del documento y el cuerpo del mismo.

Al inicio del documento se debe especificar la clase de documento y lo relativo al ajuste de las páginas, este es el preámbulo, nada de lo que pongamos en el preámbulo aparecerá en el documento que se imprime al final.

En el cuerpo se escribe el texto (normal y matemático)del documento en sí, es decir, el cuerpo es la parte que aparecerá impresa como producto final.
Plantilla básica

\documentclass{article}
\textheight=21cm
\textwidth=17cm
\topmargin=-1cm
\oddsidemargin=0cm
\parindent=0mm
\usepackage{amsmath,amssymb,amsfonts,latexsym,cancel} %Soporte para símbolos y font matemáticos
\usepackage[dvips]{graphicx} %Soporte para gráficos.
\DeclareGraphicsExtensions{.pdf,.png,.jpg}
\DeclareGraphicsRule{.wmf}{bmp}{}{}

\begin{document}
... texto + texto en modo matemático + comandos ...
\end{document}


\documentclass{article}: Es la clase de documento, article se refiere al archivo article.cls y se utiliza para hacer artículos. En vez de 'article' se puede utilizar 'report' o 'book' para un reporte o un libro.


\textheight=21cm: Establece el largo del texto en cada página. El default es 19 cm.


\textwidth=17cm: Establece el ancho del texto en cada página (en este caso, de 17 cm). El default es 14 cm.


\topmargin=-1cm: Establece el margen superior. El default es de 3 cm, en este caso la instrucción sube el margen 1 cm hacia arriba.


\oddsidemargin=0cm: Establece el margen izquierdo de la hoja. El default es de 4.5 cm; sin embargo, con sólo poner esta instrucción el margen queda en 2.5 cm. Si el parámetro es positivo se aumenta este margen y si es negativo disminuye.


Los \input ... permiten importar macros o trozos de texto que estén en el directorio actual. Algunos de estos \input... no necesariamente deben estar en el preámbulo.
Otros comandos para el preámbulo


\renewcommand{\baselinestretch}{1.5} genera un texto a espacio y medio. Si se pone 2, lo hace a doble espacio.


\pagestyle{empty} elimina la numeración de las páginas.


\parskip=Xmm genera un espacio de X mm entre los párrafos.


\parindent=0mm elimina la sangría.


\pagestyle{myheadings} coloca la numeración de página en la parte superior.
Cuerpo del documento

El cuerpo del documento es el que se pone entre los delimitadores \begin{document} y \end{document}.

En esta parte se coloca el texto del documento junto con el texto matemático.
Otros ajustes


\markright{'texto'} coloca 'texto' en la parte superior de la página. Se pueden poner varios \markright en el texto (en cada sección).

En este texto se usa \markright{texto \hrulefill W. Mora, A. Borbón $\; \;$}


\newpage le indica a LATEX que siga imprimiendo en la página siguiente.
Idioma

El idioma oficial que utiliza LATEX es el inglés, sin embargo, utilizando algunas instrucciones se puede lograr que soporte otros idiomas, en particular, veremos cómo hacer para que soporte el español.

Por ejemplo, LATEX normalmente no acepta tildes, ni la letra 'ñ', tampoco el signo de pregunta '¿', el de admiración '¡' ni la apertura o el cierre de comillas.  


Sin embargo, si en el preámbulo se coloca la instrucción

\usepackage[latin1]{inputenc} % Caracteres con acentos.

se tendrá un soporte completo para el español, ahora sólo las comillas se tendrán que seguir poniendo mediante la instrucción dada en la tabla.

Otro problema que tiene LATEX con el idioma es que los títulos de las secciones están en inglés. Por lo tanto, en un libro no saldría Capítulo 1 sino Chapter 1.

Existen dos formas sencillas de solucionar este problema. La forma más simple y recomendada es poner en el preámbulo del documento la instrucción

\usepackage[spanish]{babel} % Caracteres con acentos.

que carga la opción en español de la librería babel; esta librería también tiene soporte para otros idiomas como alemán, francés, italiano, etc.

La segunda opción es cambiar cada uno de los títulos con las siguientes instrucciones:

\renewcommand{\contentsname}{Contenido}
\renewcommand{\partname}{Parte}
\renewcommand{\indexname}{Lista Alfabética}
\renewcommand{\appendixname}{Apéndice}
\renewcommand{\figurename}{Figura}
\renewcommand{\listfigurename}{Lista de Figuras}
\renewcommand{\tablename}{Tabla}
\renewcommand{\listtablename}{Lista de Tablas}
\renewcommand{\abstractname}{Resumen}
\renewcommand{\chaptername}{Capítulo}
\renewcommand{\refname}{Bibliografía}

Nota: Si el tipo de documento es un libro se debe poner \renewcommand{\bibname}{Bibliografía} para la bibliografía.

Esto también funciona si queremos cambiar algún título en español de los que pone la librería babel.
División de palabras

Con la inclusión del paquete \usepackage[latin1]{inputenc} en el preámbulo se logra que LATEX divida correctamente la mayoría de palabras en español, sin embargo, hay algunos casos en donde no será así; si al componer el texto observamos que hay una palabra que se ha dividido mal, vamos a esa palabra en el archivo *.tex, y le indicamos exáctamente donde la puede dividir. Por ejemplo:

de\-ci\-sión.

Este sistema tiene el inconveniente de que LATEX sólo divide bien la palabra en ese punto del documento y si dicha palabra aparece otra vez habrá que volver a decirle como se divide, y tiene la ventaja de que funciona con palabras que tienen acento.

viernes, 18 de junio de 2010

Para instalar paquetes en latex linux

Coloco el paquete (.sty) en un directorio de /usr/share/texmf-texlive/tex/latex (yo lo meto en un directorio con el mismo nombre del paquete, pero no creo que sea necesario), luego me voy a la consola y allí hago texconfig, después del mensaje presiono enter para continuar y en la tabla de opciones que aparece selecciono REHASH, presiono enter nuevamente y luego EXIT.

martes, 8 de junio de 2010

Poner horizontal una página inermedia en latex

Esto funcionó muy bien después de andar batallando con varias cosas. Primero, la idea es voltear una tabla o texto largo para que se vea bonita acostada en una página. Se tienen que definir los siguiente paquetes en el preámbulo (digo, la verdad es que pueden sobrar paquetes, pero si nos funciona así ¿a quién le importa que sobren?):

\usepackage{lscape}

El último paquete es el bueno, pero en fin, parece que los anteriores tienen su función y no vaya a ser que quitemos algo y no funcione bien. Después, muy sencillamente se pone

\begin{landscape}

\begin{table}[!h] % Colocas tu ambiente para tablas
....
\end{table}

\begin{figure}[!h]
....
\end{figure}

\end{landscape}

Y listo, lo que esté entre las etiquetas "landscape" aparecerá impreso horizontalmente.

Colocar imágenes donde uno sí quiere en el Latex

Gracias a Chucho, mi compa de cubículo, por fin se ha arreglado el problema de las imágenes en la compilación del latex.
¿Cansado de poner siempre una imagen en un lugar particular y descubrir que el archivo compilado coloca la imagen donde le da la gana? ¡Ya no sufra! ¡Ha llegado a nosotros el float! ¡Si, escuchó bien! ¡Float! El único paquete que se necesita para hacer que esas imágenes rebeldes se alinien a sus deseos.
Omitiendo los testimonios de la gente que ha conocido el paquete float y cambiado su vida, explicaremos más o menos qué hay que hacer de modo más esquemático.
Primero hay que descargar el paquete float.zip que incluye los archivos

README 2001-07-18 1009 bytes download
float.dtx 2001-11-07 37 Kbyte download
float.ins 2001-07-18 869 bytes download
float.pdf 2006-12-05 133 Kbyte download

En el readme (si, el primer archivo listado arriba) viene lo que hay que hacer, pero bueno, lo intentamos explicar aquí.

Abrir en nuestro editor los archivos "float.dtx" y "float.ins" y compilarlos con el latex (tengo que verificar esto, pero por lo pronto es asì). Con esto se genera la documentación y el archivo de estilo "float.sty" el cual es la platilla de estilo, o bien, si les gusta decirlo de otro modo, es el archivo que le dirá a latex qué carajos le hemos querido decir siempre con las imágenes flotantes.

Importante, el archivo "float.sty" puede copiarse en tres lugares pa que jale:
1) En el mismo lugar en donde se encuentre el archivo .tex que se ande compilando
2) En texfm del usuario en un lugar escondido que luego checo bien
3) En el texfm del root pa que no haya bronca con nadie más

Bueno, ahora sí, una vez armados con el float.sty hay que llamarlo dentro del documento .tex que estemos creando y, como ya es común, se le agrega al inicio

\usepackage{float}

y luego, al insertar la figura, se cambia la opción "h" por "H", así

\begin{figure}[H]
\begin{center}
\includegraphics[height=0.5in,width=2.0in]{requisitos.eps}
\caption{Flujos }
\label{fig:flujos}
\end{center}
\end{figure}

Y listo, con eso amarran la figura justo en donde quieren que se quede (Here!). Ahora bien, es recomendable leer el float.pdf que también bajaron pues hay un montón de opciones que se pueden usar y no solamente H.

Va pues.

Por cierto, la información me la dio Chucho pero la sacó del siguiente foro en donde Nely es la verdadera autora de la nota:

Liga a la página del foro Ajayu

miércoles, 4 de noviembre de 2009

Bibtex. Compilar archivo.

En otra parte se habla sobre la castellanización y el problema de las referencias lo cual se resolvió al codificar al archivo con el código UTF-8. Lo que no se mencionó es cómo se genera el archivo .bib

Se supone que se tiene el archivo fuente tex "archivo.tex"

Desde terminal:

>latex archivo.tex (repetir el comando al menos dos veces pues la primera vez puede compilar mal)
>bibtex archivo.aux (el cual fue generado con el comando latex de arriba)
>latex archivo.tex (de nuevo)
>dvips -Ppdf archivo.tex (generando el archivo postcript)
>ps2pdf archivo.ps (generando el archivo PDF)

Listo.

miércoles, 10 de junio de 2009

¡El emacs se ha vuelto loco!

O qué sucede cuando se cambian los acentos por símbolos raros.

Resulta que todo jalaba de perlas en el emacs, incluso estaba configurando el .emacs (archivo de configuración del emacs que se encuentra en los archivos ocultos en el home de cada usuario) y todo iba muy bien. Tenía en mi documento .tex:

\documentclass[letterpaper, 11pt]{article}
\usepackage{amssymb, amsthm, amsmath}
\usepackage{array}
\usepackage[latin1]{inputenc}
\usepackage[spanish, activeacute]{babel}
\usepackage{graphicx}
\usepackage{epsfig}
\usepackage[authoryear]{natbib}


\begin{document}
\maketitle
\tableofcontents
...
...
\end{document}

Y escribía, y compilaba, y veía el dvi y corregía y ampliaba y compilaba y veía el dvi y así...

Y de repente ¡ZAZ! que aparecen puros caracteres raros en donde tienen que ir los acentos. Y que con "buscar y reemplazar" (Alt-%) corrijo los simbolitos raros y los sustituyo por los acentos. Y que le doy compilar de nuevo (C-c C-c) y ¡ShaZaaaaaMMMM!!! Que se arruina todo y que no compila y que un friego de errores!

Tons fui con Adolfo.

Y después de muchas idas y venidas de mi parte (el Adolfo nomás me decía qué hacer y yo lo probaba y si jalaba, chido, si no pues de nuevo a preguntarle) y a punto de agotarle la paciencia que lo soluciono de la siguiente manera (claro, Adolfo me dijo cómo).

-Abre el documento en el emacs
-Corríjele TODOS los simbolos raros por los adecuados
-Presionar las teclas Esc-X para entrar al minibúfer
-Escribir set-buffer-file-coding-system (enter)
-A lo que pregunte el emacs se le da: utf-8 (yo uso ubuntu y me jaló, no sé si a todos les sirva ésta codificación)
-Si tienen añadido el archivo .bib (si tienen bibliografía y referencias en un archivo aparte con extensión .bib, pues) hacer lo mismo con él.
-Borrar en la carpeta donde estén (donde tengan el .tex pues) todo lo que no es .bib, .tex, .bst o .sty
-¡Listo!
-Una última cosa en
\usepackage[latin1]{inputenc} habrá que cambiar la opción latin1 por utf8 (\usepackage[utf8]{inputenc})

Ahora sí.

jueves, 28 de mayo de 2009

Poner listo el Latex para las Referencias Bibliográficas.

Lo primero que hice cuando me vi en la necesidad de escribir algo formal en donde voy a tener muchas referencias fue buscar a Adolfo de Unanue que es el que sí le sabe a todo ésto. Como yo estoy aprendiendo pues voy a poner lo que me dijo Adolfo.

Para empezar me dijo que bajara el flexbib con una búsqueda del google y lo encontré en http://www.latex.um.es/retazos/leccion_15/leccion_15.htm . Luego que me consiguiera el Jabref, el cual también viene en la página anterior, pero en los repositorios de Ubuntu lo encontré así que lo instalé con el synaptics. Ahora me dijo, todas las referencias ponlas en un archivo en donde nada más contenga las referencias y el archivo debes guardarlo con extensión .bib (ej. articulos.bib). La forma en que se deben escribir las referencias en el archivo .bib es la siguiente:

@Article{Nettel:2006pj,
author = "Nettel, Francisco and Quevedo, Hernando",
title = "{Topological quantization of the harmonic oscillator}",
year = "2006",
eprint = "math-ph/0612038",
archivePrefix = "arXiv",
SLACcitation = "%%CITATION = MATH-PH/0612038;%%"
}

@Book{arnold89mmo,
author = {V.I. Arnold},
title = {{M}athematical {M}ethods of {C}lassical {M}echanics},
publisher = {{Springer, New York}},
year = {1988},
edition = {2nd}
}

@PhdThesis{eikelder84can,
author = {H. M. M. Ten Eikelder},
title = {{C}anonical and {N}on-canonical {S}ymmetries for
{H}amiltonian {S}ystems},
school = {Technical University of Eindhoven},
year = {1984}
}

Los ejemplos son claramente para un artículo, un libro o una tesis. En el caso de los artículos se pueden buscar en el Spires:


Spires



En donde cada referencia encontrada tiene la opción Bibtex en donde viene el código que hay que copiar y pegar en el archivo .bib

Bueno, ahora me dijo, tienes que cargar el paquete del flexbib que descargaste. El lugar adecuado para descomprimir el flexbib.tar.gz (tar zxf flexbib.tar.gz para descomprimir desde la consola) es el home personal. Ahora sí, en el archivo .tex que estemos trabajando debemos poner

\usepackage{flexbib}

y en donde queramos que aparezcan las referencias (usualmente al final del documento) escribimos

\bibliographystyle{flexbib}
\bibliography{articulos}

\end{document}

En mi caso, articulos que aparece en el argumento de \bibliography{ } es el nombre de mi archivo .bib, es decir archivos.bib

Para aplicar las referencias dentro del cuerpo del archivo .tex que estemos haciendo se utiliza el comando \cite{ } sin ninguna restricción sobre si es matemático el código, es decir, va sin signos de $ , y en el argumento se pone, por ejemplo para la referencia en el archivo .bib que es

@Book{arnold89mmo,
author = {V.I. Arnold},
title = {{M}athematical {M}ethods of {C}lassical {M}echanics},
publisher = {{Springer, New York}},
year = {1988},
edition = {2nd}
}

se pone \cite{arnold89mmo}. Es importante que el archivo articulos.bib y el .tex que estemos creando lo pongamos en el mismo directorio. Me dijo Adolfo que después me enseña cómo se hace diferente.

Por cierto, si el flexbib no funciona como se espera y urge sacar el trabajo y no perder tiempo configurando nada entonces, se instala el natbib en el latex (seguramente ya lo tiene instalado el latex) y se pone al principio

\usepackage{natbib}

y al final

\bibliographystyle{plain}
\bibliography{articulos}

\end{document}

¡Importante! En el caso del natbib (paquete natbib.sys, en caso de que no lo tengan entonces hay que darle una googleada y aparecerá en alguna liga un archivo de texto que corresponde al programa natbib.sys, basta copiar todo el texto y pegarlo en el gedit y después guardarlo con el nombre "natbib.sys") el \cite{} se cambia por \citet{} (lleva una 't' al final, ojo).

El archivo .bib funciona igual y todo sale bien. Es muy recomendable que se compile dos veces mínimo antes de generar el dvi pues a veces le cuesta compilar bien.