对齐不正确的间距

对齐不正确的间距

我来自这个帖子让公式模式中的字符(下标)占据相同的宽度使我的方程占据相同的宽度。解决方案是使用 alignat。现在我在上面添加了另外 2 个方程,间距变得很乱。我该如何解决这个问题?我尝试了很多随机的方法,但最终它们看起来都像垃圾。

\documentclass{article}
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{graphicx}
\usepackage{amsmath}

\begin{document}

\begin{alignat}{4}
    \hat{y}_{\Psi}^t &= \Psi(h^t_\text{h}) \\
    \hat{y}^t_{\Phi,s,i} &= \Phi([\hat{y}_{\Psi}^t \odot m_s,x_i^t];\text{BPS}_i) \label{eq:doublenets} \\
    \hat{y}^t &= \alpha^t_{l,\text{h}}\hat{y}^t &&\odot m_l &&+ \mathop{\textstyle\sum_{i}} \alpha^t_{l,i}\hat{y}^t_{l,i} &&\odot (1 - m_l) \label{eq:update1} \\
    \hat{y}^t &= \alpha^t_{r,\text{h}}\hat{y}^t &&\odot m_r &&+ \mathop{\textstyle\sum_{i}} \alpha^t_{r,i}\hat{y}^t_{r,i} &&\odot (1 - m_r) \label{eq:update2}
\end{alignat}

\end{document}

在此处输入图片描述

答案1

只需隐藏第一行条目的宽度,例如

在此处输入图片描述

\documentclass{article}
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{graphicx}
\usepackage{amsmath}

\begin{document}

\begin{alignat}{4}
    \hat{y}_{\Psi}^t &= \Psi(h^t_{\mathrm{h}})\hspace{-\textwidth} \\
    \hat{y}^t_{\Phi,s,i} &= \Phi([\hat{y}_{\Psi}^t \odot m_s,x_i^t];\mathrm{BPS}_i)\hspace{-\textwidth} \label{eq:doublenets} \\
    \hat{y}^t &= \alpha^t_{l,\mathrm{h}}\hat{y}^t &&\odot m_l &&+ \mathop{\textstyle\sum_{i}} \alpha^t_{l,i}\hat{y}^t_{l,i} &&\odot (1 - m_l) \label{eq:update1} \\
    \hat{y}^t &= \alpha^t_{r,\mathrm{h}}\hat{y}^t &&\odot m_r &&+ \mathop{\textstyle\sum_{i}} \alpha^t_{r,i}\hat{y}^t_{r,i} &&\odot (1 - m_r) \label{eq:update2}
\end{alignat}

\end{document}

我还修复了\text不应在这里使用的,\mathrm上次我错过了。

答案2

您可以使用包IEEEeqnarray中提供的IEEEtrantools

\documentclass{article}
\usepackage{amsmath}
\usepackage{IEEEtrantools}

\newcommand{\hup}{\mathrm{h}}
\newcommand{\tsum}{\mathop{\textstyle\sum}\nolimits}

\begin{document}

\begin{IEEEeqnarray}{rLLLL}
\hat{y}^t &= \alpha^t_{l,\hup}\hat{y}^t &\odot m_l &+
  \tsum_{i} \alpha^t_{l,i}\hat{y}^t_{l,i} &\odot (1 - m_l) \\
\hat{y}^t &= \alpha^t_{r,\hup}\hat{y}^t &\odot m_r &+
  \tsum_{i} \alpha^t_{r,i}\hat{y}^t_{r,i} &\odot (1 - m_r)
\end{IEEEeqnarray}
And another one
\begin{IEEEeqnarray}{rLLLL}
\hat{y}_{\Psi}^t &= \Psi(h^t_{\hup}) \\
\hat{y}^t_{\Phi,s,i} &
  \IEEEeqnarraymulticol{4}{L}{=\Phi\bigl([\hat{y}_{\Psi}^t \odot m_s,x_i^t];\mathrm{BPS}_i\bigr)}
\label{eq:doublenets} \\
\hat{y}^t &= \alpha^t_{l,\hup}\hat{y}^t &\odot m_l &+
  \tsum_{i} \alpha^t_{l,i}\hat{y}^t_{l,i} &\odot (1 - m_l)
  \label{eq:update1} \\
\hat{y}^t &= \alpha^t_{r,\hup}\hat{y}^t &\odot m_r &+
  \tsum_{i} \alpha^t_{r,i}\hat{y}^t_{r,i} &\odot (1 - m_r)
  \label{eq:update2}
\end{IEEEeqnarray}


\end{document}

请注意\text{h}\text{BPS}是错误的,\text应该是\mathrm。我还提供了文本样式的简写\sum

列类型L表示左对齐,开头有一个空原子,因此初始二进制或关系符号周围的间距是正确的。

在此处输入图片描述

相关内容