如何在 iopart 文档类中使用 \cases

如何在 iopart 文档类中使用 \cases

iopart 文档类在iopart.cls文件中定义以下内容

\def\cases#1{%
     \left\{\,\vcenter{\def\\{\cr}\normalbaselines\openup1\jot\m@th%
     \ialign{\strut$\displaystyle{##}\hfil$&\tqs
     \rm##\hfil\crcr#1\crcr}}\right.}%

amsmath这是的环境的替代品吗cases?我该如何使用它?该定义未出现在文件中的其他地方。

如何手动实现案例环境的问题已经被问过这里。考虑到该帖子的年限,我想知道这是否仍然是必需的。

答案1

此定义\cases(不是环境)是对 LaTeX 内核中的定义进行修改,而 LaTeX 内核中的定义本质上与纯 TeX 中的定义相同。

顺便说一句,诸如\rm和之类的命令\bf已经过时并且已被弃用了近三十年。

有一种非常简单的方法可以amsmath与 一起加载iopart。我还将使用一个技巧来比较和iopart的结果。\casesamsmathcases

\documentclass[10pt]{iopart}

% for using amsmath
\expandafter\let\csname equation*\endcsname\relax
\expandafter\let\csname endequation*\endcsname\relax

%%% This is just to compare the results
\let\iopartcases\cases
%%%

\usepackage{amsmath}

\begin{document}

In the following display I'll be using \verb|\cases| as
defined by \verb|iopart| in order to check the differences
\[
f(x)=\iopartcases{1 & abc \\ 0 & uvw}
\]
The following display will use \verb|cases| as defined by
\verb|amsmath| in order to check the differences
\[
f(x)=\begin{cases} 1 & abc \\ 0 & uvw \end{cases}
\]
Now we can decide which one to use.

\end{document}

在此处输入图片描述

如果您喜欢这种方式iopart,您可以定义一个iopcases环境(我不会覆盖amsmath它)。

\documentclass[10pt]{iopart}

% for using amsmath
\expandafter\let\csname equation*\endcsname\relax
\expandafter\let\csname endequation*\endcsname\relax

%%% This is just to compare the results
\let\iopartcases\cases
%%%

\usepackage{amsmath}
\usepackage{mathtools}

\makeatletter
\newcases{iopcases}{\tqs}
 {$\m@th\displaystyle##$\hfil}
 {##\hfil}
 {\lbrace}
 {.}
\makeatother

\begin{document}

In the following display I'll be using \verb|\cases| as
defined by \verb|iopart| in order to check the differences
\[
f(x)=\iopartcases{1 & abc \\ 0 & uvw}
\]
The following display will use \verb|iopcases| as defined
above in order to check the differences
\[
f(x)=\begin{iopcases} 1 & abc \\ 0 & uvw \end{iopcases}
\]
Now we can decide which one to use.

\end{document}

在此处输入图片描述

您想要像那样的狭窄空间iopart吗?更改为

\makeatletter
\newcases{iopcases}{\tqs}
 {$\m@th\displaystyle\,##$\hfil}
 {##\hfil}
 {\lbrace}
 {.}
\makeatother

你会得到

在此处输入图片描述

我不会将其用于iopart私人目的。还有其他几个课程不需要技巧就可以使用基本工具来排版数学。

相关内容