fleqn을 사용한 상호 참조 방정식 - 기사 클래스의 잘못된 참조

fleqn을 사용한 상호 참조 방정식 - 기사 클래스의 잘못된 참조

현재 amsmath 및 nccmath 패키지와 함께 fleqn 환경을 사용하는 동안 방정식을 상호 참조하는 데 문제가 있습니다. 내 방정식을 왼쪽 정렬하고 싶으므로 fleqn 환경을 사용합니다. 그러나 방정식을 상호 참조하려고 하면 방정식이 아닌 섹션 번호를 상호 참조하는 것 같습니다. 왜 이런 일이 발생하는지 잘 모르겠습니다.

MWE는 다음과 같습니다.

\documentclass[11pt]{article}
\usepackage{amsfonts, amsmath, amssymb, nccmath}

\begin{document}

\section{Intro}

Yup Yup

\section{Booyah} \label{sec: booyah}

Find Equation \ref{Eq:GGS_distribution_function_2} below Equation \ref{Eq:GGS_distribution_function} in section \ref{sec: booyah}.

\begin{fleqn}
\begin{equation}
R_F(d_p) = \left(\frac{d_p}{d_{p,max}}\right)^m 
\label{Eq:GGS_distribution_function}
\end{equation}
\end{fleqn}

\begin{fleqn}
\begin{equation}
R_F(d_p) = 5
\label{Eq:GGS_distribution_function_2}
\end{equation}
\end{fleqn}

\end{document}

여기에 이미지 설명을 입력하세요

답변1

ncmath를 삭제할 수 있습니다.

\documentclass[11pt,fleqn]{article}
\usepackage{amsfonts, amsmath, amssymb}

\setlength{\mathindent}{0pt}
\begin{document}

\section{Intro}

Yup Yup

\section{Booyah} \label{sec: booyah}

Find Equation \ref{Eq:GGS_distribution_function_2} below Equation \ref{Eq:GGS_distribution_function} in section \ref{sec: booyah}.


\begin{equation}
R_F(d_p) = \left(\frac{d_p}{d_{p,max}}\right)^m
\label{Eq:GGS_distribution_function}
\end{equation}

\begin{equation}
R_F(d_p) = 5
\label{Eq:GGS_distribution_function_2}
\end{equation}

\end{document}

여기에 이미지 설명을 입력하세요

깨지는 이유는 2021년 암스매스의 변화(https://github.com/latex3/latex2e/issues/652):

\changes{v2.17k}{2021/08/24}{하이퍼 참조와의 더 나은 호환성을 위해 방정식 내부에서 카운터를 이동하고 mathopen으로 보호합니다. gh/652를 발행합니다. 하이퍼 참조와 마찬가지로 카운터를 증가시키면 앵커를 높이기 위한 상자가 생성됩니다. 간격에 영향을 주지 않는 위치에 있어야 합니다. 현재 이 문제를 피하기 위해 hyperref의 코드가 사용됩니다. fleqn이 활성화되지 않은 경우 카운터는 방정식 내부에 설정되고 측면을 피하기 위해 mathopen으로 보호되는 잠재적인 상자 다음 단항 기호에 미치는 영향. fleqn이 활성화된 경우 레이블 문제를 피하기 위해 외부에 있어야 합니다. 이 솔루션은 일시적이며 반드시 최선의 솔루션은 아닙니다.}

따라서 패키지 옵션 fleqn 설정 여부에 따라 방정식이 다르게 정의됩니다. 그러나 로컬에서만 nccmath설정 하면 \@fleqntrue올바른 정의를 사용하지 않으므로 중단됩니다.

관련 정보