Ce cauzează o secvență de control nedefinită?

Primesc această eroare:

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

care este de aici:

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

Dar nu înțeleg de ce apar eroarea. Acesta este antetul meu:

\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 

Și fișierul meu de clasă este cel standard IoP din aici

Poate cineva să mă ajute să citesc această eroare?

Răspunde

Greșeala este, ca TeX informează, de asemenea. Nu poate găsi comanda \text. Eroarea se află probabil în pachetul iopams și ar trebui observată acolo. Se pare că nu încarcă pachetul ams math (doar fonturile sale) și, prin urmare, trebuie să includeți în mod explicit și acel pachet.

Pe o notă laterală ar trebui să includeți și $ în comanda \text.

Comentarii

  • Pe o parte rețineți că ar trebui să includeți și $ în comanda \ text. Unde în comanda text? Face $ E_j $ etc bine.
  • Probabil că nu în \text{: E_j > E_i} _ este un mathchar, precum și >. Ai nevoie de \text{: $E_j > E_i$} dacă iopams nu face magie pentru tine! 🙂
  • De fapt, cred că am o formă de magie pentru mine. Sau, din cauza faptului că \text nu este recunoscut, ' este ignorat, astfel încât E_j redă corect.
  • Deci problema dvs. originală a fost rezolvată? Atunci e bine. Nu am ' încercat clasa iopart, așa că nu pot spune dacă schimbă definiția _. Pare doar împotriva pachetelor normale TeX să facă acest lucru (dacă nu este grupat în mediile matematice). Mă bucur că funcționează! 🙂
  • Am ' tocmai am editat fișierul iopams pentru a include biblioteca de matematică. Funcționează ca un farmec.

Răspuns

Macro \text este nedefinit. Trebuie să încărcați pachetul amsmath sau cel puțin amstext.

\usepackage{amsmath} 

\text este definit în amstext, care este încărcat de amsmath. Încărcați-l pe acesta din urmă, deoarece oferă multe funcționalități matematice, cum ar fi formulele aliniate cu mai multe linii și multe altele.

Comentarii

  • Acum se întoarce o mulțime de erori despre { suplimentar sau $ lipsă și nu se termină niciodată compilarea.
  • @Pureferret Utilizați text în \text{...} Pentru asta ' este ': scăparea modului matematic. Dacă aveți nevoie de simboluri matematice din nou, scrieți \text{word $\symbol$} sau chiar mai bine, încheiați argumentul macro, cum ar fi \text{word } \symbol \text{ and more text}.
  • Tocmai am eliminat macro-ul \text{...} și rulează fără probleme acum. ' voi sacrifica acel : din motive de simplitate.
  • Notă pentru cititori: amsmath nu este compatibil cu iopart.

Răspuns

O greșeală similară ar putea fi cauzată și de ceva la fel de simplu ca încercarea de a construi un fișier greșit (de exemplu, făcând clic pe o comandă PDFLaTeX în timp ce vă aflați în fișierul” abstract „, care face parte din documentul dvs.). Ar trebui să vă aflați în fișierul principal (unde apelați și „adunați” toate fișierele „mai mici”) când construiți.

Sper că acest lucru va economisi ceva timp pentru începătorii ca mine, deoarece această pagină era prima sugestie atunci când căutați această eroare.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *