さて、私が書いている文書にはたくさんの方程式があり、方程式の単位を右側に表示しようとしています。どうすればこれを実現できるのか疑問に思っています。現時点では、方程式の最後に単位を付けて書くことしかできません。これが私のコードです:
\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 つあります。これは簡単なことだと思いますが、後で方程式を参照できるように、ページの右端に方程式番号も表示するにはどうすればよいですか? ありがとうございます!
答え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
(それぞれ\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
。
ゴンザロの回答の修正版。方程式が単位と重なるという欠陥はありません。
\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
最後の2つの例に関連して、単位は括弧ではなく角括弧で示す必要があります。これはSIで使用される規則の一部であり、他の記事でも説明されています。角括弧と siunitx を含む表の単位列。