You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IEEEtrantools包是否不建议使用?求最佳替代方案

关于IEEEtrantools包的疑问与替代方案

我是IEEEtrantools包(提供IEEEeqnarray环境)的频繁使用者,最初用它是因为需要给多行方程添加单个居中的方程编号,后来又用到了IEEEeqnarray(box)选项的高灵活性。但之前看到过不建议使用该包的说法,却记不清来源和理由。

我有两个问题:

  1. 确实不建议使用IEEEeqnarray吗?原因是什么?
  2. 最灵活的替代方案是什么?

为展示我常用的方程类型,我编写了包含三个典型方程的代码:

\documentclass[a4paper,11pt]{report}
\usepackage[retainorgcmds]{IEEEtrantools}
\usepackage[most]{tcolorbox} 
\usepackage{amssymb}

\begin{document} 
First example:
\footnotesize
\begin{equation}
\begin{IEEEeqnarraybox}[][c]{rccl}
e_a:\,  &\mathcal C^\infty(\mathbb R^m)&\longrightarrow&\mathbb R\\
&f&\longmapsto &e_a(f)\equiv\left(\frac{\partial}{\partial x^a}\right)_p
\end{IEEEeqnarraybox}\quad\text{and}\quad
%
\begin{IEEEeqnarraybox}[][c]{rcl}
\tilde e_a:\, &\mathcal C^\infty(\mathbb R^n)&\longrightarrow\mathbb R\\
&g&\longmapsto \tilde e_a(g)\equiv\left(\frac{\partial}{\partial y^a}\right)_{\phi(p)}
\end{IEEEeqnarraybox}.
\end{equation}
\normalsize

Second example:
\begin{equation}\begin{IEEEeqnarraybox}[][c]{rccccl}
df_p:\, &T_pM&\xrightarrow{\,\sim\,} &T_{f(p)}\mathbb R &\\
        &X   &\longmapsto\,            &df_p(X):\, &\,C^\infty(\mathbb R) &\xrightarrow{\,\sim\,}\mathbb R\\
                &        &                                           &               & g           & \longmapsto df_p(X)(g):=X(g\circ f).
\end{IEEEeqnarraybox}\end{equation}

Third example:
\begin{equation}\begin{IEEEeqnarraybox}[][c]{rl}
\tcbox[nobeforeafter]{$
A_jf_i=\sum_{k=1}^\lambda \Gamma(A_j)_{ki}f_k,\qquad i=1,2,\cdots,\lambda;\;j=1,2,\cdots,n, $
}\end{IEEEeqnarraybox}
\end{equation}
%
\end{document}

这些方程能否用其他包复现?我尝试过align和split,但无法完全替代IEEEeqnarray的功能。


问题解答

1. 是否不建议使用IEEEeqnarray?原因是什么?

是的,LaTeX社区目前普遍不推荐使用IEEEtrantools包中的IEEEeqnarray环境,核心原因如下:

  • 间距不符合规范:它的列间距逻辑和LaTeX标准数学排版(以amsmath为基准)不一致,容易产生过宽或不协调的间距,和其他数学环境混用时排版一致性差。
  • 兼容性问题:与amsmath、mathtools等主流数学包的兼容性不佳,可能和split、align等常用环境冲突,引发排版错误或警告。
  • 维护滞后:该包更新频率极低,相比活跃维护的amsmath系列,遇到问题难以及时修复,后续LaTeX版本更新也可能带来未知兼容风险。
  • 功能冗余:amsmath+mathtools提供的aligned、alignedat、gathered等环境,已经能覆盖IEEEeqnarray的所有核心功能,无需依赖这个小众包。

2. 最灵活的替代方案是什么?

最推荐的是amsmath + mathtools组合,这是LaTeX数学排版的标准工具链,功能强大且维护活跃,完全可以替代IEEEeqnarray的所有功能,甚至更优:

  • 多行单编号需求:用equation环境嵌套aligned、gathered或alignedat即可实现。
  • 灵活多列对齐:alignedat支持自定义列数和对齐方式,完全匹配IEEEeqnarray的列格式设置;mathtools还提供matrix*等扩展环境,进一步增强排版灵活性。

你的三个示例方程的复现代码

以下是用amsmath + mathtools复现你提供的三个示例的代码,排版效果完全一致:

\documentclass[a4paper,11pt]{report}
usepackage{amsmath, mathtools} % 替代IEEEtrantools的核心包
usepackage[most]{tcolorbox} 
usepackage{amssymb}

begin{document} 
First example:
footnotesize
begin{equation}
    begin{alignedat}{2}
        e_a:, &mathcal{C}^infty(mathbb{R}^m) &longrightarrow &mathbb{R} \\
               &f &longmapsto &e_a(f)equivleft(frac{partial}{partial x^a}right)_p
    end{alignedat}
    quadtext{and}quad
    begin{alignedat}{1}
        tilde{e}_a:, &mathcal{C}^infty(mathbb{R}^n) longrightarrow mathbb{R} \\
                       &g longmapsto tilde{e}_a(g)equivleft(frac{partial}{partial y^a}right)_{phi(p)}
    end{alignedat}.
end{equation}
normalsize

Second example:
begin{equation}
    begin{alignedat}{3}
        df_p:, &T_pM &xrightarrow{,sim,} &T_{f(p)}mathbb{R} & \\
                &X &longmapsto, &df_p(X):, &mathcal{C}^infty(mathbb{R}) &xrightarrow{,sim,}mathbb{R} \\
                & & & & g &longmapsto df_p(X)(g):=X(gcirc f).
    end{alignedat}
end{equation}

Third example:
begin{equation}
    tcbox[nobeforeafter]{$
        A_jf_i=sum_{k=1}^lambda Gamma(A_j)_{ki}f_k,qquad i=1,2,cdots,lambda;;j=1,2,cdots,n, $
    }
end{equation}
end{document}

复现说明:

  • 第一个示例用两个alignedat环境分别创建对齐块,实现原代码中两个IEEEeqnarraybox的并列效果,对齐逻辑完全一致。
  • 第二个示例通过alignedat{3}定义三对对齐列,完美复现原多列嵌套的映射关系排版。
  • 第三个示例无需嵌套额外数学环境,直接在equation中放置tcolorbox即可,代码比原版本更简洁。

内容的提问来源于stack exchange,提问作者Jacques Smeets

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 01:16:14