Ecuaciones de referencia cruzada con fleqn: referencias defectuosas en la clase de artículo

Ecuaciones de referencia cruzada con fleqn: referencias defectuosas en la clase de artículo

Actualmente tengo problemas al hacer referencias cruzadas de mis ecuaciones mientras uso el entorno fleqn con los paquetes amsmath y nccmath. Quiero que mis ecuaciones estén alineadas a la izquierda, de ahí el uso del entorno fleqn. Sin embargo, noté que cuando intento hacer una referencia cruzada de la ecuación, parece hacer una referencia cruzada al número de sección y no a la ecuación. No estoy seguro de por qué este es el caso.

Aquí hay un 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}

ingrese la descripción de la imagen aquí

Respuesta1

podrías dejar caer nccmath:

\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}

ingrese la descripción de la imagen aquí

La razón por la que se rompe es un cambio en amsmath en 2021 (https://github.com/latex3/latex2e/issues/652):

\changes{v2.17k}{2021/08/24}{Mueva el contador dentro de la ecuación y protéjalo con un mathopen para una mejor compatibilidad con hyperref, emita gh/652} Al igual que con el incremento de hyperref, el contador crea un cuadro para levantar el ancla debe estar en un lugar donde no afecte el espaciado. Actualmente, el código de hyperref se usa para evitar este problema: si fleqn no está activo, el contador se establece dentro de la ecuación y el cuadro de potencial está protegido por un mathopen para evitar lados. efectos sobre los siguientes símbolos unarios. Si fleqn está activado tiene que estar afuera para evitar problemas con las etiquetas. Esta solución es temporal y no necesariamente la mejor.}

Por lo tanto, la ecuación se define de manera diferente dependiendo de si la opción del paquete fleqn se ha configurado o no. Pero como nccmathestá configurado \@fleqntruesolo localmente, no utiliza la definición correcta y, por lo tanto, se interrumpe.

información relacionada