第 5 讲:问题3——确定烘干时间
5.1 问题3在问什么?
一句话:
用问题2的模型继续算,算到药材内部“任何一点”的水分浓度都低于 0.15 kg/kg 为止——那个时刻就是烘干时间。
所以问题3不需要建立新模型。模型就是问题2的模型,问题3只是:
把仿真从 3 小时拉长到几十小时(2~3 天);
加一个停止条件;
按题目要求输出表5和 result3.xlsx。
这是四个问题里“新数学”最少的一个,但输出格式有陷阱、判定准则有讲究,一个个说。
5.2 停止条件怎么写才严谨?
最容易写错的是“药材各处”的判定。先看题目原文:
“按照烘干要求,药材各处的水分浓度应低于 0.15 kg/kg”
“各处” = 空间上的每一点,数学上就是取最大值:
tend=min{t:max0≤r≤RC(r,t)<0.15} tend=min{t:0≤r≤RmaxC(r,t)<0.15}
注意用 max 而不是中心点——虽然我们已经知道中心永远是全场最湿的点(水从里往外走,中心最后干),所以在你的数值结果里这个 max 必然等于 C(0,t)C(0,t),但论文里必须写成 max 形式,理由:
这是题意的忠实翻译,“各处”就是 max;
万一你的数值出现异常(比如表面因为边界条件写错反而更湿),用中心点判定会掩盖错误,用 max 判定能暴露错误。判定准则本身就是一道自检。
再补两个细节:
① 离散下的实际操作。数值上 max 是在 21 个网格点上取的。由于水分剖面是单调的(中心高、表面低),取网格 max 和真正连续 max 差别可以忽略,但论文里可以加一句“网格点最大值即中心点值,与连续最大值一致,判定误差可忽略”。
② 时刻的取整。我们的 Δt = 1 s,停止时刻是整数秒。题目要求烘干时间单位是小时,所以最后报告时除以 3600,保留两位小数即可(比如 47.23 h)。也可以在论文里同时给“精确到秒的停止时刻”和“换算成小时”两个数,显得严谨。
③ 另一个角度的稳健性讨论(可选加分):实际判定发生在两个时间步之间。如果第 t 秒 max = 0.1502,第 t+1 秒 max = 0.1498,真正的达标时刻在这 1 秒之间。对 Δt=1 s 来说这个误差可以忽略,但可以在代码里对最后两步做线性插值求精确穿越时刻,论文里注明。这是把“数值严谨”落到实处的细节。
5.3 心算量级:烘干时间应该是多少小时?
跑代码之前先做个估算,防止结果荒谬还不知道。用问题2的模型参数粗估干燥特征时间:
扩散时间量级:
τ∼R2D典型τ∼D典型R2
恒温阶段 T ≈ 50℃ = 323 K,C 从 2.5 降到 0.15 的过程中:
C = 2.5:D=2.4×10−3e−0.45×2.5e−3850/323≈2.4×10−3×0.325×6.6×10−6≈5.1×10−9D=2.4×10−3e−0.45×2.5e−3850/323≈2.4×10−3×0.325×6.6×10−6≈5.1×10−9 m²/s
C = 0.15:D≈2.4×10−3×e−0.0675×6.6×10−6≈1.48×10−8D≈2.4×10−3×e−0.0675×6.6×10−6≈1.48×10−8 m²/s
随水分下降 D 还会变大(e−0.45Ce−0.45C 项)。取平均量级 D∼8×10−9D∼8×10−9:
τ∼(0.02)28×10−9=5×104 s≈14 hτ∼8×10−9(0.02)2=5×104 s≈14 h
但注意两点会把它拉长:
“最湿点”到达 0.15 的时刻滞后于“平均”水分,中心点的干燥时间大约是特征时间的 2~4 倍(参考经典扩散问题:平板/圆柱中心浓度降到初始值的 6% 需要无量纲时间 FoD=Dt/R2≈0.6∼1FoD=Dt/R2≈0.6∼1,即 30~55 h);
前期预热 1~2 小时水分基本不动。
综合预估:烘干时间大约在 30 ~ 60 小时区间(与题目“烘干过程一般持续 2-3 天”吻合——这本身就是对模型的一个交叉验证:题目说话是有根据的)。如果你的计算结果落在 24 h 或 72 h 之外太远,先回头查:
T 是否用了开尔文(错用则永远烘不干);
hmhm 单位是否正确;
表面边界条件符号是否反了。
量级估算的价值就在这:跑出 300 h 或 3 h,你立刻知道是 bug 而不是物理。
5.4 表5的输出:一个隐藏的格式陷阱
题目要求:
“在论文中按表5的格式给出每隔 6 h、到药材中心距离每隔 0.5 cm 的水分浓度”
表5的行是:6, 12, 18, …, 烘干结束时间。
陷阱在这里:如果烘干时间是比如 47.3 h,那么 6, 12, 18, 24, 36, 42 这些整 6 小时点列完之后,最后一行是“烘干结束时间” 47.3 h,不是 48 h。表格的行数和最后一行的标签取决于算出来的烘干时间,是“动态”的。
操作规则(论文和 result3.xlsx 都一样):
列出所有 ≤ tendtend 的 6 h 整点:6, 12, 18, …(若 tend=47.3tend=47.3,则最后一行整点是 42);
最后补一行 “烘干结束时间”(写实际值,如 47.30 h);
不要把超过 tendtend 的 48 h 也列上——那时药材已经达标,多一行没意义还暴露没读懂题。
对应的 result3.xlsx 要求:
“将药材内部水分浓度每隔 60 s、到药材中心距离每隔 0.1 cm 的完整结果保存到文件 result3.xlsx”
注意问题3的完整结果时间间隔是 60 s(不是问题1、2的 1 s!),列 0~tendtend 秒。所以求解器虽然内部 Δt = 1 s 在跑(也可以直接 Δt=60 s 跑,更省时,但判定时刻精确度略降——建议内部仍用 1 s,每 60 s 抽样存一次),输出时每分钟取一行。0.1 cm 距离间隔不变,21 列。
另外两个小点:
result3.xlsx 只有一个水分浓度工作表(题目只要求水分,没有温度表);
“烘干结束时间”这一行在 Excel 里也要体现:可以在 60 s 间隔行之外,最后单独加一行 tendtend(秒)+ 全列数值,行首标注。模板文件的 A 列时间可以按实际长度写。
5.5 空间方向上:距离间隔 0.5 cm 的表格怎么取?
表5的列是 0, 0.5, 1, 1.5, 2 cm——和问题1一样恰好落在网格点上(0.5 cm = 5Δr),直接取数组切片,无需插值。
顺带说明一个论证要点:表5展示的是水分剖面随时间的演化。你会在表里看到:
早期(6~12 h):中心 2.5 附近几乎不动,表面已经降到 1 点几——外干内湿;
中期(18~30 h):梯度整体下移,中心开始明显下降;
末期(42 h~结束):全剖面挤向 0.15 以下,中心是最后一个过线的点。
这张表本身就是“干燥前沿从表面向中心推进”的可视化,论文里配一张水分剖面曲线图(不同时刻的 C® 曲线族),图文互证。
5.6 模型层面的讨论点(论文加分素材)
① 判定准则的敏感性
问一句“如果阈值不是 0.15 而是 0.14 或 0.16,烘干时间变化多少?”——做一个阈值-时间曲线(或至少给两三个点的对比)。干燥末期中心水分下降极慢(指数尾巴),阈值微调可能使时间变化数小时。这提示工程上“达标时刻”对工艺参数敏感,是有实际意义的讨论。
② 与问题2结果的一致性
问题3是问题2模型的延长线,3 h 内的结果必须与问题2完全一致(同一求解器、同一参数,只是算得更久)。论文里可以加一句“问题3模型在 0~3 h 区间的输出与问题2完全重合,验证了模型与代码的延续性”。这句话零成本,却是评审喜欢的自洽性证据。
③ 烘干时间的物理解读
报告结果时不要只给一个数,写三句话:
烘干时间 X h 中,前约 2 h 为预热段(水分散失不足 5%),随后进入恒速期(表面水分充足,失水速率高),最后约 Y h 为降速期(水分由内部扩散控制,速率急剧放缓)——中心点在降速期的长尾决定了总时长。若需缩短烘干时间,工艺上应优先提高恒温阶段风温(D 对 T 呈 Arrhenius 依赖,风温从 50℃ 提到 60℃ 可使 D 增大约 60%)或增大风速以提高 hmhm。
(最后这句顺手回应了题目开头“工艺参数选取不当容易导致干燥效率低、能耗高”的工程背景,把数学建模落回工程价值——这是论文收尾的好素材。)
5.7 问题3检查清单
自测两题
为什么判定用 max 而算出来必然等于中心点?如果某天你的数值结果里表面比中心还湿,说明什么?(提示:正常物理是水往外走,表面最干;表面更湿说明边界条件符号错了或 CairCair 用成了比表面还大的值)
烘干末期中心水分呈指数长尾下降,为什么?(提示:解扩散方程后期的渐近行为是单指数衰减,衰减率由最小特征值决定 ∼Dλ12∼Dλ12,特征长度是 R——所以最后阶段“怎么等都不动”,工程上这就是“降速期”)
到这里,问题1→2→3 的主线(定边界 → 变物性耦合 → 长时仿真与判定)全部讲完。剩问题4——唯一需要新数学的一讲:移动边界(坐标变换 + 对流附加项)。
下一讲内容:
为什么直接在变半径上做差分会出事(网格在动);
相对坐标 x=r/R(t)x=r/R(t) 的完整推导(每一步链式法则都写出来);
附件2的半径数据怎么用(插值 or 拟合 R˙R˙);
表6的列头变化(最后一列变成“药材表面”)。
