Ricevo questo errore:
! 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}\\ ?
che deriva da questo:
\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}
Ma non capisco perché ricevo lerrore. Questa è la mia intestazione:
\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
E il mio file di classe è quello standard IoP da qui
Qualcuno può aiutarmi a leggere questo errore?
Risposta
Lerrore è, come TeX informa anche. Impossibile trovare il tuo comando \text
. Lerrore si trova probabilmente nel pacchetto iopams
e dovrebbe essere notato lì. Sembra che non carichi il pacchetto math ams (solo i suoi caratteri) e quindi è necessario includere esplicitamente anche quel pacchetto.
In una nota a margine dovresti anche includere $
nel tuo comando \text
.
Commenti
Rispondi
La macro \text
è indefinito. Devi caricare il amsmath
pacchetto o almeno amstext
.
\usepackage{amsmath}
\text
è definito in amstext
, caricato da amsmath
. Carica questultimo, perché offre molte funzionalità matematiche, come formule allineate su più righe e molto altro.
Commenti
- Ora sta solo tornando molti errori su
{
o$
mancante e la compilazione non termina mai. - @Pureferret Usa il testo allinterno di
\text{...}
Questo è ' a cosa serve ': sfuggire alla modalità matematica. Se hai bisogno di nuovo dei simboli matematici, scrivi\text{word $\symbol$}
o, ancora meglio, termina largomento macro, ad esempio\text{word } \symbol \text{ and more text}
. - Ho appena rimosso la macro
\text{...}
e ora funziona senza problemi. ' sacrifico questo:
per motivi di semplicità. - Nota per i lettori:
amsmath
non è compatibile coniopart
.
Risposta
Un errore simile potrebbe anche essere causato da qualcosa di semplice come il tentativo di creare il file sbagliato (ad esempio, facendo clic su un comando PDFLaTeX mentre ci si trova nel file” astratto “, che fa parte del documento). Dovresti essere nel tuo file principale (dove chiami e “raccogli” tutti i file “più piccoli”) quando “stai costruendo”.
Spero che questo faccia risparmiare tempo ai neofiti come me, poiché questa pagina era il primo suggerimento quando si cerca questo errore.
\text{: E_j > E_i}
il_
è un mathchar così come>
. Hai bisogno di\text{: $E_j > E_i$}
a meno cheiopams
non faccia la magia per te! 🙂\text
non viene riconosciuto, ' viene ignorato, quindiE_j
esegue il rendering correttamente.iopart
, quindi non posso dire se cambia la definizione di_
. Sembra solo contro i normali pacchettiTeX
farlo (a meno che non sia raggruppato negli ambienti matematici). Sono contento che funzioni! 🙂iopams
per includere la libreria matematica. Funziona a meraviglia.