
У меня проблема оптимизации с моей собственной меткой (P). Однако \ref{e}
относится к проблеме оптимизации, а не к уравнению. Без \tag(P) все работает. Есть ли способ, как с этим справиться?
\documentclass[11pt,a4paper]{scrreprt}
\usepackage{amsmath}
\usepackage{optidef}
\usepackage{hyperref}
\begin{document}
\begin{mini}|s|
{}{c^\top x}
{\tag{P}\label{P}}
{}
\addConstraint{Ax}{=b}
\addConstraint{x}{\geq 0}.
\end{mini}
\begin{align}
1+e^{i \pi} = 0 \label{e}
\end{align}
Reference to \ref{P}
Reference to \ref{e}
\end{document}
решение1
Вы можете исправить ситуацию \theHequation
внутри mini
среды.
\documentclass[11pt,a4paper]{scrreprt}
\usepackage{amsmath}
\usepackage{optidef}
\usepackage{hyperref}
\newcommand{\ui}{\mathrm{i}}% if you really want upright
\AddToHook{env/mini/begin}{%
\edef\theHequation{mini\unexpanded\expandafter{\theequation}}%
}
\begin{document}
\begin{mini}|s|
{}{c^\top x}
{\tag{P}\label{P}}
{}
\addConstraint{Ax}{=b}
\addConstraint{x}{\geq 0}.
\end{mini}
\begin{align}
1+\exp(\ui \pi) = 0 \label{e}
\end{align}
Reference to \ref{P}
Reference to \ref{e}
\end{document}
Ссылки будут указывать на правильные места.
Примечание: \i
не работает в математическом режиме (и в любом случае выдает i без точки). Если вы переопределяете \i
в реальном документе, не делайте этого.