- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 565615 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174907
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
6 t, N. Y6 l8 c, q7 p
2020全国大学生数学建模A题思路讲解与核心代码1 ^2 Q* y+ `. B' \1 c: U, u$ S
$ P1 x t& E% [4 E
2020全国大学生数学建模A题思路讲解与核心代码
& E+ y0 l$ ]+ g5 s题目
2 }' u3 p/ [3 x" p3 {/ @核心方法:- n" M: v6 C% a( L* d
问题一2 ]" _6 f9 P& k: b1 C
问题二
- g% _& A* _1 {; r; T问题三和问题四
5 |% K5 H' K1 G答案如下:8 j" u$ y) n9 K5 J1 u# j1 ?
题目
4 H$ s% J2 j, F$ \ R( a. E8 b
& J6 r! P4 S/ W9 e D$ U3 W' X- m- [1 f- ^8 s! N( ?+ a; w( |2 j% e
# p( \. `0 l8 f3 w( C7 |4 k/ `
* F8 J$ s. k8 T
* v3 t z) ^8 Z/ o: h+ B
3 B; K, f `$ y# `3 b) T核心方法:5 _; I0 P) s: K8 `% _" M! ^
热传导
& U4 }+ Y* d' |7 u( ]有限差分法: a: T, m6 D" K% v x. c* o! l
遍历法& g7 ~0 F: d( A P5 G( E1 ^
: q, Z2 y( B* v" Z0 u
+ @% p4 ]% o/ h9 f* ^: U, o5 s9 ?. q
问题一7 t9 Z0 H& f) i8 a* y5 x5 K
建立焊接区域中心温度变化规律模型,推出焊接区域中心温度与其厚度和PCB 板所走过的时间的关系。查阅相关资料可知,由于自动焊接过程中热量传递复杂,因此对模型进行简化,只考虑一维方向的热量传导,即单侧单方向小温区对PCB 板的热量传导。利用能量守恒定律和 Fourier 热传导定律推出热传导方程,再利用附数据件求出方程中的参数,进而建立了焊接区域中心温度变化规律型,即炉温曲线变化模型。依据建立出的炉温曲线变化模型,根据问题一中所给出的各温区的温度参数T1, T2, T3, T4 及过炉速度v,需要求出过炉曲线,即焊接区中心的温度变化
$ K: Z% o6 m \) N8 V7 A+ g( U3 Z9 w, P5 d0 d
% X* u3 V7 f5 i8 f对于热传导方程的求解,需要先确定热传导方程中的参数—热扩散率,这
! `9 T& o3 u% [3 w* W6 R" m$ \& |' J可以通过附件提供的炉温曲线数据进行参数估计。热传导方程的求解可以利用差分法进行。4 R7 v: G; R' D" T$ Z5 @4 C0 j
% E# m v6 I4 |! {" d3 W
1 }! P( N& b4 w$ o% E
// lamda的计算的部分代码
! }2 p3 @# y, o1 n& Tarray=zeros(76,length(x1));
4 e- |% x Z5 [: _; |array(1, =y;: m& f; R. g& D! b
array(:,1)=z(:,1);
5 ?0 a1 _# {; L: U" S4 a8 l" Rfor k=1:31
$ h: g: A" j( x for j=1 (1)-1
. k0 g+ ^4 o% W0 o' J G: M for i=2:757 X ~& {; y3 F! D( s+ x
array(i,j+1)=array(i,j)+u(k)*(array(i-1,j)-2*array(i,j)+array(i+1,j));/ K4 A# Z% [ I1 N$ m! k1 g1 M
end
; m/ ^3 [' N& p) Z array(76,j+1)=array(74,j+1);/ b8 I+ J7 e( o r
end
6 u! I; o: f8 c2 ?2 Z e1=1 (1);
1 U F3 k5 W% p0 R3 Q0 V. R e2=time(1:5, ;
+ p$ U/ I, ~! f1 s/ y [C,ia,ib]=intersect(e1,e2*100);8 t" ^ ~& J& }0 W7 `
for i=1:5
8 C8 S. N8 p4 E( R! V U1 o b(i)=array(75,ia(i));
4 E1 `, b. Y' P! e$ T5 p end9 W/ L% @4 O- V, f2 G3 [$ Y
for i=1:5
+ q$ t- a& o, ^% V% } c(i)=(temperature(i)-b(i))^2;
3 j* P0 |5 o' M4 Q4 d4 F end
`" o- \* d0 f6 I3 V rss(k)=sum(c( );
3 G% w/ Z5 V/ I) Hend
* V2 \! g. w% E% L' o( C. wresult=[u;rss];. N. {& S) W$ x- ~) j
1( A4 J; X0 _7 Z9 r p8 b4 w1 [1 I
2
3 s \5 r- T) @4 ^# T) V3
6 ^) }4 t, y0 v' m; E4/ G% R% H9 `0 f+ j
5
7 D c" j5 b8 g66 h) O0 |, c( ?# R+ W e, \
7
& W& F; O: `) M* u. A8
2 u. W I& C1 o3 |' V9# K1 F5 H- w& t# U
10/ @' d- v6 x9 \
11
: M$ a) H2 s# M9 M9 F% d1 t1 B12/ ^5 A% x6 ]2 K; u9 J. ]. @
13
" O6 U: h- O9 Y" u! N; I: N. t. z14
' }0 ?) [) F+ G15 J& [/ V; g4 M% s E/ r
16
, A" @6 x# ^: J+ U* b2 H' b174 {9 A" h7 O1 Q4 S
18; i2 k& x( I5 \9 ~! r1 j
19$ O) I ~4 \* p* H' y
20/ v. j2 l: D" N/ [& X7 e- [
21+ |" F1 x7 h6 [0 w" S3 X( h! G
220 L6 J* l7 H: f- X# a" f
235 s1 ^" S8 \) }) Z
有限差分的核心代码:
3 j; T- }; x2 G6 j- F3 M7 V: e; p, m/ h1 r. |' [/ H) Y* M5 ~$ {* w
, R& _+ }+ @' s6 p% {
//有限差分的核心代码! z& k; W7 B( A/ ?% f8 L1 C
array=zeros(76,length(x1));, ^, s; m4 l+ P# e5 z2 U
array(1, =y;
3 [& _ V9 V) D: s* H; yarray(:,1)=z(:,1);$ }2 B) D% w' \
for j=1 (1)
/ n9 e% X, `6 q( t for i=2:759 i9 V- R/ W5 v5 W2 M+ {# G
array(i,j+1)=array(i,j)+u(1)*(array(i-1,j)-2*array(i,j)+array(i+1,j));
! |, O& _- L5 s& A( B- Q end1 _6 c; i( ]# b' T
array(76,j+1)=array(74,j+1);
7 i* v6 ~# z: W. K7 U8 ]4 u2 Wend
% F# ^. f- i, q- u9 O: O5 K' G5 M: vz(:,2)=array(:,2143);1 T1 M8 n4 u; P8 n
for k=1:9
/ h P8 v& V9 y: H& r% W: | for j=L(k) (k+1)7 D, U7 b4 e9 n* _2 ]& J
for i=2:75
2 m% |- C/ f4 | array(i,j+1)=array(i,j)+u(k+1)*(array(i-1,j)-2*array(i,j)+array(i+1,j));
7 q- k' g, [3 a, S; p end
! y9 @% c3 @' Z) H array(76,j+1)=array(74,j+1);. I+ k' }2 k e5 ?
end6 P' t5 p2 `1 ]1 a) _- S
end7 Y+ E" j# H: f, h$ o- D" P
array(:,length(array))=[];
+ {0 Y% y5 |- r6 B% W
2 c: [2 l$ s8 M8 \1 h! A$ Z7 b3 \, p
12 d3 Y. h4 P! e( y
2
@% T2 T. Q6 |! Z7 }. Z* b3
+ p. j# O& v& g, k4
$ w$ f' e% k2 }5
: `8 r5 H- ~- B( k9 A: d3 F6
8 a# B3 b* q) }$ e# ?% p% g7
# {5 E0 ^5 v: F; x( s0 ]81 F$ i% T! D9 I* l4 O4 }
98 O8 o6 T$ l) Q
10
! c8 r9 w4 s# `114 t& u! w8 n& u, v
122 d' N+ a; Y0 \
13
" S8 k' h9 ?4 I9 |+ Z14
3 }& ]+ U; \. I' \- H15
3 I1 ?% ?6 C4 ^! K/ `; p: t16
1 V% p9 A! J6 \5 _0 I* x3 F& H17
5 C, j9 X! c1 k1 V: S( g, T' W2 Q18
9 a1 O; ]8 t) f+ U! ?) R19# ^: r: N$ z. X0 E# L# K
20
5 q" D2 i; u/ t# B8 C9 A21
2 }! ]9 x$ A Q* x2 k c得模拟数据和真实数据对比得炉温曲线:
7 t4 u% h; O7 _7 N+ p; R6 S3 R' d8 _- d7 B+ G
: m. {0 I3 \/ b: a
6 f% p$ T0 r& d' U# B% O, ^' y2 t7 G* f
问题二, ]1 n+ ?! M; Z& w3 {
问题二中,基于问题一中所建立的炉温曲线模型,在四个温度参数给定的条件求取传送带的最大过炉速度为优化问题。此问题可以看做是问题一所建立模型的反问题,即在温度分布7 `4 \/ G" l4 S, y2 A0 k, R' }
已知的条件下,要求通过该分布计算最大过炉速度v。在具体求解该反问题时,可以利用遍历法对过炉速度进行遍历搜索,这样就将反问题转化为了正问题的求解,从而问题一中模型方法都可以继续使用。% f, M5 U9 r$ v' N# S$ u( ]* H$ H
; u* [1 m8 G* P* }2 J/ j
! {! o, t; Y, }" [2 n
问题三和问题四
. i# i# m$ v# m7 N( }0 ~( p, N问题三和问题四仍然和问题二类似,也是对过炉曲线提出了不同的要求,进而在这些要求之下确定影响炉温曲线的 5 个参数 T1, T2, T3, T4, v ,求解也可以采用与问题二相同的遍历法进行,但由于此时遍历的变量个数增多,如果遍历步长较小,必然会使得计算量增大,因而必要情况下,可采用分阶段的遍历,即:大范围,大步长,小范围,小步长。需要考虑的就是对于面积和对称性的数学描述,面积可以采用积分的离散化表示,对称性可以采用以最大峰值温度两侧取对称点,使对称点的温度差值尽可能小来实现。, i: s# t7 z, z
! y0 B! Y& h; W" }+ P
$ J! Y7 A& P. t, ~( F
答案如下:
% y4 o0 X; d. u, K; Q A6 q6 h9 s+ W! P7 O& G. S# F
$ x; Q7 e5 k5 M$ `3 X1 T注:用以上方法算出的结果均在最优解范围内,详细解读请待下次,困了该sleep了
+ k2 X* c$ i; m& Y. y9 B( ]————————————————
9 j* {4 ~! s8 U; q8 N1 Z) h版权声明:本文为CSDN博主「盈博简」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。4 H7 w d" ~, ~% k
原文链接:https://blog.csdn.net/Sandm_Hou/article/details/112726635
, T) l# a, r3 I
f7 ?) Q8 E5 G `& [0 |3 l5 Z2 F* B. U$ b3 c% C
|
zan
|