IEEEeqnarray 左边距

IEEEeqnarray 左边距

我在 LaTeX 中使用 newfloat。在该浮点数(称为模型)中,我使用IEEEeqnarray如下环境:

\documentclass[journal]{IEEEtran}
\usepackage[utf8]{inputenc}
\usepackage{float}
\usepackage{caption}

\floatstyle{ruled}
\newfloat{model}{thp}{lop}
\floatname{model}{Model}

\captionsetup
  [model]% Float type
  {%
      name      = Model,
      labelfont = normalfont,
      %textfont  = it,
      labelsep  = period
  }

\begin{document}
\title{MWE}
\maketitle
\section{Mwe}

\begin{model}[!h]
\caption{My Model}
\label{Model3}
 \begin{IEEEeqnarray}{l}   
   x_a + y_b \leq c_1 + 1000000000000000000,~\forall~a\in A,b\in B\\
   x_d + y_e \leq c_2 - 1000000000000000000,~\forall~d\in D,e\in E
 \end{IEEEeqnarray}
\end{model}

\bibliographystyle{IEEEtran}

\end{document}

我想减少方程式前面的左边距,我该如何实现?

我在文档或 Google 上找不到任何内容。

多谢。

編輯:MWE

即使我提供了参数 {l},我也无法让方程式向左移动(就像在表格单元格中一样)。

在此处输入图片描述

答案1

IEEEeqnarray不会尝试将内容与左边距对齐,而是尝试将块相对于边距居中。

使用 可以获得更好的设置rCl'l,但您可能需要将其更改为rl(以获得更宽的空间)。如果您确实希望与左边距对齐,则可以使用。'"flalign

\documentclass[journal]{IEEEtran}
%\usepackage[utf8]{inputenc}
\usepackage{float}
\usepackage{caption}

\usepackage{newtxtext,newtxmath} % I recommend this

\floatstyle{ruled}
\newfloat{model}{thp}{lop}
\floatname{model}{Model}

\captionsetup[model]{% Float type
  name      = Model,
  labelfont = normalfont,
  %textfont  = it,
  labelsep  = period
}

\begin{document}

\title{MWE}
\author{me}
\maketitle

\section{Mwe}

\begin{model}[!htp]
\caption{My Model}
\label{Model3}
\begin{IEEEeqnarray}{rCl'l}
  x_a + y_b &\leq& c_1 + 1000000000000000000, &\forall\, a\in A,b\in B\\
  x_d + y_e &\leq& c_2 - 1000000000000000000, &\forall\, d\in D,e\in E
  \IEEEeqnarraynumspace
\end{IEEEeqnarray}
\end{model}

\begin{model}[!htp]
\caption{My Model}
\label{Model3-again}
\begin{flalign}
  x_a + y_b &\leq c_1 + 1000000000000000000, &&\forall\, a\in A,b\in B\\
  x_d + y_e &\leq c_2 - 1000000000000000000, &&\forall\, d\in D,e\in E
\end{flalign}
\end{model}

\end{document}

在此处输入图片描述

答案2

使用 IEEEeqnarray 并不是一个好的选择。更好的方法是使用amsmath包定义的数学环境。例如,通过使用包和提供的数学fleqn环境:gathernccmathamsmath

\documentclass[journal]{IEEEtran}
\usepackage[utf8]{inputenc}
\usepackage{float}
\usepackage{caption}
\usepackage{nccmath}  % <--- it also load amsmath

\floatstyle{ruled}
\newfloat{model}{thp}{lop}
\floatname{model}{Model}

\captionsetup
  [model]% Float type
  {%
      name      = Model,
      labelfont = normalfont,
      %textfont  = it,
      labelsep  = period
  }

\begin{document}
\title{MWE}
\maketitle
\section{Mwe}

\begin{model}[!h]
\caption{My Model}
\label{Model3}
\begin{fleqn}        % <---
    \begin{gather}   % <---
x_a + y_b \leq c_1 + 1000000000000000000,~\forall~a\in A,b\in B\\
x_d + y_e \leq c_2 - 1000000000000000000,~\forall~d\in D,e\in E
    \end{gather}
\end{fleqn}
\end{model}

\bibliographystyle{IEEEtran} % not relevant for your problem

\end{document}

在此处输入图片描述

您也可以考虑使用较小的字体来表示这个等式:

...
\begin{model}[!h]
\caption{My Model}
\label{Model3}
\small            % <---
\begin{fleqn}
    \begin{gather}%
x_a + y_b \leq c_1 + 1000000000000000000,~\forall~a\in A,b\in B\\
x_d + y_e \leq c_2 - 1000000000000000000,~\forall~d\in D,e\in E
    \end{gather}
\end{fleqn}
\end{model}
...

在这种情况下,您将获得以下结果:

在此处输入图片描述

相关内容