我有一块混凝土,随着时间的推移温度会发生变化。内部有一个加热元件,打开时,每分钟增加1度。关闭时,混凝土块会向环境释放热量,每分钟冷却1度。
温度必须保持在由最小和最大温度对的时间序列给出的间隔内。 timeSeries = [[0,2],[0,2],[0,2],[0,4],[0,4],[0,4], [0,4],[0,4],[3,4],[3,4],[3,4]]
它有滞后作用,所以它一直到最大值,然后一直到最小值,然后一直到最大值等等。
我相信这称为投影,通过查看前一次迭代的结果来计算迭代次数。或者是吗?
伪码:
每一行都可以用前一个数字来计算。这是公式:
incr = if (T<=min): incrm = +1
else if (T>=min): incrm = -1
else incrm = incrm value from line above
T = T from previous line plus incrm from previous line
时间序列示例:
T incrm min max
0 +1 0 2
1 +1 0 2
2 -1 0 2
1 -1 0 4
0 +1 0 4
1 +1 0 4
2 +1 0 4
3 +1 0 4
4 -1 3 4
3 +1 3 4
4 -1 3 4
如何在JS中完成这项工作
我知道在给定前一个数组时,只需创建一个返回关联数组的函数就可以硬编码。但我怀疑通过使用一些库有优雅的方法。
我正在处理的实际问题比所描述的问题复杂得多。但实质是相同的:计算新的&#34;行&#34;通过查看前面的内容,并查看预先给出的时间序列中的值。