Forum: Analoge Elektronik und Schaltungstechnik LTspice step und param


von jan s (Gast)


Lesenswert?

Hallo,
ich möchte gerne in LTspice zwei Widerstände per
1
.step param XX list x y z
verändern.
Den Wiederstandswert will ich außerdem über eine
1
.param x=1k
Anweisung festlegen.

Mit folgenden Anweisungen bekomme ich Fehler in der Simulation:
"syntax error in .step command 2nd dimension"
1
.param r1=4700
2
.param r2=100
3
.param r1_min=r1*0.99
4
.param r1_max=r1*1.01
5
.param r2_min=r2*0.99
6
.param r2_max=r2*1.01
7
.step param r1_ list r1 r1_min r1_max
8
.step param r2_ list r2 r2_min r2_max

Ich habe den Fehler soweit ingegrenzt, dass
1
...
2
.step param r1_ list 1k 2k 3k
3
.step param r2_ list 3k 2k 1k
läuft. Folgendes Beispiel läuft schon nicht mehr.
1
.param r1=4700
2
.param r2=100
3
.param r1_min=r1*0.99
4
.param r1_max=r1*1.01
5
.param r2_min=r2*0.99
6
.param r2_max=r2*1.01
7
.step param r1_ list r1 2k k3
8
.step param r2_ list 1k 2k 3k

Außerdem habe ich schon versucht, die Veriablen mittels '{}' 
einzuklammern.
Auch kein Erfolg.

Ich vermute, dass der Fehler relativ simpel ist, aber ich sehe ihn 
nicht. Bitte um Hilfe.

Gruß Jan

PS.: Den Widerstand habe ich in der Simulation mit R={r1_} bzw. {r2_} 
festgelegt.

von jan s (Gast)


Lesenswert?

Ist Folgendes Konstrukt in LTC überhaupt möglich?
1
.param x=1 y=2
2
.step param XY list x y

Das Ergebnis sollte doch mit
1
 .step param XY list 1 2
übereinstimmen?!

von ?!? (Gast)


Lesenswert?

Ich würde sagen, mit .param legst du einen Wert fest und mit .step param 
veränderst du den Wert und machst mit jedem einzelnen Wert eine 
Simulation.
Passt irgendwie nicht zusammen...

von ?!? (Gast)


Lesenswert?

jan s schrieb:
>
> Das Ergebnis sollte doch mit .step param XY list 1 2 übereinstimmen?!
Hier weist du der Variablen "XY" erst den Wert 1 zu, machst eine 
Simulation, dann den Wert 2 und machst wieder eine Simulation.
Das ist was ganz anderes als das feste Zuweisen von 1 an x und von 2 an 
y.
x und y sind Variablen und XY ist auch eine, und die hat mit den beiden 
erstgenannten nichts zu tun.

von bert (Gast)


Lesenswert?

Eventuell helfen Helmut S. Beispiele in 
Beitrag "Re: LTspace mehrmals simulieren".
Vor allem step_parameter_sets.asc, bei dem die Notwendigkeit von 
numerischen Konstanten in der .step-Anweisung durch die table-Funktion 
umschifft wird.

von analogspiceman (Gast)


Lesenswert?

Offensichtlich und überraschend ist geschweifte Klammernotation gar 
nicht in einem Schrittbefehl erlaubt. Du könntest einen abgestuften 
Parameter als Index verwenden, um die Werte der Widerstände indirekt 
ändern. Beispielsweise:

.step param n 1 3 1 ; index parameter = 1,2, then 3
.param .param Wert1=table(n, 1,1k, 2,10k, 3,5k) X=tbl(n, 1,10, 3,30)

R1 1 2 {wert1}
R2 2 0 {2*wert1}
R3 1 8 {X}
R4 2 8 {tbl(n, 1,1m, 5,5m)}
V1 8 0 {X/3}

von Helmut S. (helmuts)


Angehängte Dateien:

Lesenswert?

Hallo,

Parameter gehen in .step meines Wissens nach nicht.

Hier mal meine zwei Ersatzlösungen.
Im Momemnt habe ich die eindimensionale Lösung aktiv gemacht, weil dort 
das Ergebnis vermutlich am ehesten dem Gewünschten entspricht. Der 
Startpunkt ist bewusst bei den nominalen Werten gewählt.
Wenn man die "Box" mit der blauen Schrift(Kommentar) aktiviert und die 
Andere zu Kommentar macht, dann bekommt man die zweidimensionale 
Version.

Gruß
Helmut

von jan s (Gast)


Lesenswert?

?!? schrieb:
> Hier weist du der Variablen "XY" erst den Wert 1 zu, machst eine
> Simulation, dann den Wert 2 und machst wieder eine Simulation.
> Das ist was ganz anderes als das feste Zuweisen von 1 an x und von 2 an
> y.
> x und y sind Variablen und XY ist auch eine, und die hat mit den beiden
> erstgenannten nichts zu tun.

Ich dachte, dass das beschriebene Beispiel folgendem Ablauf entspricht:
1) XY=x=1
2) Simulation
3) XY=y=2
4) Simulation

So dachte ich es zumindest, aber scheinbar hat ?!? recht, und 
irgendetwas läuft da anders.

Werde es jetzt mit einer Tabelle durchspielen. Da sind die Beispiele die 
von Helmut sehr schön. Danke für die vielen Beispiele, die ihr mir 
verlinkt, hochgeladen und erklärt habt <Daumen hoch>

Das Ein-/ und Zweidimensionale Beispiel sind gute Beispiele für die 
Verschachtelung von Simulationen.

Schönen Mittwoch / Bergfest,
Jan

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.