Colocar partes del circuito (condensador...) entre sí. Usar nombres de partes de circuitos para colocar flechas de malla "intuitivamente" con "controles"

Colocar partes del circuito (condensador...) entre sí. Usar nombres de partes de circuitos para colocar flechas de malla "intuitivamente" con "controles"

Esta pregunta es continua miotro. Debido a mi reputación, no puedo agregar comentarios a las respuestas. Así que aprovecho la oportunidad para agradecerJohn Kormylopor su respuesta a mi pregunta inicial. También lo siento por mi inglés incorrecto.

A la pregunta:

Para circuitos uso la circuitikzsintaxis, ejemplo.

\begin{circuitikz}
  \draw
  (0,0) to [V = $U$] (0,3)
        to [short, i = $I$, -*] (3,3) -- (6,3)
        to [R = $R_2$, v = $U_2$, i = $I_2$] (6,0) -- (0,0)
  (3,3) to [R = $R_1$, v = $U_1$, i = $I_1$, -*] (3,0);
\end{circuitikz}

Esto es muy fácil e intuitivo. Pero cuando quiero agregar una flecha de malla al circuito, uso (además del código anterior; malla uno como ejemplo):

\draw
 %
 % mesh one (detailed explanation of the implementation)
 %
 [<-,% direction of the arrow
 > = triangle 45,% kind of the arrow end
 path picture =% allows ''to paint a picture'' inside of an other ''picture''
 {\node[anchor = center]% position of the inner ''picture''
 at (path picture bounding box.center)% bordering rectangle,
                                      % centered inside the arrow (arrow is the outer ''picture'')
 {$M_1$};}]% text of the inner ''picture''
 (1.75,1)% coordinates of the arrow end
 arc% arc-shaped arrow
 (-60:% angle of the arrow start
 170:% angle of the arrow end
 .5);% radius of the arc

Para conocer el resultado de ambos códigos, consulte el enlace de arriba (mi pregunta inicial).

Esta cantidad de código para "sólo" una flecha me parece demasiado, complicada y poco intuitiva.

Lo que quiero:

1.Colocar partes del circuito (como nodos con nombres) entre sí, como en el ejemplo de "Petri-Net" en el PGFmanual en la página 51 (subsección 3.8):

Red de Petri

Combinado con la circuitikzsintaxis (consulte el primer ejemplo de código).

2.Usar los nombres de las partes del circuito para colocar flechas de malla de manera intuitiva con la controlsmacro (página 748, PGFmanual), como hizo John Kormylo en su respuesta a mi pregunta inicial:

\node (M 3) [below] at (0,0) {\phantom{$M_3$}};% reserving space for M 3 under the circuit
\draw
[->, > = triangle 45] (current bounding box.east) .. controls
                      (current bounding box.south east) ..
                      (M 3.south) node[above, pos = .95] {$M_3$};% see below
% above: location of the inscription ''M_3'' relative to the arrow end
% pos=: location of the inscription ''M_3'' on the ''x''-axis (arrow beginning is zero,
%                                                              arrow end is one)

es posible? Si es así, ¿cómo puedo hacer esto? Espero que entiendas mi intención.

¡Gracias por sus respuestas y ayuda de antemano!

Respuesta1

En lugar de colocar el nodo en el centro del arco, coloqué el arco alrededor del nodo. Mismo resultado, menos pulsaciones de teclas. También existen varias formas de evitar repetir las mismas opciones una y otra vez. Utilicé un alcance ya que los cambios solo duran mientras dure el alcance.

La mayor parte de la simplificación se debe a la eliminación de los comentarios.

\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenx}
\usepackage{amsmath}
\usepackage[european]{circuitikz}
\usepackage{showframe}
\begin{document}
  \noindent
  \begin{minipage}[t]{.5\linewidth}
    \begin{circuitikz}[baseline=(current bounding box.north)]
      %
      % circuit
      %
      \draw
      (0,0) to [V = $U$] (0,3)
            to [short, i = $I$, -*] (3,3) -- (6,3)
            to [R = $R_2$, v = $U_2$, i = $I_2$] (6,0) -- (0,0)
      (3,3) to [R = $R_1$, v = $U_1$, i = $I_1$, -*] (3,0);
      %
      % mesh arrows
      %
      \begin{scope}[>=triangle 45]
        \draw[<-] (1.5,1.5) node{$M_1$} +(.25,-.433) arc(-60:170:.5);
        \draw[<-] (4.5,1.5) node{$M_2$} +(.25,-.433) arc(-60:170:.5);
        \node (mesh3) [below] at (0,0) {\phantom{$M_3$}};% reserve space below circuit for M_3
        \draw[->, thick] (current bounding box.east)% not the only way, just easy
          .. controls (current bounding box.south east) .. 
          (mesh3.south) node[above,pos=.9] {$M_3$};
      \end{scope}
    \end{circuitikz}
  \end{minipage}
  \hfill
  \begin{minipage}[t]{.45\linewidth}
    %
    % equations for mesh and knot
    %
    \begin{align*}
      &K  : \quad I   = I_1 + I_2\\
      &M_1: \quad -U  = -U_1\Leftrightarrow U = U_1 = R_1I_1\\
      &M_2: \quad U_1 = -U_2\\
      &M_3: \quad -U  = -U_2\Leftrightarrow U = U_2 = R_2I_2
    \end{align*}
  \end{minipage}
\end{document}

información relacionada