Tuesday 26 February 2019

ltspice - How to use .step param with more than two parameters in LTSpiceIV


I need to do three transient simulations with different values of certain resistors (conveniently called R1 and R2) in each. What I mean to do exactly is this:



  • Sim. 1: R1 = 1 k\$\Omega\$, R2 = 10 k\$\Omega\$

  • Sim. 2: R1 = 1 M\$\Omega\$, R2 = 10 M\$\Omega\$


  • Sim. 3: R1 = 1 k\$\Omega\$, R2 = 1 M\$\Omega\$


If there were just one resistor whose resistance to vary, then I would just set its resistance to "{r1}" (I use lower case letters to make it a different variable/parameter than R1) and use a command such as:


.step param r1 list 1k 1meg 1k

However, since I have to change two parameters (together) two times each, I have read here that (at least on LTSpiceIV) that a workaround to my problem could be using something like this:


.step param X list 1 2 3

.param r1 = table(X, 1k, 1meg, 1k)


.param r2 = table(X, 10k, 1meg, 10meg)

Upon doing the simulation, I get the following warnings:


WARNING: Can´t resolve .param r2 = table(X, 10k, 1meg, 10meg)
Select OK to continue the simulation with the default model or Cancel to quit now.

The same applies for r1.


For some reason, the simulation doesn´t "break" if I add one extra element to the table. In that case, the simulation takes too long, advancing more slowly every time, as it would never end. I have tried setting X to 0 1 2 instead of 1 2 3, but that does not work either.


Here are some pictures:


Circuit + commands



Error message


Your help would be much appreciated.




No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...