智游城

标题: 闲着没事,弄道数学题,大家来算一下 [打印本页]

作者: 老陈    时间: 2012-11-29 05:41
标题: 闲着没事,弄道数学题,大家来算一下
本帖最后由 老陈 于 2012-11-28 15:42 编辑

有个水池容积300升,装满15度(摄氏度,下同)的水。逐渐加入75度的水,池子里的水就逐渐溢出。问加入多少升75度水时,池子里的水温升高到35度?
假设:加入热水后,池子里的水迅速变成相同温度;过程中与外界没有热交换。

作者: 竹林居士    时间: 2012-11-29 18:30
本帖最后由 竹林居士 于 2012-11-29 04:47 编辑

试一下:
如果排溢出都是15度,则加入100升75度的水,池中的水就可以达到35度。可是溢出的水温度不断升高,这就导致热量"损失",因此必须多加热水。估计答案在121和122之间,以后再详细计算。
作者: Howard    时间: 2012-11-30 04:31
@德芙!强烈要求dfu来试一试。
作者: maomaobiao    时间: 2012-11-30 09:31
本帖最后由 maomaobiao 于 2012-11-30 11:33 编辑

这题两个“隐含条件”

热交换率无限大(热容=0)

总水量保持不变(单位时间的体积变化为 0),虽然加水的速度不知道,但是对于最后的体积计算应该不影响。

粗略想了一下,是个简单的常积分,但是积分项之中有原函数。怎么转化求解都忘光光了。。。。

好在知道偷懒,加水的速度取极端的条件就可以了,就是一次交换瞬间完成达到温度35

上升20,下降40,原总体积300,加入的水的体积就是150。

待验证。
作者: 老陈    时间: 2012-11-30 13:17
maomaobiao 发表于 2012-11-29 19:31
这题两个“隐含条件”

热交换率无限大(热容=0)

经验证,加入150升75度的水,池内水温将升至38.6度。
作者: notch    时间: 2012-11-30 13:57
假设总共加入了x升水,那么排出的也是x升水
当每次加入的水都很少的时候
排出的水温从15度连续到35,那么排出的x升水应该平均温度在25度
300*15+75*x = 300*35 + 25*x
x=120
作者: 老陈    时间: 2012-11-30 15:33
notch 发表于 2012-11-29 23:57
假设总共加入了x升水,那么排出的也是x升水
当每次加入的水都很少的时候
排出的水温从15度连续到35,那么排 ...

水温开始升高得快,后来升高得慢,不是线性的,这样导致排出的水平均温度高于算术平均值。也就是说,加入120升,水温达不到35度。

作者: dfu2012    时间: 2012-11-30 19:16
假设每次的水温变化满足如下公式:

令 f(0)=15,每次加y升水作为一个变化单位,总共加入x升水后的温度为f(x),则:

f(x+y)=(y*75+300*f(x))/(300+y)。令y=0.001,越小精度越高

EXCEL做个公式自调用,当F(X)=35,得出需要加的水大约=121.65升. 。
这个解法有点投机取巧,而且也不知道对不对。
作者: Howard    时间: 2012-11-30 22:44
dfu2012 发表于 2012-11-30 05:16
假设每次的水温变化满足如下公式:

令 f(0)=15,每次加y升水作为一个变化单位,总共加入x升水后的温度为f( ...

精妙!坐等老陈评论
作者: 老陈    时间: 2012-12-1 02:02
本帖最后由 老陈 于 2012-11-30 12:04 编辑

dfu算的与精确结果最接近,我也经常使用模拟的方法来解决一些复杂的问题。
这个结果误差很小,产生原因是每次加入无穷小,才与精确结果更接近,但用Excel 太小了计算次数就会增多,产生的舍入误差增大,难以两全。
作者: 竹林居士    时间: 2012-12-1 02:34
本帖最后由 竹林居士 于 2012-11-30 15:13 编辑

这回我仔细解一下:


设某一时刻加热水的量为V,池内温度为T,
每次加入dV体积的75度的水,产生的温度变化为dT。
得到如下关系式:
dT=(75-T)/300*dV
dV/dT=300/(75-T)
当dT和dV都趋近于零时,就是T对V的导数,找出原函数:
V=-300ln(75-T)+D
其中ln是自然对数,D为任意常熟
进行一下变换得到:
T=75-C*Exp(-V/300)
C是一个任意常数,与D的数值和意义都不同
当V=0时T=15
解出C=60
即:
T=75-60Exp(-V/300)
令T=35
V=-300*ln((75-35)/60)=121.64
作者: bedok    时间: 2012-12-1 23:41
竹林不错不错,活学活用
作者: maomaobiao    时间: 2012-12-2 06:18
竹林居士 发表于 2012-12-1 04:34
这回我仔细解一下:

回归本质了,简单而精妙阿

惭愧我的都忘光光了。
作者: 老陈    时间: 2012-12-2 07:30
竹林居士 发表于 2012-11-30 12:34
这回我仔细解一下:



解法完全正确。
作者: dfu2012    时间: 2012-12-4 18:14
老陈这个题确实好,竹林的解答也非常的干净简洁。

我试着用原始的方法来求解这题,

令 f(0)=15,每次加1/N升水作为一个变化单位,N为整数,总共加入体积x升水后的温度为f(x),则:

f(x+1/N)=(75/N+300*f(x))/(300+1/N) =(75+300N*F(X))/(300N+1),若以1/N升水为1个变化单位,那么x相应也转换为以1/N做单位,实际加水量V=X/N升,X这个时候为整数:

f(x+1)*(300n+1)=75+300N*F(X), (f(x+1)-f(x))/(f(x)-f(x-1))=300n/(300n+1),初始条件F(0)=15

解得:F(X)=15+60*(1-(300N/(300N+1))^X-60/(300N+1),X=VN(V即以升做单位时候的加水量),当N趋向无穷大时,60/(300N+1)可忽略为0,F(X)亦即加水V升后的温度,

即:F(V)=15+60*(1-(300N/(300N+1))^VN=75-60*((300N/(300N+1))^VN)

(300N/(300N+1))^VN=(1+1/300N)^(-NV)=((1+1/300N)^(300N*(-V/300))

已知当N趋向无穷大时 自然常数E =(1+1/N)^N, 即(1+1/300N)^300N = E

那么(300N/(300N+1))^VN= E^(-V/300)=EXP(-V/300),

即: F(V)=15 + 60*EXP(-V/300)

和老陈竹林的结果一致。

咱农耕时代的原始武器也能击中猎物,殊途同归啊。

:)



作者: 老陈    时间: 2012-12-4 20:57
本帖最后由 老陈 于 2012-12-4 16:20 编辑
dfu2012 发表于 2012-12-4 04:14
老陈这个题确实好,竹林的解答也非常的干净简洁。

我试着用原始的方法来求解这题,


解法精妙,虽说过程复杂一点,但从建模到推理每一步都非常严谨。和竹林走的不同路,到达了同一终点。佩服二位。
但dfu兄的结果是不是:
F(V)=75-60EXP(-V/300)
球运到了接近球门线,无人防守,是不是故意让别人射门啊?

作者: 老陈    时间: 2012-12-7 18:13
本帖最后由 老陈 于 2012-12-7 04:35 编辑

我的计算过程和dfu相近

共加入V升,每次加入1/N升
得:
F(1/N)=F(0)+(75-F(0)/300/N=F(0)(1-1/300/N)+75/300/N
F(2/N)=F(1/N)(1-1/300/N)+75/300/N
F(3/N)=F(2/N)(1-1/300/N)+75/300/N

F((k-1)/N)=F((k-2)/N)(1-1/300/N)+75/300/N
F(k/N)=F((k-1)/N)(1-1/300/N)+75/300/N
将F(1/N)代入到F(2/N)
得:
F(2/N)=F(0)(1-1/300/N)^2+75/300/N+75/300/N(1-1/300/N)
再将F(2/N)代入到F(3/N)
得:
F(3/N)=F(0)(1-1/300/N)^3+75/300/N+75/300/N(1-1/300/N)+ 75/300/N(1-1/300/N)^2
….
到最后一行时得到:
F(k/N)=F(0)(1-1/300/N)^k+75/300/N+75/300/N(1-1/300/N)+ 75/300/N(1-1/300/N)^2+…+75/300/N(1-1/300/N)^(k-1)
计算得到:
F(k/N)=F(0)(1-1/300/N)^k+75/300/N(1-(1-1/300/N)^k)/(1-(1-1/300/N))
F(k/N)=F(0)(1-1/300/N)^k+75(1-(1-1/300/N)^k)
当k/N=V时
F(V)=F(0)(1-1/300/N)^(NV)+75(1-(1-1/300/N)^(NV))
当N趋于无穷大时
Limit  (1-1/300/N)^(NV)=exp(-V/300)
F(V)=F(0) exp(-V/300)+75(1- exp(-V/300))
代入F(0)=15
F(V)= 75-60 exp(-V/300))

作者: dfu2012    时间: 2012-12-8 21:13
老陈 发表于 2012-12-4 20:57
解法精妙,虽说过程复杂一点,但从建模到推理每一步都非常严谨。和竹林走的不同路,到达了同一终点。佩服 ...

没错,是 F(V)= 75-60 exp(-V/300)),纯粹是笔误,可能是稀里糊涂黏贴了下面原贴中前面的“15+。。。”,已经是这种错误的惯犯了。

原贴中有这一句“即:F(V)=15+60*(1-(300N/(300N+1))^VN=75-60*((300N/(300N+1))^VN)”,

后面的就是 F(V)=75-60*((300N/(300N+1))^VN),最终一致。


刚看到你新的题目,才注意这题更新回复了。

作者: yidunxun    时间: 2013-1-16 11:42
我靠

  I 服了 你们了   哈哈  !!!!!!




欢迎光临 智游城 (http://zhiyoucheng.co/) Powered by Discuz! X3.2