[Tex/LaTex] Referencing within an align environment

aligncross-referencing

The following LaTeX document:

\documentclass{article}

\usepackage{amsmath}
\begin{document}
\begin{align}
  E=mc^2 \\ \nonumber
  E=mc^2 \label{eq1}
\end{align}

ref \ref{eq1}
\end{document}

Does not display the reference \ref{eq1}. Why?

Best Answer

The \label is on the same equation line (not code line) as the \nonumber and therefore doesn't get any equation number to label and to reference later. You need to move \nonumber (or the \label) before the \\:

\documentclass{article}

\usepackage{amsmath}
\begin{document}
\begin{align}
  E=mc^2 \nonumber \\
  E=mc^2 \label{eq1}
\end{align}

ref \ref{eq1}
\end{document}

In the above case the equation number is placed in the second row. If you want it in the first then place the \nonumber after the \\ but the \label before it.

Related Question