我有以下代码来解释我使用的公式中的变量。
\documentclass[11pt,pointlessnumbers,a4paper,oneside,fleqn,headsepline,
parskip=half]{scrartcl}
%
\usepackage{mathtools}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amstext,amssymb}
\usepackage{blindtext}
\newcommand{\diff}{\mathop{}\!\mathrm{d}}
\newcommand{\indb}[2]{{#1}_{\text{#2}}}
\begin{document}
\begin{gather*}
\begin{flalign*}
\indb{T}{N} &= b\cdot\int\nolimits_z E\cdot\indb{\alpha}{T}\cdot \theta(z) \, \diff z & \indb{\varepsilon}{N}&= \frac{\indb{T}{N}}{EA}&\\
\indb{T}{My} &= b\cdot\int\nolimits_z \indb{z}{s}\cdot E\cdot\indb{\alpha}{T}\cdot \theta(z)\, \diff z & \indb{\kappa}{y}&= \frac{\indb{T}{My}}{E\indb{I}{y}}
\end{flalign*}\\
\text{\scriptsize Anm.: obige Ausführungen gelten für einen sym. Querschnitt mit sym. Belastung um die $y$-Achse } \\
\quad\begin{matrix*}[l]
\text{mit:} &\hspace{1.5cm}&&\\
& \indb{T}{N}& \text{\dots} & \text{äquivalente thermische Normalkraft} \\
\end{matrix*}\notag
\end{gather*}
\blindtext
\end{document}
现在,当我将两个方程的编号更改flalign*
为数字时flalign
,编号会错位,并且会收到警告Overfull \hbox
。我真的不知道是什么原因造成的。有人知道吗?
答案1
您的另一种方法是使用alignat
环境(我承认,从现在起,我更新地看到了您的数学环境组合:外部没有编号,内部有编号,在我看来,这违背了它们的逻辑):
\documentclass[11pt,pointlessnumbers,a4paper,oneside,
fleqn,headsepline,parskip=half]{scrartcl}
%
\usepackage{mathtools}
\usepackage{amstext,amssymb}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{blindtext}
\newcommand{\diff}{\mathop{}\!\mathrm{d}}
\newcommand{\indb}[2]{{#1}_{\text{#2}}}
\begin{document}
\begin{alignat}{3}
\indb{T}{N} & = b\cdot\int\nolimits_z E\cdot\indb{\alpha}{T}\cdot\theta(z)\diff z
&
\indb{\varepsilon}{N}&= \frac{\indb{T}{N}}{EA} \\
%
\indb{T}{My} & = b\cdot\int\nolimits_z \indb{z}{s}\cdot E\cdot\indb{\alpha}{T}\cdot \theta(z)\,\diff z
&
\indb{\kappa}{y} & = \frac{\indb{T}{My}}{E\indb{I}{y}}
%
\intertext{\scriptsize Anm.:
obige Ausführungen gelten für einen sym. Querschnitt mit sym.
Belastung um die $y$-Achse}
\text{mit:} & \qquad\indb{T}{N}
\quad\dots\quad
\text{äquivalente thermische Normalkraft}
&& \notag
\end{alignat}
\blindtext
\end{document}
这使:
编辑:问题中的 MWE的意图似乎matrix
是设计一个图例来描述方程 (1) 和 (2) 中的符号。在我看来,最好在外部align
环境中这样做。考虑到这一点,可能的解决方案可以是:
\documentclass[11pt,pointlessnumbers,a4paper,oneside,
fleqn,headsepline,parskip=half]{scrartcl}
%
\usepackage{mathtools}
\usepackage{amstext,amssymb}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{blindtext}
\usepackage{array}% new, for table with legend
\newcommand{\diff}{\mathop{}\!\mathrm{d}}
\newcommand{\indb}[2]{{#1}_{\text{#2}}}
\begin{document}
\begin{align}%{3}
\indb{T}{N} & = b\cdot\int\nolimits_z E\cdot\indb{\alpha}{T}\cdot\theta(z)\diff z
&
\indb{\varepsilon}{N}&= \frac{\indb{T}{N}}{EA} \\
%
\indb{T}{My} & = b\cdot\int\nolimits_z \indb{z}{s}\cdot E\cdot\indb{\alpha}{T}\cdot \theta(z)\,\diff z
&
\indb{\kappa}{y} & = \frac{\indb{T}{My}}{E\indb{I}{y}}
\end{align}
%
{\scriptsize Anm.:
obige Ausführungen gelten für einen sym. Querschnitt mit sym.
Belastung um die $y$-Achse}
% added tabular for forms the legend
\begin{center}
\begin{tabular}{l >{$\displaystyle}c<{$} p{0.7\textwidth}}
mit: &\indb{T}{N} & äquivalente thermische Normalkraft \\
&\indb{T}{My} & \dots
\end{tabular}
\end{center}
\blindtext
\end{document}
在上面的 MWE 中,我还将注释移出对齐环境。我还用 替换了alignat
。align
得到的结果是:
答案2
你想要实现的功能不是很清楚,但flalign
不应该嵌套。我建议使用这个代码,它没有overfull \hbox
。它接近你想要实现的功能吗?
\documentclass[11pt,a4paper,oneside,fleqn,headsepline,
parskip=half]{scrartcl}%pointlessnumbers,
%
\usepackage{mathtools}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amstext,amssymb}
\usepackage{blindtext}
\usepackage{showframe}
\newcommand{\diff}{\mathop{}\!\mathrm{d}}
\newcommand{\indb}[2]{{#1}_{\text{#2}}}
\begin{document}
\begin{align*}
\indb{T}{N} & = b\cdot\int\nolimits_z E\cdot\indb{\alpha}{T}\cdot \theta(z) \, \diff z & & & \indb{\varepsilon}{N} & = \frac{\indb{T}{N}}{EA} \\
\indb{T}{My} & = b\cdot\int\nolimits_z \indb{z}{s}\cdot E\cdot\indb{\alpha}{T}\cdot \theta(z)\, \diff z & & & \indb{\kappa}{y} & = \frac{\indb{T}{My}}{E\indb{I}{y}} \\
\shortintertext{\scriptsize Anm.: obige Ausführungen gelten für einen sym. Querschnitt mit sym. Belastung um die $y$-Achse }%
& \mathrlap{\begin{matrix*}[l]
\text{mit:} &\hspace{1.5cm}&&\\
& \indb{T}{N}& \text{\dots} & \text{äquivalente thermische Normalkraft} \\
\end{matrix*}}
\end{align*}
\blindtext
\end{document}