Lead/Lag Op-amp Model

Model of a lead or lag controller op-amp circuit

Examples

Basic Examples (2) 

Retrieve the model:

In[1]:=
ResourceData[\!\(\*
TagBox["\"\<Lead/Lag Op-amp Model\>\"",
#& ,
BoxID -> "ResourceTag-Lead/Lag Op-amp Model-Input",
AutoDelete->True]\)]
Out[1]=

The icon:

In[2]:=
ResourceData[\!\(\*
TagBox["\"\<Lead/Lag Op-amp Model\>\"",
#& ,
BoxID -> "ResourceTag-Lead/Lag Op-amp Model-Input",
AutoDelete->True]\), "Icon"]
Out[2]=

Scope & Additional Elements (6) 

Available content elements:

In[3]:=
\!\(\*
TagBox[
RowBox[{"ResourceObject", "[", "\"\<Lead/Lag Op-amp Model\>\"", "]"}],
#& ,
BoxID -> "ResourceTag-Lead/Lag Op-amp Model-Input",
AutoDelete->True]\)["ContentElements"]
Out[3]=

The state space model:

In[4]:=
ResourceData[\!\(\*
TagBox["\"\<Lead/Lag Op-amp Model\>\"",
#& ,
BoxID -> "ResourceTag-Lead/Lag Op-amp Model-Input",
AutoDelete->True]\), "StateSpaceModel"]
Out[4]=

The input variables:

In[5]:=
ResourceData[\!\(\*
TagBox["\"\<Lead/Lag Op-amp Model\>\"",
#& ,
BoxID -> "ResourceTag-Lead/Lag Op-amp Model-Input",
AutoDelete->True]\), "InputVariables"]
Out[5]=

The output variables:

In[6]:=
ResourceData[\!\(\*
TagBox["\"\<Lead/Lag Op-amp Model\>\"",
#& ,
BoxID -> "ResourceTag-Lead/Lag Op-amp Model-Input",
AutoDelete->True]\), "OutputVariables"]
Out[6]=

The complex variable:

In[7]:=
ResourceData[\!\(\*
TagBox["\"\<Lead/Lag Op-amp Model\>\"",
#& ,
BoxID -> "ResourceTag-Lead/Lag Op-amp Model-Input",
AutoDelete->True]\), "ComplexVariable"]
Out[7]=

The model parameters:

In[8]:=
ResourceData[\!\(\*
TagBox["\"\<Lead/Lag Op-amp Model\>\"",
#& ,
BoxID -> "ResourceTag-Lead/Lag Op-amp Model-Input",
AutoDelete->True]\), "Parameters"]
Out[8]=

Visualizations (1) 

Different component values will result in a zero-pole pair with either a zero or a pole that are closer to the origin. If the zero is closer then it is a lead circuit, otherwise it is a lag circuit:

In[9]:=
Manipulate[GraphicsRow[{Control`PoleZeroPlot[ResourceData[\!\(\*
TagBox["\"\<Lead/Lag Op-amp Model\>\"",
#& ,
BoxID -> "ResourceTag-Lead/Lag Op-amp Model-Input",
AutoDelete->True]\)] /. {Subscript[\[ScriptCapitalR], 1] -> r1, Subscript[\[ScriptCapitalR], 2] -> r2, Subscript[\[ScriptCapitalR], 3] -> r3, Subscript[\[ScriptCapitalR], 4] -> r4, Subscript[\[ScriptCapitalR], 5] -> r5, Subscript[\[ScriptCapitalR], 6] -> r6, Subscript[\[ScriptCapitalC], 1] -> c1, Subscript[\[ScriptCapitalC], 2] -> c2}, Sequence[
    PlotRange -> {{-2.1, 0.1}, Automatic}, AspectRatio -> 1, Frame -> True, ImageSize -> 200]], Plot[{Sin[\[Omega] t], Evaluate@
      OutputResponse[
       tfm /. {Subscript[\[ScriptCapitalR], 1] -> r1, Subscript[\[ScriptCapitalR], 2] -> r2, Subscript[\[ScriptCapitalR], 3] -> r3, Subscript[\[ScriptCapitalR], 4] -> r4, Subscript[\[ScriptCapitalR], 5] -> r5, Subscript[\[ScriptCapitalR], 6] -> r6, Subscript[\[ScriptCapitalC], 1] -> c1, Subscript[\[ScriptCapitalC], 2] -> c2}, Sin[\[Omega] t], {t, 0, 10}]}, {t, 0, 10}, Sequence[
    PlotLegends -> {"input", "output"}, Frame -> True, ImageSize -> 205, AspectRatio -> 1]]}], Grid[{{
Control[{{r1, 100, 
Subscript[\[ScriptCapitalR], 1]}, {100, 330, 500, 1000}}], 
Control[{{r3, 330, 
Subscript[\[ScriptCapitalR], 3]}, {100, 330, 500, 1000}}], 
Control[{{c1, 0.01, 
Subscript[\[ScriptCapitalC], 1]}, {0.005, 0.01, 0.025, 0.1}}], 
Control[{{\[Omega], 1}, 0.1, 10, ImageSize -> 80}]}, {
Control[{{r2, 330, 
Subscript[\[ScriptCapitalR], 2]}, {100, 330, 500, 1000}}], 
Control[{{r4, 330, 
Subscript[\[ScriptCapitalR], 4]}, {100, 330, 500, 1000}}], 
Control[{{c2, 0.01, 
Subscript[\[ScriptCapitalC], 2]}, {0.005, 0.01, 0.025, 0.1}}]}}, Spacings -> 2], SaveDefinitions -> True]
Out[9]=

Analysis (1) 

If 𝒞1>𝒞2, there is a phase lag in mid frequencies and a decrease in magnitude for higher frequencies, otherwise, there is a phase lead in mid frequencies and an increase in magnitude for higher frequencies:

In[10]:=
Manipulate[BodePlot[ResourceData[\!\(\*
TagBox["\"\<Lead/Lag Op-amp Model\>\"",
#& ,
BoxID -> "ResourceTag-Lead/Lag Op-amp Model-Input",
AutoDelete->True]\)] /. {Subscript[\[ScriptCapitalR], 1] -> r1, Subscript[\[ScriptCapitalR], 2] -> r2, Subscript[\[ScriptCapitalR], 3] -> r3, Subscript[\[ScriptCapitalR], 4] -> r4, Subscript[\[ScriptCapitalR], 5] -> r5, Subscript[\[ScriptCapitalR], 6] -> r6, Subscript[\[ScriptCapitalC], 1] -> c1, Subscript[\[ScriptCapitalC], 2] -> c2}, Sequence[
  ImageSize -> Small, PlotLayout -> "HorizontalGrid", PlotLabel -> {"magnitude", "phase"}]], Grid[{{
Control[{{r1, 100, 
Subscript[\[ScriptCapitalR], 1]}, {100, 330, 500, 1000}}], 
Control[{{r4, 330, 
Subscript[\[ScriptCapitalR], 4]}, {100, 330, 500, 1000}}], 
Control[{{c1, 0.01, 
Subscript[\[ScriptCapitalC], 1]}, {0.005, 0.01, 0.025, 0.1}}]}, {
Control[{{r2, 330, 
Subscript[\[ScriptCapitalR], 2]}, {100, 330, 500, 1000}}], 
Control[{{r3, 330, 
Subscript[\[ScriptCapitalR], 3]}, {100, 330, 500, 1000}}], 
Control[{{c2, 0.01, 
Subscript[\[ScriptCapitalC], 2]}, {0.005, 0.01, 0.025, 0.1}}]}}, Spacings -> 2], SaveDefinitions -> True]
Out[10]=

Suba Thomas, "Lead/Lag Op-amp Model" from the Wolfram Data Repository (2025)  

Data Resource History

Source Metadata

Publisher Information