\multicolumn в массиве не отображается разделитель столбцов

\multicolumn в массиве не отображается разделитель столбцов

Я пытаюсь написать три столбца уравнений, разделенных вертикальными линиями в массиве, но когда я использую команду multicolumn, она не показывает разделитель столбцов. Я пробовал использовать пакет multicols, но он портит форматирование.

\[
\begin{array}{>{\displaystyle}r>{\displaystyle}l|>{\displaystyle}r>{\displaystyle}l|>{\displaystyle}r>{\displaystyle}l}
\frac{\delta^2\psi_L}{\delta x^2}& = -k^2Ce^{ikx}-k^2Re^{-ikx}&\frac{\delta^2\psi_C}{\delta x^2}& = A\kappa^2e^{\kappa x}+B\kappa^2e^{-\kappa x}&\frac{\delta^2\psi_R}{\delta x^2}& = -Tk^2e^{ikx}\\
&&&&&\\
&=-k^2\psi_L&&=\kappa^2\psi_C&&=-k^2\psi_R\\
&&&&&\\
&=-\frac{2mE}{\hbar^2}\psi_L&&=\frac{2m(V-E)}{\hbar^2}\psi_C&&=-\frac{2mE}{\hbar^2}\psi_R\\
&&&&&\\
\multicolumn{2}{l}{\mbox{Substitute into (1), }V=0}&\multicolumn{2}{c}{\mbox{Substitute into (1)}}&\multicolumn{2}{c}{\mbox{Substitute into (1), }V=0}\\
&&&&&\\
E\psi_L&=E\psi_L&(E-V)\psi_C&=(E-V)\psi_C&E\psi_R&=\psi_R\\
\end{array}
\]

Выход:

решение1

Вы можете использовать

\multicolumn{2}{l|}{\mbox{Substitute into (1), }V=0}

чтобы дать вам вертикальную линию в конце вашего multicolumn. Вот полный MWE:

% arara: pdflatex
% !arara: indent: {overwrite: yes}
\documentclass{article}
\usepackage{array}

\begin{document}

\[
    \begin{array}{>{\displaystyle}r>{\displaystyle}l|>{\displaystyle}r>{\displaystyle}l|>{\displaystyle}r>{\displaystyle}l}
        \frac{\delta^2\psi_L}{\delta x^2} & = -k^2Ce^{ikx}-k^2Re^{-ikx} & \frac{\delta^2\psi_C}{\delta x^2} & = A\kappa^2e^{\kappa x}+B\kappa^2e^{-\kappa x} & \frac{\delta^2\psi_R}{\delta x^2} & = -Tk^2e^{ikx}              \\
                                          &                             &                                   &                                                &                                   &                             \\
                                          & =-k^2\psi_L                 &                                   & =\kappa^2\psi_C                                &                                   & =-k^2\psi_R                 \\
                                          &                             &                                   &                                                &                                   &                             \\
                                          & =-\frac{2mE}{\hbar^2}\psi_L &                                   & =\frac{2m(V-E)}{\hbar^2}\psi_C                 &                                   & =-\frac{2mE}{\hbar^2}\psi_R \\
                                          &                             &                                   &                                                &                                   &                             \\
        \multicolumn{2}{l|}{\mbox{Substitute into (1), }V=0}&\multicolumn{2}{c|}{\mbox{Substitute into (1)}}&\multicolumn{2}{c}{\mbox{Substitute into (1), }V=0}\\
                                          &                             &                                   &                                                &                                   &                             \\
        E\psi_L                           & =E\psi_L                    & (E-V)\psi_C                       & =(E-V)\psi_C                                   & E\psi_R                           & =\psi_R                     \\
    \end{array}
\]
\end{document}

Примечание: похоже, вы жестко кодируете ссылку, используя (1); лучше избегать подобных вещей и использовать \ref, \eqrefи друзей.

Вы можете увеличить интервал вокруг =символов, используя

    \begin{array}{>{\displaystyle}r@{}>{\displaystyle}l|>{\displaystyle}r@{}>{\displaystyle}l|>{\displaystyle}r@{}>{\displaystyle}l}

что удаляет разделение столбцов; кроме того, вы можете использовать, например,

    \renewcommand{\arraystretch}{3}

и удалите пустые строки, чтобы задать интервал между строками.

Скриншот

% arara: pdflatex
% !arara: indent: {overwrite: yes}
\documentclass{article}
\usepackage{array}

\begin{document}

\[
    \renewcommand{\arraystretch}{3}
    \begin{array}{>{\displaystyle}r@{}>{\displaystyle}l|>{\displaystyle}r@{}>{\displaystyle}l|>{\displaystyle}r@{}>{\displaystyle}l}
        \frac{\delta^2\psi_L}{\delta x^2} & {}= -k^2Ce^{ikx}-k^2Re^{-ikx} & \frac{\delta^2\psi_C}{\delta x^2} & {}= A\kappa^2e^{\kappa x}+B\kappa^2e^{-\kappa x} & \frac{\delta^2\psi_R}{\delta x^2} & {}= -Tk^2e^{ikx}              \\
                                          & {} =-k^2\psi_L                &                                   & {}=\kappa^2\psi_C                                &                                   & {} =-k^2\psi_R                \\
                                          & {}=-\frac{2mE}{\hbar^2}\psi_L &                                   & {} =\frac{2m(V-E)}{\hbar^2}\psi_C                &                                   & {}=-\frac{2mE}{\hbar^2}\psi_R \\
        \multicolumn{2}{l|}{\mbox{Substitute into (1), }V=0}&\multicolumn{2}{c|}{\mbox{Substitute into (1)}}&\multicolumn{2}{c}{\mbox{Substitute into (1), }V=0}\\
        E\psi_L                           & {} =E\psi_L                   & (E-V)\psi_C                       & {} =(E-V)\psi_C                                  & E\psi_R                           & {} =\psi_R                    \\
    \end{array}
\]

\end{document}

Следуя egreg'sпредложению, вы также можете использовать новый тип столбца:

\newcolumntype{M}{>{\displaystyle}r@{}>{\displaystyle}l}

что позволяет вам писать

\begin{array}{M|M|M}

Вы также можете расположить записи по центру последней строки:

    \multicolumn{2}{c|}{E\psi_L=E\psi_L}                   & \multicolumn{2}{c|}{(E-V)\psi_C=(E-V)\psi_C}                                  & \multicolumn{2}{c}{E\psi_R=\psi_R}                    \\

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