I am struggling with clamping a 'compartment' so that it does not become negative. Trying to control this with 'if' statements on the outflow does not help. Probably because we really don't know which is the current value and comparing the current size of a compartment with the outflow does not do the trick. In the dialogue box where we set the initial condition for the compartment, the min and max boxes are actually active, so the assumption was that we can clamp it here. No luck: the value still goes negative.
It does seem to work if I use output = min(compartment, output)
Is there any good reason why none of the delay functions are listed on http://www.simulistics.com/help/equations/builtin.htm? Took quite a while and some guessing to figure out that the functions do exist in Simile. In fact in addition to var_delay and const_delay there is also simply a delay function, which is not documented anywhere, but - surprise - works. Would be really nice if this could be fixed.
At the moment we are using really simple test cases such as ballistics models to get started with the new functionality. But we'd be interested to try something a bit more real-world. Is your project suitable?
Trying out the 5.7 sample version, I was wondering if there is any notion of an XML model exchange format, DEVS, or perhaps along the lines of Tom Maxwell's old "MML", as per:
I read that the SIMILE demo version is limited with respect to the "size" of the models or the number of elements used to specify a model. However, I did not find information about the actual number of allowed model elements in the demo version. Can anybody can give me the exact limitations? I am using SIMILE 5.7 demo version and would like to use it for teaching at the University.
I have one more question, and a comment; one regarding the graph function, and one regarding the submodel diagrams.
Firstly is it possible to dictate the X axis resolution interval? I know you can increase or decrease it a specified amount, but say I wanted 0.2, 0.4, 0.6, 0.8 etc. instead of 0.25, 0.30, 0.35 etc. is this possible? Or how about if I only know values at irregular intervals for the x-axis? The Y-axis is editable as a table, but as far as I know the x-axis isn't?
I would like to include a gamma probability distribution function in my model. I don't see a gamma function option in the inbuilt functions however. What would be the best way to bring this in?
I am having an issue when I try to work with a 2-d array outside of a submodel. It is created within a nested submodel, but I need to take it out of this into another submodel as I need to have it in another timestep. When I try to do this I gt the error message:
This equation evaluates to a data structure which includes an array of size records.
records is not a valid dimension for a model component -- they must be integers greater than 1.