我完全被震惊了。我断断续续花了一个月的时间寻找解决这个极其明显问题的方法,但我发现没有任何地方能解决这个问题。
当使用对齐方程式时,除非我在写的每一行之前都加上 &,否则默认的方程式对齐是到每行的最后一个字符,这会导致方程式以一种没人想读的方式出现。
我如何永久设置对齐方式以对齐到每行的第一个字符而不必对每一行都进行 & ?
[![\begin{align}
T=\f{1}{2}m\dot{x}_1^2+\f{1}{2}\dot{x}_2^2\\
U_{spring}=\f{1}{2}kx^2\\
U=\f{1}{2}kx_1^2+\f{1}{2}kx_2^2+\f{1}{2}k_{12}(x_2-x_1)^2\\
\L=T-U\\
\pd{\L}{x_1}=\d{}{t}\pd{\L}{\dot{x}}_1\Rightarrow-\f{1}{2}k2x_1-\f{1}{2}k_{12}2(x_2-x_1)(-)=m\ddot{x}_1\\
m\ddot{x}_1=-kx_1+k_{12}x_2-k_{12}x_1=-(k+k_{12})x_1+kx_2\\
=-(k+k_{12})x_1+k_{12}x_2\\
m\ddot{x}_2=k_{12}x_1-(k+k_{12})x_2
\end{align}][1]][1]
\begin{align}
&T=\f{1}{2}m\dot{x}_1^2+\f{1}{2}\dot{x}_2^2\\
&U_{spring}=\f{1}{2}kx^2\\
&U=\f{1}{2}kx_1^2+\f{1}{2}kx_2^2+\f{1}{2}k_{12}(x_2-x_1)^2\\
&\L=T-U\\
&\pd{\L}{x_1}=\d{}{t}\pd{\L}{\dot{x}}_1\Rightarrow-\f{1}{2}k2x_1-\f{1}{2}k_{12}2(x_2-x_1)(-)=m\ddot{x}_1\\
&m\ddot{x}_1=-kx_1+k_{12}x_2-k_{12}x_1=-(k+k_{12})x_1+kx_2\\
&=-(k+k_{12})x_1+k_{12}x_2\\
&m\ddot{x}_2=k_{12}x_1-(k+k_{12})x_2
\end{align}
答案1
您应该做两件事:使用\documentclass[fleqn]{article}
(或您正在使用的任何文档类),但也使用gather
而不是align
。align
及其同类用于垂直对齐某些指定字符周围的文本,通常是=
,但gather
用于一般方程式列表。(您也可以使用它gather*
来获取未编号的版本。)
\documentclass[fleqn]{article}
\usepackage{amsmath}
\newcommand{\pd}[2]{\frac{\partial #1}{\partial #2}}
\newcommand{\dfr}[2]{\frac{d #1}{d #2}}
\begin{document}
Here is some text.
\begin{gather}
T = \frac{1}{2}m\dot{x}_1^2 + \frac{1}{2}\dot{x}_2^2\\
U_{\text{spring}} = \frac{1}{2}kx^2\\
U = \frac{1}{2}kx_1^2 + \frac{1}{2}kx_2^2 + \frac{1}{2}k_{12}(x_2 - x_1)^2\\
\mathcal L = T-U\\
\pd{\mathcal L}{x_1} = \dfr{}{t}\pd{\mathcal L}{\dot{x}}_1\Rightarrow -
\frac{1}{2}k2x_1 - \frac{1}{2}k_{12}2(x_2 - x_1)(-) = m\ddot{x}_1\\
m\ddot{x}_1 = -kx_1 + k_{12}x_2 - k_{12}x_1 = -(k+k_{12})x_1 + kx_2\\
=-(k + k_{12})x_1 + k_{12}x_2\\
m\ddot{x}_2 = k_{12}x_1 - (k + k_{12})x_2
\end{gather}
\end{document}
如果你真的想重新定义align
,你可以调用
\renewenvironment{align}{\gather}{\endgather}
在你的序言中,只使用align
我使用的地方gather
,但这会使你的代码不太清晰。