Computing Resources

The entries that follow purposely exclude the high-end / expensive tools that designers are probably already familiar with.

(Under Construction)

General Calculation

Many people use MATLAB and C++ as their computational tools of choice, but there are quite a few alternatives available, many in open-source format. Here are a few leads to get the curious going:

Python with NumPy / Scipy
Python with matplotlib
Freemat (high degree of compatibility with MATLAB)
Maxsima
Scilab
PTOLEMY out of UC Berkeley

A couple of more extensive discussions about alternatives to MATLAB can also be found here and here.

Computation times can vary dramatically between software. As others have noted, most languages have a quirk or two about them and seemingly simple calculations can on occasion take forever. A skilled user can often navigate around these issues, so any benchmark comparisons like the ones that follow should be taken with a grain of salt.

For an example, we will consider is a simple case of solving the 2D Laplace equation using an iterative finite difference scheme (four point averaging, Gauss-Seidel or Gauss-Jordan). The formal specification of the problem is as follows. We are required to solve for some unknown function u(x,y) such that ∇2u = 0 with a boundary condition specified. For convenience the domain of interest is considered to be a rectangle and the boundary values at the sides of this rectangle are given.

It can be shown that this problem can be solved using a simple four point averaging scheme as follows. Discretise the domain into an (nx x ny) grid of points. Then the function u can be represented as a 2 dimensional array – u(nx, ny). The values of u along the sides of the rectangle are given. The solution can be obtained by iterating in the following manner.

for i in range(1, nx-1):
for j in range(1, ny-1):
u[i,j] = ((u[i-1, j] + u[i+1, j])*dy**2 + (u[i, j-1] + u[i, j+1])*dx**2)/(2.0*dx**2 + dy**2))

The rather remarkable computation times that were reported follow:

Solution Method Execution Time (sec)
Python (estimate) 1500.0
Python + Psyco (estimate) 1138.0
Python + NumPy Expression 29.3
Pryrex 2.5
MATLAB (estimate) 29.0
Octave (estimate) 60.0
Pure C++ 2.16

Circuit Analysis & Simulation

LTspice IV (by Linear Technology) A remarkably capable analysis tool that is truly free.

Mesh Electronic Circuit Analysis 2.0

5 Spice Analysis Software

Top Spice (I personally own and use this product and am pleased with it.)

AppCad for RF & Microwave circuit analysis. Originally developed by the staff of Hewlett-Packard


Filter Design

RF & Microwave Filter Design

FilPro- with a rather remarkable software manual

Digital Filter Design



Frequency Planning

Mixer Spurious Performance



Antennas

Electromagnetic modeling tools at Clemson University

Wire Antennas

Microstrip Antennas

Other


Other Sites with Listings

Spread Spectrum Scene

Tools and Calculators


Comments are closed.