- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 561323 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 173770
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 18
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
4 Y5 e; P1 f* P" U2020全国大学生数学建模A题思路讲解与核心代码% e: e {4 g) e# i# F7 Z( M1 j
0 F* ^( u' J3 x: q" Y% \8 o) Z2020全国大学生数学建模A题思路讲解与核心代码+ p- {) i" Z9 D- |8 m+ L3 }
题目
( w v" K# L! C$ U& }核心方法:- E& a1 v5 p% j0 j
问题一0 u1 L7 F! m( K0 b) s
问题二, n, w) n4 T. L* \ c- W( ^9 {
问题三和问题四' x# A* G( g8 x
答案如下:: t; O5 z$ q9 S1 R7 U
题目
! }9 E" M2 d, f1 u& m" z6 l
$ `6 c% C% F- S) p s& y# x1 U: w; h. Z7 J, }" c* e& S9 h
+ j3 f9 J& H0 l
0 M3 `! a% H) u' |" d
@8 }6 U' z7 t4 H6 t# R) w( n0 \( j' ]9 R! m" w3 w
核心方法:, E" | o# s0 h2 a
热传导; S( E6 I4 R& k$ q: ~
有限差分法8 i/ {( A3 m& v' m) }) Y
遍历法
; A3 A4 n6 c8 t2 e4 L" G7 z; X' N( g. f9 h8 A; D0 \. N3 `3 P" j3 O7 J
# _+ L9 ]) U8 H( w问题一
8 L; H2 \& I# `5 S, a2 d% ?建立焊接区域中心温度变化规律模型,推出焊接区域中心温度与其厚度和PCB 板所走过的时间的关系。查阅相关资料可知,由于自动焊接过程中热量传递复杂,因此对模型进行简化,只考虑一维方向的热量传导,即单侧单方向小温区对PCB 板的热量传导。利用能量守恒定律和 Fourier 热传导定律推出热传导方程,再利用附数据件求出方程中的参数,进而建立了焊接区域中心温度变化规律型,即炉温曲线变化模型。依据建立出的炉温曲线变化模型,根据问题一中所给出的各温区的温度参数T1, T2, T3, T4 及过炉速度v,需要求出过炉曲线,即焊接区中心的温度变化
3 ~' o' y- c% B* G2 ~1 J% V) e6 ~" M, m& z/ v8 p, S
7 q' T2 o3 V9 ]对于热传导方程的求解,需要先确定热传导方程中的参数—热扩散率,这- Z5 n0 U3 J( x
可以通过附件提供的炉温曲线数据进行参数估计。热传导方程的求解可以利用差分法进行。. R# Y- i, ~# e& W: s
9 ^! `+ N' B" J- m" M' ~
" m! R% |3 P: q
// lamda的计算的部分代码
) L2 K) O! H7 `- W; Varray=zeros(76,length(x1));
3 ?) B; r$ x! I. ]( I. jarray(1, =y;
% n+ c( ?) p) Y& e+ O7 aarray(:,1)=z(:,1);
0 L# {4 a$ l6 m4 z! K+ D- Nfor k=1:318 M+ [6 E& V5 d! f
for j=1 (1)-1: O! h2 r" Y" V8 D( g( a9 u" }% C
for i=2:758 @& F+ T3 }9 m
array(i,j+1)=array(i,j)+u(k)*(array(i-1,j)-2*array(i,j)+array(i+1,j));% k1 o0 J" T7 u. r8 g4 w0 c. R
end
% Z- k6 V# |$ v$ B2 Y4 s: k6 @ array(76,j+1)=array(74,j+1);
/ r: Q8 Q6 }( i' F end
( T* q# d k! k: _1 `) X2 `& S/ ?% l1 h e1=1 (1);
: W# G) p% [. o- t( g e2=time(1:5, ;0 j3 G! j* |6 D# O: U
[C,ia,ib]=intersect(e1,e2*100);
* c7 r6 u8 Y1 N- X9 f for i=1:5; p" c M0 D$ q: U5 W
b(i)=array(75,ia(i));& s4 C6 E% q0 ~9 G/ [
end1 f0 ?* Z( s0 g1 o' W J/ J' X
for i=1:5$ D P8 O! f! }; y. ]) a; T7 ~: K
c(i)=(temperature(i)-b(i))^2;3 R/ z$ W5 [3 Y& J2 C
end) Z& Z P3 v- }/ q# \, K5 t; i# _
rss(k)=sum(c( );* q+ u+ o+ o- M. t( r) K
end
2 n* q( i5 F$ s3 Presult=[u;rss];
( u$ x+ Q5 {- n; G6 b2 O$ y1- F. y& J+ @7 Q$ F* H% ]
2
- Q0 @8 A L- Q! o7 P) Z3
- N j+ B0 w2 b8 m9 q; \42 q% O# F2 T+ w N# \% y) @9 y
5
" L" V. j+ b7 m9 ^3 q6
A) b5 @& P j2 i" z7
2 K( g+ w5 z7 k- O3 Q5 ^& G8
" Q5 g9 a! a+ l4 ? t, M94 W/ E" ^3 [& ]
10- s% u* @! p$ g3 x e& s
116 B! N2 ?5 a9 H4 V( B
12, @6 \- B) P. M, q
13
* n1 i) [6 Q2 u2 E f14
" _$ J% l& e7 T' k- p15
' R2 l. X% F) D( _7 z16+ c% Z+ I0 Z: O! p( a3 @) d' Y9 b. M. M
178 X/ ]( }2 ?* G9 A8 V, ? Y% H- K z
18
& O0 ~% d! `$ Y7 q. j s" e& c/ `19
* B; z4 Z5 X' r, M202 T* F# c) v1 ]0 y' [. W& r% A
21# y9 F& a, ~ }
22
a1 b! q+ J& v7 I/ N' c23
& i/ M3 |6 g) n, d8 x有限差分的核心代码:" Y! G, l0 ~# K/ K- ~3 I4 Z
) P& K8 j- l( I7 s
& L/ |; S( L# t//有限差分的核心代码: T- d% O# F2 n) A
array=zeros(76,length(x1));6 N9 @6 c2 {9 Z8 \4 a: O3 J2 `1 Y1 Q2 b
array(1, =y;
) c8 I; C$ h; K/ parray(:,1)=z(:,1);
3 z1 D7 O3 l; }* j8 Mfor j=1 (1)4 H1 e/ o( ?. Q0 T7 s2 g+ I
for i=2:75- E+ ~& q" y% O2 I* m5 K" L
array(i,j+1)=array(i,j)+u(1)*(array(i-1,j)-2*array(i,j)+array(i+1,j)); ( G% C* p2 I# d
end
1 N& t% r3 g7 { l array(76,j+1)=array(74,j+1);* E; X% ?; l2 ]; [$ [6 c
end' [- D& ^' d) R: i6 o. `# w
z(:,2)=array(:,2143);
3 n% c% I/ h. D- Gfor k=1:9
. E$ |/ p1 _& r* Z- m p& s, Q for j=L(k) (k+1)& P6 W: q" y8 l9 f: g
for i=2:75" I7 c9 {+ _) h9 N5 [
array(i,j+1)=array(i,j)+u(k+1)*(array(i-1,j)-2*array(i,j)+array(i+1,j)); 7 w! ]! l4 g3 ~
end
" K) K5 y3 Y( i6 q array(76,j+1)=array(74,j+1);3 E" m- S w8 G4 e8 q3 O! b
end
) {5 J) x) |1 u) V z4 D; cend G5 y: A( r+ x* Y
array(:,length(array))=[];
/ H4 r' X- n: P. d* q* p+ h- p
1 w. ?& o6 K2 B, ]3 e5 s& W% w' h1 v0 B
19 m9 v( }( S3 t+ z! \/ T( k0 D6 ]
2
9 `4 ~' u' E' ^: s3
( [9 P5 P6 W/ Q4 q. n; v( n2 d, k4
2 h! X$ k, }4 F; Q4 u4 ^. D5
5 ]7 q7 n9 d& Q o0 a, z* S6 I6 ]6
+ g) W0 S- A9 D; K' A# [9 \73 W6 T# L" c3 f4 B
8
9 `0 Q# O3 C# ^' ]# R7 q# }3 @8 d9
+ S, N. N, y4 O6 [' ~* z10. J* v- R7 }7 T8 k/ q7 f7 R( w- O
11( Z8 t8 e8 o, \8 ^% E' I4 b. ?
12
8 V8 m6 s( f x/ P! K: X" ~+ F133 O! B& \: {0 \& O- m8 A @( J
148 y6 y: I a0 H6 g$ e# \( Y' G2 G9 Q
15
% R$ n* f1 D7 ^$ G. i" H2 S16
/ k" c* f: C& j17
, L9 p- N, S# T18
4 R. U5 o5 d" p+ V19
1 }7 \% @, q' _+ g20: E0 p) g8 y7 z) k: X" H% L4 W
213 t, ?/ v. h8 |- Z/ L/ F
得模拟数据和真实数据对比得炉温曲线:
+ h3 ~6 p) c j# M$ q W" O9 ^
1 e/ ~& O" l; p# h; d2 I
_, O: T @. ?$ P7 }9 \/ \" Z
( w" Q3 v' ~. x! ? t- R3 Y问题二
7 d7 q2 h) A5 c$ f- B问题二中,基于问题一中所建立的炉温曲线模型,在四个温度参数给定的条件求取传送带的最大过炉速度为优化问题。此问题可以看做是问题一所建立模型的反问题,即在温度分布% R3 ^! A$ r& D$ ?
已知的条件下,要求通过该分布计算最大过炉速度v。在具体求解该反问题时,可以利用遍历法对过炉速度进行遍历搜索,这样就将反问题转化为了正问题的求解,从而问题一中模型方法都可以继续使用。' I+ H H( n! U0 U
6 M6 w% V4 o# [1 a7 O7 I# L R$ ~- v& T9 \
问题三和问题四
- ]+ V2 r- M! V# R5 ~/ k问题三和问题四仍然和问题二类似,也是对过炉曲线提出了不同的要求,进而在这些要求之下确定影响炉温曲线的 5 个参数 T1, T2, T3, T4, v ,求解也可以采用与问题二相同的遍历法进行,但由于此时遍历的变量个数增多,如果遍历步长较小,必然会使得计算量增大,因而必要情况下,可采用分阶段的遍历,即:大范围,大步长,小范围,小步长。需要考虑的就是对于面积和对称性的数学描述,面积可以采用积分的离散化表示,对称性可以采用以最大峰值温度两侧取对称点,使对称点的温度差值尽可能小来实现。8 Q6 C7 j( g/ l1 [' g3 H) H }
7 n M+ U* z" V3 O' |& _. r; D
# k2 k! N3 U1 \; M1 k5 J答案如下:/ R$ Q* m) ^ I" \$ U
* ~+ J! g7 B7 I0 [6 z Y r: d5 F8 z
注:用以上方法算出的结果均在最优解范围内,详细解读请待下次,困了该sleep了
; _+ Y+ G* R8 e: D6 m z: w3 n————————————————
$ x4 Z" A g0 A! W/ m! o# D版权声明:本文为CSDN博主「盈博简」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
3 d) k' E- u( b. b9 N/ Q3 `原文链接:https://blog.csdn.net/Sandm_Hou/article/details/112726635( p$ E, S( ?- Y8 f6 [) E
7 _/ R! F% N0 K# M7 d
! _& w5 t% I9 }# K# _5 b0 k" [( n* c |
zan
|