QQ登录

只需要一步,快速开始

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

[建模教程] 2018数学建模A题的简单指导

[复制链接]
字体大小: 正常 放大
杨利霞        

5273

主题

82

听众

17万

积分

  • TA的每日心情
    开心
    2021-8-11 17:59
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

    自我介绍
    本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    跳转到指定楼层
    1#
    发表于 2019-4-6 14:23 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    2018数学建模A题的简单指导
    8 @' k. P6 g# Y- A; x1 O
    ( C. C% w) D/ }8 I: W9 S  b之前写过一篇博客,介绍如何使用差分格式求解热传导方程8 b' M* H  Y3 H
    * g$ B: y1 {5 f9 t/ Z8 Z& Y
    今天打开博客,突然发现评论区被这篇文章霸屏了4 Y/ i; z7 g% O# U1 t! T

    / t1 V* w4 R0 H. p5 l  q4 g( O7 z1 I5 A0 i9 x9 W
    9 c) k# D& z! f3 J9 |
    询问实验室的小伙伴才知,原来是被可爱的建模学子们攻占了
    + u& T4 n  g9 U3 O0 ^3 Y& V( p& A& ?
    经过简单的了解,发现今年建模的A题的核心就是求解一个热传导方程,因此之前所写文章的程序基本可以算是神助攻了,完全可以帮助大家构建解题程序的基本框架。
    : l! N) o& U6 a1 T0 P
    " M  Q/ h1 G1 e8 J' d# V! L但是!  A: m0 R6 m2 ?% P2 k
    * a1 g' P! X3 b# x$ N
    数学建模比赛考验的就是大家的学习能力以及解决问题的能力,我只提供简要思路,不要做伸手党直接找我要代码,不要问我怎么写,请对得起你将来获得的一等奖。) d! }. q  s; q6 ^+ ~
    1 I8 Z7 O1 m6 q. Z' k) Q
    再有就是,你要先确保你能看懂我已经提供的源代码,否则下面我提供的思路你可能看了也白看。
    9 s$ _9 P7 \) O( }  E/ a, a. U$ E/ n) y! j9 G. b* ~
    这里统一对大家的问题做一个回答:
    1 R" v6 e5 C  _' Z6 g! y/ i1 ^
    6 p4 \8 @1 }8 l本题适用差分解法吗?
    1 H, c* ~3 f' Z# V6 \! T# C4 L9 p
    ) d0 d9 ^& c1 o+ A! v求解偏微分方程的方法中,差分方法 和 有限元 是两类最主流的方法。
    5 ?0 E5 e  w8 b% x7 ~% u/ l6 S$ @0 m
    差分方法的优点是原理简单,但是只能求解规则区域的数值解。5 _* ?& h: y  l7 w

    : h4 J: K/ D+ K; @- m' H有限元背后的理论相对难很多,但能够求解不规则区域问题。
    ; E9 @4 n( p) Q1 o0 S' ]+ e3 S- r& P3 i% y. q: A' o7 s
    本题适用哪种方法解答取决于你的模型假设& \. x& W! v  [( {5 n2 C

    + Y1 x# \8 B2 [2 Y/ L本题中涉及多种介质的热传导的求解,我的建议是,如果不想给自己找麻烦的话,将每种介质层假设成规则的矩形。6 @" C% m3 p3 z: L- [6 `. g
    ( s* Q: s. N( d4 _7 O
    既然带求解区域是矩形了,那么本题使用差分方法来求解更加合适,关于差分方法,你可以随便找一本介绍偏微分方程数值解的书,都有介绍。% p; }' G: H5 r/ d0 i
    # V# b1 p4 i* s4 L
    当然,你如果将模型假设定义为更符合实际的不规则问题,能做出来当然是亮点,但切记不要搬起石头砸自己的脚,毕竟建模时间紧任务重。
    * Q2 ]5 P/ r) ^* E% |4 I
    # u7 C& \0 G) v- l7 B! r$ r是否适用于多层壁热传导?
    9 q9 I5 s# E/ U1 y6 D# _0 W, P/ A. v* k  D
    评论区有人问,是否适用于多层壁热传导吗?* {9 V3 u' P  e1 l& |$ \
    2 c# i5 E3 ^& a
    其实就是问这个程序能否求解A题嘛,O(∩_∩)O哈哈~
    ' t# n7 m' n/ t
    ' a- Z! \: s1 I& U7 J) v答案当然是能,但显然不能直接拿来用,给几点提示。2 E6 N* |8 |  U) ^* G
    - t( g: l4 _* A, U8 l7 a, k% L1 x7 S
    思路1:
    ) d, X- j, d/ s8 ]; ^! X% G& w1 b* ^
    3 n  T5 h  E7 j- p你单拿出其中一层来求解,和我提供的算例已经没有本质区别了。
    9 K, n  E( I, c' A/ E5 f# @0 b. ]( u5 `7 [9 i: ]2 ~
    因此,你可以一层一层的求解。先求第一层的数值解,第一层的结果一有,第二层的边界条件也就有了,于是第二层也可以求了。
    % T) Z) D( x9 C6 r, S/ V' y, I1 q, V7 r8 U; P  A2 G: u8 h
    这样做的潜在问题是,第一层中求解的误差,必定会传递到第二层去,数学上可能不太完美,但是好理解,代码改动也少。
    1 j0 m/ Q: v4 x2 O2 Z2 e  K+ h  `" Q/ q
    思路2:
    # X; D: Q3 f3 ~4 u- d0 |2 `/ }3 X* O8 G* Y( L3 A, c+ C- a% d0 {
    我认为数学上更好的方式肯定是整体一起求解,但这就有点困难了。0 S( a4 x) u" h. f! J9 {

    ( u/ v0 C9 A* [! B这样做时,你需要对每一层边界在系数矩阵的相应位置处,都按照边界处的对应关系进行相应处理。
    & {/ M  X5 y, R  K: a; I% e
    ; W+ I+ u+ P' T2 D$ ~4 C' t1 I这需要你对差分方法有着很好的理解,如果我提供的代码你无法完全看懂,建议就不要考虑了。6 F! P5 ]  M8 K6 a  m) N. Z* k  Q# {
    % X# r! _% f4 X: f5 [$ [
    关于边界条件8 p) C' {) S7 ?" @( n$ ~/ u2 ^
    2 H4 K1 [( Q& Z2 |
    构造的差分格式是保证解满足对应的方程,但其实满足给定方程的解有无穷多种。
    ) N$ W' }4 Z( F1 l2 g4 ?4 A( Y# ~& `  W3 S4 e7 m, c
    而边界条件的作用其实就是找出你想要的那个解。# T! @) V3 ^5 Z5 o( E) N- ~
    8 O5 K% ?9 s' t* h. i7 X
    之前文章中给出的算例包含的边界条件是:
    7 k: a3 F6 w9 E
    . A+ n% Y3 s9 Z( D" k, Tu(x,0)# _' Q3 Y% \2 I6 x
    ) F/ w/ a6 t1 D5 O, B/ D
    u(0,t) 和 u(1,t)
    " R0 t* w! V' b8 ~" h
    * I* {( i5 R$ H7 w! o! V  O/ K  j) ?在A题中右侧初始温度好像是没有的,也就是u(1,t)没有) E+ ~/ {/ A( E- ^% _2 ]7 F

    " H/ ]$ [8 _5 y4 Q# O! I1 M首先,你要知道的是,求解需要的边界条件并不一定非得是这几个
    ) F# [0 J5 c4 \& r1 y
    & z( w3 I; d- A# S但是少了一个边界条件,你就要想办法补上一个边界条件, 边界条件也不一定是已知函数的表达式,导数的表达式也是可以的(当然,代码是一定需要相应修改的)。9 Z* j  x2 I/ \
    ) H) m* u- P5 e# E
    比如没有u(1,t),你可以想办法构造 du(0,t)/dx 或 du(0,t)/dt  b. u/ T7 W" i2 p/ s# H( m

    5 h# N# U, f( z! M0 e这就看你如何理解原问题了,建议查阅文献,看看别人使用的是哪种边界条件,相应的对代码进行修改。当然也可以通过模型假设,将问题向你期待的边界条件上面靠。
    ' K$ w/ T* v$ l- S; X$ U; M9 d---------------------
    ! @9 H! i# o, L# _4 q/ |1 u0 s1 {! N5 P
    # T1 C# J4 k6 X7 _
    + B3 q7 A" |3 {% @
    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-17 21:07 , Processed in 0.913638 second(s), 50 queries .

    回顶部