好吧,我正在编写的文档中有很多方程式,我想将方程式的单位显示在右侧。我想知道如何实现这一点?现在,我所能做的就是在方程式末尾附加单位。这是我的代码:
\usepackage{amsmath, siunitx}
\begin{document}
\begin{equation}
{
I_0 \equiv \frac{4E_p}{{\tau}{w_{0}^{2}}\pi\sqrt{2\pi}} [\si{\watt\per\meter\squared}]
}
\label{eq:PeakIntensity}
\end{equation}
Where
\begin{equation}
{
E_p \equiv \frac{P}{R} [\si{\joule}]
}
\label{eq:PulseEnergy}
\end{equation}
\end{document}
感谢所有的帮助!
编辑:发布此文时还有一件事!我确信这很简单,但我如何在页面最右侧显示方程编号,以便以后引用方程?谢谢!
答案1
将信息直接添加到\tag
另一个答案中是一个坏主意,因为添加的材料也会出现在交叉引用中,这显然是不可取的。
这是产生交叉引用正确结果的另一种选择;
\documentclass{article}
\usepackage{amsmath}
\usepackage{siunitx}
\sisetup{detect-all}
\makeatletter
\providecommand\add@text{}
\newcommand\tagaddtext[1]{%
\gdef\add@text{#1\gdef\add@text{}}}%
\renewcommand\tagform@[1]{%
\maketag@@@{\llap{\add@text\quad}(\ignorespaces#1\unskip\@@italiccorr)}%
}
\makeatother
\begin{document}
As we see in Equations~\eqref{eq:PeakIntensity} and~\eqref{eq:PulseEnergy}...
\begin{equation}
\label{eq:PeakIntensity}
I_0 \equiv \frac{4E_p}{{\tau}{w_{0}^{2}}\pi\sqrt{2\pi}}
\tagaddtext{[\si{\watt\per\meter\squared}]}
\end{equation}
Where
\begin{equation}
\label{eq:PulseEnergy}
E_p \equiv \frac{P}{R}
\tagaddtext{[\si{\joule}]}
\end{equation}
\end{document}
宏\tagaddtext
是沃纳的定义他的回答到带附加文本的编号方程式第 2 部分。
答案2
一个解决方案flalign
和一个变体,它们使用原始计数器。我使用一个名为\unit
(resp. \varunit
) 的宏,将单位放置在距离方程编号一小段距离的位置。不同之处在于,方程式相对于左边距和单位之间的剩余空间居中,而对于变体,它相对于左边距和方程编号之前的 em 空间居中。这只是一个审美选择的问题。
\documentclass[11pt, a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern, amssymb, amsfonts}
\usepackage{mathtools}
\usepackage{siunitx}
\newcommand*\unit[1]{& & \si{[#1]}\quad}
\newcommand*\varunit[1]{& \llap{\si{[#1]}}&\quad}
\begin{document}
\begin{flalign}
& & I_0 & \equiv \frac{4E_p}{{\tau}{w_{0}^{2}}\pi\sqrt{2\pi}} \unit{\watt\per\meter\squared}%
\label{eq:PeakIntensity}
\shortintertext{ Where}
& & E_p & \equiv \frac{P}{R} \unit{\joule}
\label{eq:PulseEnergy}
\end{flalign}
\bigskip
\textbf{Variant:}
\begin{flalign}
& & I_0 & \equiv \frac{4E_p}{{\tau}{w_{0}^{2}}\pi\sqrt{2\pi}} \varunit{\watt\per\meter\squared}
\label{eq:PeakIntensity}
\shortintertext{ Where}
& & E_p & \equiv \frac{P}{R} \varunit{\joule}
\label{eq:PulseEnergy}
\end{flalign}
\end{document}
如果您不想对齐 \equiv 符号,您只需使用 2 个flalign
环境。
答案3
我的建议很简单不是排版单位,因为单位不是不变量,而公式是。所以E_p=P/R
即使你的能量是以尔格或其他单位来衡量的,你也会有(可能有一些常数)。I_0
从定义数量时所说的内容来看,以瓦特每平方米为单位已经很明显了。还要注意,方括号用于表示物理尺寸,而焦耳是物理量。
这就是说,你有一些选择:
- 无单位
- 与方程编号保持固定距离的单位(带有
flalign
) - 与方程式保持固定距离的单位,参与居中
- 单位排版与方程式保持固定距离,不参与居中
在示例中,我没有显示第一个(推荐)选项。请注意,如果公式很长,最后一个选项可能会导致重叠。
\documentclass{article}
\usepackage{mathtools, siunitx}
\begin{document}
Some text above
\begin{flalign}
&&&I_0 \equiv \frac{4E_p}{{\tau}{w_{0}^{2}}\pi\sqrt{2\pi}},
&&(\si{\watt\per\meter\squared})
\label{eq:PeakIntensity}
\end{flalign}
where
\begin{flalign}
&&&E_p \equiv \frac{P}{R}.
&&(\si{\joule})
\label{eq:PulseEnergy}
\end{flalign}
Some text above
\begin{equation}
I_0 \equiv \frac{4E_p}{{\tau}{w_{0}^{2}}\pi\sqrt{2\pi}},
\qquad (\si{\watt\per\meter\squared})
\label{eq:PeakIntensity2}
\end{equation}
where
\begin{equation}
E_p \equiv \frac{P}{R}.
\qquad (\si{\joule})
\label{eq:PulseEnergy2}
\end{equation}
Some text above
\begin{equation}
I_0 \equiv \frac{4E_p}{{\tau}{w_{0}^{2}}\pi\sqrt{2\pi}},
\mathrlap{\qquad (\si{\watt\per\meter\squared})}
\label{eq:PeakIntensity3}
\end{equation}
where
\begin{equation}
E_p \equiv \frac{P}{R}.
\mathrlap{\qquad (\si{\joule})}
\label{eq:PulseEnergy3}
\end{equation}
\end{document}
另请注意,mathtools
用于\mathrlap
;它会自动加载amsmath
。
对 Gonzalo 答案的修改,这样就不会存在方程式可以与单位重叠的缺陷。
\documentclass{article}
\usepackage{amsmath, siunitx}
\sisetup{detect-all}
\makeatletter
%%% redefine \eqref to be like the original
\renewcommand{\eqref}[1]{\textup{\eqreftagform@{\ref{#1}}}}
\let\eqreftagform@\tagform@
%%% redefine \tagform@
\def\tagform@#1{%
\maketag@@@{%
\if@unit(\thiseq@unit)\quad\fi\global\@unitfalse
(\ignorespaces#1\unskip\@@italiccorr)%
}%
}
\newif\if@unit
\def\equnit#1{%
\gdef\thiseq@unit{#1}%
\global\@unittrue
}
\makeatother
\begin{document}
\begin{equation}
I_0 \equiv \frac{4E_p}{{\tau}{w_{0}^{2}}\pi\sqrt{2\pi}},
\equnit{\si{\watt\per\meter\squared}}
\label{eq:PeakIntensity}
\end{equation}
where
\begin{equation}
E_p \equiv \frac{P}{R}.
\equnit{\si{\joule}}
\label{eq:PulseEnergy}
\end{equation}
Let's see with \texttt{align}:
\begin{align}
I_0 &\equiv \frac{4E_p}{{\tau}{w_{0}^{2}}\pi\sqrt{2\pi}},
\equnit{\si{\watt\per\meter\squared}}
\label{eq:PeakIntensity2}\\
E_p &\equiv \frac{P}{R}.
\equnit{\si{\joule}}
\label{eq:PulseEnergy2}
\end{align}
An equation without unit:
\begin{equation}
1=1
\end{equation}
A long equation with unit:
\begin{equation}
aaaaaaaaaaaaaaaaaaaaaaa=bbbbbbbbbbbbbbbbbbbb+ccccccccccccccc
\equnit{\si{\joule}}
\end{equation}
A longer equation with unit:
\begin{equation}
aaaaaaaaaaaaaaaaaaaaaaa=bbbbbbbbbbbbbbbbbbbb+cccccccccccc+ddddddd
\equnit{\si{\joule}}
\end{equation}
The references: \eqref{eq:PeakIntensity} and \eqref{eq:PulseEnergy};
\eqref{eq:PeakIntensity2} and \eqref{eq:PulseEnergy2}.
\end{document}
答案4
对于最后两个例子,单位应该用方括号表示,而不是用圆括号。这是 SI 中使用的惯例,在其他文章中也有讨论,例如表格中的单位列带有方括号和 siunitx。