Javascript中的投影,时间序列的迭代计算

时间:2015-09-01 15:46:20

标签: javascript

我有一块混凝土,随着时间的推移温度会发生变化。内部有一个加热元件,打开时,每分钟增加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;通过查看前面的内容,并查看预先给出的时间序列中的值。

0 个答案:

没有答案