Ik “krijg deze foutmelding:
! 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}\\ ?
die hieruit komt:
\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}
Maar ik begrijp niet waarom ik de foutmelding krijg. Dit is mijn 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
En mijn klassenbestand is het standaard IoP-bestand van hier
Kan iemand me helpen deze fout te lezen?
Antwoord
De fout is, zoals TeX informeert ook. Het kan uw \text
commando niet vinden. De fout zit waarschijnlijk in pakket iopams
en zou daar opgemerkt moeten worden. Het lijkt erop dat het het ams math-pakket (alleen de lettertypen) niet laadt en dus moet je dat pakket ook expliciet opnemen.
Even terzijde: je moet ook in uw \text
commando.
Reacties
Antwoord
De macro \text
is niet gedefinieerd. U moet het amsmath
-pakket of ten minste amstext
laden.
\usepackage{amsmath}
\text
is gedefinieerd in amstext
, die wordt geladen door amsmath
. Laad het laatste, want het biedt veel wiskundige functionaliteit, zoals uitgelijnde formules met meerdere regels en nog veel meer.
Opmerkingen
- Nu komt het gewoon terug veel fouten over extra
{
of ontbrekende$
en het compileren wordt nooit voltooid. - @Pureferret Gebruik tekst binnen
\text{...}
Dat ' is waarvoor het ' s is: ontsnappen aan de wiskundige modus. Als je weer wiskundige symbolen nodig hebt, schrijf dan\text{word $\symbol$}
of nog beter, beëindig het macro-argument, zoals\text{word } \symbol \text{ and more text}
. - Ik heb zojuist de macro
\text{...}
verwijderd en deze werkt nu probleemloos. Ik ' zal dat:
voor de eenvoud opofferen. - Opmerking voor lezers:
amsmath
is niet compatibel metiopart
.
Antwoord
Een soortgelijke fout kan ook worden veroorzaakt door zoiets eenvoudigs als het proberen om het verkeerde bestand te maken (bijv. klikken op een PDFLaTeX-commando terwijl u zich in het” abstracte “bestand bevindt, dat deel uitmaakt van uw document). Je zou in je hoofdbestand moeten staan (waar je alle “kleinere” bestanden oproept en “verzamelt” wanneer je “aan het bouwen bent.
Ik hoop dat dit wat tijd bespaart voor nieuwkomers zoals ik, aangezien deze pagina was de eerste suggestie bij het zoeken naar deze fout.
\text{: E_j > E_i}
de_
is zowel een mathchar als>
. Je hebt\text{: $E_j > E_i$}
nodig, tenzijiopams
magie voor je doet! 🙂\text
niet wordt herkend, het ' wordt genegeerd, dusE_j
wordt weergegeven correct.iopart
geprobeerd, dus ik kan niet zeggen of het de definitie van_
. Het lijkt gewoon tegen normaleTeX
pakketten om dit te doen (tenzij het gegroepeerd is in de wiskundige omgevingen). Blij dat het werkt! 🙂iopams
-bestand bewerkt om de wiskundebibliotheek op te nemen. Werkt perfect.