Keep text with previous line - LaTeX equation and next sentence

What I am trying to do is probably very similar to the "Keep with next/previous" in MS Word. I have an equation and its description in two consecutive lines. I would like the two lines to shift to the next page if they cannot be in the same page.

$$Incoming\ Radiation, F_\lambda = S_\lambda.\cos \phi \label{eq:SolSpecIrrad}$$
Where $\phi$ is the solar zenith angle. % This line is getting pushed
% to the next page, as the equation is the last
% thing on the previous page.

• Look into the needspace package. Something like \needspace{1in} $$Incoming\ Radiation, F_\lambda = S_\lambda.\cos \phi \label{eq:SolSpecIrrad}$$ Where $\phi$ is the solar zenith angle. should work. – Steven B. Segletes Jun 21 '16 at 11:27
• don't use math italic for words! Incoming\ Radiation should be \textit{Incoming Radiation} – David Carlisle Jun 21 '16 at 11:28
• @DavidCarlisle I was sure that text in math should not be in italics? – Runar Jun 21 '16 at 11:37
• @runartrollet \textrm is anther possibility of course, although I assumed the OP wanted italics here. – David Carlisle Jun 21 '16 at 13:09

You could put it into a minipage, or use the samepage-package. I've added here the mathtools-package, which I would advice you to use. As commented by David Carlisle, you shouldn't spell out complete words in math-environments, as each individual letter will be typeset as a variable. You could put them in \text{Word}.

Code

\documentclass[11pt]{article}
\usepackage{mathtools}
\begin{document}
\vspace*{17.5cm}
\noindent\begin{minipage}{\textwidth}
$$\text{Incoming Radiation}, F_\lambda = S_\lambda.\cos \phi \label{eq:SolSpecIrrad}$$
Where $\phi$ is the solar zenith angle.
\end{minipage}
\end{document}

• a single \text{...} would be better: \text{Incoming Radiation, }. – barbara beeton Jun 21 '16 at 14:39

Set \postdisplaypenalty to 10000 for the special case:

\documentclass[11pt]{article}
\usepackage{amsmath}

\usepackage{lipsum} % just for the example

\newcommand{\commentedequationtext}{} % initialize
\newenvironment{commentedequation}[1]
{\renewcommand\commentedequationtext{#1}%
\postdisplaypenalty=10000
\equation}
{\endequation\commentedequationtext}

\begin{document}

\vspace*{6\baselineskip}
\lipsum[1-3]

\begin{commentedequation}{where $\phi$ is the solar zenith angle.}
\end{commentedequation}

\end{document}


You'll see that if 5\baselineskip is used, the equation will be on page 1.

I've manage to do what you need with nested tcolorbox. I've painted in red just to demonstrate a very long equation, the white background area inside is the description box.

\documentclass{article}
\usepackage{tcolorbox}
\tcbuselibrary{breakable}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{lipsum}
\begin{document}
\begin{tcolorbox}[colframe=red,colback=red!10,breakable,
]
$$Incoming\ Radiation, F_\lambda = S_\lambda.\cos \phi \label{eq:SolSpecIrrad}$$
\lipsum[1]

\lipsum[2-4]

Equation stuff, equation stuff,  equation stuff, equation stuff, equation stuff, equation stuff, equation stuff,

\begin{tcolorbox}[boxsep=0mm,left=0mm,width=\linewidth,boxrule=0pt,arc=0pt]

Where $\phi$ is the solar zenith angle. % This line is getting pushed
% to the next page, as the equation is the last
% thing on the previous page.

Description, description, description, description, %description, description, description
\end{tcolorbox}
\end{tcolorbox}
\lipsum[7]
\end{document}