- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 557772 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 172704
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 18
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
. Z2 T8 o0 @+ x9 M+ l$ d2020全国大学生数学建模A题思路讲解与核心代码
- N; r! C, t$ { P: Y- M* P! y, k3 `% f4 U" r
2020全国大学生数学建模A题思路讲解与核心代码
* O( ^) b; a4 e# a6 i) E t题目
2 k! Q6 L8 l, g6 C核心方法:" c" E5 b- ?% s/ y
问题一
4 x/ F" l. @) P h问题二
# p7 v. d6 `& Y; M! \ P# @问题三和问题四& G+ l: E1 K! y2 U: d
答案如下:
" r# ^/ i3 c! a题目
, `" N: D% l3 ~ T, B& Z+ G2 w- K9 f! h" D+ D, @0 N
! W8 o, w: J$ F* K* `/ |! O" Y
! v9 _' k4 i* Q* y
; Q9 V* X7 L2 M- V! h
8 ?& g$ Q/ s2 M$ `3 G% C- i& s" \5 Q$ p; m
核心方法:
# T0 @) b9 \5 y* S# T* W热传导0 [2 ?: ]4 k% T( \
有限差分法
$ p. ?# G3 G# u* R遍历法% @: E, U! s3 ?3 y7 n6 {3 G
6 [8 E7 j7 J. b. ?' _+ C% N
9 J7 y# L3 D6 O1 C3 Y- b, c6 | f问题一
4 o% Q& H4 Q1 Q建立焊接区域中心温度变化规律模型,推出焊接区域中心温度与其厚度和PCB 板所走过的时间的关系。查阅相关资料可知,由于自动焊接过程中热量传递复杂,因此对模型进行简化,只考虑一维方向的热量传导,即单侧单方向小温区对PCB 板的热量传导。利用能量守恒定律和 Fourier 热传导定律推出热传导方程,再利用附数据件求出方程中的参数,进而建立了焊接区域中心温度变化规律型,即炉温曲线变化模型。依据建立出的炉温曲线变化模型,根据问题一中所给出的各温区的温度参数T1, T2, T3, T4 及过炉速度v,需要求出过炉曲线,即焊接区中心的温度变化
( t: W4 E' M M' J; L2 V; e N. P, v2 e
! f' J* D) V l' T对于热传导方程的求解,需要先确定热传导方程中的参数—热扩散率,这8 Z# N2 L4 s3 j+ G
可以通过附件提供的炉温曲线数据进行参数估计。热传导方程的求解可以利用差分法进行。7 U# r4 V9 E0 W3 h: K
& x/ w l( Z* t. O! }, r9 s0 L ?: K W
// lamda的计算的部分代码
: V6 K5 f# N* G1 }$ t! I8 carray=zeros(76,length(x1));
2 |8 G- h# b: n( ?0 O+ oarray(1, =y;
, {$ ?9 e; M8 V9 a; y1 sarray(:,1)=z(:,1);
" `$ C; p& y2 Gfor k=1:31
; u; E( ~1 M, e8 U0 C for j=1 (1)-1
( B' E% {* x+ B" R* @0 N- i for i=2:75
0 d4 I, V- I8 @7 u& ? array(i,j+1)=array(i,j)+u(k)*(array(i-1,j)-2*array(i,j)+array(i+1,j));
. G: s0 r& b5 H5 J end1 y/ S: ?1 @6 l* k
array(76,j+1)=array(74,j+1);
2 P1 T7 R& `9 Y1 [ end, i: P3 _$ S. @: r, R
e1=1 (1);4 a% O6 v l$ u# Z @- W% m+ g) I
e2=time(1:5, ;
- x4 Q! r$ j( q6 b$ b& _; Y2 D [C,ia,ib]=intersect(e1,e2*100);- m% S- s, Q* ~4 ~1 L) Q# e
for i=1:5
3 j( {& t4 W( a. w- e o+ T; s) j b(i)=array(75,ia(i));2 W% j9 o1 V3 U) Y! N7 W% ]
end
6 v+ T! G, o$ v% B' [( S' B5 f9 h for i=1:50 _) z5 b4 ]6 h' a
c(i)=(temperature(i)-b(i))^2;9 D/ Y" l; A9 R7 d/ D( y6 P6 S
end! {% @- }9 j% f: q) ?4 _
rss(k)=sum(c( );; e! V" g* X7 q6 m4 ]1 X& k
end
$ y) r* j% n7 E3 g7 iresult=[u;rss];
! \7 P9 _! d4 H7 B3 B1/ h( Z7 z. H' I4 N
2
8 b+ B) |1 v0 A: L3 U1 w6 C U0 j- t3
$ N0 U: P0 U* V$ v: h8 z4
) P3 I( P& [3 x" c/ b0 y) X5# T3 J- X$ ?& i; c
6
2 g- N: x- u; H% r% T& T8 S7& |: h* A# Q( a& w; c" L
8
8 f/ R6 E! _5 o9# [ h: A. B \, A V7 A" H: o2 X
10
+ \, I6 g! `9 m' _1 h4 U11: W2 W( V, {' |1 l$ ~( N% G# @
12
5 e! i# c- @- o* K2 q" @( F132 D4 r! e0 @ H, E' H
14
0 ]6 W: o$ y" y, Z9 U4 q15
3 V- l# `# q' w& U0 Z) K m16: k" p0 h. w1 V8 Q5 i4 x- O
17
: P2 g! q+ @; Z# Q8 U18& G* r+ V" i- x+ l) r
19+ |2 c) o4 Y* r& r* \& x' p
20, x+ x+ w5 y% c1 l6 K& h
21
; }! N$ A4 s: T' v9 r; F' X N: O: _4 M22/ i. V) n' v. x+ j+ j5 |. {+ K
23
: J, ?. I% g, ~5 x) q Z+ r& i2 e有限差分的核心代码:, z! K, A1 u1 l6 @& t
+ V5 h @1 [* J$ Z+ ^" R
( b b7 j" \3 a; ^' {//有限差分的核心代码- \ G! U1 l: |7 P1 H. Z8 N3 H) L
array=zeros(76,length(x1));4 g1 }( ?6 q& F" K* P( M' h, h
array(1, =y;
& `/ W# j; V+ r+ Barray(:,1)=z(:,1);' e7 r" c3 ~- x, C7 u
for j=1 (1)9 Y! U7 \- t* E1 u
for i=2:75 s9 h& B+ V% g- A
array(i,j+1)=array(i,j)+u(1)*(array(i-1,j)-2*array(i,j)+array(i+1,j)); A7 ~0 o3 m9 g' o( z
end# w# @9 q$ F. v# V: f+ v
array(76,j+1)=array(74,j+1);
$ C# O2 [5 x/ c5 S* hend+ x, L% J, |! s0 w$ w5 m' G
z(:,2)=array(:,2143);6 L6 i0 ]! K7 k! D
for k=1:9
( F+ e/ ?- L9 a6 ]& d for j=L(k) (k+1)
- b5 \' a2 o8 y% I( G' [# } for i=2:75! @, N3 @; Z0 B! t8 L3 o1 X, t
array(i,j+1)=array(i,j)+u(k+1)*(array(i-1,j)-2*array(i,j)+array(i+1,j));
# c( S: ~+ n9 b) Z- g) H6 a/ H end
9 z ^: Z5 g P$ t array(76,j+1)=array(74,j+1);( M; W! s; f0 j$ n2 m/ F& i
end
* L q' }' a: l9 Z: jend; I$ [/ i* S9 Y
array(:,length(array))=[];
6 D3 L& J/ ^: C; q, [- h: P6 t' M/ X1 n
% W0 `! x3 l0 v0 ^! X2 |. D12 R- K5 D. ~& v+ E Z
23 P4 R: g4 B; h, _
3# G% K% w% n) O- e* _3 i5 {6 n, S
4
- d3 L |% k+ [5 w: x& E5/ j2 L! U( a( D7 q8 r- o2 Y
6
9 i5 {" H6 @# C7 V2 [$ v1 T$ b3 B7
% I8 F" M# {! I8
( d0 t- M/ r2 V E9% r# ~) ^2 G1 A+ Y3 X' C. {
10
9 r* P( P$ h) O9 A* ?* l) b* g11. x! N5 b1 `$ |
12
+ {; j# v; T4 _13
( s- o# m2 `9 N' Q14" T9 _- V/ E) T
15
5 o i& `$ I1 R3 t16
" Y/ l( i5 o7 V4 [3 v2 Y4 d6 g: h170 L- D/ N* F4 ]/ W8 c
18- m; q$ R/ A9 o
19
5 \+ N* g" _/ C1 ]* s20
1 V$ b3 C) `) v4 P- ]214 J0 a0 L, o% C
得模拟数据和真实数据对比得炉温曲线:
" [ Q, y( a$ h4 Q- E1 v* R, o$ ~4 }3 N0 b% t! u7 {9 f& i
$ D. Q2 V$ i( v7 k" l/ o
! |6 l2 ]7 x3 z' N/ |) X! g# s, \1 Z2 ] A) z X0 g
问题二
- M9 {/ d% O& ?4 ], `! @问题二中,基于问题一中所建立的炉温曲线模型,在四个温度参数给定的条件求取传送带的最大过炉速度为优化问题。此问题可以看做是问题一所建立模型的反问题,即在温度分布/ }5 V3 t. y# n+ o c3 b- L9 n1 C
已知的条件下,要求通过该分布计算最大过炉速度v。在具体求解该反问题时,可以利用遍历法对过炉速度进行遍历搜索,这样就将反问题转化为了正问题的求解,从而问题一中模型方法都可以继续使用。
: x Y' L% s: F8 ]- [- Q, \
$ ?; x. B$ s& l' `, n$ j4 K j5 D8 ?% K$ j) A7 K
问题三和问题四
* i& j+ t; |% B# c, I3 S问题三和问题四仍然和问题二类似,也是对过炉曲线提出了不同的要求,进而在这些要求之下确定影响炉温曲线的 5 个参数 T1, T2, T3, T4, v ,求解也可以采用与问题二相同的遍历法进行,但由于此时遍历的变量个数增多,如果遍历步长较小,必然会使得计算量增大,因而必要情况下,可采用分阶段的遍历,即:大范围,大步长,小范围,小步长。需要考虑的就是对于面积和对称性的数学描述,面积可以采用积分的离散化表示,对称性可以采用以最大峰值温度两侧取对称点,使对称点的温度差值尽可能小来实现。; M5 U" J' @2 L5 d# z4 O
( _7 z4 P$ v8 O" V) \$ O `9 r8 k: _$ q+ f
答案如下:% E! Y& E _& o$ @% ~) O
* M- x5 f. e: n. n8 Y
' X& T: ?1 M1 l- w6 \; h1 V注:用以上方法算出的结果均在最优解范围内,详细解读请待下次,困了该sleep了
% u1 @) V& s7 A- l4 X* t1 w. j————————————————/ | B! o R# W
版权声明:本文为CSDN博主「盈博简」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
' v. n3 v" t w- s( P- N$ u" x原文链接:https://blog.csdn.net/Sandm_Hou/article/details/112726635
$ b% N4 W7 W6 |: H# ~5 Y) w& v. q) P w$ c$ Q) }) r
E6 D7 b4 o- g J# h+ P
|
zan
|