Hello,
I have a question regarding using component values in behavioral voltage source expressions.
So I have a behavioral voltage source whose expression is dependant on both the value of the current through a sense resistor and the value of the current sense resistor. Basically it is V = IR. If the resistor is already part of the netlist, why do you have to create a .param directive to utilize it in the expression? Shouldn’t the variable name in the expression be enough?
For example, in the following figure, I had to include the .param directive (which appears to be a bit redundant) to make use of the resistor value otherwise, the following exception would be generated:
Fatal error: Missing expression in B-source B1
Do you have a solution without using the directive .param? That is, only using the variable name in an expression?
As I recall, this has never appeared in SPICE or PWL simulators.
That the device name, not a variable.
The exception is that to read current, you use I(R10) to read the current of that resistor device. However, this is basically not a variable, but rather a syntax to read device current.
But just based on your screenshot, I don’t understand why not do it in a standard way? You basically just reading voltage across that resistor, and standard method is to label the node and use the node voltage.
Ok, yes, this works. I was accustomed to performing this operation by way of “Ohms Law” format (but differential works just the same).
Btw, now that I have been using QSpice more regularly, it is growing on me and now prefer it to LTSpice in terms of its interface. 
2 Likes