2017-07-24 84 views
2

我想在向量中的某些时间点写入平均值。
我的模拟运行了一年,我想计算每一天的平均值。Modelica在一定时间内积分并在某些点写入向量中的平均值

我在写的是什么变量是什么日子的一年:Real DoY;
对于每一秒钟我的模拟计算值:Real value;
所以现在我想是这样的:

for i:365 loop 
while i==DoY loop 
der(value_DoY_dummy) = value; 
value_DoY[i] = value_DoY/(34*3600); 
end for; 
end while; 

当然,这不起作用,我没有更好的主意。我怎样才能做到这一点?

回答

1

下面是在特定时间间隔设置变量值的代码。也许这将为您提供一些关于如何将其应用于您的案例的想法。

This question也许对您有所帮助。

model log Result 
    Real value; 
    Real savedValue; 
    Real nextTime(start=1); 

algorithm 

    value := time + 10; 
    when time >= nextTime then 
    nextTime := nextTime + 1.0; 
    savedValue := value; 
    end when; 
end LogResult; 

enter image description here