I run a .cmd file after my sims to pull certain data and write it to a text file. I would like to get some numbers at a specific time in the sim. I'm trying to use a WHILE/END loop to do this per another example I found, but it isn't working. Code below...
var set var=CurrentAnalysis object=(eval(db_default(.system_defaults,"analysis")))
var set var=IP integer_value=1
While condition=((eval(CurrentAnalysis.object_value//".MyResult.time").values[IP])<2.5)
var set var=OneGTimeValue real_value=(eval(CurrentAnalysis.object_value//".MyResult.time").values[IP])
First thing I notice is that you never increase the value of IP:
var set var=IP int=(eval(IP+1))
must be in there somewhere for it to work.
Testing out syntax in the function builder sometimes is very helpful. I suspect that your construct might need a STOO to get the string to be seen as an object.
But if you are just looking for the place where time=2.5, use VALI() or if you are looking for the value at some other signal when time=2.5, use VALAT().
Resurrecting this thread for help with my latest command syntax woes...
This works...
var set var=OneGTimeValue real_value=(VALI(.Model_1.MyAnalysis.MyResult.TIME.values,2.5))
But I would like this to work with the default analysis, what ever that name may be. I've been trying many permutations of something like this to no avail...
var set var=OneGTimeValue real_value=(VALI(".Model_1"//(eval(db_default(.system_defaults,"analysis")))//".MyResult.TIME.values,2.5))
I never seem to know quite where to put the "eval". Open to someone pointing out my obvious mistake...
var set var=$_self.OneGTimeValue real_value=(VALI($analysis.MyResult.TIME.values,2.5))
then you created a variable OneGTimeValue that is dependent on the analysis.
If you re-run the analysis, the variable will automatically change. If try to delete the variable, A/View will complain about dependent objects as the expression makes the variable being dependent on the analysis.
If you eval the whole expression you kind of "snapshot" the value and save it to the variable. It just holds the number and not an expression.
Consequences: There's no dependency. The variable will not change when the analysis is updated and nor will A/view complain about deleting the variable.
Every time I post questions about stuff like this you always patiently remind me I should be using macros instead. I promptly say to myself, "You know, Martin is right, I should be trying more macros!" I then just as promptly keep doing it the old way...