Genauigkeit bei Spice

Hallo zusammen,

habe eine Frage, die die Rechengenauigkeit von Spice betrifft. Habe zwei Schaltungen aus aus zwei Arten von Widerständen (100 und 700 Ohm) aufgebaut und mit dem Multimeter den Gesamtwiderstand, Gesamtstrom und Knotenspannungen bei bspw. 5V konstanter Spannung gemessen. Der Unterschied beider Schaltungen liegt in ihrer Struktur. Beide enthalten gleich viele Widerstände (18 Stück). ## Nummer eins ist regelmäßig verdrahtet, d.h. jeder Knoten hat vier Nachbarn(außer die Ränder) --> 4x4 ## Nummer zwei ist aus einem solchen regelmäßigen Netz entstanden, ist aber durch zufälliges Umstecken verändert worden, so daß es bspw direkte Verbindungen der Ränder gibt, o.ä.

Festgestellt habe ich jetzt beim Nachmessen und Vergleichen der Messergebnisse mit denen von Spice, daß beim chaotischeren Netzwerk größere Differenzen auftreten, als beim regulären Netz.

Der Gesamtwiderstand jedoch - als Quotient aus Spannung und Stromstärke durch V0 (bei Spice angelegte Gleichspannungsquelle) - trifft bei beiden Netz-Realisierungen ziemlich genau ( schlechte Lösung)?? Würde Spice zu Schaltungstransformationen (Substitution durch Ersatzschaltbilder) greifen, könnte ich mir eher eine Möglichkeit für Probleme vorstellen.

Wäre über einige Gedanken von euch sehr froh, viele Grüße, Arne Lüllmann

Reply to
Arne Luellmann
Loading thread data ...

Die Methode, die numerische Simulationsgenauigkeit eines R-Netzwerks mit einer Multimetermessung vergleichen zu wollen, erscheint mir wenig erfolgversprechend. Bei dieser relativ überschaubaren Anzahl von Knoten sollte es doch auch noch möglich sein, das Netzwerk zum Vergleich mit einem Computeralgebrasystem bekannter Genauigkeit rechnen zu lassen; da sollten systematische Fehler sichtbar werden. Vorher könnte man auch noch verschiedene X-Spice-Programme gegeneinander vergleichen, und sehen, ob größere Abweichungen auftreten (vielleicht tritt die Ungenauigkeit nur bei dem von Dir verwendeten Code auf).

Gruß Ulrich

Reply to
Ulrich Strate

Vielleicht stellst Du die falsche Frage? (s.u.)

0

Welche Genauigkeit hat der Multimeter? Welche Toleranzen haben die verwendeten Widerst=E4nde?

Gratulation.

Du hast den Unterschied zwischen (oberfl=E4chlicher) Theorie und realer Praxis entdeckt.

In der Theorie hat der Widerstand exakt 100,000000000 Ohm, in der Praxis hat er vielleicht 104,1389583753452 Ohm. In der Theorie misst der Multimeter genau, in der Praxis stimmen nur die ersten zwei Stellen des angezeigten Wertes.

Reply to
Michael Roth

Am Thu, 20 Apr 2006 15:36:46 +0200 schriebst du in de.sci.electronics:

Mit Verlaub rechnet Spice mit mehreren Verfahren die solche Auswirkungen zur Folge haben. So basiert der Algorithmus zwar auf Kirchhoffs Sätze, jedoch die Matrizenberechnung ist wesentlich komplexer. Es gibt je nach Spice Version die Möglichkeit das Simulationsverfahren (Newton, Runge Kutta4 etc) zu ändern und sich dann die Simulation noch einmal an zu schauen. Den Umweg über Ersatzschaltungen macht Spice im Wesentlichen bei nichtlinearen Bauteilen um die Berechnungen in überschaubaren zeitlichen Grenzen zu halten. Bei weiterem Interesse kann ich ein kurzes PDF zumailen welches ein wenig mehr in die Tiefe geht.

Jens

Reply to
belatronix

[.....]

wenn ich das richtig verstehe, hast Du eine .tran-Analyse gemacht.

Daß die Matrix iterativ gelöst wird, halte ich für unwahrscheinlich, IMHO werden sogenannte Sparse Matrix Verfahren eingesetzt mit dem Ziel, die Ordnung des linearen Gleichungssystems drastisch zu reduzieren und damit den hierdurch hauptsächlich hervorgerufenen Rechenaufwand zu verringern. Die Koeffizientenmatrix besteht nämlich praktisch immer fast nur aus 0en, was zu redundanten Berechnungen führt. Durch diese Vorgehensweise erhöht sich IMHO der Rechenaufwand mit der Anzahl der Knoten nicht mehr um n**3, sondern nur noch um etwa n**2, falls ich mich noch richtig erinnere.

Das wird doch gemacht in der .ac-Analyse, eine linearisierte Kleinsignalersatzschaltung wird berechnet, dazu wird der Arbeitspunkt ausgewertet und an der Stelle linearisiert. Bei Transistoren entspräche das den Hybrid- (h-) Parametern.

Ich würde das Ganze nochmal mit der .ac-Analyse versuchen. Die Rechengenauigkeit von mit Sicherheit verwendeten double precision auf

32-Bit-Rechnern ist eigentlich immer 8-Byte floating point (irgendwas mit IEEE), das ist schon ein relativ großer Zahlenbereich. Natürlich stößt man auch damit an Grenzen, aber in Deinem Fall wohl eher kaum.

Wenn Du eine Zeitanalyse .tran machst, wird das DGL-System natürlich iterativ gelöst. Dabei kann man das Integrationsverfahren noch bei Bedarf umschalten, meist wegen der Stabilität. Darüber hinaus gibt es noch eine Reihe iter-Variablen, die Einfluß auf das Verhalten haben, da müßte ich aber auch erst nachlesen. Was die Abbruch-Genauigkeit in .tran betrifft, so wird man wohl zuerst reltol verringern, z.B. unter .options, der default-Wert ist glaube ich 1.e-2, das wären 1%. Allerdings konvergiert die Integration bei zu kleinen Werten meist nicht mehr, man müßte dann auch die max. Schrittweite verringern. Das Thema Konvergenz ist in Spice immer sehr schwierig, in Deinem Fall allerdings dürfte das nicht auftreten.

mfg. Winfried

Reply to
Winfried Salomon

[Irrelevante Angabe]

Kann sein, muss aber nicht. Ich würd mich mal hinsetzen und das Netzwerk per Hand durchrechnen. Scheint ja ein relativ symmetrisches Problem zu sein.

Mittelung aller Toleranzen? Wenn du jeden Widerstand mit 0.1% Toleranz und bei fixer Temperatur (wo der Wert in dieser Toleranz liegt) hernimmst, wirst du genauere Ergebnisse bekommen. Du verwendest nämlich nicht 100Ohm sonder 95..105 OHm in jedem Zweig. Damit hast du sowieso schon mal deine Genauigkeit im Nirvana... Die GEnauigkeit des Messgerätes kommt da noch dazu.

Die Berechnung erfolgt, wie bereits angemerkt wurde, iterativ.

Spice bricht bei .DC und .TRANS ab, wenn

  1. die Fehler der nichtlinearen Zweigströme
Reply to
John F

"Arne Luellmann" schrieb im Newsbeitrag news:e282pe$no7$ snipped-for-privacy@gwdu112.gwdg.de...

Hallo Arne,

ich habe mal zum Spass ein 8bit R2R-Netzwerk mit ".OP"-Analyse von LTspice durchrechnen lassen. Der Fehler der Ausgangsspannung über alle Codes beträgt ca. 1e-16*V (0.0000000000000001V) und ist unabhängig vom Parameter "reltol" und "abstol" . Damit ist klar, dass zumindest LTspice im Falle reiner linearer Bauteile ein "einfaches" lineares Gleichungssystem löst.

Gruß Helmut

PS: 1e-16V entspricht der numerischen Genauigkeit von 64bit floating point.

formatting link
formatting link

Reply to
Helmut Sennewald

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.