![Набор ортогональных прямых сумм (со шляпой)](https://rvso.com/image/476254/%D0%9D%D0%B0%D0%B1%D0%BE%D1%80%20%D0%BE%D1%80%D1%82%D0%BE%D0%B3%D0%BE%D0%BD%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D1%85%20%D0%BF%D1%80%D1%8F%D0%BC%D1%8B%D1%85%20%D1%81%D1%83%D0%BC%D0%BC%20(%D1%81%D0%BE%20%D1%88%D0%BB%D1%8F%D0%BF%D0%BE%D0%B9).png)
решение1
\documentclass{article}
\begin{document}
$U_1 \mathbin{\hat\oplus}\dots\mathbin{\hat\oplus}U_m$
\end{document}
Если вам не нравится внешний вид \oplus
, создайте свой собственный:
\documentclass{article}
\usepackage{stackengine,graphicx}
\stackMath
\newcommand\mysym{\mathbin{\hat{%
\stackinset{c}{}{c}{}{\scriptstyle+}{\scalebox{.8}{$\bigcirc$}}}}}
\begin{document}
$U_1 \mysym\dots\mysym U_m$
\end{document}
решение2
Такая конструкция, как\hat{\oplus}
созданиеАккатом, который в целях разделения считается тем же самым, что иОрдатом. Поэтому вам нужно восстановить нужный тип атома.
Предлагаю определить для этого макрос.
\documentclass{article}
\usepackage{amsmath}
\newcommand{\orthsum}{\mathbin{\hat{\oplus}}}
\begin{document}
\[
U_1\orthsum \dots \orthsum U_m
\]
\end{document}
Вы можете видеть, что символ ведет себя правильно по отношению к\dots
, чтодолженв данном случае быть центрированным, а не на базовой линии.
Почему макрос? Потому что вы можете легко изменить его на что угодно. Общепринятая нотация для ортогональных прямых сумм — ⊞
\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
%\newcommand{\orthsum}{\mathbin{\hat{\oplus}}}
\newcommand{\orthsum}{\DOTSB\boxplus}
\begin{document}
\[
U_1\orthsum \dots \orthsum U_m
\]
\end{document}
Ладно, нужно немного поработать, чтобы все получилось правильно.
\documentclass{article}
\usepackage{amsmath}
\usepackage{amssymb}
%\newcommand{\orthsum}{\mathbin{\hat{\oplus}}}
\makeatletter
\newcommand{\orthsum}{\DOTSB\mathbin{\mathpalette\boxplus@\relax}}
\newcommand{\boxplus@}[2]{\vcenter{\hbox{$\m@th#1\boxplus$}}}
\makeatother
\begin{document}
\begin{gather*}
U_1\oplus \dots \oplus U_m
\\
U_1\orthsum \dots \orthsum U_m
\end{gather*}
\end{document}
Если вы предпочитаете \oplus
тот же стиль, что и у изображения, вы можете импортировать символ из mathabx
.
\documentclass{article}
\usepackage{amsmath}
\DeclareFontFamily{U}{matha}{}
\DeclareFontSubstitution{U}{matha}{m}{n}
\DeclareFontShape{U}{matha}{m}{n}{
<-5.5> matha5
<5.5-6.5> matha6
<6.5-7.5> matha7
<7.5-8.5> matha8
<8.5-9.5> matha9
<9.5-11> matha10
<11-> matha12
}{}
\DeclareFontFamily{U}{mathb}{}
\DeclareFontSubstitution{U}{mathb}{m}{n}
\DeclareFontShape{U}{mathb}{m}{n}{
<-5.5> mathb5
<5.5-6.5> mathb6
<6.5-7.5> mathb7
<7.5-8.5> mathb8
<8.5-9.5> mathb9
<9.5-11> mathb10
<11-> mathb12
}{}
\DeclareSymbolFont{matha}{U}{matha}{m}{n}
\DeclareSymbolFont{mathb}{U}{mathb}{m}{n}
\DeclareMathSymbol{\oplus}{2}{matha}{"60}
\DeclareMathSymbol{\boxplus}{2}{mathb}{"60}
\newcommand{\orthsum}{\mathbin{\hat{\oplus}}}
%\newcommand{\orthsum}{\DOTSB\boxplus}
\begin{document}
\begin{gather*}
U_1\oplus \dots \oplus U_m
\\
U_1\orthsum \dots \orthsum U_m
\end{gather*}
\end{document}
Если вы поменяете комментарии, то \orthsum
получите