¿Qué está causando una secuencia de control indefinida?

Recibo este error:

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

que es de esto:

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

Pero no entiendo por qué recibo el error. Este es mi encabezado:

\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 

Y mi archivo de clase es el estándar de IoP de aquí

¿Alguien puede ayudarme a leer este error?

Responder

El error es, como TeX también informa. No puede encontrar su comando \text. El error probablemente se encuentre en el paquete iopams y debería notarse allí. Parece que no carga el paquete matemático ams (solo sus fuentes) y, por lo tanto, también debe incluir explícitamente ese paquete.

En una nota al margen también debe incluir $ en su \text comando.

Comentarios

  • En un lado tenga en cuenta que también debe incluir $ en su comando \ text. ¿Dónde en el comando text? Muestra $ E_j $ etc bien.
  • Probablemente no en \text{: E_j > E_i} el _ es un mathchar así como >. ¡Necesita \text{: $E_j > E_i$} a menos que iopams haga magia por usted! 🙂
  • De hecho, obtengo alguna forma de magia para mí. O que, debido a que \text no se reconoce, ' se ignora, por lo que E_j procesa correctamente.
  • Entonces, ¿se resolvió su problema original? Entonces está bien. No he ' t probé la clase iopart, así que no puedo decir si cambia la definición de _. Simplemente parece contrario a los paquetes TeX normales hacer esto (a menos que esté agrupado en los entornos matemáticos). ¡Me alegro de que funcione! 🙂
  • Yo ' acabo de editar el archivo iopams para incluir la biblioteca de matemáticas. Funciona como un encanto.

Respuesta

La macro \text es indefinido. Debes cargar el paquete amsmath o al menos amstext.

\usepackage{amsmath} 

\text se define en amstext, que se carga en amsmath. Cargue este último, porque ofrece muchas funciones matemáticas, como fórmulas alineadas de varias líneas y mucho más.

Comentarios

  • Ahora solo está regresando muchos errores sobre { extra o falta $ y nunca termina de compilarse.
  • @Pureferret Use texto dentro de \text{...} Eso ' es para lo que ' s: escapar del modo matemático. Si necesita símbolos matemáticos dentro de nuevo, escriba \text{word $\symbol$} o, mejor aún, finalice el argumento macro, como \text{word } \symbol \text{ and more text}.
  • Acabo de eliminar la macro \text{...} y ahora se ejecuta sin problemas. Yo ' sacrificaré ese : en aras de la simplicidad.
  • Nota para los lectores: amsmath no es compatible con iopart.

Responder

Un error similar también podría deberse a algo tan simple como intentar crear el archivo incorrecto (por ejemplo, hacer clic en un comando PDFLaTeX mientras está en el archivo» abstracto «, que es parte de su documento). Debería estar en su archivo principal (donde llama y «reúne» todos los archivos «más pequeños») cuando «está construyendo.

Espero que esto les ahorre algo de tiempo a los novatos como yo, ya que esta página la primera sugerencia al buscar este error.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *