[Tex/LaTex] How to make a multi-line equation fit in a single column of a two-column document

equationsspacing

I am trying to suit a formula to a two-column style document using cases in the flalign.
It nearly fits if an unnecessary space would not prevent. Is their any option to remove it?

\documentclass[3p,times,12pt,draft,twocolumn]{elsarticle}
\usepackage{mathtools}

\begin{document}

\begin{flalign}
E_{\perp,diff}=
\begin{cases}
E_{g,meas}&\cdot(1.020-0.254\cdot k+0.0123\\
&\cdot\sin\gamma_S)  \quad \text{for k $\le$ 0.3}\\
E_{g,meas}&\cdot(1.400-1.749\cdot k+0.177\\ 
&\cdot\sin\gamma_S)      \quad \text{for 0.3 $<$ k $<$ 0.78}\\
E_{g,meas}&\cdot(0.486\cdot k-0.182\\ 
&\cdot \sin\gamma_S) \quad \text{for k $\geq$ 0.78}
\end{cases}
\end{flalign} 
\end{document}

enter image description here

Best Answer

You don't need flalign (I see it too often abused) nor cases, but aligned:

\documentclass[3p,times,12pt,draft,twocolumn]{elsarticle}
\usepackage{mathtools}

\begin{document}

\begin{equation}
E_{\perp,\mathrm{diff}}=
  \left\{
  \begin{aligned}
  E_{g,\mathrm{meas}}
    &\cdot(1.020-0.254\cdot k+0.0123\\
    &\cdot\sin\gamma_S)  \quad \text{for $k\le 0.3$}\\
  E_{g,\mathrm{meas}}
    &\cdot(1.400-1.749\cdot k+0.177\\
    &\cdot\sin\gamma_S)      \quad \text{for $0.3 < k < 0.78$}\\
  E_{g,\mathrm{meas}}
    &\cdot(0.486\cdot k-0.182\\
    &\cdot \sin\gamma_S) \quad \text{for $k \geq 0.78$}
  \end{aligned}
  \right.
\end{equation}
\end{document}

enter image description here

However, I'd split into two parts: one with the main information, the other with the complicated things.

\documentclass[3p,times,12pt,draft,twocolumn]{elsarticle}
\usepackage{mathtools}

\begin{document}

\begin{gather}
E_{\perp,\mathrm{diff}}=E_{g,\mathrm{meas}}\varphi(k,\gamma_S)\\
\varphi(k,\gamma_S)=
  \left\{
  \begin{array}{@{}l@{}}
  1.020-0.254k+0.0123\sin\gamma_S\\
    \hfill\text{for $k\le 0.3$}\\[1ex]
  1.400-1.749k+0.177\sin\gamma_S\\
    \hfill\text{for $0.3 < k < 0.78$}\\[1ex]
  0.486k-0.182\sin\gamma_S\\
    \hfill\text{for $k \geq 0.78$}
  \end{array}
  \right.\notag
\end{gather}
\end{document}

enter image description here