Example 2¶
Multi feedBack (MFB) filter¶
Find symbolic expression of transfer function from Is to V(3,0)
from pycircuit.circuit import *
from sympy import symbols, simplify, ratsimp, sympify, factor, limit, solve, pprint, fraction, collect, powsimp, powdenest, Add, sqrtdenest, I, Rational
## fraction_expand is provided by the sympy:: pre-code compatibility shim
Symbol definition¶
R1,R2,R3,C1,C2,i_s,Z_in = symbols('R1 R2 R3 C1 C2 i_s Z_{in}', real=True, positive=True, bounded=True)
s = Symbol('s', complex = True)
w = Symbol('omega', real = True)
Circuit definition¶
## Create circuit
cir = SubCircuit(toolkit=symbolic)
cir['R1'] = R(1, 3, r = R1)
cir['R2'] = R(1, 2, r = R2)
cir['R3'] = R(1, gnd, r = R3)
cir['C1'] = C(1, gnd, c = C1)
cir['C2'] = C(2, 3, c = C2)
cir['Nullor'] = Nullor(2, gnd, 3, gnd)
# Current source for AC stimuli
cir['ISource'] = IS(1, gnd, iac=i_s)
AC analysis¶
## Run symbolic AC analysis
ac = AC(cir)
result = ac.solve(freqs=s, complexfreq=True)
Transfer function¶
From the voltage source to net 2
simplify(result.v(3, gnd) / i_s)
\[\frac{R_{1} R_{3}}{C_{1} C_{2} R_{1} R_{2} R_{3} s^{2} + C_{2} R_{1} R_{2} s + C_{2} R_{1} R_{3} s + C_{2} R_{2} R_{3} s + R_{3}}\]
Denominator of transfer function:
\[C_{1} C_{2} R_{1} R_{2} R_{3} s^{2} + C_{2} R_{1} R_{2} s + C_{2} R_{1} R_{3} s + C_{2} R_{2} R_{3} s + R_{3}\]
DC gain¶
simplify(simplify(result.v(3, gnd) / i_s).subs({s:0}))
\[R_{1}\]
Poles¶
\[\frac{\sqrt{C_{2}} \left(- \frac{R_{1} R_{2}}{2} - \frac{R_{1} R_{3}}{2} - \frac{R_{2} R_{3}}{2}\right) - \frac{\sqrt{- 4 C_{1} R_{1} R_{2} R_{3}^{2} + C_{2} R_{1}^{2} R_{2}^{2} + 2 C_{2} R_{1}^{2} R_{2} R_{3} + C_{2} R_{1}^{2} R_{3}^{2} + 2 C_{2} R_{1} R_{2}^{2} R_{3} + 2 C_{2} R_{1} R_{2} R_{3}^{2} + C_{2} R_{2}^{2} R_{3}^{2}}}{2}}{C_{1} \sqrt{C_{2}} R_{1} R_{2} R_{3}}\]
\[\frac{\sqrt{C_{2}} \left(- \frac{R_{1} R_{2}}{2} - \frac{R_{1} R_{3}}{2} - \frac{R_{2} R_{3}}{2}\right) + \frac{\sqrt{- 4 C_{1} R_{1} R_{2} R_{3}^{2} + C_{2} R_{1}^{2} R_{2}^{2} + 2 C_{2} R_{1}^{2} R_{2} R_{3} + C_{2} R_{1}^{2} R_{3}^{2} + 2 C_{2} R_{1} R_{2}^{2} R_{3} + 2 C_{2} R_{1} R_{2} R_{3}^{2} + C_{2} R_{2}^{2} R_{3}^{2}}}{2}}{C_{1} \sqrt{C_{2}} R_{1} R_{2} R_{3}}\]
Poles in omega
\[\omega_{11} \omega_{22} - \frac{C_{1}^{2} \omega_{11} \omega_{22} + 1}{C_{1}^{2}}\]
\[i \sqrt{\omega_{11} \omega_{22} - \frac{C_{1}^{2} \omega_{11} \omega_{22} + 1}{C_{1}^{2}}} + \frac{1}{R_{2}} + \frac{1}{R_{1}} + \frac{1}{\sqrt{C_{2}}}\]
\[\omega_{11} \omega_{22} - \frac{C_{2} \omega_{11} \omega_{22} + 1}{C_{2}}\]
\[- i \sqrt{\omega_{11} \omega_{22} - \frac{C_{2} \omega_{11} \omega_{22} + 1}{C_{2}}} + \frac{1}{R_{2}} + \frac{1}{R_{1}} + \frac{1}{C_{1}}\]
a1
\[\text{False}\]
a0
\[a_{0} = - \frac{\left(i \sqrt{\omega_{11} \omega_{22} - \frac{C_{1}^{2} \omega_{11} \omega_{22} + 1}{C_{1}^{2}}} + i \sqrt{\omega_{11} \omega_{22} - \frac{C_{2} \omega_{11} \omega_{22} + 1}{C_{2}}} + \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}\right)^{2}}{4} + \frac{\left(- i \sqrt{\omega_{11} \omega_{22} - \frac{C_{1}^{2} \omega_{11} \omega_{22} + 1}{C_{1}^{2}}} + i \sqrt{\omega_{11} \omega_{22} - \frac{C_{2} \omega_{11} \omega_{22} + 1}{C_{2}}} - \frac{2}{R_{2}} - \frac{2}{R_{1}} - \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}\right)^{2}}{4}\]
omega0
\[\omega_{0} = \sqrt{- \frac{\left(i \sqrt{\omega_{11} \omega_{22} - \frac{C_{1}^{2} \omega_{11} \omega_{22} + 1}{C_{1}^{2}}} + i \sqrt{\omega_{11} \omega_{22} - \frac{C_{2} \omega_{11} \omega_{22} + 1}{C_{2}}} + \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}\right)^{2}}{4} + \frac{\left(- i \sqrt{\omega_{11} \omega_{22} - \frac{C_{1}^{2} \omega_{11} \omega_{22} + 1}{C_{1}^{2}}} + i \sqrt{\omega_{11} \omega_{22} - \frac{C_{2} \omega_{11} \omega_{22} + 1}{C_{2}}} - \frac{2}{R_{2}} - \frac{2}{R_{1}} - \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}\right)^{2}}{4}}\]
\[\omega_{0} = \sqrt{- \frac{\left(i \sqrt{- \frac{1 + \frac{1}{C_{1} R_{1} R_{2}}}{C_{2}} + \frac{1}{C_{1} C_{2} R_{1} R_{2}}} + i \sqrt{\frac{1}{C_{1} C_{2} R_{1} R_{2}} - \frac{\frac{C_{1}}{C_{2} R_{1} R_{2}} + 1}{C_{1}^{2}}} + \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}\right)^{2}}{4} + \frac{\left(i \sqrt{- \frac{1 + \frac{1}{C_{1} R_{1} R_{2}}}{C_{2}} + \frac{1}{C_{1} C_{2} R_{1} R_{2}}} - i \sqrt{\frac{1}{C_{1} C_{2} R_{1} R_{2}} - \frac{\frac{C_{1}}{C_{2} R_{1} R_{2}} + 1}{C_{1}^{2}}} - \frac{2}{R_{2}} - \frac{2}{R_{1}} - \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}\right)^{2}}{4}}\]
zeta
\[\zeta = \frac{- i \sqrt{\omega_{11} \omega_{22} - \frac{C_{1}^{2} \omega_{11} \omega_{22} + 1}{C_{1}^{2}}} + i \sqrt{\omega_{11} \omega_{22} - \frac{C_{2} \omega_{11} \omega_{22} + 1}{C_{2}}} - \frac{2}{R_{2}} - \frac{2}{R_{1}} - \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}}{2 \sqrt{- \frac{\left(i \sqrt{\omega_{11} \omega_{22} - \frac{C_{1}^{2} \omega_{11} \omega_{22} + 1}{C_{1}^{2}}} + i \sqrt{\omega_{11} \omega_{22} - \frac{C_{2} \omega_{11} \omega_{22} + 1}{C_{2}}} + \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}\right)^{2}}{4} + \frac{\left(- i \sqrt{\omega_{11} \omega_{22} - \frac{C_{1}^{2} \omega_{11} \omega_{22} + 1}{C_{1}^{2}}} + i \sqrt{\omega_{11} \omega_{22} - \frac{C_{2} \omega_{11} \omega_{22} + 1}{C_{2}}} - \frac{2}{R_{2}} - \frac{2}{R_{1}} - \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}\right)^{2}}{4}}}\]
\[\zeta = \frac{i \sqrt{- \frac{1 + \frac{1}{C_{1} R_{1} R_{2}}}{C_{2}} + \frac{1}{C_{1} C_{2} R_{1} R_{2}}} - i \sqrt{\frac{1}{C_{1} C_{2} R_{1} R_{2}} - \frac{\frac{C_{1}}{C_{2} R_{1} R_{2}} + 1}{C_{1}^{2}}} - \frac{2}{R_{2}} - \frac{2}{R_{1}} - \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}}{2 \sqrt{- \frac{\left(i \sqrt{- \frac{1 + \frac{1}{C_{1} R_{1} R_{2}}}{C_{2}} + \frac{1}{C_{1} C_{2} R_{1} R_{2}}} + i \sqrt{\frac{1}{C_{1} C_{2} R_{1} R_{2}} - \frac{\frac{C_{1}}{C_{2} R_{1} R_{2}} + 1}{C_{1}^{2}}} + \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}\right)^{2}}{4} + \frac{\left(i \sqrt{- \frac{1 + \frac{1}{C_{1} R_{1} R_{2}}}{C_{2}} + \frac{1}{C_{1} C_{2} R_{1} R_{2}}} - i \sqrt{\frac{1}{C_{1} C_{2} R_{1} R_{2}} - \frac{\frac{C_{1}}{C_{2} R_{1} R_{2}} + 1}{C_{1}^{2}}} - \frac{2}{R_{2}} - \frac{2}{R_{1}} - \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}\right)^{2}}{4}}}\]
Q
\[Q = \frac{\sqrt{- \frac{\left(i \sqrt{\omega_{11} \omega_{22} - \frac{C_{1}^{2} \omega_{11} \omega_{22} + 1}{C_{1}^{2}}} + i \sqrt{\omega_{11} \omega_{22} - \frac{C_{2} \omega_{11} \omega_{22} + 1}{C_{2}}} + \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}\right)^{2}}{4} + \frac{\left(- i \sqrt{\omega_{11} \omega_{22} - \frac{C_{1}^{2} \omega_{11} \omega_{22} + 1}{C_{1}^{2}}} + i \sqrt{\omega_{11} \omega_{22} - \frac{C_{2} \omega_{11} \omega_{22} + 1}{C_{2}}} - \frac{2}{R_{2}} - \frac{2}{R_{1}} - \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}\right)^{2}}{4}}}{- i \sqrt{\omega_{11} \omega_{22} - \frac{C_{1}^{2} \omega_{11} \omega_{22} + 1}{C_{1}^{2}}} + i \sqrt{\omega_{11} \omega_{22} - \frac{C_{2} \omega_{11} \omega_{22} + 1}{C_{2}}} - \frac{2}{R_{2}} - \frac{2}{R_{1}} - \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}}\]
\[Q = \frac{\sqrt{- \frac{\left(i \sqrt{- \frac{1 + \frac{1}{C_{1} R_{1} R_{2}}}{C_{2}} + \frac{1}{C_{1} C_{2} R_{1} R_{2}}} + i \sqrt{\frac{1}{C_{1} C_{2} R_{1} R_{2}} - \frac{\frac{C_{1}}{C_{2} R_{1} R_{2}} + 1}{C_{1}^{2}}} + \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}\right)^{2}}{4} + \frac{\left(i \sqrt{- \frac{1 + \frac{1}{C_{1} R_{1} R_{2}}}{C_{2}} + \frac{1}{C_{1} C_{2} R_{1} R_{2}}} - i \sqrt{\frac{1}{C_{1} C_{2} R_{1} R_{2}} - \frac{\frac{C_{1}}{C_{2} R_{1} R_{2}} + 1}{C_{1}^{2}}} - \frac{2}{R_{2}} - \frac{2}{R_{1}} - \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}\right)^{2}}{4}}}{i \sqrt{- \frac{1 + \frac{1}{C_{1} R_{1} R_{2}}}{C_{2}} + \frac{1}{C_{1} C_{2} R_{1} R_{2}}} - i \sqrt{\frac{1}{C_{1} C_{2} R_{1} R_{2}} - \frac{\frac{C_{1}}{C_{2} R_{1} R_{2}} + 1}{C_{1}^{2}}} - \frac{2}{R_{2}} - \frac{2}{R_{1}} - \frac{1}{\sqrt{C_{2}}} - \frac{1}{C_{1}}}\]
Input impedance¶
\[Z_{in} = \frac{C_{2} R_{1} R_{2} R_{3} s}{C_{1} C_{2} R_{1} R_{2} R_{3} s^{2} + C_{2} R_{1} R_{2} s + C_{2} R_{1} R_{3} s + C_{2} R_{2} R_{3} s + R_{3}}\]
Noise analysis¶
Input current noise
\[\frac{4 G^{2} R_{2} T k + 4 G^{2} R_{3} T k + 8 G R_{2} R_{3} T k + 4 G R_{3}^{2} T k + 4 R_{2} R_{3}^{2} T k}{G^{2} R_{3}^{2}}\]
\[i_{n} = T k \left(\frac{4 R_{2}}{R_{3}^{2}} + \frac{4}{R_{3}} + \frac{8 R_{2}}{G R_{3}} + \frac{4}{G} + \frac{4 R_{2}}{G^{2}}\right)\]
\[R_{2} = \frac{G R_{3} \left(- G - \frac{R_{3} \left(- G i_{in} + 4 T k\right)}{4 T k}\right)}{\left(G + R_{3}\right)^{2}}\]
\[\frac{R_{2}}{10000} = - \frac{1}{2} + \frac{625 i_{in}}{T k}\]
Output voltage noise
\[i_{out} = T k \left(\frac{4 G^{2} R_{2}}{R_{3}^{2}} + \frac{4 G^{2}}{R_{3}} + \frac{8 G R_{2}}{R_{3}} + 4 G + 4 R_{2}\right)\]
\[i_{out} = G^{2} i_{in}\]