Caracteres ausentes inseridos ao usar novos comandos em equações

Caracteres ausentes inseridos ao usar novos comandos em equações

Estou tendo um problema que não consigo resolver. Gostaria de definir um símbolo matemático, e mostrado no trecho de código, que utilizo com frequência ao longo do texto. Quando quero incluir esse mesmo símbolo dentro de uma equação, recebo muitos erros de "caracteres ausentes inseridos" e a formatação está errada do outro lado.

\documentclass[12pt]{article}
\usepackage{amsmath,amssymb}

\newcommand{\WPT}{$p_{\text{T}}^W$}

\begin{document}
The result for \WPT is shown below.

\begin{equation}
  r_s^{\WPT} &= 100.00
\end{equation}

\end{document}

Agradeço antecipadamente por sua ajuda.

Responder1

Se eu executar o código que você postou, recebo o erro:

! Missing } inserted.
<inserted text> 
                }
l.10   r_s^{\WPT
                } = 100.00
?

esse erro acontece porque quando seu comando se expande você tem (até o ponto onde o erro acontece) basicamente:

$$ r_s^{ $

que não é uma construção TeX válida. Você inicia a matemática de exibição, inicia um grupo e termina uma matemática embutida. Mais tarde, o TeX diria que:

! Display math should end with $$.
<to be read again> 
                   p
l.13   r_s^{$p
              _{\text{T}}^W$} = 100
?

e ficaria ainda mais confuso tentando consertar tudo isso.


Você pode usar \ensuremathwhich, como o nome diz, garante que seu conteúdo seja composto em modo matemático (observe o extra {}depois \WPTno texto aqui):

\documentclass[12pt]{article}
\usepackage{amsmath,amssymb}

\newcommand{\WPT}{\ensuremath{p_{\text{T}}^W}}

\begin{document}
The result for \WPT{} is shown below.

\begin{equation}
  r_s^{\WPT} = 100.00
\end{equation}

\end{document}

mas, como \WPTé essencialmente conteúdo matemático, eu usaria a marcação adequada e colocaria \WPT... $no $texto:

\documentclass[12pt]{article}
\usepackage{amsmath,amssymb}

\newcommand{\WPT}{p_{\text{T}}^W}

\begin{document}
The result for $\WPT$ is shown below.

\begin{equation}
  r_s^{\WPT} = 100.00
\end{equation}

\end{document}

informação relacionada