# LaTeX

 Off-campus connections to Teer Machines will require a VPN to work - see OIT Alert 4100 for details. If Teer machines will not connect, try a VCL: VCL#Using_a_Linux_VCL_and_MATLAB
 Version pdfeTeX 3.141592-1.21a-2.2 On Unix $LaTeX$ Project 8/19/2012

LaTeX is a document preparation system written by Don Knuth (TeX) and extended by Leslie Lamport. It is a powerful, and free, way to generate professional, dynamic documents.

## LaTeX on Pratt Pundit

### The Basics

Pratt Pundit can process most basic LaTeX structures by using math tags. For example,

$q(t)=q(t_0)+\int_{t_0}^ti(\tau)~d\tau\,\!$

can be created using

<center>
$q(t)=q(t_0)+\int_{t_0}^ti(\tau)~d\tau\,\!$
</center>

Note that the \,\! part forces Pundit to create a PNG graphic out of the equation. Otherwise, it may try to render the equation using text:

$q(t)=q(t_0)+\int_{t_0}^ti(\tau)~d\tau$

which is not nearly as...cool - though apparently if you are *not* logged in the graphic gets rendered regardless... Some equations will not need the \,\! part:

$a=\left(\frac{dv}{dt}\right)$

though putting it in will not hurt. As time goes on, the default setting for Pundit may be to always render math as a graphic. The advantage of not doing that is, in text mode, you can have something like $c^2=a^2+b^2-2ab\cos(\theta)$ as opposed to something like $c^2=a^2+b^2-2ab\cos(\theta)\,\!$ which is not quite as smooth.

### Equation Lists

For multiple equations one after the other, use the \begin{align} environment. This will allow you to line equations up by placing an ampersand just before the symbol on each line you want as the alignment character. Use \\ to go to the next equation. For example,

<center>\begin{align} q(t)&=q(t_0)+\int_{t_0}^ti(\tau)~d\tau\\ a&=\left(\frac{dv}{dt}\right) \end{align}</center>

produces:

\begin{align} q(t)&=q(t_0)+\int_{t_0}^ti(\tau)~d\tau\\ a&=\left(\frac{dv}{dt}\right) \end{align}

You can also have multiple equations in the same row:

<center>\begin{align} L_1&=10~\mbox{mH} & R_1&=15~\mbox{k}\Omega & C_1&=22~\mu\mbox{F}\\ L_2&=18~\mbox{mH} & R_2&=22~\mbox{k}\Omega & C_2&=17~\mu\mbox{F} \end{align}</center>

produces:

\begin{align} L_1&=10~\mbox{mH} & R_1&=15~\mbox{k}\Omega & C_1&=22~\mu\mbox{F}\\ L_2&=18~\mbox{mH} & R_2&=22~\mbox{k}\Omega & C_2&=17~\mu\mbox{F} \end{align}

### Arrays

Arrays work perfectly well in Pundit - as long as you don't try to stretch them:

$\begin{array}{|c|c|c|}\hline \mbox{Singularity Function} & \mbox{Name} & \mbox{Alternate Symbol} \\ \hline \hline ^0 & \mbox{unit step function} & u(t) \\ \hline ^1 & \mbox{unit ramp function} & r(t)=t~u(t) \\ \hline \frac{1}{2}^2 & \mbox{unit parabola function} & p(t)=\frac{1}{2}t^2~u(t) \\ \hline \end{array}$

## Known Issues

• LaTeX on Pundit does not know "unnumbered" versions of things. That is to say, trying to use \begin{align*}, for example with:
<center>\begin{align*} e^x&=\sum_{k=0}^{\infty}\frac{x^k}{k!} \end{align*}</center>

will cause:

Failed to parse (unknown function '\begin'): \begin{align*} e^x&=\sum_{k=0}^{\infty}\frac{x^k}{k!} \end{align*}

which is bad... Use the "unstarred" version:

<center>\begin{align} e^x&=\sum_{k=0}^{\infty}\frac{x^k}{k!} \end{align}</center>

to get:

\begin{align} e^x&=\sum_{k=0}^{\infty}\frac{x^k}{k!} \end{align}
• LaTeX on Pundit does not know the \renewcommand command - so arrays cannot be stretched.

## FAQ

### What's the 15-second summary of using LaTeX?

1. Use emacs blah.tex & to generate the source code.
2. Use latex blah.tex to process the file. If successful, among other things, you will have a new blah.dvi file.
3. Use dvips -t letter blah.dvi to create a PostScript file from the DVI file.
4. Use evince blah.ps & to look at (and eventually print) the file.

Note - if you have a \tableofcontents, or a \listoffigures, or any \label and \ref commands, you will want to run the latex step three times before progressing to the okular step. Also, once you have run evince, you won't need to re-run it each time; evince will always look at the most current version of the ps file - meaning you 'will have to run both latex and dvips to get a new version of the PostScript file to view. That is to say, a typical command history might be:

emacs lab1.tex &
latex lab1.tex
dvips -t lab1.dvi
evince lab1.ps &
latex lab1.tex
dvips -t lab1.dvi
latex lab1.tex
dvips -t lab1.dvi
latex lab1.tex
dvips -t lab1.dvi
latex lab1.tex
dvips -t lab1.dvi
latex lab1.tex
dvips -t lab1.dvi

### What do I do if LaTeX just sits there?

If LaTeX hits an error, hit CTRL-D to get out of LaTeX, then search above for the error, its location, and its probably cause.

### What did I do wrong?

Generally, LaTeX will try to tell you - look closely at the error message LaTeX gives you

### What is Underfull hbox -10000?

It's a warning that something is a bit thin - generally a table or a figure. Don't worry about these at all.

### Why does LaTeX think my align or align* environment is messed up?

To continue: "I have checked it thousands of time and it looks good to me!" Make sure there are no blank lines within the environment. For some reason align hates those. The following, for example, causes problems:

\begin{align}
a\\

b
\end{align}

Also - it may be in a line above the end of the align environment. You can use % in front of a line of LaTeX code to turn that whole line into a comment - doing that, you can find which line is having a bad day and correct it.

### My \pagebreak doesn't...page...break Why?

Make sure there is a blank line after the \pagebreak command; that is:

blah
\pagebreak

more blah

### How can I double space?

Basically, include the following two lines between the \documentclass and the \begin{document}[1]:

\usepackage{setspace}
\setstretch{2.0}

The MIT page has more options, including adding different spacing to sections of a document.

### How do I get a $Symbol For the characters that LaTeX uses as code ($ and { or }) you need to issue the command to print those - in other words, \$\{ and \} are the commands to print those individual characters. For example, the code: \$\{10,000\}

will produce $\\{10,000\}$

## Questions

Post your questions by editing the discussion page of this article. Edit the page, then scroll to the bottom and add a question by putting in the characters *{{Q}}, followed by your question and finally your signature (with four tildes, i.e. ~~~~). Using the {{Q}} will automatically put the page in the category of pages with questions - other editors hoping to help out can then go to that category page to see where the questions are. See the page for Template:Q for details and examples.