QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 5210|回复: 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

    4 R# ?' W7 x# D) m2020全国大学生数学建模A题思路讲解与核心代码
    ; e8 L& k4 Z' V3 y/ _0 M/ `& G. \( L" K  n5 @2 \) L
    2020全国大学生数学建模A题思路讲解与核心代码
    ! W' k+ Q4 W0 k8 ~题目) x, z2 N& [2 ~7 B- p, d- c/ G
    核心方法:  |( ]" Z; w; a) B. c
    问题一
    ; v6 p% l& e3 r" R问题二- H5 L3 e1 k- g; O9 m; E5 T# r' u
    问题三和问题四
    0 b% V5 ~! x9 K- w. F1 X/ U8 a5 i5 ~答案如下:: H! V1 H, @3 D  L7 b. P# O
    题目
    4 K* ^1 L: L8 R8 S
    * }7 w( {& R5 x) y

    ' q/ M8 ?, @" N; d( K: M/ j' e: K& l
    " j. X& B$ j8 y$ |+ h

    9 e: o! N* V. r! d
    2 z; \& N7 X! L. i6 q& Z
    , F# @$ e4 z- X' ^  _
    核心方法:& C4 G1 R+ @0 M4 Q) Z
    热传导
    : s- {) Z( b* m- `: P$ O; p# f/ c有限差分法! g3 y: R$ i3 H
    遍历法& T9 G3 E5 D- X; j- E6 G9 g8 ~* G
    4 Q; F$ z4 J. @! s. o9 V1 K
    / r/ x0 _1 Q% j: I4 f! ?
    问题一6 @  P4 F% T, V" ^
    建立焊接区域中心温度变化规律模型,推出焊接区域中心温度与其厚度和PCB 板所走过的时间的关系。查阅相关资料可知,由于自动焊接过程中热量传递复杂,因此对模型进行简化,只考虑一维方向的热量传导,即单侧单方向小温区对PCB 板的热量传导。利用能量守恒定律和 Fourier 热传导定律推出热传导方程,再利用附数据件求出方程中的参数,进而建立了焊接区域中心温度变化规律型,即炉温曲线变化模型。依据建立出的炉温曲线变化模型,根据问题一中所给出的各温区的温度参数T1, T2, T3, T4 及过炉速度v,需要求出过炉曲线,即焊接区中心的温度变化
    # q- b+ L  U- ^3 H% F$ O
    3 s8 h+ v) o/ N+ J1 {0 h+ w) r

    6 Q" y* ~( F& g. l5 T0 U3 i对于热传导方程的求解,需要先确定热传导方程中的参数—热扩散率,这
    9 q& F7 H( \+ p7 H1 i- P0 {# Y' r7 d可以通过附件提供的炉温曲线数据进行参数估计。热传导方程的求解可以利用差分法进行。
    ( T6 I' s! @7 K
      |" z( T' P4 |8 [% U5 A, a
    $ @5 ^- Y1 _9 F- Q9 ]7 l$ Y- J
    // lamda的计算的部分代码
    & a& @. `& v3 M9 E4 M8 c1 uarray=zeros(76,length(x1));1 \- ^' _0 l- V/ W, `3 D% G0 N9 v
    array(1,=y;% d) v8 }& r1 \  H$ \$ a& B
    array(:,1)=z(:,1);
    0 ~8 b7 D' a$ a* vfor k=1:31/ s. e" b: z. s; c
        for j=1(1)-1
    ' m  |- V+ n- c6 f        for i=2:75
    ' T) p5 q$ d' l; r            array(i,j+1)=array(i,j)+u(k)*(array(i-1,j)-2*array(i,j)+array(i+1,j));" `0 E  [5 |! O& b8 F# K1 a* o
            end
    . s. }: X* O5 |3 }4 b        array(76,j+1)=array(74,j+1);4 T6 X) n6 M1 Q  m6 Y* M" ?" h  X
        end
    & j. S, ?' {% s# g, d. v    e1=1(1);
    $ m0 Z& X: b7 ]3 e# J. O    e2=time(1:5,;
    6 E5 j5 l3 q' h  \) P3 z. D    [C,ia,ib]=intersect(e1,e2*100);* f# _  `2 B# q3 H4 o* T+ K
        for i=1:5# J4 H" {# P( F$ L/ q
            b(i)=array(75,ia(i));( t  l. u! I% F5 O' @9 R+ c# `
        end
    0 h; s4 c+ r2 e9 {' A2 t3 q" z( _1 D3 h    for i=1:58 e8 x- v# A+ x: _0 D: i
            c(i)=(temperature(i)-b(i))^2;
      g, V  m1 T" F, D3 l* F0 R    end
    + {7 @$ C1 `: |- D7 k3 o8 O: u    rss(k)=sum(c();$ i" L5 Y  z0 m$ p$ S, K
    end
    - t2 S9 ^3 [- l' |result=[u;rss];5 a% M7 h' [0 v# a6 ^
    1( ]" N2 k1 L* @/ o8 x
    2
    7 T7 [9 a3 ^1 M8 c' v3
    ; ^9 `1 L( i) D4
    ' c6 S6 K5 z( ?6 }7 m59 ]' N' M& B- ?$ _- k' s% E
    6
    " `3 `. d( M5 l; Q2 l, I7! {% t8 [& ]( ]! [. H1 f
    8/ v2 M! U2 h" U1 s5 C
    9
    9 s# L9 ]+ [5 B4 F100 ]: M; h7 E* k
    11' T; D( D; ~; \! H
    121 g/ O* z# t7 B0 c3 n9 @
    13
    $ Z3 D7 t) F+ [2 s14( a8 x: Y4 \0 E4 ^
    15
    : c, `: V0 O" I. {16
    5 Q- l# x/ c2 T+ Z; Z: Y17
    : |9 A! B9 S, \0 t6 @18" h- d* \# c7 U( f) [# K0 A
    19
    2 C& Y% \5 p5 H3 T# m' O; L209 z" m, }% w  ~' P
    21
    * q' V1 o; F# y  \) I9 h22! r) J# a8 R/ m4 c+ d. l7 A
    23) H& l4 a+ L* I* }. J  M
    有限差分的核心代码:
    2 L3 m$ g2 K7 m+ X5 L8 O8 r
    ! |3 \, C7 Q0 w' `* v( G1 u/ F4 E
    3 I: U; Z, p9 p
    //有限差分的核心代码
    * p. K) k  f9 r% |, Karray=zeros(76,length(x1));
      C0 y* S% l2 R2 Qarray(1,=y;
    5 j5 D, H* c* r) sarray(:,1)=z(:,1);6 [# h- n( x7 A8 N) ?+ V
    for j=1(1)
    * z$ z6 ^" o, S  K( g9 K2 @& d' m9 y/ C    for i=2:75
    * ]1 a9 D0 P+ O; g5 t! X        array(i,j+1)=array(i,j)+u(1)*(array(i-1,j)-2*array(i,j)+array(i+1,j)); 0 f) v/ `1 e& `# a- t' f; q  F
        end4 n6 T5 v" [5 J& M& c& W
            array(76,j+1)=array(74,j+1);
    " t: w+ W, @; h( l$ V1 H- Send
    : {: n  @9 J% G4 K$ K. az(:,2)=array(:,2143);
    ! ~( l7 ~3 y% t( v' p5 J2 Ufor k=1:9
    % q3 j+ }& |0 {) u+ M    for j=L(k)(k+1)
    . i0 P) P* i9 h! Q4 Y/ j        for i=2:75
    : f) N) f$ {* E6 H( g2 s            array(i,j+1)=array(i,j)+u(k+1)*(array(i-1,j)-2*array(i,j)+array(i+1,j)); - E2 p* N8 E: L  }+ ?0 E1 d8 W
            end
    , j8 Z. F: p& E6 B: y4 Q            array(76,j+1)=array(74,j+1);9 f! o0 \8 N6 l/ c* [% ?, x
        end& ?1 y; y8 A: z& E4 m4 ~- \4 W
    end
    % n  ~+ e! r; earray(:,length(array))=[];4 x6 \* I5 c! u& b0 Y

    ; Z$ [* J* f  ^

    - S4 T. B- Y  ?% _$ R7 ?# j1
    " ]# C* D8 @+ m4 j25 b1 j1 M' U5 @  d1 x1 s5 f! W
    3
    ! v* A$ b3 Y& P, W0 T. J40 G7 B7 b7 i& Q4 Z% W6 E# V3 {
    5* b( p" Q# B8 ]2 b3 t3 `7 e/ J
    6
    9 q& Q, h2 N. u6 j  F7
    9 d% P3 p& d; D7 s: O8
    1 w5 n& v' z+ X8 o7 [% X9
    / m9 c3 {8 x. }. |( q10
    6 r, L. @" S  }8 T: q, a11
    ! x9 M* E5 [9 h( m6 k# s$ K124 a2 j) x" O0 x0 \$ @
    131 t* V" Q& N  L
    14
    ; y5 R2 x5 G' p  y3 n9 _) _, r% y15$ V, B. i, ^" T7 J7 Y6 k
    16
    2 {$ U  y8 e" T( @+ w17' h- G5 u2 _; h( ]( a3 B) g
    18
    & s& o- R! l& c$ Q( E& r  s19# B, K! @3 g* z  a
    209 h( ~; o$ Z. \( z
    21
    ! b. v# F/ A, M) |+ E, M3 G& ]得模拟数据和真实数据对比得炉温曲线:1 ]" F7 X  Y* }+ p9 T; U/ o
    # }0 F: i. x2 j' z/ b

    6 f. y2 h% `2 v- L+ U) T. H3 s2 I/ I3 a
    " @& R. d! k) l% \6 ]1 k' ~3 N
    问题二+ z( q/ W# E  H
    问题二中,基于问题一中所建立的炉温曲线模型,在四个温度参数给定的条件求取传送带的最大过炉速度为优化问题。此问题可以看做是问题一所建立模型的反问题,即在温度分布4 }0 h6 ]% L0 p8 W9 x
    已知的条件下,要求通过该分布计算最大过炉速度v。在具体求解该反问题时,可以利用遍历法对过炉速度进行遍历搜索,这样就将反问题转化为了正问题的求解,从而问题一中模型方法都可以继续使用。) T7 Z1 `9 s( t2 T
    ' k" M7 G) _& e
    - u" i, [5 O5 ~8 W2 T7 p
    问题三和问题四0 G9 @1 J' E( m$ B& F+ l; p& X; N6 ~+ V) i
    问题三和问题四仍然和问题二类似,也是对过炉曲线提出了不同的要求,进而在这些要求之下确定影响炉温曲线的 5 个参数 T1, T2, T3, T4, v ,求解也可以采用与问题二相同的遍历法进行,但由于此时遍历的变量个数增多,如果遍历步长较小,必然会使得计算量增大,因而必要情况下,可采用分阶段的遍历,即:大范围,大步长,小范围,小步长。需要考虑的就是对于面积和对称性的数学描述,面积可以采用积分的离散化表示,对称性可以采用以最大峰值温度两侧取对称点,使对称点的温度差值尽可能小来实现。
    2 }; K0 [$ f  B7 P* y
    2 [0 d/ k& h$ ?' j; `# }; z
    ! F5 ?. `( d8 s1 R/ ?
    答案如下:
    # a- K$ `$ ^* q* L( u; r3 k* [2 y0 u0 ^2 P4 c: R

    ) @% L9 W+ |" }注:用以上方法算出的结果均在最优解范围内,详细解读请待下次,困了该sleep了
    " r9 i' f1 `; K- R3 p) O0 o% \, X- h————————————————
    $ p. c' I4 q3 o' G. ?# a版权声明:本文为CSDN博主「盈博简」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    . Q( z% y. T- G8 j原文链接:https://blog.csdn.net/Sandm_Hou/article/details/112726635$ \( i" }# o" V$ H: E

    0 j! d: E+ J7 l; n5 {& q3 x) N5 i0 a3 E9 g( u
    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-15 13:21 , Processed in 0.880724 second(s), 60 queries .

    回顶部