Ich erhalte diesen Fehler:
! Undefined control sequence. l.64 ...p(- \frac{E_j - E_i}{k_B T}) & \quad \text {: E_j > E_i}\\ ? ! Undefined control sequence. l.65 1 & \quad \text {: E_j<E_i}\\ ?
was davon stammt:
\begin{equation}\label{eq:hop} w_{i,j}=w_0 exp(-2 \gamma R_{i,j})\left\{ \begin{array}{l l} exp(- \frac{E_j - E_i}{k_B T}) & \quad \text{: E_j > E_i}\\ 1 & \quad \text{: E_j<E_i}\\ \end{array} \right. \end{equation}
Aber ich verstehe nicht, warum ich den Fehler erhalte. Dies ist mein Header:
\documentclass[11pt]{iopart} %\newcommand{\gguide}{{\it Preparing graphics for IOP journals}} %Uncomment next line if AMS fonts required \usepackage{iopams} \usepackage{graphicx, wrapfig} \usepackage{fixltx2e} \graphicspath{{images/}} \DeclareGraphicsExtensions{.pdf,.png,.jpg,.gif} \makeatletter \g@addto@macro\@floatboxreset\centering %\def\@cite#1{\textsuperscript{[#1]}} \makeatother
Und meine Klassendatei ist die Standard-IoP-Datei von hier
Kann mir jemand helfen, diesen Fehler zu lesen?
Antwort
Der Fehler ist, as TeX informiert auch. Ihr Befehl \text
kann nicht gefunden werden. Der Fehler liegt wahrscheinlich im Paket iopams
und sollte dort bemerkt werden. Es scheint, dass das ams math-Paket (nur seine Schriftarten) nicht geladen wird und Sie dieses Paket daher auch explizit einschließen müssen.
Nebenbei sollten Sie auch in Ihrem Befehl \text
.
Kommentare
- Auf einer Seite Beachten Sie, dass Sie auch $ in Ihren \ text-Befehl aufnehmen sollten. Wo im text-Befehl? Es macht $ E_j $ usw. in Ordnung.
- Wahrscheinlich nicht in
\text{: E_j > E_i}
ist die_
sowohl ein Mathchar als auch>
. Sie benötigen\text{: $E_j > E_i$}
, es sei denn,iopams
zaubert für Sie! 🙂 - Ich entlasse mir tatsächlich irgendeine Form von Magie. Oder weil
\text
nicht erkannt wird, wird ' ignoriert, sodassE_j
gerendert wird richtig. - Ist Ihr ursprüngliches Problem also gelöst? Dann ist es gut. Ich habe ' die
iopart
-Klasse nicht ausprobiert und kann daher nicht sagen, ob sie die Definition von_
. Es scheint nur gegen normaleTeX
-Pakete zu sein, dies zu tun (es sei denn, es ist in den mathematischen Umgebungen gruppiert). Ich bin froh, dass es funktioniert! 🙂 - Ich ' habe gerade die Datei
iopams
bearbeitet, um die Mathematikbibliothek einzuschließen. Funktioniert wie ein Zauber.
Antwort
Das Makro \text
ist nicht definiert. Sie müssen das Paket amsmath
oder mindestens amstext
laden.
\usepackage{amsmath}
\text
ist in amstext
definiert, das von amsmath
geladen wird. Laden Sie Letzteres, da es viele mathematische Funktionen bietet, z. B. ausgerichtete mehrzeilige Formeln und vieles mehr.
Kommentare
- Jetzt kehrt es nur noch zurück Viele Fehler bezüglich zusätzlicher
{
oder fehlender$
und die Kompilierung wird nie abgeschlossen. - @Pureferret Verwenden Sie Text in
\text{...}
Das ' ist das, wofür es ' ist: dem mathematischen Modus entkommen. Wenn Sie erneut mathematische Symbole benötigen, schreiben Sie\text{word $\symbol$}
oder beenden Sie das Makroargument wie\text{word } \symbol \text{ and more text}
. - Ich habe gerade das Makro
\text{...}
entfernt und es läuft jetzt reibungslos. Ich ' werde das:
der Einfachheit halber opfern. - Hinweis für Leser:
amsmath
ist nicht kompatibel mitiopart
.
Antwort
Ein ähnlicher Fehler kann auch durch einen einfachen Versuch verursacht werden, die falsche Datei zu erstellen (z. B. durch Klicken auf einen PDFLaTeX-Befehl in der“ abstrakten „Datei, die Teil Ihres Dokuments ist). Sie sollten sich in Ihrer Hauptdatei befinden (wo Sie alle „kleineren“ Dateien aufrufen und „sammeln“), wenn Sie „neu erstellen“.
Ich hoffe, dies spart Neulingen wie mir etwas Zeit, so wie diese Seite war Der erste Vorschlag bei der Suche nach diesem Fehler.