Difference between revisions of "LaTeX"

From AstroBaki
Jump to navigationJump to search
Line 6: Line 6:
* [https://raw.github.com/AaronParsons/ugradio/master/texprimer/sample.tex LaTex Tutorial Code]: the raw code for compiling the above document
* [https://raw.github.com/AaronParsons/ugradio/master/texprimer/sample.tex LaTex Tutorial Code]: the raw code for compiling the above document
\usepackage{amsmath, amsfonts, amssymb}
\usepackage{amsmath, amsfonts, amssymb}
Line 359: Line 358:

Revision as of 12:10, 30 January 2018

Short Topical Videos

  • None

Additional Reading

  • LaTeX Tutorial Carl Heiles' original LaTeX tutorial (note: may need to save to disk first before opening)
  • LaTex Tutorial Code: the raw code for compiling the above document

\documentclass[preprint]{aastex} \usepackage{amsmath, amsfonts, amssymb}

%Remember that in a tex file, a percent sign means 'comment' and the %rest of the line will not appear in the printed output.

%another option include preprint2, which gives you two columns. to invoke: %\documentclass[preprint2]{aastex}

%Note: If you're doing work for some other class and don't want to use %aastex formatting, you can use some varient of the following commands, %which are intrinsic to LATEX. However, some commands below, such as %\altaffiltext and \deluxetable, are peculiar to aastex.

%\documentclass[11pt,a4paper,notitlepage,oneside]{article} %\usepackage[dvips]{graphicx}


\title{\LaTeX\ Is Your Friend OR ENEMY?????????.} {\bf Originally written by Nathan Lundblad}

\begin{abstract} We present a paper on useful \LaTeX\ stuff. Make sure to look at the source code for this document, as that is where the real story is. For more fun, look at Leslie Lamport's book in the 705 Campbell bookshelf. \end{abstract}


\section{The Big Picture}\label{bigpicsec} %NOTE THE LABEL SYNTAX LaTeX (pronounced {\it lay}-teck or {\it lah}-teck) is a designer package based on a typesetting program called \TeX\, which was originated by Donald Knuth of Stanford many many years ago. \LaTeX\ first appeared in 1985 and is extremely popular, particularly in the scientific community where it has become an almost universal standard. Using \LaTeX\ will result in stunningly beautiful documents and will, in the long run---because of mathematics and labels/referencing---be easier to deal with than using Micro\$oft Word$^{tm}$ and its cousins. Although creating reports and articles in a different fashion from what you may be used to can be a little intimidating at first, a few basic facts and a couple of good sample documents will take you a long way.

\section{How To Use \LaTeX: The Most General Possible Summary} \label{howtosec}

       Remember on PC word processors how there is an option called

{\it reveal codes} or some such? Well, in \LaTeX\ you essentially write those codes yourself, and then compile them to get your printable output. You'll type up these codes in your favorite text editor and name the file something appropriate with a .tex suffix.

       Then you must compile that file at your shell prompt by typing

pdflatex whatever (you can include the suffix .tex if you want). \LaTeX\ will spit out some random files (provided you haven't made any errors), including whatever.pdf, which is your printable output. \LaTeX\ will also print some messages on your screen. {\it Be sure to look at these messages!!!!!!!} If your compilation failed, they will attempt to tell you what error you may have committed. Once you figure it out, you edit the tex file and try running pdflatex whatever again. The most common error is to forget the \$ sign on each side of an equation, or to have unmatched curly brackets. The error message gives the line number; the easiest way to find the offending text is to go to that line number in your editor. {\it NOTE} that many times the error occurs {\it before} the line number given by the \LaTeX\ output.

       To view the whatever.pdf file on your terminal screen,

type evince whatever.pdf at your shell prompt. The nicely-formatted output appears on the output window. You can edit the tex file and left click on your pdf output window; the updated text appears.

Look things over carefully and make any changes {\it before printing it on paper}---support environmentalism! Finally, to print the output when you're all done: \begin{enumerate} \item lp whatever.pdf (prints the file). \end{enumerate}

\section{Some Basic Syntax}\label{basicsec} Every LaTeX document must be enclosed by a begin and end tags. Nothing goes after the latter, but some very important stuff goes before the former, such as documentclass declarations and suchlike, which you'll learn about later. As you may have noticed, LaTeX reserves more than a few characters for its own nefarious purposes. Generally, to produce them in your final document you must invoke the backslash. The same method applies to other special characters: \{ \# \} \%.

There are three kinds of hyphens in LaTeX: -,--, and ---. The first is used for intra-word dashes, the second for number ranges (41--42), and the third for the standard intra-sentence dash---it's my personal favorite. In other situations, just use whatever looks the best.

Grouping letters and words is accomplished with the \{ and \} characters. Most commands only work on one group at a time, so surround the parts of your text you want to modify with curly brackets. For example, you can have {\it italicized type}, {\bf boldface type}, and {\tt typewriter-type type}.

Footnotes are incredibly easy to produce, and are automatically numbered.

The observant student in the back of the room may cleverly ask ``So how do you create a backslash, if \\ represents a skipped line?. Well, you have to use the verb (verbatim) environment, which is handily revealed in the source code. The argument of the verb environment is delimited by two identical characters; above, we used ampersands. You can use a pair of any normal characters as the delimiter. The verb environment has an unfortunate peculiarity: you have to put all of its argument on a single typed line in the tex file. Here's an example of the output from the verbatim envroment:

\begin{verbatim} function wopen

WOPEN -- return list of all open windows
Quick way to find all open windows
result= wopen()
The current device must be X Windows.
Written CARL, who finally got fed up

if (!d.name ne 'X') then begin message, 'DEVICE not set to X Windows.', /INFO return, -1 endif


device, window_state=openwindows openwindows = where(openwindows,Nopen)

return, openwindows end \end{verbatim}

The $begin$ tag with the verbatim environment has the perhaps unfortunate peculiarity that it skips and starts a new line.


When you're preparing a LaTeX document, it's {\it smart, labor-saving, sophisticated, and good practice}---but not necessary---to use the label command. The use of labels ensures that you can refer to sections, equations, figures, and tables by a name---i.e., by {\it reference}---and not a number. So what's the difference? When you're inserting, cutting, and pasting, you {\it will} lose count of what section you're in or what equation is what, which will make referring to such objects in the text. Because I labeled the beginning of this section, I can always refer to it using the label, regardless of whether I go back and make changes in section order.

\section{Style files, packages, and user defined commands}\label{stylesec}

You may have noticed the a documentclass in some LaTeX documents. This line sets a template for the document as a whole; it tells LaTeX that you want to write an article-type document using the American Astronomical Society's preprint class package. The AAS TeX class (used for most astronomy documents) sets the font and layout for the entire document and it automatically loads some useful packages, which are collections of new commands that allow you to customize your document and do nifty things with images and layouts.


       The great beauty of LaTeX lies in how the math comes out. It

does numbered equations exceptionally well, enables math within standard text, and has a shocking number of special characters available. Inserting standard equations into a LaTeX document is done with the equation environment, and works like so:

\begin{verbatim} \begin{equation} \label{laplacian} \frac{\partial^2 V} {\partial x^2}+\frac{\partial^2 V} {\partial y^2} + \frac{\partial^2 V}{\partial z^2}=0 \end{equation} \end{verbatim}

Laplace would have loved \LaTeX. You can also do Greek letters easily:

\begin{verbatim} \begin{equation} \label{gammaeq} \gamma=\frac{1}{\sqrt{1-\beta^2}} \end{equation} \end{verbatim}

If you want to put mathematics into text, you can use math mode, which is commonly delimited by dollar signs. If you want to show a matrix math equation, you use the eqnarray environment:

\begin{verbatim} \begin{eqnarray} \label{smeqn} \left[ \begin{array}{cccc} {[ ss ]} & {[ st ]} & {[ su ]} & {[ sv ]} \\ {[ ts ]} & {[ tt ]} & {[ tu ]} & {[ tv ]} \\ {[ us ]} & {[ ut ]} & {[ uu ]} & {[ uv ]} \\ {[ vs ]} & {[ vt ]} & {[ vu ]} & {[ vv ]} \\ \end{array} \; \right] \cdot \left[ \begin{array}{c} A \\ B \\ C \\ D \\ \end{array} \; \right] \; = \left[ \begin{array}{c} {[ s y ]} \\ {[ t y ]} \\ {[ u y ]} \\ {[ v y ]} \\ \end{array} \; \right] \end{eqnarray} \end{verbatim}

If you want an equation, such as $\alpha = \beta \times \Lambda \cdot 4$, to be in bold---including those Greek letters---surround the whole equation by boldmath.


If you want to bring in plots from Python or, for that matter, an arbitrary graphic, you should put the following line in your tex document, before the begin document part. Common formats are png (good for lines), jpg (good for images), and pdf (best for plots/line figures). Each of these formats has a different way of representing graphics. In particular, pdf (and ps) can represent plots and figures in {\it vector graphic} form --- as instructions for drawing each line of the figure. This form, which contrasts {\it bitmap} image formats like png and jpg, is infinitely scalable and never has pixelization issues, making it ideal for representing figures in a paper. Once you have your graphics file the file in the same directory as your .tex file, you can insert it into the document like so:

\begin{verbatim} \begin{figure}[h!] \begin{center} \includegraphics[width=.6\textwidth]{2dgaussian.pdf} \caption{A Gaussian. \label{gaussfig}} \end{center} \end{figure} \end{verbatim}

In addition to width, you can define height, angle, and scale. If you specify only width or height, the other dimension scales automatically. If you specify both, you can stretch the image. Angle rotates the image by some number of degree in the positive direction. Scale multiplies the picture's original size by the number you specify. When specifying width or height, you must include units. Some options are: textwidth, in, cm, pt, em, ex. See the Not So Short Guide for more info.

If you want to display several pictures together or have size scaling or stretching or rotation, as in Figure \ref{silly}, you can do this.

\begin{verbatim} \begin{figure} [!p] \begin{center} \includegraphics[width=1in,height=5in]{2dgaussian.pdf} \includegraphics[width=5in,height=1in,angle=180]{2dgaussian.pdf} \includegraphics[scale=0.1,angle=45]{2dgaussian.pdf} \end{center} \caption{This is a very silly figure! \label{silly}} \end{figure} \end{verbatim}

       One of the most difficult tasks for the novice (and, even, the

experienced!) typesetter is image placement. \LaTeX\ places floating bodies where it thinks they best fit, which isn't always the most logical place in a document. You have one way to control placement: the placement commands, which work for tables and figures. They are: {\tt [h!], [t!], [p!], [b!]}, meaning: ``put here, ``put at top of page, make a new page, ``put at bottom of page. Sometimes they are frustratingly inattentive to your desires; this occurs because \LaTeX\ is smarter than you think it is---there's not enough space to put the figure exactly where you want it. .Judicious use of sizing (for images) and using smaller fonts (for tables), or relocating, are your only options.


       Tables are useful for displaying a large number of results.

There are two environments provided for tables; \verb&{table}&, which is a \LaTeX\ resident environment, and deluxetable, which is an AAS\TeX\ custom environment. table is a simpler version for which the placement commands work; deluxetable is a more elaborate version for which the placement commands do not work---it always puts the table at the very end, so it's not very nice for lab reports.

Let's begin with the ordinary table, which is more flexible because you the placement commands work.

\begin{verbatim} \begin{table}[!b] %THE [!b] TELLS IT TO PUT THE TABLE AT THE BOTTOM OF THE PAGE. %IF YOU USED [!t] IT WOULD PUT IT AT THE TOP. \begin{center} \caption{Sample table \label{normtable}} %TABULAR FORMAT IS THE WORD HERE; the c's represent centered %columns, and the vertical bars represent vertical lines. %Lines are broken by \\, and columns are separated by the %ampersand. \begin{tabular}{|c|c|} \hline Temperature & Voltage Drop \\ \hline \hline 310K & 0.6761V$\pm$0.0004V\\ \hline 300K & 0.7064V$\pm$0.0005V\\ \hline 77K & 1.5318V$\pm$0.001V\\ \hline \end{tabular} \end{center} \end{table} \end{verbatim}

And now, we end with the deluxetable; it's always at the end, on its very own page. Because we're ending with it, this is one of the few instances where it's properly placed---but because it's on its own page, it's placement definitely not elegant!