删除 bmatrix 第一行的括号

删除 bmatrix 第一行的括号

我如何编写一个标题行未加括号的矩阵?我使用以下代码生成了以下结果。除了难看之外,当我需要将第一行、n1、...、n6 与矩阵列对齐时,它也不实用。

\documentclass{book}
 \usepackage{amsmath}

  \begin{document}
   \[ \ \ \ \ \ \ \ n_1\ \ \ \ \ \ \ \ n_2\ \ \ \ n_3\ \ \ \ \ \ \ \ \ n_4\ \ \ \ n_5\ \ \ \ n_6\]
    \[ \begin{bmatrix}
        1 & -1 & 0 & 0 & 0 & 1\\
        0.960 & -0.977 & 0 & 0 & 0 & 0.983\\
        0 & 1 & -1 & -1 & 0 & 0\\
        0 & 0.977 & 0 & -0.983 & 0 & 0\\
        0 & 0 & 0 & 1 & -1 & -1\\
        0 & 0 & 0 & 0 & 0 & 1\\
       \end{bmatrix}
       \begin{bmatrix}n_1\\n_2\\n_3\\n_4\\n_5\\n_6\end{bmatrix} =
       \begin{bmatrix}0 \\ 0 \\ 0 \\ 0 \\ 0 \\ 100\end{bmatrix} \]
 \end{document}

期望的输出,注意第一行与矩阵没有很好地对齐

答案1

基于的解决方案blkarray:我定义一个bheadmatrix环境(矛盾修辞法)。由于xparse包的原因,它接受两个可选参数:带有列标题的行(无默认值)和blockarray环境的说明符。后者默认为(最多)10 个居中列。我不得不在第一个括号行的开头添加一个支柱,在最后一个括号行的末尾添加一个负支柱,因为出于某种原因,包提供的默认括号构造blockarray太短了。

\documentclass{book}
\usepackage{amsmath}
\usepackage{blkarray, bigstrut}
\usepackage{xparse} 

\newcommand\topstrut[1][1.2ex]{\setlength\bigstrutjot{#1}{\bigstrut[t]}}
\newcommand\botstrut[1][0.9ex]{\setlength\bigstrutjot{#1}{\bigstrut[b]}}

\DeclareDocumentEnvironment{bheadmatrix}{O{}O{*{10}{c}}}{%
\begin{blockarray}{#2}
#1 \\[-0.8ex]
\begin{block}{[#2]}
\topstrut}%
{%
\botstrut\\
\end{block}
\end{blockarray}
}%

\begin{document}

\[
  \begin{bheadmatrix}[n_1 & n_2 &n_3 &n_4 &n_5 &n_6][*{6}{r}]
  1 & -1 & 0 & 0 & 0 & 1\\
    0.960 & -0.977 & 0 & 0 & 0 & 0.983\\
    0 & 1 & -1 & -1 & 0 & 0\\
    0 & 0.977 & 0 & -0.983 & 0 & 0\\
    0 & 0 & 0 & 1 & -1 & -1\\
    0 & 0 & 0 & 0 & 0 & 1
  \end{bheadmatrix}%
\begin{bheadmatrix}n_1\\n_2\\n_3\\n_4\\n_5\\n_6\end{bheadmatrix}
= \begin{bheadmatrix} 0 \\ 0 \\ 0 \\ 0 \\ 0 \\ 100\end{bheadmatrix}
\]%

\end{document} 

在此处输入图片描述

答案2

使用kbordermatrix包裹:

\documentclass{book}
\usepackage{amsmath}
\usepackage{kbordermatrix}

\begin{document}

    \[ \kbordermatrix{
       & n_1   & n_2    & n_3 & n_4    & n_5 & n_6   \\
       & 1     & -1     & 0   & 0      & 0   & 1     \\
       & 0.960 & -0.977 & 0   & 0      & 0   & 0.983 \\
       & 0     & 1      & -1  & -1     & 0   & 0     \\
       & 0     & 0.977  & 0   & -0.983 & 0   & 0     \\
       & 0     & 0      & 0   & 1      & -1  & -1    \\
       & 0     & 0      & 0   & 0      & 0   & 1     \\}
       \begin{bmatrix}n_1\\n_2\\n_3\\n_4\\n_5\\n_6\end{bmatrix} =
       \begin{bmatrix}0 \\ 0 \\ 0 \\ 0 \\ 0 \\ 100\end{bmatrix} \]

\end{document}

在此处输入图片描述

相关内容