In the frequency domain the most common task of symbolic circuit analysis is to obtain the relationship between input and output variables in the form of a rational function in the complex frequency s {\displaystyle {\mathit {s}}\,} and symbolic variables x {\displaystyle \mathbf {x} } :
The above relationship is often called the network function. For physical systems, N ( s , x ) {\displaystyle N(s,\mathbf {x} )} and D ( s , x ) {\displaystyle D(s,\mathbf {x} )} are polynomials in s {\displaystyle {\mathit {s}}\,} with real coefficients:
where z i ( x ) {\displaystyle z_{i}(\mathbf {x} )} are the zeroes and p i ( x ) {\displaystyle p_{i}(\mathbf {x} )} are the poles of the network function; m ⩾ n {\displaystyle m\geqslant n} .
While there are several methods for generating coefficients a i ( x ) {\displaystyle a_{i}(\mathbf {x} )} and b i ( x ) {\displaystyle b_{i}(\mathbf {x} )} , no technique exists to obtain exact symbolic expressions for poles and zeroes for polynomials of order higher than 5.
Depending on which parameters are kept as symbols, we may have several different types of symbolic network functions. This is best illustrated on an example. Consider, for instance, the biquad filter circuit with ideal op amps, shown below. We want to obtain a formula for its voltage transmittance (also called the voltage gain) in the frequency domain, T v ( s ) = V o u t ( s ) / V i n ( s ) {\displaystyle {T_{v}(s)=V_{out}(s)/V_{in}(s)}\,} .
If the complex frequency s {\displaystyle {\mathit {s}}\,} is the only variable, the formula will look like this (for simplicity we use the numerical values: R i = i , C i = 0.01 i {\displaystyle R_{i}=i,C_{i}=0.01i\,} ):
If the complex frequency s {\displaystyle {\mathit {s}}\,} and some circuit variables are kept as symbols (semi-symbolic analysis), the formula may take a form:
T ( s , x ) = 1.74 C 2 s 6.6 C 1 C 2 s 2 + 0.66 C 2 s + 0.33 x = [ C 1 C 2 ] {\displaystyle {\begin{aligned}T(s,\mathbf {x} )&={\frac {1.74C_{2}s}{6.6C_{1}C_{2}s^{2}+0.66C_{2}s+0.33}}\\\mathbf {x} &=[C_{1}~C_{2}]\end{aligned}}}
If the complex frequency s {\displaystyle {\mathit {s}}\,} and all circuit variables are symbolic (fully symbolic analysis), the voltage transmittance is given by (here G i = 1 / R i {\displaystyle G_{i}=1/R_{i}\,} ):
T ( s , x ) = G 4 G 6 G 8 C 2 s G 6 G 11 C 1 C 2 s 2 + G 1 G 6 G 11 C 2 s + G 2 G 3 G 5 G 11 x = [ C 1 C 2 G 1 G 2 G 3 G 4 G 5 G 6 G 8 G 11 ] {\displaystyle {\begin{aligned}T(s,\mathbf {x} )&={\frac {G_{4}G_{6}G_{8}C_{2}s}{G_{6}G_{11}C_{1}C_{2}s^{2}+G_{1}G_{6}G_{11}C_{2}s+G_{2}G_{3}G_{5}G_{11}}}\\\mathbf {x} &=[C_{1}~C_{2}~G_{1}~G_{2}~G_{3}~G_{4}~G_{5}~G_{6}~G_{8}~G_{11}]\end{aligned}}}
All expressions above are extremely useful in obtaining insight into operation of the circuit and understanding how each component contributes to the overall circuit performance. As the circuit size increases, however, the number of terms in such expressions grows exponentially. So, even for relatively simple circuits, the formulae become too long to be of any practical value. One way to deal with this problem is to omit numerically insignificant terms from the symbolic expression, keeping the inevitable error below the predetermined limit.3
Another possibility to shorten the symbolic expression to manageable length is to represent the network function by a sequence of expressions (SoE).4 Of course, the interpretability of the formula is lost, but this approach is very useful for repetitive numerical calculations. A software package STAINS (Symbolic Two-port Analysis via Internal Node Suppression) has been developed to generate such sequences.5 There are several types of SoE that can be obtained from STAINS. For example, the compact SoE for T v ( s ) {\displaystyle T_{v}(s)\,} of our biquad is
The above sequence contains fractions. If this is not desirable (when divisions by zero appear, for instance), we may generate a fractionless SoE:
Yet another way to shorten the expression is to factorise polynomials N ( s , x ) {\displaystyle N(s,\mathbf {x} )} and D ( s , x ) {\displaystyle D(s,\mathbf {x} )} . For our example this is very simple and leads to:
For larger circuits, however, factorisation becomes a difficult combinatorial problem and the final result may be impractical for both interpretation and numerical calculations.
G. Gielen and W. Sansen, Symbolic Analysis for Automated Design of Analog Integrated Circuits. Boston: Kluwer Academic Publishers, 1991. ↩
Labrèche P., presentation: Linear Electrical Circuits:Symbolic Network Analysis, 1977 https://www.researchgate.net/publication/266391592_1977_Labreche_-_LINEAR_ELECTRICAL_CIRCUITS_SYMBOLIC_NETWORK_ANALYSIS ↩
B. Rodanski, M. Hassoun, "Symbolic Analysis," in The Circuits and Filters Handbook: Fundamentals of Circuits and Filters, 3rd ed., Wai-Kai Chen, Editor. CRC Press, 2009, pp. 25-1 - 25-29. ↩
M. Pierzchala, B. Rodanski, "Generation of Sequential Symbolic Network Functions for Large-Scale Networks by Circuit Reduction to a Two-Port," IEEE Transactions on Circuits and Systems I: Fundamental Theory and Applications, vol. 48, no. 7, July 2001, pp. 906-909. /wiki/IEEE_Transactions_on_Circuits_and_Systems_I:_Fundamental_Theory_and_Applications ↩
L.P. Huelsman, "STAINS - Symbolic Two-Port Analysis via Internal Node Suppression," IEEE Circuits & Devices Magazine, March 2002, pp. 3-6. ↩