Deux diagrammes commutatifs...

Thierry Poma
Modifié (April 2023) dans LaTeX
Bonjour tout le monde

Je souhaiterais reproduire les deux diagrammes de la copie ci-jointe (extraite du livre Topologie algébrique de Christian Leruste) via Tikz. Je vous remercie par avance pour votre investissement et vos propositions de codes. Remarquer la présence de petits cercles sur le deuxième diagramme, ainsi que celles de numéros encadrés sur les deux pour les référencer.

Bien cordialement,

Thierry.
Le chat ouvrit les yeux, le soleil y entra. Le chat ferma les yeux, le soleil y resta. Voilà pourquoi le soir, quand le chat se réveille, j'aperçois dans le noir deux morceaux de soleil. (Maurice Carême).

Réponses

  • Bonjour,

    Il doit y avoir dans ce qui suit toute l'infrastructure nécessaire (je te laisse le soin de mettre les lettres qui conviennent pour le premier diagramme).
    \documentclass{article}
    \usepackage{tikz}
    \usepackage{amsopn}
    \usepackage{amssymb}
    \usetikzlibrary{arrows.meta, cd, decorations.markings}
    
    \DeclareMathOperator{\identite}{id}
    \newcounter{diagramcounter}
    \renewcommand{\thediagramcounter}{\fbox{\arabic{diagramcounter}}}
    
    \tikzcdset{
      numbered diagram/.code={%
        \refstepcounter{diagramcounter}\label{numbered-diag-#1}%
      },
      circarrow/.style={{Circle[open]}->}, % utilise la bibliothèque arrows.meta
      % Inspiré de <https://tex.stackexchange.com/a/79226/73317> (Jake)
      circarrow 2/.style={
        decoration={
          markings,
          mark={
            at position 0 with { \draw circle[radius=#1]; }
          },
        },
        postaction=decorate,
      },
      circarrow 2/.default=0.35ex,
    }
    
    \begin{document}
    
    Bla bla en~\ref{numbered-diag-machin} (...)
    
    \begin{center}
      \begin{tikzcd}[numbered diagram=machin]
        \identite_{A} \arrow[rr, circarrow, "\Omega_{A}", "\cong"']
                      \arrow[dd, circarrow, "u_{*}^{A}"]
          &                               & v \arrow[dd, circarrow, "u_{*}^{B}"] \\
          & \thediagramcounter \\
        u \arrow[r, circarrow, "\cong", "\Omega_{B}"']
          & |[xshift=-1em]| \identite_{B} & u \circ v
      \end{tikzcd}%
      %
      \hspace{4em}%
      \begin{tikzcd}[numbered diagram=truc]
        \identite_{A} \arrow[rr, circarrow 2, "\Omega_{A}", "\cong"']
                      \arrow[dd, circarrow 2, "u_{*}^{A}"]
          &                               & v \arrow[dd, circarrow 2, "u_{*}^{B}"]\\
          & \thediagramcounter \\
        u \arrow[r, circarrow 2, "\cong", "\Omega_{B}"']
          & |[xshift=-1em]| \identite_{B} & u \circ v
      \end{tikzcd}
    \end{center}
    
    (...) spécifié en~\ref{numbered-diag-truc}.
    
    \end{document}
    
    Edit : code mieux indenté.127494
  • Bonjour Thierry
    J'ai été moins rapide que Brian, mais comme je l'ai préparé, je le poste quand même.
    Ne pas oublier de mettre dans le préambule
    \usetikzlibrary{arrows}
    
    Alain127498
  • Mes seigneurs, je vous remercie vraiment du fond du cœur. Vous ne pouvez pas vous imaginer le bien que vous m'apportez. Merci encore à vous deux. :-) :-)
    Le chat ouvrit les yeux, le soleil y entra. Le chat ferma les yeux, le soleil y resta. Voilà pourquoi le soir, quand le chat se réveille, j'aperçois dans le noir deux morceaux de soleil. (Maurice Carême).
Connectez-vous ou Inscrivez-vous pour répondre.