Hello!
I recently found a corner case regarding the handling of dependent variables.
When using Harmonic Balance, the frequency points are calculated from the frequencies of the sources. But the frequencies of the sources can be changed as a parameter sweep.
Example:
We have a variable FREQ and a source with frequency FREQ
We have a HB simulation HB1 with 4 harmonics
And a parameter sweep on HB1 setting FREQ to 1, 2 and 3.
If we plot now “frequency”, we only get the last entry; [0, 3, 6, 9]. Correct would be a 2D array:
[0,1,2,3;
0,2,4,6;
0,3,9,12]
The same issue we see in all graphs of signals. Signals are marked dependent on “frequency FREQ”, where the content of frequency is only valid for the last simulation.
I assume, that this is a corner case, which is not really important and fixing might be to much effort. IMO the correct way of handling this would be to:
- Make frequency a 2D array dependent on FREQ
- Make any recorded signal dependent on frequency only
- Allow dependencies on multidimensional dependent variables
A warning in such scenarios might be helpful:
- Simulation parameters depending (direct or indirectly) on sweep parameters
- In case of Harmonic Balance, that includes the frequency fields of all sources
What do you think?
Best Regards!