对齐环境中的模型标题

对齐环境中的模型标题

我想用“模型 4.1:一个美丽的方程式”来为我的模型添加标题。

我可以用我在论坛上找到的以下代码来写“模型 1:一个漂亮的方程式”对齐环境的标题

\documentclass{article}
\usepackage{amsmath,lipsum}
\newcounter{equationset}
\newcommand{\equationset}[]{% \equationset{<caption>}
    \refstepcounter{equationset}% Step counter
    \noindent\makebox[\linewidth]{model~\theequationset: #1}}% Print caption
\begin{document}
    \begin{align}
        f(x) &= ax^2 + bx + c \\
        &= g(x)
    \end{align}
    \equationset{A beautiful equation.}
    
    \medskip
\end{document}

我的主管非常严格,这就是为什么它必须被称为 4.1。代码是复制的,我对它了解不够,所以我不知道如何改编它。我甚至还没有想出如何至少将其更改为“模型 4:”。有人知道解决方案吗?(也可以是完全不同的东西,主要是它有效)。

答案1

您可能需要熟悉float自定义浮点数包,将您自己的浮点数定义为model,为其定义一个标签,例如,Model并获取您的浮点数列表

查看示例

在此处输入图片描述

下面重新定义方程编号以包含部分

\numberwithin{equation}{section}

我没有将其包含在代码中,但应该放在你的序言中。

\documentclass{report}
\usepackage{etoolbox}
\usepackage{amsmath,lipsum}
\usepackage[colorlinks]{hyperref}
\usepackage{cleveref}

% \pretocmd{\@startsection}{\protect\setcounter{modelc}{0}}{}{}
\newcounter{modelc}
\numberwithin{equation}{chapter}
\numberwithin{modelc}{chapter}
\crefname{modelc}{model}{models}
\Crefname{modelc}{Model}{Models}
% \crefformat{modelc}{model~#2(#1)#3}   % Custom formatting -> model (C.M)
% \Crefformat{modelc}{Model~#2(#1)#3}   %                   -> Model (C.M)


\NewDocumentEnvironment{model}{O{} m +b}{%
    % #1 - label (optional)
    % #2 - caption
    \refstepcounter{modelc} \notblank{#1}{\label{#1}}{}
    
    #3
    %%% Increase a counter and set the label if provided
    %%% Formatting a caption
    \settowidth{\dimen0}{Model \themodelc}%
    \settowidth{\dimen1}{#2}%
    \ifdim \dimen1 > \dimexpr(\textwidth - \dimen0 - 1em)
        \dimen1=\dimexpr(\textwidth - \dimen0 - 1em)\fi
    \begingroup
        \centering
        \parbox[t]{\dimexpr(\dimen0 + 1em)}{Model \themodelc: }%
        \parbox[t]{\dimexpr(\dimen1)}{#2}%
        \vspace{\baselineskip}
        \par
    \endgroup
}{}
\makeatother


\begin{document}
\chapter{The first chapter}
\lipsum[1][1-2]

\section{This is a section}
\lipsum[1][1]


\chapter{The second chapter} \label{chap:second}
\section{This is a section with a model}
\lipsum[1][2]
\begin{model}[mod:beq]{A very very long description of a extremely beautiful equation spanning multiple lines}
    \begin{align}                 % Only caption
        f(x) &= ax^2 + bx + c \label{eq:eq1} \\
        &= g(x)               \label{eq:eq2} 
    \end{align}
\end{model}

\lipsum[1][3-5]


\chapter{The final chapter}
\lipsum[1][3-5]

\chapter{This is a star variant section}
\lipsum[1][6]

\section{This is a section with another model}
\lipsum[1][5]
\begin{model}{A beautiful equation}    % Caption + label
    \begin{align}
        f(\mathbf{x}) &= x_1 - x_2
    \end{align}
\end{model}

Reference to \Cref{mod:beq} on \cpageref{mod:beq} in \cref{chap:second}.
\end{document}

相关内容