标记方程或使用子方程

标记方程或使用子方程

我正在使用该tabbing环境来列出 5 个相关方程式。

\begin{tabbing} \hspace{.5cm} \= \hspace{.3cm} \= \hspace{3cm} \= \kill
  \(\mathbf{\Omega}\) \> \(=\) \> \(\Omega\hat{\mathbf{k}}\)
  \tagthisline\\[.3cm]
  \(\mathbf{r}\) \> \(=\) \>
  \(x\hat{\mathbf{i}} + y\hat{\mathbf{j}} + z\hat{\mathbf{k}}\)\tagthisline
  \\[.3cm]
  \(\dot{\mathbf{r}}\) \> \(=\) \>
  \(\mathbf{v}_{\text{CG}} + \mathbf{\Omega}\times\mathbf{r}                         
  + \mathbf{v}_{\text{rel}}\)\tagthisline\\[.3cm]
  \(\mathbf{v}_{\text{rel}}\) \> \(=\) \>
  \(\dot{x}\hat{\mathbf{i}} + \dot{y}\hat{\mathbf{j}}                                
  + \dot{z}\hat{\mathbf{k}}\)\tagthisline\\[.3cm]
  \(\mathbf{a}_{\text{rel}}\) \> \(=\) \>
  \(\ddot{x}\hat{\mathbf{i}} + \ddot{y}\hat{\mathbf{j}}                              
  + \ddot{z}\hat{\mathbf{k}}\)\tagthisline
\end{tabbing}

\tagthisline从文档中挑选适当的编号。但是,我需要\label为环境中的每一个编号tabbing

  1. 在同一环境中分配多个标签是否可行?

  2. 即使确实如此,这里是否应该采用不同的方法?

  3. 如果 (2) 的答案是肯定的,我应该如何设置?

答案1

在不知道是什么\tagthisline样子的情况下,我会选择一种不同的方法,使用直线align

在此处输入图片描述

\documentclass{article}
\usepackage{mathtools}% http://ctan.org/pkg/mathtools
\providecommand{\tagthisline}{X}% Don't know what this means...
\begin{document}
\begin{tabbing} \hspace{.5cm} \= \hspace{.3cm} \= \hspace{3cm} \= \kill
  \(\mathbf{\Omega}\) \> \(=\) \> \(\Omega\hat{\mathbf{k}}\)
  \tagthisline\\[.3cm]
  \(\mathbf{r}\) \> \(=\) \>
  \(x\hat{\mathbf{i}} + y\hat{\mathbf{j}} + z\hat{\mathbf{k}}\)\tagthisline
  \\[.3cm]
  \(\dot{\mathbf{r}}\) \> \(=\) \>
  \(\mathbf{v}_{\text{CG}} + \mathbf{\Omega}\times\mathbf{r}                         
  + \mathbf{v}_{\text{rel}}\)\tagthisline\\[.3cm]
  \(\mathbf{v}_{\text{rel}}\) \> \(=\) \>
  \(\dot{x}\hat{\mathbf{i}} + \dot{y}\hat{\mathbf{j}}                                
  + \dot{z}\hat{\mathbf{k}}\)\tagthisline\\[.3cm]
  \(\mathbf{a}_{\text{rel}}\) \> \(=\) \>
  \(\ddot{x}\hat{\mathbf{i}} + \ddot{y}\hat{\mathbf{j}}                              
  + \ddot{z}\hat{\mathbf{k}}\)\tagthisline
\end{tabbing}

\newcommand{\Lalign}{\phantom{\mathbf{a}_{\text{rel}}}}
\begin{align}
  \mathrlap{\mathbf{\Omega}}\Lalign &= \Omega\hat{\mathbf{k}} \\[\jot]
  \mathrlap{\mathbf{r}}\Lalign &= x\hat{\mathbf{i}} + y\hat{\mathbf{j}} + z\hat{\mathbf{k}} \\[\jot]
  \mathrlap{\dot{\mathbf{r}}}\Lalign & = 
    \mathbf{v}_{\text{CG}} + \mathbf{\Omega}\times\mathbf{r} + \mathbf{v}_{\text{rel}} \\[\jot]
  \mathbf{v}_{\text{rel}} &= \dot{x}\hat{\mathbf{i}} + \dot{y}\hat{\mathbf{j}} + 
    \dot{z}\hat{\mathbf{k}} \\[\jot]
  \mathbf{a}_{\text{rel}} &= \ddot{x}\hat{\mathbf{i}} + \ddot{y}\hat{\mathbf{j}} + 
    \ddot{z}\hat{\mathbf{k}}
\end{align}
\end{document}

现在您可以随心所欲地去做了\label\eqref


如果您希望进行左对齐,请在其中一个方程式的末尾使用flalign附加对齐字符。此外,为了获得与您的环境类似的对齐,您可以调整常规前言()。我在下面的新环境定义中做了必要的调整:&lcltabbingalign\align@preamblelflalign

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath}% http://ctan.org/pkg/amsmath
\makeatletter
\newenvironment{lflalign}{%
  \def\align@preamble{%
     &\strut@
      \setboxz@h{\@lign$\m@th\displaystyle{####}$}%
      \ifmeasuring@\savefieldlength@\fi
      \set@field
      \hfil
      \tabskip\z@skip
     &\setboxz@h{\@lign$\m@th\displaystyle{{}####}$}%
      \ifmeasuring@\savefieldlength@\fi
      \set@field
      \hfil
      \tabskip\alignsep@
  }
  \flalign}
  {\endflalign}
\makeatother
\begin{document}
\begin{flalign}
  f(x) &= ax^2 + bx + c &\\
  f(x)+g(x) &= d
\end{flalign}

\begin{lflalign}
  f(x) &= ax^2 + bx + c &\\
  f(x)+g(x) &= d
\end{lflalign}
\end{document}

相关内容