Schema con antenne in circuitikz
Ciao a tutti. Voglio creare questo diagramma usando circuitikz. Finora ho quanto segue:
\begin{circuitikz}
\draw (0,0) to [twoport, blocks/scale=0.8, name=D1, t={a}] ++(1.5,0) coordinate(E1);
\draw (0,-0.8) to [twoport, blocks/scale=0.8, name=D2, t={b}] ++(1.5,0) coordinate(E2);
\draw (0,-1.6) to [twoport, blocks/scale=0.8, name=D3, t={c}] ++(1.5,0) coordinate(E3);
\draw (0,-2.4) to [twoport, blocks/scale=0.8, name=D4, t={d}] ++(1.5,0) coordinate(E4);
\draw (E1) to [mstline, name=R1] ++(3,0) coordinate(B1);
\draw (E2) to [mstline, name=R2] ++(3,0) coordinate(B2);
\draw (E3) to [mstline, name=R3] ++(3,0) coordinate(B3);
\draw (E4) to [mstline, name=R4] ++(3,0) coordinate(B4);
\node at (R1.center) {1};
\node at (R2.center) {2};
\node at (R3.center) {3};
\node at (R4.center) {4};
\draw (5,0) to [twoport, blocks/scale=0.8, t={$A_{11}$}, name=S1] ++(0.8,0);
\draw (5.8,0) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0) coordinate(S2);
\draw (6.6,0) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0) coordinate(S3);
\draw (7.4,0) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0) coordinate(S4);
\draw (8.2,0) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0) coordinate(S5);
\draw (9,0) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0) coordinate(S6);
\draw (5,-0.8) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (5.8,-0.8) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (6.6,-0.8) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (7.4,-0.8) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (8.2,-0.8) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (9,-0.8) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (5,-1.6) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (5.8,-1.6) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (6.6,-1.6) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (7.4,-1.6) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (8.2,-1.6) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (9,-1.6) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (5,-2.4) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (5.8,-2.4) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (6.6,-2.4) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (7.4,-2.4) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (8.2,-2.4) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\draw (9,-2.4) to [twoport, blocks/scale=0.8, t={$A_{11}$}] ++(0.8,0);
\end{circuitikz}
Ho alcuni problemi con le frecce e il nome sopra di esse. Inoltre, so che è possibile aggiungere antenne in circuitikz ma non sono in grado di farlo correttamente. Apprezzerò il tuo aiuto per finalizzare questo diagramma.
Risposte
Penso che per il tipo di diagramma che stai usando, la sintassi del "percorso" di circuitikznon sia sempre la migliore --- principalmente l'uso di nodi semplici può risolvere il problema. Ho abbastanza tempo ora, ma posso offrirti la mia opinione su un singolo pezzo; Ti consiglio di guardare int matrixe foreachquesto potrebbe aiutarti a rendere il disegno in un modo molto più compatto.
Comunque:
\documentclass[border=10pt]{standalone}
\usepackage[siunitx, RPvoltages]{circuitikz}
\usetikzlibrary{shapes.geometric}
\tikzset{square/.style={regular polygon,regular polygon sides=4, minimum size=1.5cm}}
\begin{document}
\begin{circuitikz}
\draw (0,0) node [draw, square](a){a} (a.east) to [mstline, name=R1] ++(3,0) -- ++(1,0)
node[draw, square, anchor=west](A11){$A_{11}$};
\node at (R1.center) {1};
\node [inputarrow] at (R1.west) {};
\node [inputarrow] at (A11.west) {};
\path ($(R1.east)!0.5!(A11.west)$) node[above]{a};
\node [bareantenna](ant1) at(A11.north) {};
\node [waves, scale=0.5, anchor=left, rotate=90] at (ant1.top) {};
\end{circuitikz}
\end{document}
ti darà questo: