Download SIMetrix Simulator Reference Manual
Transcript
8.6. Singular Matrix Errors same reason as source and GMIN stepping. So, SIMetrix automatically adds additional capacitance to the circuit to prevent this situation from arising. The end result is a convergence strategy that nearly always succeeds. However, it is generally the slowest method so in SIMetrix it is, by default, attempted last. Although pseudo transient analysis is very powerful it is not completely infallible. Its Achilles Heel is oscillation. Because a transient analysis is being performed it is possible for the circuit to oscillate. If this happens, pseudo transient analysis can end up going on forever without ever finding a stable solution. In our experience, however, this is actually rare. A number of steps are taken to damp oscillators so that even circuits that are designed to oscillate still succeed with pseudo transient analysis. SIMetrix provides a number of facilities to inhibit circuit oscillation during pseudo transient analysis. These are described in “Pseudo Transient Analysis” on page 264. 8.5.6 Controlling DC Method Sequence You may have a circuit that only succeeds with - say - pseudo transient analysis and so attempting the other methods just wastes time. In this situation, you can force the simulator to attempt this method exclusively. To do this you need to set the two simulator options noOpiter and dcopSequence. noOpiter inhibits the first method (junction initialised iteration) while dcopSequence controls which and what order the remaining methods are attempted. The value of dcopSequence consists of any combination of SOURCE, GMIN, JUNCGMIN and PTA separated by the pipe symbol: ‘|’. SOURCE, GMIN, JUNCGMIN and PTA refer respectively to ‘source stepping’, ‘DIAG GMIN stepping’, ‘Junction GMIN stepping’ and ‘pseudo transient analysis’. The order in which these words appear in the value of dcopSequence, determines the order in which the corresponding methods will be attempted. So for example: .OPTIONS NOOPITER DCOPSEQUENCE=GMIN|PTA will force GMIN stepping to be attempted first followed by pseudo-transient analysis. Junction initialised iteration, junction GMIN stepping and source stepping won’t be attempted at all. Note that PTA must always be the last entry. 8.6 Singular Matrix Errors A singular matrix error occurs when the circuit does not have a unique and finite solution. For example, a circuit containing a floating capacitor does not have a unique DC solution as the capacitor can be at any voltage. Also circuits with shorted inductors, voltage sources or a combination of both will fail with this error. If you get this error, you must first check your circuit. The simulator will tell you where the problem is either as a node name or a device name. If you think you circuit is OK then it is possible that the error is occurring because during the course of iterating to a solution, some node voltages or device currents reached very high values and the limited accuracy of the machine made it seem that the matrix was singular. This can happen with junction initialised iteration. If this is the case, try setting the option: .OPTIONS NOOPITER This will inhibit this mode and the simulator will start with source stepping. This method, and the others that follow, don’t generally suffer from this problem. Note that the simulation will abort if a singular matrix is detected in junction initialised iteration. It will not automatically attempt the other methods. This is because, by far the most common reason for singular matrices is circuit error. 270 SIMetrix Simulator Reference Manual