One of the most challenging problems in circuit theory is that of finding the
impulse response of a network. This problem is most easily solved by taking the
inverse Laplace transform of the transfer function of the network. There
are several methods for taking inverse Laplace transforms of certain rational functions,
*e.g.* the ratio of two polynomials in the complex variable 's'.
Fortunately, most network functions, including lumped parameter filters, fit
into this category. These are networks which can be described in terms of
ordinary differential equations.

**Screen Shot of Impulse/Step Response Demo**

For networks involving strip lines, transmission lines, or other distributed parameter configurations, the solutions generally involve partial differential equations. For these networks the transfer function may not be the ratio of polynomials. Prof. Jiri Vlach, in his text "Computer Methods for Circuit Analysis and Design", presents a general method for finding the inverse Laplace transform of network functions which are not restricted to ratios of polynomials. The method is elegant -- and fast. C source code for it, ported from the original FORTRAN, is available here. A somewhat more advanced method which has better performance over long time intervals is also available. It produces the time domain response of any network which can be described by the ratio of polynomials. A Windows application demonstrating the more general method is here.

The text "Engineering and Scientific Computations in Pascal, " by Lawrence P. Huelsman includes a complete set of Pascal modules for circuit analysis. Here is a port of the complete software package into C++, including all routines except the Pascal module for printing plots on a text printer. This package supports the design of complex networks of resistors, capacitors and inductors, along with sources. It may be very difficult to use the package without access to the author's text, but several test programs are included.

If a preferred method for solving networks involves partial
fraction expansion of the ratio of two polynomials in '*s*', a root finder will be
required. The Jenkins-Traub method is very robust and has earned a reputation as one of the best in the scientific
community. Bairstow's method is well suited to solving the kinds of polynomials common to electronic and
mechanical engineering problems, because it can find all real or complex roots
without using complex math. It operates on any polynomial with real
coefficients.

An original method which offers improved support for polynomials with multiple roots is detailed elsewhere on this website.

**Infinite Ladder Network**

This paper contains an analysis of several infinite ladder configurations, including the one shown above. Techniques are presented for finding the impedance at the input terminals for each type.

This section contains links to a number of short notes solving problems in circuit analysis and synthesis. The circuits selected represent a variety of commonly used configurations and illustrate typical design techniques.

**Bridged 'T' Notch Filter**

In this note, you will find a
short derivation and solution of the equations for the circuit shown in the
above schematic. Simple tips quickly lead to the relations among the components
required for a null to exist across the load, *R _{L}*, and for the determination of the required

**RC Phase Shift Oscillator**

A simple RC phase lag network can serve as the basis for an oscillator. Three cascaded RC sections will create a 180 degree phase shift at some frequency. The above circuit is analyzed here to determine the relationship of the components to the oscillating frequency and the minimum gain required for the amplifier.

**RC Twin 'T' Notch Filter**

Twin 'T' notch filters are often used to reject 50/60Hz
interference from AC power lines in sensitive audio circuits. Component values
for 'standard' designs are readily available, but this
note derives the component relations and offers more general conditions for
providing a transmission null through * R*_{L}.