问题
下面代码的编译存在两个问题:
\documentclass[17pt]{extreport}
\usepackage{amsmath}
\usepackage{mathtools}
\begin{document}
\begin{align*}
&rho*fvm::d2dt2(u)\\
&-fvm::laplacian(k,u)\\
&-fvc::div(sigma-k*grad(u))\\
&=rho*f\\
Then:\\
&rho*fvm::d2dt2(u)\\
&-fvm::laplacian(k,u)\\
&-fvc::div(sigma)\\
&+fvc::div(k*grad(u))\\
&=rho*f\\
Then:\\
&rho*fvm::d2dt2(u)\\
&-fvm::laplacian(k,u)\\
&-fvc::div(sigma)\\
&+fvc::div(k*grad(u))\\
&+fvc::laplacian(k,u)\\
&-fvc::laplacian(k,u)\\
&=rho*f\\
Then:\\
&rho*fvm::d2dt2(u)\\
&-fvm::laplacian(k,u)\\
&+fvc::laplacian(k,u)\\
&-fvc::div(sigma)\\
&+fvc::div(k*grad(u))\\
&-fvc::laplacian(k,u)\\
&=rho*f\\
\end{align*}
\end{document}
答案1
您需要提供指令\allowdisplaybreaks
以允许 LaTeX 在长align*
环境中的某处插入分页符。
我还会尝试提供更多视觉“节奏”,比如不将所有行对齐到完全相同的(垂直)线上。我还想建议将语句Then:
从等式中移除,将其放在\shortintertext
语句中。
最后说明一下:我假设您知道在整个环境主体中使用数学斜体字体(甚至不是文本斜体字体形状)在做什么align*
。
\documentclass[17pt]{extreport}
\usepackage[a4paper,margin=2.5cm]{geometry} % set suitable page parameters
\usepackage{mathtools}
\allowdisplaybreaks
\begin{document}
\begin{align*}
&rho*fvm::d2dt2(u)\\
&\quad-fvm::laplacian(k,u)\\
&\quad-fvc::div(sigma-k*grad(u))\\
&\qquad= rho*f\\
\shortintertext{Then:}
&rho*fvm::d2dt2(u)\\
&\quad-fvm::laplacian(k,u)\\
&\quad-fvc::div(sigma)\\
&\quad+fvc::div(k*grad(u))\\
&\qquad= rho*f\\
\shortintertext{Then:}
&rho*fvm::d2dt2(u)\\
&\quad-fvm::laplacian(k,u)\\
&\quad-fvc::div(sigma)\\
&\quad+fvc::div(k*grad(u))\\
&\quad+fvc::laplacian(k,u)\\
&\quad-fvc::laplacian(k,u)\\
&\qquad= rho*f\\
\shortintertext{Then:}
&rho*fvm::d2dt2(u)\\
&\quad-fvm::laplacian(k,u)\\
&\quad+fvc::laplacian(k,u)\\
&\quad-fvc::div(sigma)\\
&\quad+fvc::div(k*grad(u))\\
&\quad-fvc::laplacian(k,u)\\
&\qquad= rho*f\\
\end{align*}
\end{document}