QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2539|回复: 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 |邮箱已经成功绑定
    , W) x, q# X0 ~8 F6 @( x; D
    题意解析:% Y% X3 P" ?- V' W1 X' A

    . w1 \, }7 `: W+ G' F0 C(a) 因气体 A 与液体 B 不发生反应,故其扩散现象的质量平衡方程如下:0 X" c5 y7 q4 J, R. m! e5 f

    & S9 D7 c$ j8 w& X3 q
    ; k% }& z: h9 Y) B& w- J2 E3 \  ]; g5 e/ M6 V, k
    (b) 在气体 A 与液体 B 会发生一次反应的情况下,其质量平衡方程需改写为
    ! _) A. l- v# B# J" X1 T4 P% U  y8 Z) w* r2 c1 O

      {) x0 R4 r) O: X0 F! ]1 u, x# n, r# }) j% ?* R* r
    而起始及边界条件同上。
    ) B/ ]' X: {0 n
    0 ]0 D4 K6 t) {1 R( @在获得浓度分布后,即可以 Fick’s law' ^& m& U  C5 X' ~: p2 H8 [
    ; s4 E; I1 g% q/ ]! C
    + l4 h- ~! }3 Q8 z
    + u0 b& N1 b6 d
    计算流通量。  V0 Z& w0 v8 v  A  D

    # ?# u5 \6 c5 FMATLAB 程序设计: 此问题依旧可以利用 pdepe 迅速求解。现就各状况的处理过程简述如下
    6 _# n2 l- x9 A" O# D2 P' c8 A+ K" T4 c2 z+ n; t

    # D4 L6 }! b; f& b2 _; A. h3 a7 z9 C+ V" B/ p3 ?4 `& _
    利用以上的处理结果,可编写 MATLAB 参考程序如下:
    & C  x3 J4 S9 p6 R
    4 Z6 @: P& X. M3 Mfunction ex20_3_2
    ) j3 Z9 P# E. w# v%*****************************6 w- s( |' Z# [1 L
    % 扩散系统之浓度分布
    7 I- {1 z1 ]; s% m7 I%*****************************
    9 R$ D6 H! p( w/ Z3 d. d. Pclear
      d- j  o& Z4 @7 c7 I; Dclc2 r  L* h2 M; ?2 ]& d% k  ~
    global DAB k CA0/ Q4 ^( @- ^7 ^" I! ~
    %******************************
    ) Q: O& X0 \% R, q0 ~% 给定数据
    3 a9 B2 @3 g* ]; m1 x: V. A8 @3 k. U%******************************
    ! S, P7 |; e" \" V  i: mCA0=0.01;
    $ G7 v9 J7 W' k+ \# x% S; K  v5 f, BL=0.1;
    6 w1 |3 n! J, c; N2 a( D' {. F& c/ PDAB=2e-9;
    . V9 I4 r# \9 S* {: Mk=2e-7;
    1 r  s; \8 Z5 ^  u2 y) D+ lh=10*24*3600;
    % x# M& H6 l* n: p. g. o* K%*******************************
    ' P* f# O; l) ]. z0 k% 取点* a" S; Y6 s" A$ g1 r# F
    %*******************************3 ^* u2 i& ]4 ^# L: U% I
    t=linspace(0,h,100);( ]. X: k) e. A/ A9 b- L7 i
    z=linspace(0,L,10);4 l' _% o0 D/ x0 n/ j
    %*******************************
    6 K3 i- Y; i9 |( `% case (a)
    " r; y9 j! X4 B0 d3 h%*******************************8 T+ }$ D( X- ?$ l# k! w
    m=0;
    2 d5 S( U7 {; B* x: c; P, r' P6 vsol=pdepe(m,@ex20_3_2pdefuna,@ex20_3_2ic,@ex20_3_2bc,z,t);' A' v& E4 L3 Z3 O+ l! T" [" Y
    CA=sol(:,:,1);
    . W+ Y$ `9 P& A: i) }4 t2 f* ?( ~- T) s1 pfor i=1:length(t)
    ' z; ?; B* Q3 d) W# C  K5 l [CA_i,dCAdz_i]=pdeval(m,z,CA(i,,0);$ j8 E: _: h" _8 Y" F
    NAz(i)=-dCAdz_i*DAB;
    7 O, Z! o( ^$ ]. H  O" e' s! ~: Z9 Gend* m/ l1 @" P! A7 m4 {
    figure(1)
    ( b* m- I% J! psubplot(211), @: i% t1 U9 i' I
    surf(z,t/(24*3600),CA)
    ; M7 v0 q' s* ?6 vtitle('case (a)')
    ! ]8 I, V# L5 v0 l0 S' m/ hxlabel('length (m)')
    / O7 C$ B6 q9 g, d5 vylabel('time (day)')2 u0 n% f* C; |% ]! C
    zlabel('conc. (mol/m^3)')
    ' j1 F7 l* Q; m$ f) N+ Ysubplot(212)! X$ E0 j' @/ M% o6 Q: d2 i
    plot(t/(24*3600),NAz'*24*3600)1 j0 ^' A) ~- x5 b
    xlabel('time (day)')
    - G5 d! e8 R5 Uylabel('flux (mol/m^2.day)')8 w, R- |. Z5 F  @/ [& ~, q8 `
    %************************************1 _: u" E. J! M( M. V% z) B6 R6 b
    % case (b), I- G# @" y) G8 L
    %************************************
    ' z7 N% M. M* }* ]m=0;
    ! }) W: l* S* c$ \9 s' K+ ^sol=pdepe(m,@ex20_3_2pdefunb,@ex20_3_2ic,@ex20_3_2bc,z,t);
    " m: D4 C9 z) b. N" sCA=sol(:,:,1);5 r0 `2 f2 Q- j9 I3 U+ d. L: D
    for i=1:length(t)
    1 w. R! z% B; r" k+ t5 Y/ E4 }9 [ [CA_i,dCAdz_i]=pdeval(m,z,CA(i,,0);
    / f  t/ n; v3 I3 D, c  g8 L NAz(i)=-dCAdz_i*DAB;3 G2 {' F7 b8 r( l  f4 C3 N
    end
    9 z! A6 ^9 W  ]% J6 E%
    ) a2 l0 y4 ]( b0 ]. z$ O& tfigure(2)
    , ~4 O  Y4 o- s4 q3 Z1 ?. Q# W3 ~) hsubplot(211)
    7 `) {$ c" x9 A) H% Q* hsurf(z,t/(24*3600),CA); ]- S- D  G" z8 j7 w4 ^
    title('case (b)')
    . r1 k2 q+ b# E/ X6 |# p! ^xlabel('length (m)')
    7 ~  w8 S  K$ wylabel('time (day)'), F3 Q; o3 H4 |# j% y9 s" s7 M; d# }
    zlabel('conc. (mol/m^3)')- t& n& p) [! K! Z' a" U: h1 G! M
    subplot(212)
    , |3 z4 w5 t+ ~- y# K9 \plot(t/(24*3600),NAz'*24*3600)
    * g0 S- }* e- zxlabel('time (day)')
    3 L$ L2 g7 a! b. M. Qylabel('flux (mol/m^2.day)')6 P6 x( k& m: H, M! q
    %********************************************- r9 f) s' Q: T% I
    % PDE 函数
    - B0 Z* G0 i% z0 ^) [, o! h+ S%********************************************# l6 ^6 _, w# C3 ]% m/ l
    % case (a)
    6 A; |( u9 f  O; l%********************************************
    8 k) ~# i0 L8 `function [c,f,s]=ex20_3_2pdefuna(z,t,CA,dCAdz)1 {, l0 r0 r- o. I  c  ~$ |
    global DAB k CA0$ T& l+ o% J8 N+ B* V1 ^, e. W- G
    c=1;
    ) I9 ~! w4 _* |f=DAB*dCAdz;
    - E' _* v/ ~! m( A- z  Js=0;- K5 a/ K6 a: l; ~' K
    %*********************************************
    * W7 f4 }: @( M5 C6 q% case (a)5 t) u6 s; O" g$ M
    %*********************************************4 T2 ^) b: N) @! B$ s
    function [c,f,s]=ex20_3_2pdefunb(z,t,CA,dCAdz)" F( W, Q4 R( [5 A8 g% ?- E
    global DAB k CA0
    1 [7 i, ?4 o1 X2 h0 G# Pc=1;6 e* {/ J+ Y6 N0 w" l- k/ j
    f=DAB*dCAdz;( x% M5 f' u* A5 e
    s=k*CA;
    0 a/ A% \. f' [, X1 Q7 Y$ ^4 G+ @%**********************************************
    % ~+ F0 l& T! u# n3 \& u, i& o  J" u% 初始条件函数' @* ^6 B  u( v5 w
    %**********************************************
    , w# R' W+ K1 J- S  y2 C) Nfunction CA_i=ex20_3_2ic(z)$ L3 B3 }# l) G  ]7 F
    CA_i=0;# p. w! G& h8 _. Q, r
    %************************************************ * V9 w5 C. B+ C; Q
    % 边界条件函数
    ! c9 o2 M1 o$ Q9 v( ?%************************************************/ @7 r1 {/ U* h* K$ R1 _2 `
    function [pl,ql,pr,qr]=ex20_3_2bc(zl,CAl,zr,CAr,t)2 X+ n; X! t0 {7 E+ U0 p" X
    global DAB k CA0" d+ }+ [7 T7 L  b0 O- l& L
    pl=CAl-CA0;2 f, f0 |; \) i# g9 y# _
    ql=0;8 Q) j% W! d9 Q4 s! r; f- H
    pr=0;
    $ A5 R" j2 W  z$ l; l6 xqr=1/DAB;
    - L) J; M) v; u" ~9 D# P( a) s4 I* x# l# `
    ————————————————
    8 c1 ]& T4 f: ]9 k1 d版权声明:本文为CSDN博主「wamg潇潇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。/ r( Z: T% M) Z6 g% z
    原文链接:https://blog.csdn.net/qq_29831163/article/details/89711694
    5 D: r0 h6 j: U( M" m, M, F5 r. S9 I* C5 X

    * s2 B+ T. o) s7 i3 D; j, ]9 Q
    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-14 17:56 , Processed in 1.090708 second(s), 50 queries .

    回顶部