在 LaTEX 中排版共轭矩阵

在 LaTEX 中排版共轭矩阵

前几天,我在读一本相当古老的数学书。我注意到它使用不同的排版样式来表示共轭矩阵,如下图所示。有没有办法在 LaTEX 中做到这一点? 在此处输入图片描述

答案1

也许使用\overbracket\underbracket来自mathtools包裹。

\documentclass{article}
\usepackage{mathtools}
\newcommand\conj[1]{%
  \overbracket[.4pt][1pt]{%
    \underbracket[.4pt][1pt]{\mkern2mu#1\mkern2mu}%
  }\nolimits}
\begin{document}

$A' = \conj{a}_n^m$

\end{document}

在此处输入图片描述

或者使用 Lua/XeLaTeX 和unicode-math

\documentclass{article}
\usepackage{unicode-math}
\newcommand\conj[1]{%
  \mathop{%
    \Umathaccent 7\symoperators "023B4{%
      \Umathaccent bottom 7\symoperators "023B5{%
        \mkern2mu#1\mkern2mu
      }%
    }%
  }}
\begin{document}

$A' = \conj{a}_n^m$

\end{document}

在此处输入图片描述

答案2

旧书中有大量不再使用的符号。

带旋转括号:

\documentclass{article}
\usepackage{amsmath}
\usepackage{graphicx}

\makeatletter
\newcommand{\over@bracket}[1]{%
  \vbox{\m@th\ialign{\hfil##\hfil\cr
    \rotatebox[origin=bl]{90}{$\rbrack$}\cr
    \noalign{\nointerlineskip\vskip1pt}
    #1\vphantom{$by$}\cr
  }}%
}
\newcommand{\under@bracket}[1]{%
  \vtop{\m@th\ialign{\hfil##\hfil\cr
    #1\cr
    \noalign{\nointerlineskip}
    \rotatebox[origin=bl]{90}{$\lbrack$}\cr
  }}%
}
\newcommand{\transpose}[1]{%
  \mathinner{\under@bracket{\over@bracket{$#1$}}}%
}
\makeatother

\begin{document}

\begin{gather*}
% to see the baseline
\rlap{\vrule height 0pt depth 0.1pt width 3cm}
A' + B' = \transpose{a}^{m}_{n} + \transpose{b}^{m}_{n}
\\
A' + B' = \transpose{a}^{m}_{n} + \transpose{b}^{m}_{n}
\\
\transpose{a}\transpose{b}\transpose{y}\transpose{m}
\end{gather*}

\end{document}

在此处输入图片描述

相关内容