QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 5205|回复: 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
    * r$ p6 L- g% v7 \8 L2 e2 V4 r
    2020全国大学生数学建模A题思路讲解与核心代码4 _9 z8 \* u5 p" [
    , L5 S, @" m$ a8 j+ r
    2020全国大学生数学建模A题思路讲解与核心代码5 J) w4 W! Y7 {- A" T2 z/ c
    题目. z- [. I. x( e& {3 ]: h
    核心方法:2 [! o  ]" b4 q
    问题一
    " d$ a" w0 }9 e问题二
    $ U! L% u. w2 W0 f问题三和问题四, l5 a+ O; B! L
    答案如下:
    5 D% Y% B8 w( v+ m5 K  y题目
    5 r5 A$ P3 ^4 o; d/ Q* j; i: t- i% ^; L1 G; E9 c

    % r4 m1 S% V- F- t! B$ W0 x% B

    8 ]! z9 H9 E: v; d
    5 {  ~- F5 M1 s6 B
    1 v3 `  T1 A1 H0 s9 o; h# }& Y
    核心方法:. t9 l) u* P/ f7 k
    热传导
    , G1 X3 r9 p; A9 A有限差分法
    " b3 @) E8 S8 V遍历法
    5 ?- U9 c' X! P! C* n0 q& |" b) h/ l( P2 J' R% x- D
    9 K8 K$ Z+ M+ M5 r& l
    问题一2 x/ c" H* s; Z( W
    建立焊接区域中心温度变化规律模型,推出焊接区域中心温度与其厚度和PCB 板所走过的时间的关系。查阅相关资料可知,由于自动焊接过程中热量传递复杂,因此对模型进行简化,只考虑一维方向的热量传导,即单侧单方向小温区对PCB 板的热量传导。利用能量守恒定律和 Fourier 热传导定律推出热传导方程,再利用附数据件求出方程中的参数,进而建立了焊接区域中心温度变化规律型,即炉温曲线变化模型。依据建立出的炉温曲线变化模型,根据问题一中所给出的各温区的温度参数T1, T2, T3, T4 及过炉速度v,需要求出过炉曲线,即焊接区中心的温度变化
    2 Z8 Q9 R/ B8 ]0 D# q; \+ Q
    / _6 n, L0 x8 P

      E" s' f( j9 ?0 k$ r% N对于热传导方程的求解,需要先确定热传导方程中的参数—热扩散率,这, w5 _0 A' a  U) h1 A: t* }7 `  @
    可以通过附件提供的炉温曲线数据进行参数估计。热传导方程的求解可以利用差分法进行。* Y1 q0 v: g9 d  d3 w$ ^

    $ n4 t  h' ?) f. u6 E
    # S# I+ c9 \! P! q2 y% J8 D
    // lamda的计算的部分代码
    ! ^. q$ p7 D7 z7 |- w7 z4 uarray=zeros(76,length(x1));# u7 [2 h! M$ R5 o3 I$ W8 g
    array(1,=y;. s% I: `" L5 r% Z1 P8 R5 K) G
    array(:,1)=z(:,1);# t3 \9 G4 s, P/ Q1 P( g
    for k=1:31  i) X1 I% [( A* z' S* n( Z& l+ I5 D
        for j=1(1)-1
    $ M2 e8 @7 x. j( q, g# a) O        for i=2:75
    . v/ \6 L/ b1 m4 a            array(i,j+1)=array(i,j)+u(k)*(array(i-1,j)-2*array(i,j)+array(i+1,j));: h4 b5 q$ s, F$ c* P2 L) g, a
            end3 @4 e& d/ n% X! I+ J. u  ^
            array(76,j+1)=array(74,j+1);
    ! \  I3 o+ ~& `7 X/ G    end
    0 I$ U0 H; g6 I6 ~/ N  v* ~    e1=1(1);
    ( v/ a; Z$ [/ V' n4 s0 h1 D    e2=time(1:5,;8 t& Z+ e8 c3 B. F
        [C,ia,ib]=intersect(e1,e2*100);0 x( Z, f2 y3 }8 f
        for i=1:5
    9 P8 I" f/ c2 g- t, f        b(i)=array(75,ia(i));
    4 B* ^3 c* Z0 k( Y. K    end. ?1 y' k/ R( Y5 O+ q. x
        for i=1:5
    0 j- q! L) W, l* R% d* z        c(i)=(temperature(i)-b(i))^2;0 G8 [: e/ t: ]/ C1 v! f. k: e
        end5 ^* E: M+ U8 B7 \4 x" o
        rss(k)=sum(c();" l+ @. ~1 {/ k5 ^
    end
    / m, n  B, Y5 {9 v4 Dresult=[u;rss];9 J, t4 J/ P) o7 l  Q; M
    1
    ( w' x0 [. w  s, v# w9 r2
    " D9 N- U& a4 b1 m3
    8 `" T8 T/ D. y7 G4
    ; A* O& t2 }4 g: z( n5- g' n0 T. C$ h) L: l. x
    6
    ! s; n# w' E" ?7 J$ E7
    6 u/ _9 C/ y% z! I) I& Q8# ~( A; E, i% B
    9
    ) |0 o, _8 ?+ D3 P' ~+ j! z. g10
    ; n$ P* B) ~8 g, P/ G( k11
    ' \. U" ]" _3 o! x8 ?" b12) ^/ W  o- C  X! S" j' p# B
    13( p" D4 J+ Q. Y6 U( Y
    14
    # o' R' C* I7 p% a" ?; |6 Y15& t' @9 j8 U: Z
    16
    ! q/ F% u7 ^. k; Y; _17
    4 h' ^1 k" H+ G* s" k  f: ?* h18
    0 H6 O1 z, C8 ?19, p8 f. M; c, U0 w- h: \  |) e
    20
    # t' I9 J# ]: q0 S) R' o21
    6 D* O6 ]* E& Q22
    4 g% k/ O' r; P1 n: `# F0 h23
    * F& B* T9 @( h有限差分的核心代码:
    / ?% `! b- @, h2 E( c' |6 ~. `
    ' O: n4 ~  y8 T) O( s  _! x5 e

    ) F  t6 V  }! L//有限差分的核心代码
    $ C( J+ ]9 \, t" W) Q9 E2 xarray=zeros(76,length(x1));
    - h  f& c% z; _' W: s* {array(1,=y;
    ; g7 `6 h! p. V: S& V* Rarray(:,1)=z(:,1);
    7 Z2 v2 H" h+ K) ?' Tfor j=1(1)8 l- Z  f# W+ d8 g$ z0 }
        for i=2:75  M- \& W3 R- L% h+ u
            array(i,j+1)=array(i,j)+u(1)*(array(i-1,j)-2*array(i,j)+array(i+1,j));   v' U4 r1 ~/ }+ J( ?% d3 }
        end. r* \! R* Z# t; Q
            array(76,j+1)=array(74,j+1);1 f" ]1 V) |8 x  H2 l0 Q
    end
    5 B& z: k- k0 H! K) Ez(:,2)=array(:,2143);
    3 p9 z. _! z! v8 X! ^" Afor k=1:9
    9 D. q! t. Z- t+ K8 p    for j=L(k)(k+1)
    * j0 d7 {! Y3 P7 a- j2 M: }+ |- z        for i=2:75
    ' j1 S; y2 N  k6 Q            array(i,j+1)=array(i,j)+u(k+1)*(array(i-1,j)-2*array(i,j)+array(i+1,j));
    . ^5 {! e' Z9 V# I        end3 O+ X( v2 W4 X  |$ [0 ]2 I
                array(76,j+1)=array(74,j+1);
    : d' ~  x8 R. t$ z1 t. E    end
    1 h9 {/ R* c/ @- uend/ N( o  S1 G" Q2 N! ?
    array(:,length(array))=[];
    # }2 ?5 t! j2 |5 z( u  @2 H/ i
    6 N7 }9 X" L; w. l

      Z$ E' k, V  ^, d3 ?1
    + M) r4 m* V+ f) |9 q! l) j2. F* [' Z5 V: \6 Z" ?
    3
    9 @$ h2 o- g5 l3 S" L48 w- \6 M1 a& Z* k3 Z3 k1 ~. r2 N
    5
    5 I  X# H0 d2 \4 v+ F- d. {: }6
    3 \: {( }0 _: L, ]$ [3 ^* s7
    # Q2 F1 }9 w  ]80 z! t9 U: V, T7 x( V; d3 ]
    9* W6 r; C- P8 l$ q) E6 P
    10
    * i3 B8 R6 |9 m5 ^% m  {: k- Y( H113 R. ]4 z" \9 z, k8 N
    12
    6 X/ U' S) ]" X( `2 i% }3 n! ~3 m13
    9 p; x- F8 |' }5 Z  a: |3 K144 L7 ]( r+ o% n/ b# `
    15) v, A9 P2 G8 M+ m+ R
    16
    # v  t" v  _/ R3 Z2 y/ F0 I171 g5 G9 N, o! f' p. ^
    18
    . F8 R8 G- `8 ^, [4 J19' t- Q* y# e6 J9 s
    20
    , B1 F  q3 o$ i21
    ; E3 |  N4 G0 k. n得模拟数据和真实数据对比得炉温曲线:" z8 v- n9 I" S1 J2 ?

    0 z  x5 a0 P- [; u
    : `) m; V. B# e# M6 ]' ?0 ?$ B9 Z
    * d- [( ~  {- W" e9 Z/ x
    3 b) a5 C: U) v1 m& Y
    问题二
    " G8 o& [" e0 m* @5 n2 ~2 h! n  @问题二中,基于问题一中所建立的炉温曲线模型,在四个温度参数给定的条件求取传送带的最大过炉速度为优化问题。此问题可以看做是问题一所建立模型的反问题,即在温度分布
    " b4 w( D  V6 `: ?0 E* r已知的条件下,要求通过该分布计算最大过炉速度v。在具体求解该反问题时,可以利用遍历法对过炉速度进行遍历搜索,这样就将反问题转化为了正问题的求解,从而问题一中模型方法都可以继续使用。
    / S. p( v1 p1 D4 X* [. {- Y; h$ t1 p& ]

    ! [/ a( D- [8 P6 G0 o) u! x4 W9 q问题三和问题四
    & f0 j5 Z  G3 h问题三和问题四仍然和问题二类似,也是对过炉曲线提出了不同的要求,进而在这些要求之下确定影响炉温曲线的 5 个参数 T1, T2, T3, T4, v ,求解也可以采用与问题二相同的遍历法进行,但由于此时遍历的变量个数增多,如果遍历步长较小,必然会使得计算量增大,因而必要情况下,可采用分阶段的遍历,即:大范围,大步长,小范围,小步长。需要考虑的就是对于面积和对称性的数学描述,面积可以采用积分的离散化表示,对称性可以采用以最大峰值温度两侧取对称点,使对称点的温度差值尽可能小来实现。0 J8 D' O( _7 |$ g6 J

    - d& }$ T6 e3 v3 s7 N2 {6 F
    - n9 {; M  n( C( C9 k' Y
    答案如下:
    ; q3 I) D' R* r2 z+ v( }7 h6 w" i( Y$ Q4 d* @
    5 l$ X3 [- c3 z
    注:用以上方法算出的结果均在最优解范围内,详细解读请待下次,困了该sleep了& f# m0 l* v6 g4 y- j
    ————————————————; [# e1 O$ ?9 ]
    版权声明:本文为CSDN博主「盈博简」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。1 b+ v# d0 l' c4 N
    原文链接:https://blog.csdn.net/Sandm_Hou/article/details/112726635
    3 Y& |, D* L, F9 M. P/ |# V
    9 U1 q0 w0 k0 g3 ~- J6 N5 P' k1 I; T+ w/ a# m; E& g. D
    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 05:12 , Processed in 0.430737 second(s), 61 queries .

    回顶部