QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2541|回复: 0
打印 上一主题 下一主题

[建模教程] 偏微分方程的数值解(四): 化工应用————扩散系统之浓度分布

[复制链接]
字体大小: 正常 放大
浅夏110 实名认证       

542

主题

15

听众

1万

积分

  • TA的每日心情
    开心
    2020-11-14 17:15
  • 签到天数: 74 天

    [LV.6]常住居民II

    邮箱绑定达人

    群组2019美赛冲刺课程

    群组站长地区赛培训

    群组2019考研数学 桃子老师

    群组2018教师培训(呼伦贝

    群组2019考研数学 站长系列

    跳转到指定楼层
    1#
    发表于 2020-6-10 10:29 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta |邮箱已经成功绑定

    8 R. c5 s# f+ C% Z! Z题意解析:
    ( W7 v9 y; g, S9 Y" G2 ]8 q( S2 Q# x  m1 g  [
    (a) 因气体 A 与液体 B 不发生反应,故其扩散现象的质量平衡方程如下:& ~" ?, Q0 s) J# q0 A, ?+ s& }

    - F9 |, H  W. |
    ; q8 Y" N/ x, l' J5 ^& x. X* z% M5 ^' m: K2 n
    (b) 在气体 A 与液体 B 会发生一次反应的情况下,其质量平衡方程需改写为
    $ E; b" F+ j  M0 H( K
    2 u5 W+ X- Q6 W; M6 j1 B( S. w. h, x  `6 t. V0 a3 l
    4 @) B& M) Q( ~! K$ O- t
    而起始及边界条件同上。) M! @2 Z* g5 @+ J% {& x$ z

    ) v1 o( \& d9 A) v  t在获得浓度分布后,即可以 Fick’s law
    ) W3 C/ K. k0 k; X7 W  T) w3 L8 U/ n. v* @

    1 z! y* r4 D8 b& e: U) n, d$ A  J2 p0 h! h! c% G
    计算流通量。! F+ o: A4 v5 h9 w; A) h- F
    ( e+ Q6 R' `4 L8 R7 ?
    MATLAB 程序设计: 此问题依旧可以利用 pdepe 迅速求解。现就各状况的处理过程简述如下
    9 x& D' z& W' g% T7 }: ^2 Z- z- j$ B0 H! u9 M! o! ]

    5 ]  r$ g. O/ p" b' [" _( m0 ]: F' Q! _7 K+ h1 N
    利用以上的处理结果,可编写 MATLAB 参考程序如下:
    8 T2 W4 M/ g  g/ u" g
    * s0 \6 z( Z' L* qfunction ex20_3_2
    7 \2 w/ R# l* }8 A; [9 s. ]%*****************************
    , j- |; L2 ~; s, L$ m% 扩散系统之浓度分布) R$ R- I- _  J5 j4 ~, A
    %*****************************  ]7 [- \0 Y& N" X% N
    clear
    1 h7 {& i- B3 t0 W$ gclc, G; j% U* b" T
    global DAB k CA0
    4 V6 ^) b* a* i) c/ K% }%******************************
    - ^1 F6 A4 x- T6 }- f4 {% 给定数据0 b2 V. V6 x- |2 V$ n: F" {+ h
    %******************************
    ' n. H3 N1 V' j! Z( LCA0=0.01;
    7 C- s0 ^+ ]8 [2 U5 KL=0.1;; n5 b' ^( r5 ~4 X
    DAB=2e-9;, w: m2 ^! o6 _' z
    k=2e-7;' N3 E/ ?0 V7 `: Q4 r0 n6 Q+ P1 p
    h=10*24*3600;
    3 r, P0 O- Z4 V  u%*******************************2 A, m; ^& H1 }+ w( K4 S' Q
    % 取点
    ! Z) t- V& [( q. h% l( R%*******************************+ h) A2 C9 a. L" s% ?
    t=linspace(0,h,100);
    ; l8 o2 e) J% J; i, A9 n: n0 ]z=linspace(0,L,10);
    7 L. u1 G5 W8 q& C/ ]%*******************************
    4 ^! c  H/ L4 c6 A/ u  a; z7 G% case (a)
    7 {) J% B* h9 n%*******************************5 u: n& X* u# z4 L8 u
    m=0;
    3 w6 @3 r6 f; R/ n, r; ]% Rsol=pdepe(m,@ex20_3_2pdefuna,@ex20_3_2ic,@ex20_3_2bc,z,t);
    ! z; x5 u$ T6 ^/ {3 @4 Y) j6 {  m) V! OCA=sol(:,:,1);+ O0 \+ }( @" q
    for i=1:length(t)
    0 I$ z) x: r2 M5 l/ o( I [CA_i,dCAdz_i]=pdeval(m,z,CA(i,,0);
    ! D1 |6 f9 z' o  U  Q NAz(i)=-dCAdz_i*DAB;
    ( B: ?5 e; A/ ~: u! iend8 b# j5 H8 [1 j$ H2 S
    figure(1)
    1 V( F3 w/ _  q3 {# Z* Wsubplot(211)
    2 V" Q5 |6 S, U% T) m& jsurf(z,t/(24*3600),CA)
    * U5 M0 _, c! C, k) I* G) Ptitle('case (a)') $ L2 ~, J8 I6 I+ ?: [, ~$ B
    xlabel('length (m)')
    # R0 G6 Q: B9 i0 Z, yylabel('time (day)')% l, ?# y: B* @
    zlabel('conc. (mol/m^3)')
    % c8 n1 n  N5 z9 D  vsubplot(212)
    $ S: G- e2 m  @' aplot(t/(24*3600),NAz'*24*3600)1 t5 X1 c. t  t$ h( x2 u, ^
    xlabel('time (day)')7 E0 \5 P8 K" o7 k0 H) R% K
    ylabel('flux (mol/m^2.day)')( ]" h7 J. q* D$ e& y: W
    %************************************
    % f; T( e: M; Z# n3 `) p9 ~7 ^% case (b)
    - n& M' {2 g) n, n! t# F( e. `9 n%************************************* E" D, r* n: G* ~" u7 n% S
    m=0;8 Q, }5 Q5 p; S0 Z
    sol=pdepe(m,@ex20_3_2pdefunb,@ex20_3_2ic,@ex20_3_2bc,z,t);
    8 o/ S; ?7 ?% }% r4 O# @CA=sol(:,:,1);
    1 e4 s% x' d0 Q+ ]7 {for i=1:length(t)
    & }, B' k3 ]/ A! Z9 B+ f1 X2 S7 J [CA_i,dCAdz_i]=pdeval(m,z,CA(i,,0);- k" H$ p5 b3 i, I; g
    NAz(i)=-dCAdz_i*DAB;& V5 o" |# S& O+ _" t
    end
    2 R: m+ }# G( E* P( i%' C( K. D  k+ p) u7 G6 ]
    figure(2)
    # v% V6 J& P# X/ Rsubplot(211)
    ; d5 ?9 R* H! M( ]surf(z,t/(24*3600),CA)5 h) l" u' Z& x* y* H, S8 N
    title('case (b)')
    " g1 a- Z1 d  m/ W5 d, h# A2 P8 \xlabel('length (m)')
    - l; [! l8 _2 y/ Z3 F  Bylabel('time (day)')
    0 F4 J* }: ?* T1 czlabel('conc. (mol/m^3)'); d# T  x1 ]6 K* u# c; @
    subplot(212)5 M8 v. O+ b& w& x
    plot(t/(24*3600),NAz'*24*3600)5 H4 ^1 v0 N9 `/ U) d: [( i% L' t
    xlabel('time (day)')8 l0 u  }6 c4 f) T& K3 V) T4 n
    ylabel('flux (mol/m^2.day)')' {* r" N" {, x: q
    %********************************************) q  r% l. K9 [6 a
    % PDE 函数! V  _( P- n0 w* w" m# l: |: m+ e
    %********************************************
    3 E7 l" u- m$ H; K+ ^5 K! O4 A% C# [+ Z% case (a)! K9 A& o+ ^9 h" {
    %********************************************/ b3 T7 d0 E. G: E3 t+ |; Y) u& j8 R
    function [c,f,s]=ex20_3_2pdefuna(z,t,CA,dCAdz)" i+ ?9 F: k2 i: a& u! _9 _
    global DAB k CA0. k- g# o$ q% [& c- J
    c=1;
    % ~. `8 K/ ^) M0 ?: J0 Of=DAB*dCAdz;5 O" y8 ~# [- Q% M" }8 _+ E/ S% S
    s=0;
    6 ~# T, K+ r+ T, {# ^% j; Q%*********************************************
    # h/ h( O4 o7 J. ~- M1 ?% case (a)
    5 _* v/ D4 k1 @" I$ e; A2 T0 N%*********************************************
    2 T9 f8 F4 V0 l  y4 cfunction [c,f,s]=ex20_3_2pdefunb(z,t,CA,dCAdz)
    & ^8 l  D3 `  u, Nglobal DAB k CA0
    4 R. r) ]2 l! S7 w' e# A# Gc=1;
    * g6 l+ b1 E8 Q: [1 R) Yf=DAB*dCAdz;! J! O: N9 n! `3 J' e) w* M! u
    s=k*CA;$ x7 h  Q  o. R" B) b& M# I* Z5 |
    %**********************************************
    ! _( p, K) ]+ Z" k  E8 m* Y# P0 W% 初始条件函数! e! w4 {2 k! Q  R
    %**********************************************; n9 K) P% ^- {! w& |
    function CA_i=ex20_3_2ic(z)$ I6 `4 Z0 ~# V
    CA_i=0;
    . C! z  g- |" |6 y; s%************************************************ " K# R) e+ {6 c
    % 边界条件函数
    ! ]  {* ]$ y: _4 a3 ?+ _%************************************************
    ) a" C, b/ x+ f, L! h* R! {function [pl,ql,pr,qr]=ex20_3_2bc(zl,CAl,zr,CAr,t)
    0 m: l* S( ?% P' `5 Vglobal DAB k CA0
    3 j& b$ Q3 j6 w# J! l$ ^. Fpl=CAl-CA0;1 u% m! r" w9 @4 {0 X" T, F
    ql=0;( E: l% t5 J8 G3 q7 X
    pr=0;8 ~) @; p/ Q( I; x! t
    qr=1/DAB; 5 v- S1 {& T1 I  a4 [# H7 B) ^# N! X8 E* h
    / m4 Q# ?- _4 w* n
    ————————————————" i; d9 i) d; e3 o+ p# S
    版权声明:本文为CSDN博主「wamg潇潇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    , C+ J4 T8 t1 T* |/ M- F# u原文链接:https://blog.csdn.net/qq_29831163/article/details/89711694
    - M$ Z* Y6 n5 C, w/ D' s2 v1 L1 s, X
    + V, P: Y* u4 W# x6 W9 M5 C. [
    0 p* z" A6 D' e8 a* s
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-6-15 11:41 , Processed in 0.414369 second(s), 51 queries .

    回顶部