
Eu tenho um conjunto de PDEs que estou tentando digitar, alguns termos de ordem superior neles já possuem um sobrescrito.
Estou usando a physics
função package \pdv[n]{}{}
, este é o código que escrevi
\documentclass[a4paper,12pt]{article}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{physics}
\numberwithin{equation}{section}
\begin{document}
\newcommand\vt{v_{\theta}}
\newcommand\vr{v_{r}}
\newcommand\vx{v_{x}}
\newcommand\vts{v_{\theta}^{*}}
\newcommand\vrs{v_{r}^{*}}
\newcommand\vxs{v_{x}^{*}}
\newcommand\ts{t^{*}}
\newcommand\rs{r^{*}}
\newcommand\xs{x^{*}}
\section{Governing Equations}
\begin{multline}
\pdv{\vrs}{\ts}+\vrs\pdv{\vrs}{\rs}+\vts\frac{1}{\rs}\pdv{\vrs}{\ts}+\vxs\pdv{\vrs}{\xs}-\frac{\vt^{*^2}}{\rs}= \\ -\frac{1}{\rho}\pdv{p^{*}}{\rs}+\frac{1}{\mu}\left[\frac{1}{\rs}\pdv{\vrs}{\rs}+\pdv[2]{\vxs}{\rs}+\frac{1}{\rs}\pdv[2]{\vxs}{\theta}+\pdv[2]{\vxs}{\vxs}\right]
\end{multline}
\end{document}
Quando tentei compilar isso, recebi um erro informando
"! Double superscript.\l__deriv_p_denom_tl ...ariable:nn {pdv}{\xs }\sp{2} \end{multline} ".
Como isso pode ser resolvido? Acredito que isso decorre dos termos do PDE de ordem superior.
Responder1
O que você precisa é de algum posicionamento estratégico de chaves.
Basicamente, você não pode simplesmente digitar a^b^c
em LaTeX, porque ele não entenderia que a b^c
parte inteira deveria estar sobrescrito. Em vez disso, você deve colocar isso entre colchetes, assim: a^{b^c}
.
A mesma coisa acontece na sua equação - você só precisa colocar mais alguns colchetes. A solução mais fácil é colocar um par extra em cada uma das suas \newcommand
definições que contêm ^
.
\newcommand\vt{v_{\theta}}
\newcommand\vr{v_{r}}
\newcommand\vx{v_{x}}
\newcommand\vts{{v_{\theta}^{*}}} % extra {}
\newcommand\vrs{{v_{r}^{*}}} % extra {}
\newcommand\vxs{{v_{x}^{*}}} % extra {}
\newcommand\ts{{t^{*}}} % extra {}
\newcommand\rs{{r^{*}}} % extra {}
\newcommand\xs{{x^{*}}} % extra {}
Responder2
Rastreei o problema até o seguinte:
Quando você define o newcommand
comando não é um token único, portanto você não pode colocar um superíndice se existir outro.
Você precisa adicionar colchetes extras às suas newcommand
definições
\documentclass[a4paper,12pt]{article}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{physics}
\numberwithin{equation}{section}
\begin{document}
\newcommand\vt{{v_{\theta}}}
\newcommand\vr{{v_{r}}}
\newcommand\vx{{v_{x}}}
\newcommand\vts{{v_{\theta}^{*}}}
\newcommand\vrs{{v_{r}^{*}}}
\newcommand\vxs{{v_{x}^{*}}}
\newcommand\ts{{t^{*}}}
\newcommand\rs{{r^{*}}}
\newcommand\xs{{x^{*}}}
\section{Governing Equations}
\begin{multline}
\pdv{\vrs}{\ts}
+\vrs \pdv{\vrs}{\rs}
+\vts \frac{1}{\rs} \pdv{\vrs}{\ts}
+\vxs \pdv{\vrs}{\xs}
-\frac{\vt^{*2}}{\rs}= \\
-\frac{1}{\rho}\pdv{p^{*}}{\rs}+\frac{1}{\mu}\left[\frac{1}{\rs}\pdv{\vrs}{\rs}+\pdv[2]{\vxs}{\rs}+\frac{1}{\rs}\pdv[2]{\vxs}{\theta}+\pdv[2]{\vxs}{\vxs}\right]
\end{multline}
\end{document}
Então tudo funciona conforme o esperado.