在align
环境中,它会自动将同一环境中的连续行逐行标记为 (1)、(2)、...、(n)。但我希望它更正确地组织方程式,并使用 (1.0)、(1.1)、(1.2)... 作为第一个align
环境中的第一个方程式,然后使用 (2.0)、(2.1)、(2.2)... 等作为后续单独align
环境中的连续方程式。有办法吗?
答案1
我建议您加载该etoolbox
包并使用宏在两个地方\patchcmd
“修补”环境。subequations
\documentclass{article}
\usepackage{amsmath} % for 'align' and 'subequations' environments
\usepackage{etoolbox} % for '\patchcmd' macro
\patchcmd{\subequations}{{0}}{{-1}}{}{} % decrement the equation counter
\patchcmd{\subequations}{\alph}{.\arabic}{}{} % change display format of eq. counter
\begin{document}
\begin{subequations}
\begin{align}
1+1=2\\
2+2=4\\
3+3=6
\end{align}
\end{subequations}
\begin{subequations}
\begin{align}
4+4=8\\
0+0=0\\
1-1=0
\end{align}
\end{subequations}
\end{document}
答案2
使用mathtools
包编辑方程式括号。使用\patchcmd
frometoolbox
自定义子方程式标签的外观。
方程和子方程从 1 开始编号。要更改此行为,请\AtBeginEnvironment
使用etoolbox
\documentclass[]{book}
\usepackage{amsmath}
\renewcommand{\theequation}{\arabic{equation}}
\usepackage{amssymb, amsfonts}
\usepackage{adjustbox}
\usepackage[]{mathtools}
\newtagform{eqbrackets}[]{(}{)}
\usetagform{eqbrackets}
\usepackage{etoolbox}
\patchcmd{\subequations}{\alph{equation}}{.\arabic{equation}}{}{}
\AtBeginEnvironment{alignat}{\addtocounter{equation}{-1}}
\begin{document}
\begin{subequations}
\begin{alignat}{3}
I_{sc} & = I_{sc,ref} & \bigg[ 1 + \frac{\alpha}{100} (T_{op}-T_{ref}) \biggl]
\label{eq:SubEq1}
\\
%
V_{oc} & = V_{oc,ref} & \bigg[ 1 + \frac{\beta}{100} (T_{op}-T_{ref}) \biggl]
\label{eq:SubEq2}
\\
%
P_{mp} & = P_{mp,ref} & \bigg[ 1 + \frac{\gamma}{100} (T_{op}-T_{ref}) \biggl]
\label{eq:SubEq3}
\end{alignat}
\end{subequations}
See SubEq. \ref{eq:SubEq1}
\begin{subequations}
\begin{alignat}{3}
I_{sc} & = I_{sc,ref} & \bigg[ 1 + \frac{\alpha}{100} (T_{op}-T_{ref}) \biggl]
\label{eq:SubEq4}
\\
%
V_{oc} & = V_{oc,ref} & \bigg[ 1 + \frac{\beta}{100} (T_{op}-T_{ref}) \biggl]
\label{eq:SubEq5}
\\
%
P_{mp} & = P_{mp,ref} & \bigg[ 1 + \frac{\gamma}{100} (T_{op}-T_{ref}) \biggl]
\label{eq:SubEq6}
\end{alignat}
\end{subequations}
See SubEq. \ref{eq:SubEq5}
\begin{subequations}
\begin{alignat}{3}
I_{sc} & = I_{sc,ref} & \bigg[ 1 + \frac{\alpha}{100} (T_{op}-T_{ref}) \biggl]
\\
%
V_{oc} & = V_{oc,ref} & \bigg[ 1 + \frac{\beta}{100} (T_{op}-T_{ref}) \biggl]
\\
%
P_{mp} & = P_{mp,ref} & \bigg[ 1 + \frac{\gamma}{100} (T_{op}-T_{ref}) \biggl]
\end{alignat}
\end{subequations}
\end{document}