Как можно выполнить выравнивание по символам отношений в среде case?

Как можно выполнить выравнивание по символам отношений в среде case?

Я использовал следующий код в LaTeX -

\documentclass{article}
\usepackage{amssymb,amsmath}
\begin{document}

\begin{table}[H]
\centering
  \begin{tabular}{c|c}
  \hline 
  { $X=y+z$}  & { 
   \parbox[c]{0.75\columnwidth}{
    $C_L = \begin{cases} 
        min\left[\left(Re\right),\: f(B)\right]\:;\: A<4\\   
        f(E)\:;\:4\le E<10\\
         -0.29\:;\: E\ge10
        \end{cases}$\\ 
    $f(E) = E^{3}-0.0159E^{2}-0.0204E+0.474$\\
  }
}\tabularnewline \hline
\end{tabular} 
\end{table}


\end{document}

В выводе я хотел бы, чтобы знаки равенства C_Lи f(E)были выровнены друг с другом. Я пробовал использовать alignenvironment, но это не работает. Может кто-нибудь помочь?

imageoutput

решение1

Вы можете сдвинуть casesсодержимое вправо на ту же величину, что и при f(E)использовании

$\phantom{f(E)}\llap{$C_L$} = \begin{cases}
%...

Смещение создает выровненный по правому краю блок нулевой ширины, чтобы не lвлиять на интервал.lapC_L

введите описание изображения здесь

P.S. Возможно, вам захочется использовать математический режим \minвместо простого ввода текста .min

решение2

Вы можете использовать alignсреду, которая предоставляется пакетом amsmath. Я вижу, что вы загружаете ее в любом случае:

\documentclass{article}
\usepackage{amssymb,amsmath}
\begin{document}

\begin{table}[H]
\centering
  \begin{tabular}{c|c}
  \hline 
  { $X=y+z$}  & { 
   \parbox[c]{0.75\columnwidth}{
   \begin{align}
   C_L&= \begin{cases} 
        min\left[\left(Re\right),\: f(B)\right]\:;\: A<4\\   
        f(E)\:;\:4\le E<10\\
         -0.29\:;\: E\ge10
        \end{cases}\\ 
    f(E)&= E^{3}-0.0159E^{2}-0.0204E+0.474
   \end{align}
  }
}\tabularnewline \hline
\end{tabular} 
\end{table}

\end{document}

Амперсанды перед знаками равенства задают символы, которые необходимо выровнять, то есть, если вы используете их в другом месте, то следующий за ними символ будет выровнен.

А вот вывод кода:

введите описание изображения здесь

решение3

Использование alignedокружающей среды кажется мне самым простым решением:

\documentclass{article}
\usepackage{amssymb,amsmath}
\begin{document}

\begin{table}[H]
\centering
  \begin{tabular}{c|c}
  \hline 
  { $X=y+z$}  & { 
   \parbox[c]{0.75\columnwidth}{
   \( \begin{aligned}
   C_L&= \begin{cases} 
        min\left[\left(Re\right),\: f(B)\right]\:;\: A<4\\   
        f(E)\:;\:4\le E<10\\
         -0.29\:;\: E\ge10
        \end{cases}\\ 
    f(E)&= E^{3}-0.0159E^{2}-0.0204E+0.474
   \end{aligned} \)
  }
}\tabularnewline \hline
\end{tabular} 
\end{table}

\end{document}

Обратите внимание на две вещи:

  • в пределах \parboxсреды alignedнеобходимо явно перевести ее в математический режим;
  • в исходном примере внизу было больше места, чем вверху; это было вызвано лишним символом \\после последней строки, который здесь удален.

вывод примера кода

решение4

Это просто комментарий к предложению Барбары (ответ позволяет улучшить форматирование). Вместо внутренних случаев я бы использовал alignedatдля того, чтобы также выровнять условия внутриcases

\left\{
 \begin{alignedat}{2}
   &\min[(Re),\: f(B)]\:;&\quad A&<4\\   
   &f(E)\:; &4&\le E<10\\
   &-0.29\:; &E&\ge10
 \end{alignedat}
\right.

Также я удалил \left...\rightконструкции изнутри, \minтак как они ничего не давали.

Редактировать: Добавлены визуальные эффекты

введите описание изображения здесь

Связанный контент