Skalierungsprobleme mit ddt-Funktion (1. Ableitung) in LTSpice

OP #4048259
Lesenswert?

Hallo,

ich habe eine Schaltung zu simulieren, bei der mich die Stromänderungen 
pro Sekunde interessieren.
Ich füge dafür immer gerne als Trace z.B. "d(I(R1))" hinzu.
Das funktioniert auch gut.

Aber jetzt brauche ich diese Stromänderung als Spannung in der 
Schaltung.
Wenn ich dafür eine "Arbitrary behavioral voltage source" verwende und 
als Funktion "V=ddt(I(R1))" eintrage, ist der Spannungsverlauf zwar 
qualitativ richtig, aber die Skalierung ist komplett falsch.
Ich habe festgestellt, dass dieser Skalierungsfehler abhängig von der 
Einstellung "Maximum timestep" ist.

Keinen Unterschied gibt es hingegen für die Einstellung des Solvers 
(Normal/ Alternate).

Bei Verwendung einer SPANNUNG funktioniert alles perfekt!

Kann mir jemand dieses Verhalten erklären?
Was ist bei Stromänderungen anders als bei Spannungsänderungen?

Danke
Third-Eye
#4049267
Lesenswert?

Hallo,

ich habe jetzt mal selber eine Lösung gesucht.
Die Ableitung ddt() funktioniert richtig, wenn man eine Spannungsquelle 
als Strommesser benutzt wie es in klassischem SPICE üblich ist.
Ich erinnere mich, dass das auch in anderen Schaltungen mit B-Quellen 
manchmal vorteilhaft oder gar notwendig ist den Strom einer V-Quelle in 
der B-Formel zu verwenden.

Gruß
Helmut
Angehängte Dateien:
#6101369
Lesenswert?

Michel M. schrieb:
> Hallo Helmut
> jetzt gibt es wieder eine Fehlermeldung :-(
> "V0: requires a minimum of 5 parameters. Only 4 specified."

Jemand hat Anfang letzten Jahres in irgend einem besonderen Fall von 
PULSE etwas nicht genau in SPICE definiertes angemeckert. Daraufhin hat 
der Entwickler als Lösung entschieden man müsste ab sofort mindestens 4 
Parameter einführen. Das war meiner Meinung nach die schlechtest 
mögliche Lösung, weil alle anderen SPICE-Programmen schon immer auch mit 
2 Parametern zufrieden waren. LTspice ist da jetzt inkompatibel bei 
PULSE bezüglich der minimalen Anzahl an Parametern.


Ich trage deshalb meistens bei width und period eine große Zeit ein die 
nie erreicht wird. Der Wert von Tfall ist in dem Fall auch egal, weil ja 
nicht so lange simuliert wird, dass Tfall zum tragen kommt.

PULSE (0 1 1n 1n 1n 100 200)

Ich weiß nicht mehr warum ich damals 1n delay benutzt habe.
DDT passt offenbar auch ohne delay.

PULSE (0 1 0 1n 1n 100 200)
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren