Jeg får denne fejl:
! 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}\\ ?
som er fra dette:
\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}
Men jeg forstår ikke, hvorfor jeg får fejlen. Dette er min overskrift:
\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
Og min klassefil er standard IoP-en fra her
Kan nogen hjælpe mig med at læse denne fejl?
Svar
Fejlen er som TeX informerer også. Den kan ikke finde din \text
kommando. Fejlen ligger sandsynligvis i pakke iopams
og skal bemærkes der. Det ser ud til, at den ikke indlæser ams-matematikpakken (kun dens skrifttyper), og derfor skal du også eksplicit inkludere den pakke.
På en sidebemærkning skal du også inkludere $
i din \text
kommando.
Kommentarer
Svar
Makroen \text
er udefineret. Du skal indlæse amsmath
-pakken eller i det mindste amstext
.
\usepackage{amsmath}
\text
er defineret i amstext
, som indlæses af amsmath
. Indlæs sidstnævnte, fordi det tilbyder mange matematiske funktioner, såsom justerede multi-line formler og meget mere.
Kommentarer
- Nu vender det lige tilbage masser af fejl om ekstra
{
eller manglende$
, og det afsluttes aldrig med at kompilere. - @Pureferret Brug tekst inden for
\text{...}
At ' er, hvad det ' er til: undslipper matematisk tilstand. Hvis du har brug for matematiske symboler inden igen, skal du skrive\text{word $\symbol$}
eller endnu bedre, afslut makroargumentet, såsom\text{word } \symbol \text{ and more text}
. - Jeg har lige fjernet
\text{...}
makroen, og den kører problemfrit nu. Jeg ' Jeg ofrer det:
for enkelheds skyld. - Bemærk til læserne:
amsmath
er ikke kompatibel mediopart
.
Svar
En lignende fejl kan også være forårsaget af noget så simpelt som at prøve at opbygge en forkert fil (f.eks. klikke på en PDFLaTeX-kommando, mens du er i” abstrakt “-filen, som er en del af dit dokument). Du skal være i din hovedfil (hvor du ringer og “samler” alle de “mindre” filer), når du “bygger”.
Jeg håber, det sparer lidt tid for nybegyndere som mig, da denne side var det første forslag, når du leder efter denne fejl.
\text{: E_j > E_i}
_
er såvel en mathchar som>
. Du har brug for\text{: $E_j > E_i$}
medmindreiopams
tryller for dig! 🙂\text
ikke blev genkendt, blev det ' s ignoreret, såE_j
gengiver korrekt.iopart
klassen, så kan ikke sige, om det ændrer definitionen af_
. Det virker bare imod normaleTeX
pakker at gøre dette (medmindre det er grupperet i matematiske miljøer). Glad for at det fungerer! 🙂iopams
-filen for at inkludere matematikbiblioteket. Fungerer som en charme.