NI Circuit Design Community Blog

Community Browser
Labels
cancel
Showing results for 
Search instead for 
Did you mean: 

NI Multisim SPICE Simulation and the Convergence Assistant

Mahmoud_W
NI Employee (retired)

Hello Circuit Designers,

As you may already know, NI Multisim uses SPICE as its core algorithm for solving differential equations that model circuit components. The Multisim development team has put great efforts in enhancing this simulation environment and adding features to it for optimized analog and mixed-mode simulations.

Of course, the accuracy of the results depends on the settings of the SPICE simulation. This is why the default simulation settings in Multisim define tight enough conditions to assure quality results. In some cases, the circuit might be too complicated for the SPICE simulator to converge with the default settings and this is why the convergence assisstant is also included in Multisim. I am sure many of us just click "yes" once the convergence assistant dialog box shows up for the first time. And this is why I decided to write this blog post, to take a deeper look at what it actually does.

spice1.PNG

A convergence problem means that the difference (in voltages) between the simulation results of one iteration and the following one are not small enough implying an inaccuracy in the given solution. What the convergence assisstant does is changing some of the important simulation parameter that might be the cause of the problem to help the circuit converge, or in other words obtain consistant results between consecutive iterations.

Below is a list of these parameters and their significance

SPICE ParameterSignificance
METHODSets the time step integration method.
Setting Initial Conditions to ZeroThis step sets all the voltages of the circuit to zero as an initial condition for the solution.
TMAX

TMAX is the maximum stepsize that SPICE uses; for default the program will choose the smaller of either Tstep or (Tstop-Tstart)/50.0. TMAX is useful when one wishes to guarantee a computing interval which is smaller than the printer increment, Tstep.

RELTOLSets relative error tolerance of the program. The value must be between 0 and 1.
RSHUNT

Value (in ohms) of resistors added between each circuit node and ground, helping to eliminate problems such as "singular matrix" errors. In general, the value of RSHUNT should be set to a very high resistance (1e+12).

ITL1

Sets Operating Point Analysis iteration limit.

GMINSets min conductance (max resistance) of any device in the circuit (in mhos). Also sets value of the conductance that is placed in parallel with each pn junction in the circuit.

And here are some screenshots of the convergence assisstant of Multisim trying to fix one of my circuits!

Capture4.PNG           Capture5.PNGCapture6.PNG