數學建模學習工坊 / 01
混合槽:從系統邊界到守恆
流量、體積與反應如何改變濃度?
學習目標與先備條件
導數、單位與 Python 函式;按需要重溫主課 2、9、11。
- 把控制體積轉化為微分方程。
- 利用停留時間與 Damkohler 數比較系統。
- 區分模型假設與數值誤差。
01 / 08 · 10 分鐘
觀察情境
想像一個充分混合的 20 L 槽,每分鐘流入 2 L、濃度 10 g/L 的溶液,同時流出相同體積。一級反應以每分鐘 0.05 的速率消耗溶質,初始濃度為零。這是自訂教學系統,數值並非實測設備資料。
畫出系統邊界,標明每項流入流出量;預測槽內濃度能否達到入口濃度。
02 / 08 · 10 分鐘
提出問題
問題需要指定量度與時間範圍。比較『10 分鐘後濃度』與『長期穩態濃度』:兩者都需要平衡式,但只有穩態計算無法回答前者。
寫出一個定量研究問題,並指出哪種可觀測結果會推翻你的預測。
03 / 08 · 15 分鐘
假設與變數
設 M=VC;流入流出相同使 V 不變。充分混合令出口濃度等於槽內濃度,定溫讓 k 可視為常數。每項假設都影響方程,並非選用 ODE 求解器就能保證。
完成模型卡;如果混合不均勻,指出首先需要重新檢視的方程項。
04 / 08 · 20 分鐘
建立模型
累積量等於流入減流出減反應;除以 V 得 dC/dt=(Q/V)(Cin−C)−kC,每項單位都是 g/L/min。以 c=C/Cin、τ=tQ/V 無量綱化後,動態參數只剩 Da=kV/Q。平衡濃度為 Cin/(1+Da),趨近時間尺度為 1/(Q/V+k)。
自行推導無量綱方程,解釋 Q 與 V 同時加倍會怎樣影響曲線。
05 / 08 · 15 分鐘
設計算法
Euler 把瞬時速率視作步長 h 內不變:Cnext=C+h f(C)。齊次誤差的倍率為 1−h(Q/V+k),穩定要求其絕對值小於一,而單調衰減需要更嚴格條件。以解析指數解與自適應求解器作比較。
在 student_euler 內編寫 y[i+1]=y[i]+h*rhs(t[i],y[i])。以 y(0)=1、h=0.1 手算 y′=−y 的兩步結果,再計算混合槽 h=10 時的倍率。
06 / 08 · 25 分鐘
Python 實驗
在 Python 面板完成 student_model 及 student_euler,親自編寫時間步進迴圈;兩步手算會獨立檢查算法。框架會把你的軌跡與解析解及 SciPy 參照比較。先跑預設情境,再只改一個參數;執行前填寫預測,記錄通過與失敗的檢查。
執行 k=0、0.05、0.2,以 Da 解釋穩態濃度,再把步長減半。
07 / 08 · 25 分鐘
驗證與修訂
求解器符合解析解,只核證了這條方程的實作,並沒有驗證真實槽體的充分混合假設。錯誤平衡式也能產生平滑曲線;分開記錄物理模型改動、參數不確定性及離散化改動。
刻意漏掉反應項:哪些檢查能發現?提出一項可評估混合假設的示蹤測量。
08 / 08 · 15 分鐘
撰寫結論
有用的結論需要條件、數值、檢查及限制;說明無量綱比值如何解釋觀察。匯出 notebook,確認讀者能以所列參數重現數值。
撰寫 300–500 字結論及一項後續實驗,為每項主張連結圖像或數值檢查。
需要一點提示?
1. 概念提示
先追蹤溶質質量;流入速率 Q×Cin 的單位為 g/min。
2. 數學/算法提示
把 Q(Cin−C)−kVC 除以 V;初值影響軌跡,而非速率定律。
3. 參考實作導引
對照下面的參考實作,然後用自己的文字解釋每一項。
先比較推理,再選擇是否套用。套用前會另存你目前的程式。
實驗協定:比較、失效與延伸
指定比較
比較 k=0 與 k=0.2,再固定所有物理參數並把 h 減半。
失效實驗
設 k=1、h=10:Euler 可能振盪或出現負值,解釋失敗檢查。
研究延伸
改成兩個交換物質的分區,設計可分辨兩模型的示蹤實驗。
PYTHON WORKBENCH
先預測,再執行。
實驗參數與種子
可直接修改以上程式,或開啟語法標示編輯器。起始碼的待完成部分會令相關檢查失敗;請依推導修正 student_model。
按啟動才下載運算環境;每次實驗使用獨立命名空間,最多 30 秒。
無法載入?仍可下載獨立 notebook,在安裝 NumPy、SciPy、Matplotlib 的 Python 環境執行。 參考 notebook
把這一課連回你的書架。
課文與寫作 Notes
書籍章節(PDF 頁與印刷頁分列)
- Chidambaram — Mathematical Modelling and Simulation in Chemical Engineering
3.1: Isothermal CSTR
PDF 50–51 · 印刷頁 31–32 - Segel & Edelstein-Keshet — A Primer on Mathematical Models in Biology
4: Nondimensionalization and scaling
PDF 86–87 · 印刷頁 67–68