我尝试过以下代码:
\[ \begin{alignedat}{2}
& \text{Find} & & X \\
& \text{subject to} & \quad & \mathcal{A}(X) = y \\
& & & X \succeq 0 \\
& & & \rk(X) = 1
\end{alignedat}\quad \iff \quad
\begin{alignedat}{2}
& \text{Minimise} && \rk(X) \\
& \text{subject to} & \quad &\mathcal{A}(X ) = y \\
& & & X \succeq 0
\end{alignedat} \]
但它产生的结果是:
如您所见,优化表达式横跨了纸张的两列。我的问题是如何将这个优化表达式移到纸张的左侧?
答案1
我建议您缩写subject to
to的两个实例和tos.t.
的单个实例。Minimise
Min.
\documentclass{IEEEtran}
\usepackage{amsmath}
\DeclareMathOperator{\rk}{Rank}
\usepackage{lipsum}
\begin{document}
\[
\begin{alignedat}{2}
& \text{Find} & \quad & X \\
& \text{s.t.} & & \mathcal{A}(X) = y \\
& & & X \succeq 0 \\
& & & \rk(X) = 1
\end{alignedat}
\quad \iff \quad
\begin{alignedat}{2}
& \text{Min.} & \quad & \rk(X) \\
& \text{s.t.} & &\mathcal{A}(X ) = y \\
& & & X \succeq 0
\end{alignedat}
\]
\lipsum[2] % filler rtext
\end{document}
答案2
主要问题是使用数学字体
- 与文本字体在视觉上不兼容
- 平均字符宽度比文本字体大得多
现在,IEEEtran 使用 Times 作为主要文本字体和双列格式,原因很简单:在每页中压缩更多文本。
使用 Computer Modern Math 来处理论文的数学部分会导致排版非常糟糕,并且存在可读性问题。因此,当您必须使用 IEEEtran 时,第一步是将数学公式也切换到 Times。
较旧的 hack 是声明\usepackage{mathptmx}
,但您现在可以使用积极维护且已在 TeX 发行版中存在多年的 NewTX。
\iff
这样,您的显示将非常合适。我用\Leftrightarrow
和修复替换了太长\mathcal
(在 NewTX 中不太好)。我还添加了一个版本,其中中间箭头与优化问题的顶线对齐。
\documentclass{IEEEtran}
\usepackage{newtxtext,newtxmath}% or just \usepackage{newtx}
\usepackage{amsmath}
\usepackage[cal=cm]{mathalpha}% for standard \mathcal
\usepackage{lipsum} % for dummy text
\DeclareMathOperator{\rk}{rank}
\begin{document}
\lipsum[3]
\[
\begin{alignedat}{2}
& \text{Find} & & X \\
& \text{subject to} & \quad & \mathcal{A}(X) = y \\
& & & X \succeq 0 \\
& & & \rk(X) = 1
\end{alignedat}
\quad\Leftrightarrow\quad
\begin{alignedat}{2}
& \text{Minimise} && \rk(X) \\
& \text{subject to} & \quad &\mathcal{A}(X ) = y \\
& & & X \succeq 0
\end{alignedat}
\]
\lipsum[1-4]
\[
\begin{alignedat}[t]{2}
& \text{Find} & & X \\
& \text{subject to} & \quad & \mathcal{A}(X) = y \\
& & & X \succeq 0 \\
& & & \rk(X) = 1
\end{alignedat}
\quad\Leftrightarrow\quad
\begin{alignedat}[t]{2}
& \text{Minimise} && \rk(X) \\
& \text{subject to} & \quad &\mathcal{A}(X ) = y \\
& & & X \succeq 0
\end{alignedat}
\]
\lipsum
\end{document}