El texto en el entorno matemático en Algoritm2e tiene una tipografía diferente cuando se coloca dentro de un bucle for.

El texto en el entorno matemático en Algoritm2e tiene una tipografía diferente cuando se coloca dentro de un bucle for.

Los siguientes MWE:

% Created 2016-07-04 Mon 15:02
\documentclass[a4paper, 12pt]{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{mathtools, nccmath}

\usepackage[ruled, vlined, linesnumbered]{algorithm2e}

\begin{document}



\begin{algorithm}
    \DontPrintSemicolon
    $D_b^{\text{max}}$

    \For{${D_b^{\text{max}}}$}
    {
    }
  \end{algorithm}



\end{document}

da como resultado: ingrese la descripción de la imagen aquí

Como puedes ver, el texto maxtiene dos tipografías diferentes. En la forinstrucción de bucle, está en cursiva mientras quiero que permanezca como en la línea 1 del algoritmo.

Intenté ponerlo \displaystylepero no cambió. Eliminar el comando \texten la línea dos tampoco funciona.

Respuesta1

El comando \textes para inserciones de texto en fórmulas, respetando la fuente actual fuera de la fórmula.

El texto interior \Fory los otros comandos similares algorithm2eestán escritos en cursiva.

De todos modos, su "máximo" no es una inserción textual y deberíasiempreescribirse como \mathrm{max}(o, con un ligero abuso, \max).

Aquí uso ambos, sólo para mostrar que el resultado es el mismo, pero \mathrm{max}es conceptualmente mejor (y se aplica a otras abreviaturas similares en fórmulas).

\documentclass[a4paper, 12pt]{article}
\usepackage{amsmath}

\usepackage[ruled, vlined, linesnumbered]{algorithm2e}

\begin{document}

\begin{algorithm}
    \DontPrintSemicolon
    $D_b^{\mathrm{max}}$

    \For{${D_b^{\max}}$}
    {
    }
  \end{algorithm}

\end{document}

ingrese la descripción de la imagen aquí

información relacionada