Circuit simulation code generation by computer algebra

Abstract

CSCG (Circuit Simulation Code Generator) is a circuit simulator based on computer algebra system (REDUCE 3.0). Circuit specifications are given by commands which generate the Hamiltonian H and the dissipating function D of the circuit. Partial derivatives of H and D are computed symbolically by REDUCE so as to generate the equations of motion. CSCG is written in REDUCE and automatically generates FORTRAN code for numerical integration, either using Runge-Kutta or Gear's method. The partial derivatives needed in the latter method are also computed symbolically. In comparison with conventional table-driven simulators, the code generated by CSCG performs simulation much faster (similar to compiled versus interpreted code), and it is believed to be much easier to implement and to use. CSCG is now extensively used for simulations of Josephson junction circuitries.