# How to add gyrator in a circuit using circuitikz?

How do you add elements like resistor in a circuit that has a gyrator?

• Welcome to TeX.SX. Can you provide a picture for people that are not familiar with circuits? Jul 12 '16 at 18:55

This can be achieved in two ways using either tikz with circuit library or circuitikz.

a. Using tikz with circuit library:

\documentclass[border=5pt]{standalone}

\usepackage{tikz}
\usetikzlibrary{circuits.ee.IEC}
\usepackage[european resistor,siunitx]{circuitikz}

\begin{document}
\begin{tikzpicture}
% input arrow and its current symbol
\draw (0.3,2.1) node[inputarrow]{}
node[above]{i\textsubscript{s}};
% leftmost circuit
\draw (0,2.1) node[ocirc]{} % gyrator height is 2.1 unit
to [R,l=R\textsubscript{E}] (2,2.1)
to [L,l=L$_\text{E}$](4,2.1);
\draw (0,0) node[ocirc]{} to (4,0);
% gyrator node
\draw (5,2.1) node[gyrator]{}
node[above]{T};
% middle circuit elements
\draw (6.1,2.1) node[inputarrow]{}
node[above]{v\textsubscript{c}};
\draw (6,2.1)
to [R,l=R\textsubscript{MS}, i=] (8,2.1)
to [L,l=M$_\text{MS}$]  (10,2.1)
to [C,l=C\textsubscript{MS}] (12,2.1);
\draw (12,0) to (6,0);
% rightmost circuit
\draw (13,2.1) node[transformer]{}
node[above]{S\textsubscript{S}:1};
\draw (14,2.1) to (15,2.1) node[ocirc]{};
\draw (14,0) to (15,0) node[ocirc]{};
% output current
\draw (14.5,2.1) node[inputarrow]{}
node[above]{Q\textsubscript{s}};
% input output levels
\draw[->] (0,1.4) to node[right]{u\textsubscript{s}} (0,0.6);
\draw[->] (15,1.4) to node[left]{P\textsubscript{s}} (15,0.6);
\end{tikzpicture}
\end{document}


b. Using circuitikz:

\documentclass[border=5pt]{standalone}

\usepackage[european resistor,siunitx]{circuitikz}

\begin{document}
\begin{circuitikz}
% input arrow and its current symbol
\draw (0.3,2.1) node[inputarrow]{}
node[above]{i\textsubscript{s}};
% leftmost circuit
\draw (0,2.1) node[ocirc]{} % gyrator height is 2.1 unit
to [R,l=R\textsubscript{E}] (2,2.1)
to [L,l=L$_\text{E}$](4,2.1);
\draw (0,0) node[ocirc]{} to (4,0);
% gyrator node
\draw (5,2.1) node[gyrator]{}
node[above]{T};
% middle circuit elements
\draw (6.1,2.1) node[inputarrow]{}
node[above]{v\textsubscript{c}};
\draw (6,2.1)
to [R,l=R\textsubscript{MS}, i=] (8,2.1)
to [L,l=M$_\text{MS}$]  (10,2.1)
to [C,l=C\textsubscript{MS}] (12,2.1);
\draw (12,0) to (6,0);
% rightmost circuit
\draw (13,2.1) node[transformer]{}
node[above]{S\textsubscript{S}:1};
\draw (14,2.1) to (15,2.1) node[ocirc]{};
\draw (14,0) to (15,0) node[ocirc]{};
% output current
\draw (14.5,2.1) node[inputarrow]{}
node[above]{Q\textsubscript{s}};
% input output levels
\draw[->] (0,1.4) to node[right]{u\textsubscript{s}} (0,0.6);
\draw[->] (15,1.4) to node[left]{P\textsubscript{s}} (15,0.6);
\end{circuitikz}
\end{document}


Both result same output:

• This is great can you please explain how the node thing works when using the gyrator or transformer?
– ezE
Jul 14 '16 at 13:48
• Actually I connected initially, say, gyrator at the end of the inductor at (4,2.1). But its pin overlapped with that of inductor. Thus, extended 1 point further at (5,2.1). It solves the issue. So does for transformer! Use the same logic for gyrator/transformer height also [kind of hit and trial method] :-) ! Jul 14 '16 at 13:53
• Hmmm are you talking about the double node command I used for gyrator/transformer??? That's self explained I guess, first node is for the circuit element while the second one is for device label :-D Jul 14 '16 at 14:05