左对齐,内联式方程

左对齐,内联式方程

我正在尝试创建一个用于编写物理问题集的模板。很多这些问题集都涉及简短、简单的计算。例如:

简单计算

我尝试用类似以下内容来排版此计算

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{enumerate}
\item
\begin{align*}
\omega_{0}&=\sqrt{k_{0}/M}\\
&=\sqrt{5/10}\\
&=\frac{1}{\sqrt{2}}
\end{align*}
\end{enumerate}
\end{document}

但最终结果看起来是这样的:

该死

这对我来说看起来很糟糕——这是一个非常简短的计算,它看起来很荒谬地放在文档的中心,特别是前后都没有任何文字。

或者,我也可以只使用内联方程形式,

\documentclass{article}
\begin{document}
\begin{enumerate}
\item
$\omega_{0}=\sqrt{k_{0}/M}$\\
$=\sqrt{5/10}$\\
$=\frac{1}{\sqrt{2}}$
\end{enumerate}
\end{document}

但这会产生类似这样的结果,从而失去方程数组的良好格式。

又该死

本质上,我的目标是找到一种排版方程的方式,就好像它只是内联文本一样(即 $\omega_{0}$ 直接位于 1. 之后,就像内联形式一样),但保留方程数组的对齐和格式。我得到的最接近的方法是使用选项fleqn和负数\vspace将其放在同一行,但即使这样看起来也不正确,因为fleqn只是使方程更多的向左,但实际上并没有与文本边距对齐。

答案1

内联数学模式是可行的。但您需要aligned来自 » 的环境数学«。您可以将其相对于当前行对齐到顶部。

\documentclass[11pt]{article}
\usepackage[T1]{fontenc}
\usepackage{mathtools}  % loads »amsmath«

\begin{document}
  \begin{enumerate}
    \item
      \(
        \begin{aligned}[t]
          \omega_{0} &= \sqrt{k_{0}/M}\\
                     &= \sqrt{5/10}\\
                     &= \frac{1}{\sqrt{2}}
        \end{aligned}
      \)
  \end{enumerate}
\end{document}

在此处输入图片描述

答案2

对于这种简短的派生,堆栈通常可以满足您的需要。在本例中,出于演示目的,我将堆栈间隙设置为 4pt(默认值为 3pt),并以左对齐方式调用堆栈。

\documentclass{article}
\usepackage[usestackEOL]{stackengine}
\stackMath
\setstackgap{S}{4pt}
\begin{document}
1. $
\omega_o \mathrel{\Shortunderstack[l]{= \sqrt{k_0/M}\\= \sqrt{5/10}\\
  = \displaystyle\frac{1}{\sqrt{2}}}}
$
\end{document}

在此处输入图片描述

相关内容