我在各种情况下模拟材料的温度。我想制作温度与时间的关系图,其中所有温度在一定温度后再下降5度,然后观察到温度变化的速率。最初我有以下内容:
for i in range(1,len(t)):
te[i] = te[i-1] + f(te[i-1])*dt
用于绘制随时间(t)递减的曲线。我想现在制作两个部分。我的情节的x值是t。 y值是Te。在Te小于80的时间之后,我想将所有Te值减少额外的5。我通常使用IDL,所以会在T行(t = 80)中说出一些内容。这是我到目前为止,显然语法完全不正确,i值是索引而不是时间值。
t80 = t where Te <= 80.0
for i in range(1,t80):
te[i] = te[i-1] + f(te[i-1])*dt
for i in range(t80,len(t)):
te3[i] = te3[i-1] + f(te3[i-1])*dt - 5
有谁知道如何在python中定义t80?
答案 0 :(得分:1)
据我所知,当温度降至80度以下时,温度将一次减少5度。如果这是正确的,您只需在if
循环中添加for
条件:
cooling_liquid_poured = False
for i in range(1,len(t)):
te[i] = te[i-1] + f(te[i-1])*dt
if te[i] < 80 and not cooling_liquid_poured:
te[i] -= 5
cooling_liquid_poured = True
如果相反,在液体倒出后,每个步骤的温度应再下降5度,只需删除该变量,然后检查if te[i] < 80
。