убрать пробел между тильдой и буквой в уравнениях

убрать пробел между тильдой и буквой в уравнениях

Новичок, у меня есть ситуация, которую нужно решить, с двумя разными вариантами поведения тильды. Первый выглядит нормально, в обычном тексте, что-то вроде:

... some text $\sim$A then some text ...

но в режиме уравнения (или даже внутри знаков доллара уравнения в тексте) между тильдой и буквой есть пробел (см. скриншот ниже):

... some text $\sim{A}$ then some text ...

введите описание изображения здесь

Есть ли способ устранить это пространство в режиме уравнения?

Мне это нужно для режима уравнений:

\[ \sim{A} = ... \]

Если это уместно, в преамбуле я использую пакет lmodernдля использования шрифта CM10, а также некоторые другие, связанные с уравнениями: mathptmx, amssymb, amsmath, mathspecи анализирую текст с помощью xelatex.

решение1

По умолчанию "математический тип" для \simmathrel, т. е. тип оператора отношения. (Другой пример оператора типа mathrel=.) По умолчанию математический тип буквы Amathord("math usual"). Как вы "обнаружили", TeX автоматически вставляет пробелы — в количестве \thickmuskip— между элементами типов mathrelи mathord, соответственно.

Если ты это сделаешьнетхотите получить пробел между \simи A, просто напишите

{\sim}A

Эта настройка изменяет математический тип на \sim, mathordи TeX делает этонетвставить дополнительные пробелы между элементами типа mathord.

решение2

Обычно \simэто отношение типа =. Поэтому требуется пространство:

\documentclass{article}

\usepackage{lmodern}
\usepackage{amsmath}

\begin{document}
\[ A = B \]
\[ A \sim B \]
\end{document}

\сим отношение

Но его можно определить и как обычный символ:

\documentclass{article}

\usepackage{lmodern}
\usepackage{amsmath}
\mathchardef\simsym"0218
\begin{document}
\[ A \sim B \]
\[ A \simsym B \]
\end{document}

сим обычный

Более подробную информацию о занятиях по математике см., например, здесь:TeX по темераздел 38.3 и 23.3.

Вместо использования \mathchardefвы также можете использовать

\newcommand*{\simsym}{\mathord\sim}

определить \simsymкак обычный вариант символа \sim:

\documentclass{article}

\usepackage{lmodern}
\usepackage{amsmath}
\newcommand*{\simsym}{\mathord\sim}
\begin{document}
\[ A \sim B \]
\[ A \simsym B \]
\end{document}

Результат точно такой же, как и выше, и будет таким же, как и в случае с

\documentclass{article}

\usepackage{lmodern}
\usepackage{amsmath}
\newcommand*{\simsym}{{\sim}}% note the extra {…}
\begin{document}
\[ A \sim B \]
\[ A \simsym B \]
\end{document}

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