是否有一个代码到数字方程输出为 (2.1)*?

是否有一个代码到数字方程输出为 (2.1)*?

如果我们有这样的代码:

\begin{align}\label{eq:d2}

&\{\overline{R}(X,\ Y)Z\}^{\top}\ =\ R(X,\ Y)Z\ -\ A_{h(Y,\ Z)}X\ +\ A_{h(X,\ Z)}Y,\\

&\{\overline{R}(X,\ Y)Z\}^{\bot}\ =\ (\nabla_{X}h)(Y,\ Z)\ -\ (\nabla_{Y}h)(X,\ Z),\\

&\{\overline{R}(X,\ Y)V\}^{\top}\ =\ (\nabla_{Y}A)_{V}X\ -\ (\nabla_{X}A)_{V}Y,\\

&\{\overline{R}(X,\ Y)V\}^{\bot}\ =\ R^{\bot}(X, Y)V\ +\ h(Y,\ A_{V}X)\ -\ h(X,\ A_{V}Y),
\end{align}

然后在输出中方程式的编号如下:

...(2.1),

...(2.2),

...(2.3),

...(2.4)。

有没有办法编写代码,使得对偶方程输出中的数字看起来像这样:

...(2.1)*,

...(2.2)*,

...(2.3)*,

...(2.4)*.

谢谢。

答案1

你没有在帖子中明确说明这一点,但我认为全部方程式需要用星号“编号”。我进一步假设您需要交叉引用其中一些特别标记的方程式,并且星号也应该出现在交叉引用中。实现交叉引用目标的一种方法是使用该cleveref包及其高度可定制的\cref宏。在下面的代码中,注意确保方程式编号(包括星号)设置为直立字体形状,即使周围的材料设置为斜体。(这是常规不是将公式编号及其周围的括号变为斜体。)

我从您的代码中看到,您希望在符号、 和周围看到更多空格=,并且您手动在每个符号周围插入空格以实现此外观。我相信更改长度参数和会容易得多,如下例所示。-+\thickmuskip\medmuskip

在此处输入图片描述

\documentclass{article} 

\usepackage{amsmath} % for 'align' environment and '\numberwithin' macro
\numberwithin{equation}{section}

%% formatting of equation "numbers"
\makeatletter
\def\tagform@#1{\maketag@@@{(\ignorespaces#1\unskip\@@italiccorr)*}}
\makeatother

%% formatting of cross-references to equations
\usepackage{cleveref}
\crefformat{equation}{equation~{\upshape (#2#1#3)*}}

\newcommand{\Rbar}{\overline{R}}  % shortcut macro

%% change the length parameters \thickmuskip and \medmuskip
\setlength\thickmuskip{10mu}  % default value -- 5mu
\setlength\medmuskip{8mu}     % default value -- 4mu

\begin{document}
\setcounter{section}{2}  % just for this example

\begin{align}
&\{\Rbar(X,Y)Z\}^{\top}=R(X,Y)Z-A_{h(Y,Z)}X+A_{h(X,Z)}Y\\
&\{\Rbar(X,Y)Z\}^{\bot}=(\nabla_{X}h)(Y,Z)-(\nabla_{Y}h)(X,Z) \label{eq:thisone}\\
&\{\Rbar(X,Y)V\}^{\top}=(\nabla_{Y}A)_{V}X-(\nabla_{X}A)_{V}Y\\
&\{\Rbar(X,Y)V\}^{\bot}=R^{\bot}(X,Y)V+h(Y,A_{V}X)-h(X,A_{V}Y)
\end{align}

\emph{A cross-reference to \cref{eq:thisone} in a sentence that's set in italics.}
\end{document}

答案2

评论太长了。

不清楚您是否需要所有带有 a 的方程式编号*或仅需要其中一部分。这应该是一个粗略的破解,您可能会觉得有用

\documentclass{book}
\usepackage{amsmath}

\begin{document}
\chapter{One}
\makeatletter
\def\tagform@#1{\maketag@@@{(\ignorespaces#1\unskip\@@italiccorr)*}}
\makeatother
  \begin{align}\label{eq:d2}
&\{\overline{R}(X,\ Y)Z\}^{\top}\ =\ R(X,\ Y)Z\ -\ A_{h(Y,\ Z)}X\ +\ A_{h(X,\ Z)}Y,\\
&\{\overline{R}(X,\ Y)Z\}^{\bot}\ =\ (\nabla_{X}h)(Y,\ Z)\ -\ (\nabla_{Y}h)(X,\ Z),\label{eq:d3}\\
&\{\overline{R}(X,\ Y)V\}^{\top}\ =\ (\nabla_{Y}A)_{V}X\ -\ (\nabla_{X}A)_{V}Y,\\
&\{\overline{R}(X,\ Y)V\}^{\bot}\ =\ R^{\bot}(X, Y)V\ +\ h(Y,\ A_{V}X)\ -\ h(X,\ A_{V}Y),
\end{align}
\makeatletter
\def\tagform@#1{\maketag@@@{(\ignorespaces#1\unskip)}}
\makeatother
  \begin{align}\label{eq:dd2}
&\{\overline{R}(X,\ Y)Z\}^{\top}\ =\ R(X,\ Y)Z\ -\ A_{h(Y,\ Z)}X\ +\ A_{h(X,\ Z)}Y,\\
&\{\overline{R}(X,\ Y)Z\}^{\bot}\ =\ (\nabla_{X}h)(Y,\ Z)\ -\ (\nabla_{Y}h)(X,\ Z),\label{eq:dd3}\\
&\{\overline{R}(X,\ Y)V\}^{\top}\ =\ (\nabla_{Y}A)_{V}X\ -\ (\nabla_{X}A)_{V}Y,\\
&\{\overline{R}(X,\ Y)V\}^{\bot}\ =\ R^{\bot}(X, Y)V\ +\ h(Y,\ A_{V}X)\ -\ h(X,\ A_{V}Y),
\end{align}
From~\eqref{eq:d3} we get nothing similar to~\eqref{eq:dd3}
\end{document}

在此处输入图片描述

答案3

\top我相信您想根据和的存在将四个方程分成两对,每对都有一个方程及其对偶\bot

您可以使用\tag*允许几乎所有内容作为“方程式编号”的功能:

\documentclass{report}
\usepackage{amsmath}

\DeclareRobustCommand{\zeroast}{\makebox[0pt][l]{*}}

\begin{document}

\chapter{Something}

We can refer to~\eqref{eq:d2} and to its dual \eqref{eq:d2}*:
\begin{align}
\label{eq:d2}
\{\overline{R}(X, Y)Z\}^{\top} &= R(X, Y)Z - A_{h(Y, Z)}X + A_{h(X, Z)}Y,\\
\tag*{\eqref{eq:d2}\zeroast}
\{\overline{R}(X, Y)Z\}^{\bot} &= (\nabla_{X}h)(Y, Z) - (\nabla_{Y}h)(X, Z),\\
\label{eq:d3}
\{\overline{R}(X, Y)V\}^{\top} &= (\nabla_{Y}A)_{V}X - (\nabla_{X}A)_{V}Y,\\
\tag*{\eqref{eq:d3}\zeroast}
\{\overline{R}(X, Y)V\}^{\bot} &= R^{\bot}(X, Y)V + h(Y, A_{V}X) - h(X, A_{V}Y),
\end{align}

\end{document}

\zeroast宏仅用于标签,以便星号将占用零空间,并排版到右边距。

在此处输入图片描述

不要在数学方程式中使用明确的间距;内置规则会处理空格。

相关内容