Schreiben einer Gleichung mit rechts außen positionierten Einheiten

Schreiben einer Gleichung mit rechts außen positionierten Einheiten

Okay, ich habe also viele Gleichungen in dem Dokument, das ich schreibe, und ich versuche, die Einheiten einer Gleichung rechts anzuzeigen. Ich habe mich gefragt, wie ich das erreichen kann. Im Moment kann ich nur die Gleichung mit den Einheiten am Ende schreiben. Hier ist mein Code:

\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}

Vielen Dank für jede Hilfe!

edit: Noch etwas, während ich das gepostet habe! Ich bin sicher, das ist einfach, aber wie zeige ich auch die Gleichungsnummer ganz rechts auf der Seite an, damit ich später auf Gleichungen verweisen kann? Danke!

Antwort1

Das direkte Einfügen der Informationen in \tageine andere Antwort ist keine gute Idee, da das hinzugefügte Material auch in Querverweisen erscheint, was eindeutig unerwünscht ist.

Hier ist eine weitere Option, die das richtige Ergebnis für Querverweise liefert;

\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}

Bildbeschreibung hier eingeben

Das \tagaddtextMakro ist eine Variation vonWerner's Definition inseine AntwortZuNummerierte Gleichungen mit zusätzlichem Text Teil 2.

Antwort2

Eine Lösung mit flalignund eine Variante, die die ursprünglichen Zähler verwenden. Ich verwende ein Makro namens \unit(bzw. \varunit), das die Einheit in einem kleinen Abstand von der Gleichungsnummer platziert. Der Unterschied besteht darin, dass die Gleichungen in Bezug auf den verbleibenden Abstand zwischen dem linken Rand und der Einheit zentriert werden, während sie bei der Variante in Bezug auf den linken Rand und den Geviertabstand vor der Gleichungsnummer zentriert werden. Es ist nur eine Frage der ästhetischen Wahl.

    \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}

Bildbeschreibung hier eingeben Wenn Sie die \equiv-Zeichen nicht ausrichten möchten, müssen Sie nur zwei flalignUmgebungen verwenden.

Antwort3

Mein Vorschlag ist einfachnichtSetzen der Einheit, da Einheiten keine Invarianten sind, die Formel jedoch schon. Sie haben also E_p=P/R(vielleicht mit einer Konstante in der Nähe), selbst wenn Ihre Energie in Erg oder anderen Einheiten gemessen wurde. Dass sie I_0in Watt pro Quadratmeter angegeben wird, ist bereits aus dem ersichtlich, was gesagt wurde, als die Menge definiert wurde. Beachten Sie auch, dass eckige Klammern verwendet werden, um physikalische Dimensionen anzugeben, während ein Joule eine physikalische Menge ist.

Dennoch haben Sie einige Möglichkeiten:

  1. keine Einheit
  2. die in einem festen Abstand zur Gleichungsnummer gesetzte Einheit (mit flalign)
  3. die Einheit in einem festen Abstand von der Gleichung gesetzt, beteiligt an der Zentrierung
  4. die Einheit in einem festen Abstand von der Gleichung gesetzt, nicht an der Zentrierung beteiligt

Im Beispiel zeige ich nicht die erste (empfohlene) Auswahl. Beachten Sie, dass die letzte bei langen Formeln zu Überschneidungen führen kann.

\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}

Beachten Sie auch, dass mathtoolsfür verwendet wird \mathrlap; es lädt automatisch amsmath.

Bildbeschreibung hier eingeben


Eine Modifikation von Gonzalos Antwort, die den Fehler nicht aufweist, dass die Gleichung die Einheit überlappen kann.

\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}

Bildbeschreibung hier eingeben

Antwort4

In Bezug auf die letzten beiden Beispiele sollten die Einheiten in eckigen Klammern und nicht in runden Klammern angegeben werden. Dies ist Teil der im SI verwendeten Konventionen und wurde in anderen Artikeln wieEinheitenspalte in Tabelle mit eckigen Klammern und siunitx.

verwandte Informationen