为 Re 和 Im 创建带前缀的成对分隔符

为 Re 和 Im 创建带前缀的成对分隔符

我正在尝试为类似这样的事情创建一个新命令:

\operatorname{Re}\left\lbrace\num{1+2i}\right\rbrace

因为我已经在使用该mathtools包,所以我尝试做这样的事情:(并且我必须取消定义前一个\Re\Im命令,因为它们很丑陋,并且这个命令显然应该被称为\Re\Im。)

\let\Re\undefined
\let\Im\undefined
\DeclarePairedDelimiter\Re{\operatorname{Re}\lbrace}{\rbrace}
\DeclarePairedDelimiter\Im{\operatorname{Im}\lbrace}{\rbrace}

这会起作用,但也会产生许多错误。例如:Missing { inserted. \end{align}等等。

然后我想:是的,这可能是因为字体无法缩放(也不应该),就像和一样\lbrace\rbrace我尝试了这样的方法:

\let\Re\undefined
\let\Im\undefined
\DeclarePairedDelimiter\braces{\lbrace}{\rbrace}
\newcommand{\Re}{1}{\operatorname{Re}\braces*{#1}}
\newcommand{\Im}{1}{\operatorname{Im}\braces*{#1}}

但这会产生:

缺少插入 $。\newcommand{\Re}{1}{\operatorname{Re}

缺少 \begin{document}。\newcommand{\Re}{1}{\operatorname{Re}

插入\ensuremath或类似的东西没有多大帮助。

最后一次尝试:

\let\Re\undefined
\let\Im\undefined
\newcommand{\Re}{1}{\operatorname{Re}\left\lbrace #1 \right\rbrace}
\newcommand{\Im}{1}{\operatorname{Im}\left\lbrace #1 \right\rbrace}

缺少插入 $。\newcommand{\Re}{1}{\operatorname{Re}

缺少 \begin{document}。\newcommand{\Re}{1}{\operatorname{Re}

您不能在数学模式下使用“宏参数字符 #”。...nd{\Re}{1}{\operatorname{Re}\left\lbrace #

让这样的事情成功应该不会这么难,对吧?我真的不知道下一步该尝试什么,或者我做错了什么。

答案1

您的语法不正确\newcommand

\newcommand{\Re}{1}

应该

\newcommand{\Re}[1]

答案2

您可以使用\DeclarePairedDelimiterXPPfrom mathtools。它将定义 \Re和命令,它们具有星号版本(在分隔符前\Im添加一对隐式),但它们还接受、和之间的可选参数,这会添加一对隐式的,&c。\left \right\big\Big\bigg\Bigg\bigl \bigr

\documentclass[10pt]{article}
\usepackage{mathtools} %
\let\Re\undefined
\let\Im\undefined
 \DeclarePairedDelimiterXPP\Re[1]{\operatorname{Re}}{\lbrace}{\rbrace}{}{#1}
 \DeclarePairedDelimiterXPP\Im[1]{\operatorname{Im}}{\lbrace}{\rbrace}{}{#1}

\begin{document}

   \[ \Re*{\frac{z-1}{z + 1}}\qquad \Im[\Big]{\frac{z-1}{z + 1}} \]%

\end{document} 

在此处输入图片描述

相关内容