QQ登录

只需要一步,快速开始

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

2020全国大学生数学建模A题思路讲解与核心代码

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

5273

主题

82

听众

17万

积分

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

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

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

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    跳转到指定楼层
    1#
    发表于 2021-7-16 16:32 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta

    . t2 Z8 l& m% X& d% Q2020全国大学生数学建模A题思路讲解与核心代码% A4 D% c% ?, g% {3 a) ^
    + h3 ^2 v, O3 {+ i0 p2 L
    2020全国大学生数学建模A题思路讲解与核心代码
    2 S% i& Y/ u( Q9 v题目/ R) M4 t$ p% x) y, J9 x* E
    核心方法:+ |+ W7 S0 d" P4 F
    问题一
    ' D) m$ A/ \; F问题二, }5 j# i/ k" _8 f8 p' x
    问题三和问题四, s  x, {1 @5 R' K) `# q
    答案如下:
    % m: Y; C9 L0 K# S7 Z) r2 n/ h题目
    % k/ l: x( m" R2 D1 E& I6 g# W' R" k2 J4 p9 o' f# S1 B4 `
    4 z# z; i2 Q5 y4 o
    6 W4 c/ o+ R  w6 |# f: M
    & p! V/ }2 P! H8 B3 W
    ; o2 S5 t8 u3 r9 H5 p$ f7 u! H

    8 V1 D3 G8 y* y, d; i! t核心方法:# H; [' z9 v. [3 Q
    热传导
    ) K: {& M- S. I5 A- \5 r有限差分法) z! O( E, U' k) p. ?
    遍历法& S6 o4 B" u* D

    0 o- m6 d- \0 t8 a$ G  k# ~- z

    - K+ w: W# M0 x! p6 k问题一2 f3 A$ ]/ E) N8 p% C
    建立焊接区域中心温度变化规律模型,推出焊接区域中心温度与其厚度和PCB 板所走过的时间的关系。查阅相关资料可知,由于自动焊接过程中热量传递复杂,因此对模型进行简化,只考虑一维方向的热量传导,即单侧单方向小温区对PCB 板的热量传导。利用能量守恒定律和 Fourier 热传导定律推出热传导方程,再利用附数据件求出方程中的参数,进而建立了焊接区域中心温度变化规律型,即炉温曲线变化模型。依据建立出的炉温曲线变化模型,根据问题一中所给出的各温区的温度参数T1, T2, T3, T4 及过炉速度v,需要求出过炉曲线,即焊接区中心的温度变化4 l* U. x: S0 {0 I
    / ~" b! f9 y( k0 f- {2 d- w

    9 U( ]# y$ t  i% G" u+ C, q4 j对于热传导方程的求解,需要先确定热传导方程中的参数—热扩散率,这# Q0 e  ?) Z, b- }
    可以通过附件提供的炉温曲线数据进行参数估计。热传导方程的求解可以利用差分法进行。8 H* ^' |- W6 X' j* b) V3 ?2 W! e% _
    ; k+ M) a. \9 E1 G4 P2 f
    7 f/ |+ L# J& k8 @: v
    // lamda的计算的部分代码* o: R! m6 M$ e9 m
    array=zeros(76,length(x1));
    ' e* |) p' s2 f/ E; Varray(1,=y;- U1 q- N2 ?" W
    array(:,1)=z(:,1);) f( `) R# o5 O. f% s+ `' b
    for k=1:31
    5 P3 |( M8 a  X0 o    for j=1(1)-1
    ! j5 u) n4 G7 z: P' D        for i=2:75
    + c) l+ o2 L0 q( P) _+ e3 _            array(i,j+1)=array(i,j)+u(k)*(array(i-1,j)-2*array(i,j)+array(i+1,j));
    4 Z. _: z$ g" _( L0 I' k        end
    , o' p1 g7 ~; D3 Q& O% _( g        array(76,j+1)=array(74,j+1);
    ! X6 b4 q, F- j  `5 p, k    end
    5 V- ]# p3 }1 S4 W    e1=1(1);
    , T' F, @( }6 w, m) W0 T' ?, B5 Q    e2=time(1:5,;
    ( q( Q+ y3 ]2 [9 f    [C,ia,ib]=intersect(e1,e2*100);
    ' E" G8 r  S5 o6 S    for i=1:5
    5 x' |8 N' v: y4 U' e% Y        b(i)=array(75,ia(i));9 _( t( P: g! s1 [8 @
        end0 ^' C6 Z! H( s8 i" U
        for i=1:5
    - [5 q2 p+ k" u4 l$ ^        c(i)=(temperature(i)-b(i))^2;2 T. [( Q! c# c) ?- h1 Q, m
        end
    ( ]5 T3 L3 Q# k6 |- O. F* O2 O% T/ {    rss(k)=sum(c();7 g4 S+ G2 {( \9 K( w5 z0 H3 \
    end5 E9 `* J8 W7 E, |  }  w' P
    result=[u;rss];
    4 I" w7 a/ N0 p4 b% S; g9 f1- a/ F+ {, {) U* L' k; ?; ^
    27 h3 v) ]! X& B- f5 n
    3
    8 ~$ r6 H3 x& |47 Z/ u$ T- u, v0 C, n; b- S# F
    5
    1 H& e  w. j* o( L' W. r* Q: ?. L- O6
    & w& Y5 E7 D5 s9 [( Z7 S3 W79 @% }# H7 Z9 P" p
    87 `' P  L8 O4 I& O6 E& s
    9
    $ O0 b' y* i: P+ ]106 _9 T& l3 g; ~! {; `# |& _2 z3 H
    11
    * r1 m5 T, h& f2 d12
    ; `. `; |7 Y9 m7 [13
    " k) R6 x; \, h$ g. j- y" |14
    7 t/ Z6 D' B/ W0 a" E; |6 [  Z15
    8 e) X; d8 M6 g, h4 }16
    7 @/ e) @" i0 S) t! z: h5 Y0 V5 _) b17
    ! O- Y8 R# w. P; `7 q18- g1 w& M7 U0 n& Q. U6 I9 q
    19
    0 e; N0 v3 ]& ^6 \$ N: O209 }( o/ q* X( X9 i
    21( y6 g" c; a, O' R  \! e) k
    22
    1 Y& O4 K5 Z) M4 j' y23# ?5 \( ^" h2 ~: Y
    有限差分的核心代码:
    / Q. T( T: c6 T8 n6 q8 Z0 j* Z
    3 c3 I. g8 x9 L" l6 h( ^8 p+ ?
    //有限差分的核心代码) d* u; H9 _/ P3 f' I
    array=zeros(76,length(x1));# Z5 `6 i  r( Q- M* Z1 C2 R
    array(1,=y;
    " T# x- W& y; O* v9 @# Y, z# sarray(:,1)=z(:,1);) v  g. A+ M& m! |# o0 ~5 [
    for j=1(1)5 I8 o4 H! Z* d+ \$ b
        for i=2:75
    & e8 S9 I4 S9 @        array(i,j+1)=array(i,j)+u(1)*(array(i-1,j)-2*array(i,j)+array(i+1,j));
    ' N$ f1 w* h; _3 a; V: v$ `' R+ b    end
    7 H4 f  `  B' z9 U0 _  R/ t+ s        array(76,j+1)=array(74,j+1);
    5 J. p; E) v/ c' I- K1 Q1 m- Tend. h/ s" n/ Q/ E4 m
    z(:,2)=array(:,2143);
    . I( H& \/ j- H9 b9 R. H; wfor k=1:9! L9 V1 H- [* \6 }  c
        for j=L(k)(k+1)6 R' k, P) P. P5 Y0 r
            for i=2:757 k  @( H: C! l7 Y% C6 C  W
                array(i,j+1)=array(i,j)+u(k+1)*(array(i-1,j)-2*array(i,j)+array(i+1,j));
    % w+ m2 N; V: \: T. Y3 a2 A        end
    ; q7 i* \! B  h5 k            array(76,j+1)=array(74,j+1);. i! \: Q/ M# G& `8 S1 s
        end
    2 L3 M' y# v: J1 `% |end
    & ]7 N5 p* _7 v) s  Zarray(:,length(array))=[];
    # {" C) n0 O7 D% O. C0 P, i$ r# V+ q: q; C

    4 Z7 x# U* \, _' Y/ t1
    , F1 N8 D( R& h6 h. ~" j7 i2( z6 T5 l+ y0 m2 J' b# |
    3
    & X% x0 }4 U( H2 Y8 }! j+ t4
    , D) d# s0 ~; @( A) X5$ q0 `; Z3 }- G& ^  O. H
    6: T5 n# m: K8 N% c
    78 U' Q. Q- k. q: \/ b6 r# j5 x
    8
    & @. ~; I/ Z8 j6 q  j! ?  B% _9
    5 y% j/ W7 ~7 N* ^  q103 p9 p- o" k% ^6 S5 r+ K4 ?
    11
    & k: Q3 U) P: j1 k6 J+ d12
    2 [: F9 w7 L( u2 u# N13
    2 L" c4 k0 ~$ `" H& m: J1 B3 n7 c14
      Q$ g& M5 q  l9 O, t152 f- L0 n' F; a5 i( Y) h! l/ h$ E
    16' n' {" R$ P7 E; j
    17! G* K' O' h# T' N0 [' B
    18
    ; J/ u( v3 r/ {19
    8 o  T/ `) [: H6 ?) l. ?  c4 V20
    " ~, c$ T9 _# A21
    * ~6 Y- |$ D% M3 x得模拟数据和真实数据对比得炉温曲线:: ^0 {6 f( s! a
    4 c6 R5 }7 W  a6 D! o

    ' v5 ~  \( v# p6 ]$ `
    7 [! e& v1 A  n9 |9 y& I5 P& A
    & ]( f7 }, \- c) ?; z/ f9 G3 z
    问题二
    * @. x  l5 s& W$ j# X% \问题二中,基于问题一中所建立的炉温曲线模型,在四个温度参数给定的条件求取传送带的最大过炉速度为优化问题。此问题可以看做是问题一所建立模型的反问题,即在温度分布: k. u) q! k1 f( c: E9 _
    已知的条件下,要求通过该分布计算最大过炉速度v。在具体求解该反问题时,可以利用遍历法对过炉速度进行遍历搜索,这样就将反问题转化为了正问题的求解,从而问题一中模型方法都可以继续使用。
    9 b  |6 l; T- [- d; E1 e1 d! J( x5 l

    % ~- Q- o( N. p问题三和问题四
    , L+ R2 w4 W# |8 V+ a. k问题三和问题四仍然和问题二类似,也是对过炉曲线提出了不同的要求,进而在这些要求之下确定影响炉温曲线的 5 个参数 T1, T2, T3, T4, v ,求解也可以采用与问题二相同的遍历法进行,但由于此时遍历的变量个数增多,如果遍历步长较小,必然会使得计算量增大,因而必要情况下,可采用分阶段的遍历,即:大范围,大步长,小范围,小步长。需要考虑的就是对于面积和对称性的数学描述,面积可以采用积分的离散化表示,对称性可以采用以最大峰值温度两侧取对称点,使对称点的温度差值尽可能小来实现。6 J! M" r, m$ Y5 m

    ! V3 E9 f- R" S0 c# P& t- m
    . k# H. n& l: g3 J
    答案如下:% l6 i5 E( V2 [

    7 K8 B3 X4 O6 l) \% S$ O

    3 q* `2 q& T- m' S  f5 Y  L9 e  ]注:用以上方法算出的结果均在最优解范围内,详细解读请待下次,困了该sleep了: R2 D: p: g6 _! I: b, C
    ————————————————: ~7 d0 ^/ U0 e& h0 H
    版权声明:本文为CSDN博主「盈博简」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。/ y5 r: A6 F( o1 n# b/ D
    原文链接:https://blog.csdn.net/Sandm_Hou/article/details/112726635
    : ?% p  M6 M4 r. w
    : c8 F3 d+ y. D. w3 d5 W* P7 v, {' G/ p& w; k3 P
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

    0

    主题

    10

    听众

    299

    积分

    升级  99.5%

  • TA的每日心情
    开心
    2023-10-14 10:28
  • 签到天数: 28 天

    [LV.4]偶尔看看III

    回复

    使用道具 举报

    0

    主题

    10

    听众

    299

    积分

    升级  99.5%

  • TA的每日心情
    开心
    2023-10-14 10:28
  • 签到天数: 28 天

    [LV.4]偶尔看看III

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-4-10 23:39 , Processed in 0.705058 second(s), 61 queries .

    回顶部