QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 5315|回复: 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
    ! w! @: \" ?, U" R+ Z  \
    2020全国大学生数学建模A题思路讲解与核心代码
    ! K: k# R! T4 |- o. c' ^$ \
    ; r+ @2 e' f# b* }2 O% T5 l3 k2020全国大学生数学建模A题思路讲解与核心代码
    " \5 ^4 r5 C# X* G4 X  T) g题目
    - ~. S/ W) Y9 {! z, j' r核心方法:: M/ K" O2 J1 |- H, C
    问题一4 B! X& Z0 g% h/ I
    问题二' C( b; J9 f* S8 F) @; R
    问题三和问题四
    . \& T- u) f# Y+ g: b答案如下:
    1 ^6 C- e: r) V$ y4 p! K2 b7 _0 g题目4 |0 J, ?7 r$ j- _

    9 B: z* m/ V3 ^1 U( q

    - M2 K) ?5 R2 n7 q3 n* T) r4 `9 h: @  S' \; N

    2 N' Z% X2 f4 M& A  O, s* s: K; D
    9 i- P: |& [/ c* r' c

    . e! w, G  c% u$ j! _2 M3 V5 t) f核心方法:% p3 }5 _- f2 e" G2 P7 ?
    热传导
    2 w4 Z0 P+ l% U0 f5 u有限差分法
    . ]' ?. c. e# {3 @$ n, N1 {( g, k3 k遍历法( }4 t: s! T& G, h, w

    7 t% x1 C& L+ \- O& q- c1 J
    $ c. u8 F, j6 v( S, J6 w8 n- X
    问题一; H  p8 `0 X/ t1 \
    建立焊接区域中心温度变化规律模型,推出焊接区域中心温度与其厚度和PCB 板所走过的时间的关系。查阅相关资料可知,由于自动焊接过程中热量传递复杂,因此对模型进行简化,只考虑一维方向的热量传导,即单侧单方向小温区对PCB 板的热量传导。利用能量守恒定律和 Fourier 热传导定律推出热传导方程,再利用附数据件求出方程中的参数,进而建立了焊接区域中心温度变化规律型,即炉温曲线变化模型。依据建立出的炉温曲线变化模型,根据问题一中所给出的各温区的温度参数T1, T2, T3, T4 及过炉速度v,需要求出过炉曲线,即焊接区中心的温度变化, D6 b3 B6 N* p+ Y4 Y8 L* P

    7 Q0 [  L5 K  D  \
    * @) |6 r5 I* b1 U5 z  u8 R
    对于热传导方程的求解,需要先确定热传导方程中的参数—热扩散率,这6 m; ~6 ?% D1 z! `) v& L2 x# u$ X9 X8 R
    可以通过附件提供的炉温曲线数据进行参数估计。热传导方程的求解可以利用差分法进行。# B# \; P3 B+ X4 w$ A$ {& T

    1 \) P; W3 s( B# Z# e3 {) Z

    ( R/ @) g8 I0 I4 j// lamda的计算的部分代码
    9 c# x. k/ v$ b& E& Oarray=zeros(76,length(x1));& A6 T' L9 w6 S" a) T
    array(1,=y;6 @0 K, c2 \' `4 I
    array(:,1)=z(:,1);4 @. u. y* ], C- p  h5 \
    for k=1:315 s9 P% B' }: B/ }# q
        for j=1(1)-15 v( T8 A7 W/ K6 o4 ]. M: S% m
            for i=2:75
    & W' X9 \. R! Q' j% @0 r            array(i,j+1)=array(i,j)+u(k)*(array(i-1,j)-2*array(i,j)+array(i+1,j));3 Z( H, ?5 z8 N1 E( |
            end) V& t  T3 u9 p# x( s2 F
            array(76,j+1)=array(74,j+1);, H$ L. l- w6 C& |# P
        end9 Q8 g. i& N) d, L" h) w
        e1=1(1);( A  ]2 |! ?* S/ x6 S  Y
        e2=time(1:5,;0 Y2 a. E9 k  A0 Y7 u
        [C,ia,ib]=intersect(e1,e2*100);
    - R) M, Y1 c. Z+ N3 c8 W( ]( s    for i=1:5
    5 L" Z2 y7 |  U7 _  n0 E6 \        b(i)=array(75,ia(i));
    " \, W1 H9 u5 m' h& L    end# L5 S- _+ T, p! u& D, h
        for i=1:5
    ! V1 l0 C/ f; p" e, p' q        c(i)=(temperature(i)-b(i))^2;  `0 G$ ]8 p* C' @7 t  P
        end
    . A$ M# [8 I& ], K6 h    rss(k)=sum(c();6 `& P# {/ Q9 f  P6 ?: r: R
    end
    ; g. _! K% _0 j; Z% y3 xresult=[u;rss];# p! `: X* i) k+ Y
    1
    1 I8 m$ f6 i6 f5 H1 L1 f2, n7 h: x, i; M( ?/ \( c; t
    3
    / |$ i8 \: {8 j1 z. V4, R: ~' u+ i4 s: N* r: U
    5) f( O+ a( [3 L6 Y# U
    6
    # b) Q# ]  d4 U: T$ @7 X" \7" s/ f0 P& S" K
    8
    ' t4 m5 ^0 U+ J$ {& L9
    - o0 e( D: f- U$ E! M. \10* S" M: r& a# Y5 N3 L
    11
    * S0 E1 z  t: F" J! F# h& @7 W  I121 W" W4 m2 ?* i6 j2 L# }- d3 J: r
    13
    5 p% \& l; B% J2 ^! ]14. _5 R! }# N9 p- o
    15
    - Y7 X1 V; _5 {; S162 {2 g3 _' n) F; U$ i
    17
    ( V! H! T6 u, m- O8 I182 v) W& D' S0 l7 o3 l1 B
    19
    ) J1 C% t3 W9 ^7 y5 D" ?4 U20! h; W7 N3 U9 p, V
    21& M! [* X+ s+ R3 a# c3 q' H  K
    22
    ! \; n/ u/ R: [" N9 g; ~1 R& _- z236 A/ Q3 W* J5 N8 y' u5 U
    有限差分的核心代码:
    2 Y" S( U/ v; |
    , W2 D7 B* Z7 X6 j7 d0 f

    3 H$ ^' C0 {' T/ o6 _$ @//有限差分的核心代码
    7 b9 @* ?( d9 g' I8 h. _  _array=zeros(76,length(x1));! t: S9 B+ U7 U, l8 X, J/ B( \
    array(1,=y;
    5 f8 }. _1 l+ larray(:,1)=z(:,1);* y$ Y5 d/ v9 t
    for j=1(1)
    4 @/ O0 a( B2 a/ ]$ v    for i=2:75# ^' F  _! t! F5 _/ b5 [
            array(i,j+1)=array(i,j)+u(1)*(array(i-1,j)-2*array(i,j)+array(i+1,j)); - L0 d4 j8 i# R5 ?7 v
        end1 o8 W5 Z$ Z0 b' ?
            array(76,j+1)=array(74,j+1);: L7 _# l# l7 w$ b
    end: |# z4 N/ {/ ?& y- H5 V3 d3 t$ H5 {
    z(:,2)=array(:,2143);4 \+ w) z& p) K9 M$ y5 u
    for k=1:9
    % \# `  |  s* w" b6 h3 C- w9 w    for j=L(k)(k+1)
    & x4 G& @) I2 {8 n* v        for i=2:757 w3 O9 V# S* P" z6 u" s! g( R* Q
                array(i,j+1)=array(i,j)+u(k+1)*(array(i-1,j)-2*array(i,j)+array(i+1,j));
    ) q" j4 b7 ~1 s! g. d' K+ L        end+ e) f3 P0 r! S
                array(76,j+1)=array(74,j+1);
    . i5 Y. A$ j( `; e    end
    3 R3 ^9 P& w) f. q7 \$ zend
    # u# m* j- t/ U1 {array(:,length(array))=[];0 W) V8 F; x2 t: z
    8 j# ?8 l0 z# Y& M* k+ T

    3 h; `4 _* H- ^) Q4 L1* J9 l) ]* t6 Q+ }- T  o0 I, m4 B
    29 i5 F1 }& S/ ?$ R
    32 l3 J; x$ ^- v1 O$ d
    4) x2 [/ ~0 Y7 v9 j
    5
    9 v7 A1 ]7 W. k5 r. M62 s# |  D& S6 k. d
    7
    & ~7 w, O( _% f: i8 g; z2 b8
    4 X$ g* s' o. \& l; p/ i9' a. p' }' ^2 k( w+ u
    10. z2 w3 ^+ p& A% j' t
    11
    6 b. g6 ?7 n, n; p7 l9 P2 u12
    8 {& i, t# }6 w13, W: m: [) U" p2 \' c, v: s# c
    14
    - R; y% k5 \8 u15( d5 f. ?! G- Q7 Z6 I: I7 f2 Z
    16
    . b. S, h- ?& h3 @17
    " z7 g" G' k$ Q7 u189 k! z: |; `" J# F6 p, _  J
    192 _' G$ i  ~) p  H, R) Z
    20
    + f1 u: P5 V6 N0 n; S21/ \: p) Q* h7 \
    得模拟数据和真实数据对比得炉温曲线:9 J6 e, H  B9 X5 U) f

    ) v% N6 N# T' v) A: D$ H
    ! G& ]3 O- {* `8 g( h) m$ ^- ~# J, J

    $ J4 J0 R, Q/ ^: l1 p4 m; b* I
    9 S& m& ~4 ]4 y
    问题二- ^2 W$ z. q% j, y- I' i7 x! |9 _
    问题二中,基于问题一中所建立的炉温曲线模型,在四个温度参数给定的条件求取传送带的最大过炉速度为优化问题。此问题可以看做是问题一所建立模型的反问题,即在温度分布: l8 j5 Z) l, P# B3 l) @: f
    已知的条件下,要求通过该分布计算最大过炉速度v。在具体求解该反问题时,可以利用遍历法对过炉速度进行遍历搜索,这样就将反问题转化为了正问题的求解,从而问题一中模型方法都可以继续使用。# o+ H; t8 t$ C1 K$ q! C* x
    1 G# v( y$ L& _3 l. b3 e
    & f6 }1 _; O4 X5 {" W% t4 a7 O
    问题三和问题四" z; [0 Z( w( K
    问题三和问题四仍然和问题二类似,也是对过炉曲线提出了不同的要求,进而在这些要求之下确定影响炉温曲线的 5 个参数 T1, T2, T3, T4, v ,求解也可以采用与问题二相同的遍历法进行,但由于此时遍历的变量个数增多,如果遍历步长较小,必然会使得计算量增大,因而必要情况下,可采用分阶段的遍历,即:大范围,大步长,小范围,小步长。需要考虑的就是对于面积和对称性的数学描述,面积可以采用积分的离散化表示,对称性可以采用以最大峰值温度两侧取对称点,使对称点的温度差值尽可能小来实现。
    6 J: D% o5 h$ ^
    6 P9 r- E% k: Y
    2 f! b) _! q; d/ p) s5 }
    答案如下:
    8 }' h! p- `7 @( k; X  \2 i# J6 q5 _% n$ L

    $ d+ H8 S8 n, Q, `注:用以上方法算出的结果均在最优解范围内,详细解读请待下次,困了该sleep了
    , ?( f; }9 P) K' T# `! g0 Z7 `————————————————
    / H% ?) o, G+ T: O6 B7 k版权声明:本文为CSDN博主「盈博简」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    + u% z3 B6 @8 j原文链接:https://blog.csdn.net/Sandm_Hou/article/details/112726635- _6 k4 ]" E! Y  N4 `. b

    9 a  E% [0 w1 h" V* g8 Y/ s  ~& ~! r' x$ H8 }5 \- ?# S
    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-7-28 15:38 , Processed in 0.312187 second(s), 61 queries .

    回顶部