Re: Wanted: LM-709 (Spice model) National Op-Amp



On Sun, 18 Sep 2005 06:37:13 GMT, "Robert" <Robert@xxxxxxxxx> wrote:

>
>> From what I can recall of Bob's arguments against spice, was the same
>> as someone saying they do not like Word Processors, becuase they read
>> a badly written novel. If one uses SPICE incorrectly, then one gets
>> bogus results, if one understands it's limits and uses it correctly,
>> then it is a valuable tool.
>>
>> Regards
>> Anton Erasmus
>
>Oh, it was a little more than that.
>
>What he said finally drove him up a wall was he was trying to get a circuit
>to converge with great frustration and IIRC he came in one morning and the
>previous night's run had converged.
>
>When he examined the netlist he found that he had (during the
>troubleshooting effort) left in a couple of components (a resistor and
>capacitor?) connected to ground with the other ends disconnected. They
>should have had no effect on a real circuit.
>
>That made it converge. Taking the components completely out of the circuit
>caused the original non-convergence.
>
>That kind of non-real World physical behavior, he calls it "lying", drives
>him crazy.
>
>Knowing a little bit about the algorithms of Spice I can perhaps guess that
>leaving the circuit components in caused the circuit's Admittance Matrix to
>be assembled in a not so ill conditioned State. But it would only be a
>guess.

I think a great many (most ?) problems with SPICE and other simulation
programs in general are actually due to problems of the "Floating
Point" data type. AFAIK the total reason for being of the floating
point data type was to get a reasonable range and precision using as
little memory as possible. Today memory is not a problem anymore, and
one can use a fixed point number format with the desired range and
precision necessary for any simulation. A typical construct in many
simulations are:

(x0-x1)/k where x0 and x1 are almost equal. This causes problems in
floating point. If x0 an x1 are say 1.0 and 1.0001 then it is not a
problem. If it is 1000000000.0 and 1000000000.0001, then it bombs out.

I personally think that with todays systems, the use of floating point
should be banned, and in stead large fixed point numbers should be
used. The only disadvantage compared to floating point is that it uses
more memory. (And the little problem that almost no currently used
languages supports them as standard)

Regards
Anton Erasmus



.