\renewcommand无法更改\Re命令表示形式

发布于 2022-08-15 12:23:09

我在如下数学公式中想要使用Re来表示实部,但使用LaTeX本身的\Re命令会产生\mathcal下的字符

\begin{empheq}{align*}
    \boldsymbol{j}&=\frac{1}{2m_{e}}\varPsi^{+}\bigg(\hat{\boldsymbol{p}}+\frac{e}{c}\boldsymbol{A}\bigg)\varPsi+c.c.=\Re(\varPsi^{*}\hat{\boldsymbol{v}}\varPsi)    \nonumber\\
    &=\Re(\varPsi_{1}^{*}\hat{\boldsymbol{v}}\varPsi_{1}+\varPsi_{2}^{*}\hat{\boldsymbol{v}}\varPsi_{2})
\end{empheq}

1.jpg
尝试在网上找了许多方法更改,

\let\Re\undefined
\DeclareMathOperation[\Re][Re]
\renewcommand{\Re}{\operatorname{Re}}
\renewcommand{\Re}{\mathrm{Re}}

或使用physics宏包,但都无法使\Re命令产生如下的效果(\renewcommand其他地方正常)
2.jpg
虽然可以用\renewcommand利用其他命令来代替\Re,但是我之前的许多章节里都已经使用过\Re,贸然替换较为麻烦(之前没有注意\Re的影响),而且想要搞清楚为什么命令无法正常重定义的情况,希望能有高手指点一下其中的原因,万分感谢!

查看更多

关注者
0
被浏览
1.4k
雾月
雾月 2022-08-15
这家伙很懒,什么也没写!

如果你使用了 unicode-math 宏包,则必须将这重定义的代码放在 \AtBeginDocument 中,或者直接在正文而非导言区修改它。如\AtBeginDocument{\recommand\Re ...},因为 unicode-math 使用这种方式重新定义了 \Re

2 个回答
寄存器
寄存器 2022-08-15
这家伙很懒,什么也没写!

给MWE,也许是有宏包冲突之类呢?

可以用一个简单的文档看这样定义是不是可行,如果可行,也就是存在冲突之类,再用折半法一点点定位问题。

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览