- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 567264 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 175402
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
" ]) N; o% s {; C1 ^2020全国大学生数学建模A题思路讲解与核心代码$ W/ D, l( F% x5 r
9 W: z3 C# p7 s' T2020全国大学生数学建模A题思路讲解与核心代码
( B" Z* v: I4 e O; t6 x( g题目, n1 [# s8 m5 u) e% B |
核心方法:
) D" H% U, M6 Q4 q问题一
1 z# Z. u7 G. P. x% B7 T" g: d问题二
7 o/ K; C0 |' l& L& ?, f( P问题三和问题四6 U" K" b- r( _1 R
答案如下:
# c; [1 W& N ]* V7 s5 _4 f题目8 V, G7 I4 V3 O' q o4 w: d$ G5 f
3 G2 I; w+ ~5 m6 `4 g4 |$ |% D. m. \) r
_5 l1 w. Y7 J
5 R+ a: D, R# {& f% r- F
7 M/ \3 H( I9 l1 U4 z
* B9 K. W* m/ r核心方法:# K; w1 L; J2 R( T
热传导
4 }# Y; Q. q4 R有限差分法7 w$ O8 L4 ?/ d! T7 A
遍历法: }' L* C W) s
. G1 L. i7 `8 @1 ?$ `- s. E
i; M& @/ r: A) [6 B
问题一
) L# x% B5 g' N. H. y: t建立焊接区域中心温度变化规律模型,推出焊接区域中心温度与其厚度和PCB 板所走过的时间的关系。查阅相关资料可知,由于自动焊接过程中热量传递复杂,因此对模型进行简化,只考虑一维方向的热量传导,即单侧单方向小温区对PCB 板的热量传导。利用能量守恒定律和 Fourier 热传导定律推出热传导方程,再利用附数据件求出方程中的参数,进而建立了焊接区域中心温度变化规律型,即炉温曲线变化模型。依据建立出的炉温曲线变化模型,根据问题一中所给出的各温区的温度参数T1, T2, T3, T4 及过炉速度v,需要求出过炉曲线,即焊接区中心的温度变化
* }+ A0 l3 t) D1 ^% u2 \
/ @. D; C, o! Y3 D6 {0 a7 h$ u$ s9 ~7 x5 \9 F9 ]$ r( \ A9 D7 i
对于热传导方程的求解,需要先确定热传导方程中的参数—热扩散率,这 u' U, e8 ` @0 S6 u) h4 C1 j
可以通过附件提供的炉温曲线数据进行参数估计。热传导方程的求解可以利用差分法进行。3 R) c/ |6 n2 t0 |+ r7 w: M
: m* ~/ n7 M$ e% [: W
4 Z& y# K% Z- y) U; J6 P// lamda的计算的部分代码
7 ^$ z1 x4 }8 Harray=zeros(76,length(x1));5 }8 J0 q! }0 x( ^) p- X. \' _
array(1, =y;
& e/ K/ r: c5 larray(:,1)=z(:,1);9 a! A6 s9 \; E
for k=1:31
' S4 n* R& ]* C' @- @$ x7 I# | for j=1 (1)-1
: W1 L5 _$ p: Q for i=2:75
B" Y2 ~3 k0 B& D' D% d8 n: q array(i,j+1)=array(i,j)+u(k)*(array(i-1,j)-2*array(i,j)+array(i+1,j));
. x- T; J: k7 o- B' n& E2 l end* x$ J% E7 [% H
array(76,j+1)=array(74,j+1);1 R' R# q" B9 C! j, Q
end
7 Q u- M/ o3 b8 ` e1=1 (1);
5 q" u* |/ k: f9 | e2=time(1:5, ;* w% d5 o" i3 o% p( d9 q' N3 _
[C,ia,ib]=intersect(e1,e2*100);
# k- o H' }8 a9 e for i=1:59 r" p/ Y0 U! n! h* d0 ~ y
b(i)=array(75,ia(i));
+ X' y( P, T2 K. ^0 _! p7 z end
9 E$ c5 ^9 ]" z/ a for i=1:5$ K8 M- F6 ]- ?0 Z8 H- f, B
c(i)=(temperature(i)-b(i))^2;
4 \3 n# q `2 u; j4 X2 @2 ^. c3 e: V end/ s) f% C i1 z6 A8 B/ U2 Y2 ]; _8 Z
rss(k)=sum(c( );$ A4 \! K/ z" _" X
end
4 b" L7 N$ u3 ?) g! K& M1 _result=[u;rss];" _' p4 g7 q) y* q/ S
1
% y% S- f' X( q+ a- g: F2
) e# n, [/ E+ i' g3
# a7 o& a" ~2 S8 p4
' Y; n" r W3 c' C5
% b' a1 R! j6 R9 c63 m" Y( z% v0 J
7
3 {0 v% o0 R1 e( z8% w& c/ n# S+ g/ }6 Q
9
% T5 O( l8 p" y0 j9 o10
# j! m( T! \! h11& q( ?: [) ?7 s6 N
12* x- z! t% n4 w4 c A8 m" \
13
+ S! W6 q' _" x; d4 ~& E14! z, |7 N0 A$ ^7 V
15$ y0 n: O. n4 }! c( h7 _( l& P! Q
164 q w3 |8 g& C
17; t5 {$ w& M9 n: a2 @) [
185 X {) H3 ^1 s3 f
19
- b- m/ i! C% I/ k; `9 R20" Z$ r" d+ C) \ w* x9 k
21) B7 Y* ]& J5 }8 j& ]. I
220 ^' r0 l2 x( X A4 Z
23, i7 Z5 j* f2 p( Q3 p
有限差分的核心代码:
5 j( S' m& V j7 G* I% u6 \' [$ m9 u2 [1 j8 y' V$ T1 k
* G1 x6 o5 X; N( S7 L
//有限差分的核心代码
& F; Y* h# Z$ J carray=zeros(76,length(x1));
$ @+ r* S6 a# Earray(1, =y;
; f- P. w6 K; k ]& garray(:,1)=z(:,1);
9 t% z6 m+ a& a* m9 zfor j=1 (1), M0 Z: N' m$ A8 l& c5 B/ I
for i=2:75, ?+ h) w' [. ^4 j$ q* {
array(i,j+1)=array(i,j)+u(1)*(array(i-1,j)-2*array(i,j)+array(i+1,j));
! U5 m l' B1 N4 Q# a( a; B: U end
' a' I; G& R) j0 ^% H5 J array(76,j+1)=array(74,j+1);. c! w' }- ~& ]4 S
end
1 P2 z6 v2 R0 Lz(:,2)=array(:,2143);: V: A+ h# d% y1 X" V
for k=1:9& R9 J, p* R% Z' M5 ~/ E
for j=L(k) (k+1)4 O) {: d! m) ~% g) {
for i=2:755 J2 S$ c8 i% T' e' Z7 Q- |
array(i,j+1)=array(i,j)+u(k+1)*(array(i-1,j)-2*array(i,j)+array(i+1,j));
6 f( Q. I/ q! t& L end; B8 ^7 D9 k2 `8 G" ?* K+ f( N8 ?
array(76,j+1)=array(74,j+1);
% F( w$ A6 r! K4 o1 r end7 O3 _8 y' A6 |- a
end9 J7 s& w* F9 B* }! i
array(:,length(array))=[];
b: C; H8 }: v, z4 U$ [9 Y
8 | g0 w G# y K' e9 G5 M6 k/ a/ x6 g( K+ b
1# H/ z' I6 C Z, ^: H9 i% b) N- x# D
20 f3 F3 E1 Y) I- J3 W
3
; M$ q- W$ K4 j" h, T4
) c% _) d' o2 L5! G0 E# v5 A3 {/ B) Q
6& |. {) U9 w4 {" H2 y
7+ w! w1 }1 Q* ~# ?; y
8
4 j; J4 J& n- a$ u, e# k9
0 l U5 r0 k x1 z# O/ P% x109 D8 C$ ^$ S9 c% a7 }
11# C3 W5 L3 i0 W
12" H) {6 U8 H$ H( Q# Y, O
13
4 D" A5 i" `6 g8 H142 r9 [# M( r8 N* B
15
4 y; Z0 b/ e+ f; n16
3 S6 c! u- K5 @4 n! v4 ~5 O17
% `4 G) ^5 J5 P3 ]/ r* _18
r. S% X1 {* O* A7 e19
. a9 {! S. u* X) x# P* W( ` O20# j% W, E8 B- J" b1 m+ e
21
; S" E; {6 ]5 ^9 ^5 t. q' h得模拟数据和真实数据对比得炉温曲线:
+ b/ D2 `- Q: n0 Y2 |. |" G/ V( }
& n2 y8 J! F5 J d7 T2 `
, ?, s# H2 x P P7 U# {6 }: e8 e: X) L- s, M2 r2 A* C
" P4 ~; S$ [0 g9 [$ g5 S8 i R
问题二
+ D, @$ w# Z7 d& E6 ~$ t问题二中,基于问题一中所建立的炉温曲线模型,在四个温度参数给定的条件求取传送带的最大过炉速度为优化问题。此问题可以看做是问题一所建立模型的反问题,即在温度分布
2 r6 g. d! Q* D z- A2 m- i已知的条件下,要求通过该分布计算最大过炉速度v。在具体求解该反问题时,可以利用遍历法对过炉速度进行遍历搜索,这样就将反问题转化为了正问题的求解,从而问题一中模型方法都可以继续使用。/ R; r3 C, s( F& I
4 V% r0 _+ p* d- r e8 h1 W+ X7 ?5 @+ ^7 J3 L4 J
问题三和问题四9 w/ D, X! c) `* v! |# }& x0 K
问题三和问题四仍然和问题二类似,也是对过炉曲线提出了不同的要求,进而在这些要求之下确定影响炉温曲线的 5 个参数 T1, T2, T3, T4, v ,求解也可以采用与问题二相同的遍历法进行,但由于此时遍历的变量个数增多,如果遍历步长较小,必然会使得计算量增大,因而必要情况下,可采用分阶段的遍历,即:大范围,大步长,小范围,小步长。需要考虑的就是对于面积和对称性的数学描述,面积可以采用积分的离散化表示,对称性可以采用以最大峰值温度两侧取对称点,使对称点的温度差值尽可能小来实现。4 P: | ?# ~* s- b
4 J8 G1 K, G2 l9 @
% _" h3 m! X: `$ ]; Z答案如下:
6 c( A& F- x; G7 h/ q& T( i& @. ]# A. @# V# W+ s
Y. P7 W, G* f" t; o+ {* Z注:用以上方法算出的结果均在最优解范围内,详细解读请待下次,困了该sleep了
7 i* N5 m0 H8 F2 v————————————————( B4 h* ~6 `: }
版权声明:本文为CSDN博主「盈博简」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。- H9 `0 A, D' `0 O; `( _4 c$ m
原文链接:https://blog.csdn.net/Sandm_Hou/article/details/112726635) ]# M* U- x( a( B$ A) x
, u' q8 ^: I' M' u, l
- t7 S! R* I4 c) `) X
|
zan
|