QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2508|回复: 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 |邮箱已经成功绑定

    7 M' `- \9 Q, s/ {- e0 O4 U  G题意解析:
    0 r) S+ u/ h/ n4 X4 H1 E: [  [2 _: J* s/ ?. W3 ^
    (a) 因气体 A 与液体 B 不发生反应,故其扩散现象的质量平衡方程如下:
    1 ^8 `, w0 P, a
    3 Z: b, M5 K1 C6 s2 Y, E/ |! y( l% w

    , i3 M( `- Y3 n(b) 在气体 A 与液体 B 会发生一次反应的情况下,其质量平衡方程需改写为0 `- D$ |  U7 k2 J

    ( |6 g1 j9 S' D. w* [$ o5 h' i2 O9 z& _! l% W

    / ~- N* z2 M: S5 A% E8 n而起始及边界条件同上。
    : o6 }5 y8 m" G
    4 p7 o" E& G( `  z, H. @在获得浓度分布后,即可以 Fick’s law8 K- x# Y& Y' ^7 [* j) _1 ?/ b$ S

    7 b! s8 g6 _: T2 w5 k
    + S3 h* F$ }. p# N( t
    1 k- r( Y2 Y! l0 K) f5 Z计算流通量。2 A6 N: O1 v8 U6 {* v

    ) \$ e0 z& n: C$ O$ R+ p% L  pMATLAB 程序设计: 此问题依旧可以利用 pdepe 迅速求解。现就各状况的处理过程简述如下0 v$ B. Y6 E7 b/ U3 V/ F+ q

    ( Q: K; l+ E& G: ~. X! N' \6 M% l
    + o6 P$ _/ M& ]. F4 L
    8 s5 G& Z0 z6 y' i利用以上的处理结果,可编写 MATLAB 参考程序如下:
    : z( }0 ?: W0 F' P% g* C1 N4 J0 t# _( V- S
    function ex20_3_2
    ' e3 e9 g6 d$ D( g%*****************************/ |: u# Y6 y1 a
    % 扩散系统之浓度分布
    - f/ @" O( z7 S2 V" k$ }+ A3 \( e%*****************************
    + i+ v2 J& v1 S$ D) I7 b% S1 H$ Kclear/ l& C. p$ e& ~. C% b9 s
    clc- k% @, q' q; T1 |" ]2 I
    global DAB k CA04 U, b& e1 L. }: L' {5 K
    %******************************
    1 T! H0 k3 t0 D% 给定数据
    4 u3 u3 ]8 A: J%******************************) R" H9 A! w9 B9 `
    CA0=0.01;
    : a) u, Y$ Z% J, J4 _+ b5 nL=0.1;6 [) d: g; h8 F; H# b0 }3 V
    DAB=2e-9;
    . e: X7 R* p) |: X$ _, x, u* gk=2e-7;
    7 }8 P4 q6 _! m  r+ j  I/ Xh=10*24*3600;
    ! }/ r$ e4 k' a% h/ n+ P%*******************************
    . }) V7 z) x1 U2 f5 T* Y% 取点$ j/ f% M5 i# e' ^, Y
    %*******************************
    4 p2 v+ \+ C" \. l4 ?9 `& i6 ]t=linspace(0,h,100);
    % Q2 e; [1 |2 Q% t+ A! ^z=linspace(0,L,10);. I  d7 X6 ?2 ^7 f" [6 C
    %*******************************
    + [' x5 Q- f3 E6 K% case (a)
    * n2 W: w* V( m( s" O6 H3 D' G%*******************************
    7 ]0 W. X2 ?8 ~  y9 |! c2 {m=0;. P! @  M6 ~4 Z# Q" T* k
    sol=pdepe(m,@ex20_3_2pdefuna,@ex20_3_2ic,@ex20_3_2bc,z,t);
    . q' V% n/ b" q& x* R" [' I0 m; OCA=sol(:,:,1);$ U' K, u, `7 z8 {7 `
    for i=1:length(t)! }2 E( \: {& q. J3 h) d/ a
    [CA_i,dCAdz_i]=pdeval(m,z,CA(i,,0);! a; k$ J: @6 I# T! m7 }. P, c1 {0 D
    NAz(i)=-dCAdz_i*DAB;
    $ P8 ~) x$ D; x* _end: @  }' E3 b5 Y2 L6 V
    figure(1)' y# T4 D3 B# b! B" }5 H3 }
    subplot(211), j0 c( E& W. }
    surf(z,t/(24*3600),CA)& B4 J9 ~$ s+ @/ l( z" E
    title('case (a)') 1 k+ ^# r9 B( m, g4 ]
    xlabel('length (m)')& }& s6 M$ y. x) `8 K0 {: |! @
    ylabel('time (day)')+ z2 K$ Z: `+ S
    zlabel('conc. (mol/m^3)')
    ! m( e0 Z$ z5 |& [' k) p- Bsubplot(212)
    " K0 o+ `+ f8 u9 }, l% oplot(t/(24*3600),NAz'*24*3600)7 d- L' M+ K: ]% @( L
    xlabel('time (day)')$ `% Z% Q5 \/ F0 V1 \
    ylabel('flux (mol/m^2.day)')4 I. N# Y7 {1 r/ ]+ I- ?$ c8 w
    %************************************; P+ `- c2 C! q4 B; r6 X" `+ s
    % case (b)
    0 q/ `' U5 c9 ~%************************************( P( ~  j2 M* ]$ X8 b; D
    m=0;
    2 W; U9 Q, V5 Msol=pdepe(m,@ex20_3_2pdefunb,@ex20_3_2ic,@ex20_3_2bc,z,t);
    ; m: D* E, w" w" c( r3 Q2 XCA=sol(:,:,1);
    : U) s8 @7 ^  Pfor i=1:length(t)
    ( j! }  O, r8 h& A- ?' C [CA_i,dCAdz_i]=pdeval(m,z,CA(i,,0);* l/ V4 O) ]0 S- C- J
    NAz(i)=-dCAdz_i*DAB;
    9 [* F0 y& P+ p4 ~5 dend
    % |( w; n/ n+ T! h%- X% J; i8 P, j# U
    figure(2)
    ) Q: w# l5 V. _; gsubplot(211)
      Y- L, m! `3 A# z; x' D- Vsurf(z,t/(24*3600),CA)) H. i/ W' Q* d' s  f7 m6 c% h
    title('case (b)')
    , r" H* y) W8 @+ R# o. L, Yxlabel('length (m)')
    + k7 A0 C6 u  B: j4 `ylabel('time (day)')
    , D$ Y7 p( ^$ Czlabel('conc. (mol/m^3)')
    3 Q, ]2 o" g# u4 o7 @1 csubplot(212)
    : u4 O0 a- C- Z/ R: J9 v! E: U5 ?plot(t/(24*3600),NAz'*24*3600)
    ; ]$ K3 i6 [" ]/ g8 x* n( wxlabel('time (day)')# z# W6 [, M5 O# O+ ]1 B* i
    ylabel('flux (mol/m^2.day)')
    % J1 D& U5 @3 A( f" K2 p) j%********************************************8 ^# `/ `% |9 J% [) D0 i) e
    % PDE 函数. s$ g  n( q$ V, I
    %********************************************
    6 {! O4 [5 l4 e0 T* [7 \6 r  q% case (a)
    ) P$ ^$ B" `! I" `( z%********************************************
    $ ]/ ~) [$ b/ n' ofunction [c,f,s]=ex20_3_2pdefuna(z,t,CA,dCAdz), b, q9 R0 Q% Q" J9 `- @3 L8 T# \
    global DAB k CA0; `9 C4 }1 R4 y+ r0 h
    c=1;5 u- K' L7 {. D9 I+ Q, l
    f=DAB*dCAdz;
    5 ?0 ~# x4 W) Ls=0;, ^( b- E4 e7 p0 |6 _( x$ L8 V: w
    %*********************************************
    & V9 s4 b4 C5 N" {: K7 ~% w& v- y% case (a)( S' \0 [8 a- s# G  L
    %*********************************************
    , W. N2 Z" a' p% j  ^! {; Wfunction [c,f,s]=ex20_3_2pdefunb(z,t,CA,dCAdz)& |: n2 S& r  v# y+ J- ~+ y
    global DAB k CA0# z* a4 E( s$ x, r) j
    c=1;  K( W3 _" [0 t8 S2 u- Z; I
    f=DAB*dCAdz;
      `7 g7 }7 Z; \5 v- {s=k*CA;. W9 a2 P2 v) |% e
    %**********************************************# A. [& @! P( {9 q6 I' g' a
    % 初始条件函数- q/ B) D# I8 |2 Y$ Y/ c& |
    %**********************************************# `( ^) L$ x0 s; u9 U8 y
    function CA_i=ex20_3_2ic(z)
    + i* H. l' w* y. l1 G. E# E( pCA_i=0;2 k9 x; R- u3 M' s2 i% x
    %************************************************
    * C; e% ~/ P# i" n. _% R% 边界条件函数2 g& K  ?5 r' ^1 y: }1 s- V
    %************************************************
    % E5 v( ?9 }; F5 l  [; Ofunction [pl,ql,pr,qr]=ex20_3_2bc(zl,CAl,zr,CAr,t)- x; m5 `. ]  Z6 u. y) j" m! B$ I3 o
    global DAB k CA05 _. e; u: D7 n1 S6 P& V
    pl=CAl-CA0;
    $ x4 b. e0 x1 D" Z, z: ]' F: V$ xql=0;1 x5 ^: L* W" n. ]$ }
    pr=0;3 c: P+ {# @. K9 Q( n
    qr=1/DAB; , H4 \( A- v8 E# a6 E" Q/ t% c% _
    - r; Q! E! f* q, g6 P
    ————————————————9 [) L2 p7 d5 N  H2 E9 A# K
    版权声明:本文为CSDN博主「wamg潇潇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    + b! A0 m) V% ?  I3 d4 c4 G原文链接:https://blog.csdn.net/qq_29831163/article/details/89711694
    6 R; X/ {$ s% q3 e$ C" L. a9 p$ s0 I! G! J
    1 [) {7 c8 I/ z/ I7 T2 d& b
    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-4-12 04:10 , Processed in 0.422725 second(s), 50 queries .

    回顶部