Ich versuche derzeit, die Schrittfunktion zu verwenden, um die Portabilität einiger Arbeitsschaltungen zu vereinfachen / zu erhöhen. Ich kann die genaue Schaltung nicht teilen, aber ich versuche einfach, eine oder mehrere Variablen zu definieren, diese Variablen in einigen Berechnungen zu verwenden und schließlich die ausgegebenen Gleichungen in die Schrittfunktion zu leiten.
Eine vereinfachte Version dessen, was ich zu tun versuche, kann hier gesehen werden:
Wenn ich versuche, die obige Schaltung zu simulieren, erhalte ich die folgende Fehlermeldung.
Ich denke, meine Frage besteht aus zwei Teilen:
Vielen Dank im Voraus!
Gibt es möglicherweise einen anderen Befehl oder eine andere Aktion, die besser für das geeignet ist, was ich erreichen möchte?
Verwenden
.param a=0
.step param x list 1 2 3
und setzen Sie den Wert von B1 aufV={a+x}
Gibt es eine Möglichkeit, LT zu zwingen, zuerst die Berechnungen durchzuführen?
Ja, Sie können eine Netzlistendatei erstellen und die Zeilen in der Netzlistendatei neu anordnen. Das Problem dabei ist, dass nicht die Reihenfolge des Compilers, der die Zeilen "ausführt", ein Problem verursacht. Das Problem scheint zu sein, dass Listen keine geschweiften Klammern akzeptieren können, sondern nur Konstanten
* C:\Program Files (x86)\LTC\LTspiceIV\blah.net
B1 V1 0 V={x}
.param a=0 x1=a+1
.step param x list 1 {a}
.tran 1
.backanno
.end
Gibt es möglicherweise einen anderen Befehl oder eine andere Aktion, die besser für das geeignet ist, was ich erreichen möchte?
Ja, die Verwendung von if then-Anweisungen in einem b-source-Block ist wahrscheinlich der beste Weg, um mehrere Anweisungen zu verarbeiten.
jonk