我已经阅读了所有将长公式放在一页中的不同解决方案,但我仍然对得到的结果不满意。公式右对齐,看起来不太好。如果您有更好的解决方案,请告诉我。这是我的代码:
\begin{equation}
\begin{split}
(1-\mathbf{B})\begin{bmatrix} y_1\\y_2 \\ y_3 \end{bmatrix} &= \\
(\begin{bmatrix} 1\\1 \\ 1 \end{bmatrix}-\begin{bmatrix} 0.30064^{*} & -0.70171 &-10.27380 \\ 0.00206 & 0.35560^{*} & -0.62373 \\ 0.00013 & 0.00228 & 0.77829^{*} \end{bmatrix}\mathbf{B}-\\
\begin{bmatrix} -0.24890^{*} & 0.53801 & -3.03724 \\ -0.00600 & 0.20570^{*} & -1.04583 \\ -0.00010 & -0.00189 & 0.27768^{*} \end{bmatrix}\mathbf{B}^2-\\
\begin{bmatrix} 0.61824^{*} & 0.33973 & -1.09651 \\ -0.00287 & -0.12782 & 2.79815 \\ -0.00002 & -0.00249 & -0.07773 \end{bmatrix}\mathbf{B}^3) \begin{bmatrix} \varepsilon_{1t} \\ \varepsilon_{2t} \\ \varepsilon_{3t} \end{bmatrix}
\end{split}
\end{equation}
答案1
像这样的长方程有时会隐藏重要的细节——我会考虑使用局部定义,例如
以下是完整的 MWE
% arara: pdflatex
% !arara: indent: {overwrite: true}
\documentclass{article}
\usepackage{amsmath}
\begin{document}
Consider the equation
\begin{equation}
(1-\mathbf{B})\vec{y} = (1-M_1-M_2\mathbf{B}^2-M_3\mathbf{B}^3)\vec{\epsilon}
\end{equation}
where
\begin{align*}
M_1 & = \begin{bmatrix} 0.30064^{*} & -0.70171 & -10.27380 \\ 0.00206 & 0.35560^{*} & -0.62373 \\ 0.00013 & 0.00228 & 0.77829^{*} \end{bmatrix}\\
M_2 & = \begin{bmatrix} -0.24890^{*} & 0.53801 & -3.03724 \\ -0.00600 & 0.20570^{*} & -1.04583 \\ -0.00010 & -0.00189 & 0.27768^{*} \end{bmatrix}\\
M_3 & = \begin{bmatrix} 0.61824^{*} & 0.33973 & -1.09651 \\ -0.00287 & -0.12782 & 2.79815 \\ -0.00002 & -0.00249 & -0.07773 \end{bmatrix}
\end{align*}
\end{document}
可以使用siunitx
帮助十进制对齐的包。
% arara: pdflatex
% !arara: indent: {overwrite: on, localSettings: true}
\documentclass{article}
\usepackage{amsmath}
\usepackage{siunitx}
\begin{document}
Consider the equation
\begin{equation}
(1-\mathbf{B})\vec{y} = (1-M_1\mathbf{B}-M_2\mathbf{B}^2-M_3\mathbf{B}^3)\vec{\epsilon}
\end{equation}
where
\begin{align*}
M_1 & =
\left[
\setlength{\arraycolsep}{10pt}
\begin{array}{S[table-format=1.5] S[table-format=1.5] S[table-format=2.5]}
0.30064$^*$ & -0.70171 & -10.27380 \\
0.00206 & 0.35560$^*$ & -0.62373 \\
0.00013 & 0.00228 & 0.77829$^*$
\end{array}
\right]
\\
M_2 & =
\left[
\setlength{\arraycolsep}{10pt}
\begin{array}{S[table-format=1.5] S[table-format=1.5] S[table-format=1.5]}
-0.24890$^{*}$ & 0.53801 & -3.03724 \\
-0.00600 & 0.20570$^{*}$ & -1.04583 \\
-0.00010 & -0.00189 & 0.27768$^{*}$
\end{array}
\right]
\\
M_3 & =
\left[
\setlength{\arraycolsep}{10pt}
\begin{array}{S[table-format=1.5] S[table-format=1.5] S[table-format=1.5]}
0.61824$^{*}$ & 0.33973 & -1.09651 \\
-0.00287 & -0.12782 & 2.79815 \\
-0.00002 & -0.00249 & -0.07773
\end{array}
\right]
\end{align*}
\end{document}
答案2
我会构造三行,以便大型矩阵垂直对齐。我还会对三个 3x3 矩阵中的数字进行十进制对齐。为此,您可以使用包dcolumn
;这需要使用array
环境而不是环境。当然,pmatrix
您仍然可以对三个列向量使用环境。pmatrix
\documentclass{article}
\usepackage[margin=1in]{geometry}
\usepackage{amsmath}
\renewcommand\arraycolsep{3pt} % default value: 6pt
\usepackage{dcolumn}
\newcolumntype{d}[1]{D{.}{.}{#1}}
\begin{document}
\begin{equation}\begin{split} \label{eq:threelign}
(1-\mathbf{B})
\begin{bmatrix} y_1 \\y_2 \\ y_3 \end{bmatrix}
= \left(
\begin{bmatrix} 1 \\1 \\ 1 \\ \end{bmatrix}
\right.
&- \left[ \begin{array}{d{2.5}d{3.5}d{3.5}}
0.30064^{*} & -0.70171 &-10.27380 \\
0.00206 & 0.35560^{*} & -0.62373 \\
0.00013 & 0.00228 & 0.77829^{*} \\
\end{array}\right] \mathbf{B} \\
&- \left[ \begin{array}{d{2.5}d{3.5}d{3.5}}
-0.24890^{*} & 0.53801 & -3.03724 \\
-0.00600 & 0.20570^{*} & -1.04583 \\
-0.00010 & -0.00189 & 0.27768^{*} \\
\end{array}\right] \mathbf{B}^2 \\
&- \left.
\left[ \begin{array}{d{2.5}d{3.5}d{3.5}}
0.61824^{*} & 0.33973 & -1.09651 \\
-0.00287 & -0.12782 & 2.79815 \\
-0.00002 & -0.00249 & -0.07773
\end{array}\right] \mathbf{B}^3
\right)
\begin{bmatrix}
\varepsilon_{1t} \\ \varepsilon_{2t} \\ \varepsilon_{3t}
\end{bmatrix}
\end{split}\end{equation}
\end{document}
答案3
还有另一种可能性:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
\begin{split}
(1-\mathbf{B})
\begin{bmatrix} y_1\\y_2 \\ y_3 \end{bmatrix}
&=
\left(\begin{bmatrix} 1\\1 \\ 1 \end{bmatrix}
- \begin{bmatrix} 0.30064^{*} & -0.70171 & -10.27380 \\ 0.00206 & 0.35560^{*} & -0.62373 \\ 0.00013 & 0.00228 & 0.77829^{*} \end{bmatrix}\mathbf{B}\right. \\
&\qquad{} - \begin{bmatrix} -0.24890^{*} & 0.53801 & -3.03724 \\ -0.00600 & 0.20570^{*} & -1.04583 \\ -0.00010 & -0.00189 & 0.27768^{*} \end{bmatrix}\mathbf{B}^2\\
&\qquad{} - \left.\begin{bmatrix} 0.61824^{*} & 0.33973 & -1.09651 \\ -0.00287 & -0.12782 & 2.79815 \\ -0.00002 & -0.00249 & -0.07773 \end{bmatrix}\mathbf{B}^3\right) \begin{bmatrix} \varepsilon_{1t} \\ \varepsilon_{2t} \\ \varepsilon_{3t} \end{bmatrix}
\end{split}
\end{equation}
\end{document}
注意使用\left...\right
对来获取大分隔符,并且还使用,{} - ...
以便将行首的减号视为二元运算符。
答案4
也许multline
这里实际上没有任何对齐点:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
original equation/split
\begin{equation}
\begin{split}
(1-\mathbf{B})\begin{bmatrix} y_1\\y_2 \\ y_3 \end{bmatrix} &= \\
(\begin{bmatrix} 1\\1 \\ 1 \end{bmatrix}-\begin{bmatrix} 0.30064^{*} & -0.70171 &-10.27380 \\ 0.00206 & 0.35560^{*} & -0.62373 \\ 0.00013 & 0.00228 & 0.77829^{*} \end{bmatrix}\mathbf{B}-\\
\begin{bmatrix} -0.24890^{*} & 0.53801 & -3.03724 \\ -0.00600 & 0.20570^{*} & -1.04583 \\ -0.00010 & -0.00189 & 0.27768^{*} \end{bmatrix}\mathbf{B}^2-\\
\begin{bmatrix} 0.61824^{*} & 0.33973 & -1.09651 \\ -0.00287 & -0.12782 & 2.79815 \\ -0.00002 & -0.00249 & -0.07773 \end{bmatrix}\mathbf{B}^3) \begin{bmatrix} \varepsilon_{1t} \\ \varepsilon_{2t} \\ \varepsilon_{3t} \end{bmatrix}
\end{split}
\end{equation}
new multline
\begin{multline}
(1-\mathbf{B})\begin{bmatrix} y_1\\y_2 \\ y_3 \end{bmatrix} = {}\\
\Biggl(\begin{bmatrix} 1\\1 \\ 1 \end{bmatrix}-\begin{bmatrix} 0.30064^{*} & -0.70171 &-10.27380 \\ 0.00206 & 0.35560^{*} & -0.62373 \\ 0.00013 & 0.00228 & 0.77829^{*} \end{bmatrix}\mathbf{B}-{}\\
\begin{bmatrix} -0.24890^{*} & 0.53801 & -3.03724 \\ -0.00600 & 0.20570^{*} & -1.04583 \\ -0.00010 & -0.00189 & 0.27768^{*} \end{bmatrix}\mathbf{B}^2-{}\\
\begin{bmatrix} 0.61824^{*} & 0.33973 & -1.09651 \\ -0.00287 & -0.12782 & 2.79815 \\ -0.00002 & -0.00249 & -0.07773 \end{bmatrix}\mathbf{B}^3\Biggr)
\begin{bmatrix} \varepsilon_{1t} \\ \varepsilon_{2t} \\ \varepsilon_{3t} \end{bmatrix}
\end{multline}
\end{document}