- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 561317 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 173768
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 18
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
5 K( z6 y7 A/ R" f
2020全国大学生数学建模A题思路讲解与核心代码
* l) n3 S0 c7 O7 w' C
, l& U( Y; O9 N; }2020全国大学生数学建模A题思路讲解与核心代码
& N# r% _) y! d% l题目
# ^% N# a/ h/ _核心方法:& _9 W: ?& ~5 o [! C8 V, h
问题一, z9 k9 W* m/ H5 p9 C
问题二
9 D, U, _1 I( G R$ B8 p$ A问题三和问题四
' r5 O8 m& | m" J. z2 V- K答案如下:( A7 [5 s H% e, V8 ]
题目+ X; q: J* u# @' W# |
% ^ d# P3 e) g# n9 u
; X6 [3 Q( j; R4 L% C
! @; I- I' d8 L
5 L7 o! O0 w, F; ?- v W! p# Q
/ o3 a' a! H7 H( q+ p( K4 @- t6 u6 q/ e- b3 ^( ]" E. a' p- K; |
核心方法:; q3 l! O% n" v& p K
热传导
+ O ^' d4 }+ \4 b1 N# V1 D8 s5 Q有限差分法8 S" t" u; }, e% n
遍历法
5 C6 F! k: p/ Y7 a2 V" f5 J$ v7 Q, M D5 n G
) A% E- r0 E& L+ W: z* X g5 c8 S
问题一1 d5 H9 M( M( ?
建立焊接区域中心温度变化规律模型,推出焊接区域中心温度与其厚度和PCB 板所走过的时间的关系。查阅相关资料可知,由于自动焊接过程中热量传递复杂,因此对模型进行简化,只考虑一维方向的热量传导,即单侧单方向小温区对PCB 板的热量传导。利用能量守恒定律和 Fourier 热传导定律推出热传导方程,再利用附数据件求出方程中的参数,进而建立了焊接区域中心温度变化规律型,即炉温曲线变化模型。依据建立出的炉温曲线变化模型,根据问题一中所给出的各温区的温度参数T1, T2, T3, T4 及过炉速度v,需要求出过炉曲线,即焊接区中心的温度变化
) F4 Y: J& V1 m5 q3 q# p, ?7 T7 z8 Y9 w
. u+ }9 h6 B2 N对于热传导方程的求解,需要先确定热传导方程中的参数—热扩散率,这" s1 B% j2 ~( q
可以通过附件提供的炉温曲线数据进行参数估计。热传导方程的求解可以利用差分法进行。
! M: T6 r$ ?: m8 ~; _8 y O
; i8 x5 v; }% L/ W. e7 R' ]7 L6 D" [0 N p5 f
// lamda的计算的部分代码
( Y- s- G# o# Aarray=zeros(76,length(x1));
4 K) @/ R2 u1 larray(1, =y;
1 X- v! _! n+ T Larray(:,1)=z(:,1);( y* v9 t. |4 L7 P& {$ k; S9 [
for k=1:31+ \* f; D1 L$ p! o) t! ^* p. ?
for j=1 (1)-1$ ]: T6 ?3 K8 O
for i=2:75, e$ H$ G& X% _" u$ N2 R
array(i,j+1)=array(i,j)+u(k)*(array(i-1,j)-2*array(i,j)+array(i+1,j));) |/ j K! l# l' |8 D1 b m
end
3 S2 c g; g) A; K. `0 h) V% X7 A array(76,j+1)=array(74,j+1);
2 C* k& L7 i. P" u7 K/ Z. O4 K end! A- O; ]- ], w d+ ^5 v- |
e1=1 (1);5 Z! u! W6 [( S$ e8 B
e2=time(1:5, ;
% Y3 K! R4 @6 g8 B% I Y5 ^ [C,ia,ib]=intersect(e1,e2*100);0 b; @+ V* m: I& O$ h
for i=1:5
! |) o* Y' p' p, B) d" d; N, j; q b(i)=array(75,ia(i));
# r. b' y% @. Y end6 s. f& ~/ d) R2 z/ n
for i=1:5 G: v% V+ B/ g J& x) \
c(i)=(temperature(i)-b(i))^2;
. W" B# E1 `. _% t/ d. x6 @& ` end
! O8 u0 m/ `9 W2 @& Z2 K8 Q rss(k)=sum(c( );
: W' u r+ `7 u. }$ g) c. Dend& c+ M' y& p v. @
result=[u;rss];9 M' Y+ |+ B. ]6 o' ?, u
1! N- B4 @( H9 |
28 E+ {1 h0 E$ {7 F/ d: M
3( X; }0 [& Y% ]+ i5 B3 a) t
4; A7 l9 m. {( z1 t% N9 J
5
( l q2 t4 V- ]% [) G6 z6 ^ Y* q61 l( s: l! m" K0 n" P
7
5 {1 M& g' u; U a3 O87 m1 S" `( @+ m
9
- M/ k' r% ] R: E10
* ^2 l9 E& z2 q) c+ o/ A11
1 V! R: P+ C2 u# Z1 b12! _3 H; x# ~% ?; W
13
$ z8 G1 F4 n8 D& M' p" ?14
9 f5 \( }$ w$ W) S6 A15
/ q/ q9 f8 p- v1 s16+ F( V9 W5 c9 S9 E
17
% r7 U% e1 `' P$ f( k4 m' ^18( J5 R5 L: w# U B1 E6 {: {
19- O. w1 p1 C6 x- e( X
20, h; n- E: q8 @' G1 }) W
21
8 A( l" a3 {- ?3 ]22
6 L5 j3 D% B' j1 Q. X; K% _# @23
% n1 c5 R6 x& L% _; |2 G4 }有限差分的核心代码:- I5 T9 I! p: A9 m. k0 ]
3 |9 D% V4 o3 o( ~/ K$ C
! `! C/ i" i: P1 [' E//有限差分的核心代码0 o( x% D$ z% W7 _
array=zeros(76,length(x1));
0 H3 |3 C4 ?0 b1 p5 Y' L6 `array(1, =y;
9 l7 @3 f0 x' N* |- S# w. garray(:,1)=z(:,1);% Y7 b/ |% r0 q* P0 H2 l9 O2 k# l# l
for j=1 (1). ?5 h% Y( u3 }% W2 `6 ^
for i=2:752 C) i/ \, }- P& }: G* a
array(i,j+1)=array(i,j)+u(1)*(array(i-1,j)-2*array(i,j)+array(i+1,j)); * @- `! b: E7 j1 t
end
$ ~# [# b3 ~8 j+ t. i6 D7 Z6 s2 y array(76,j+1)=array(74,j+1);. X3 ~( g: K# \4 W: R P X
end5 ]9 L$ d) Y5 L4 n0 j, Y8 z
z(:,2)=array(:,2143);3 @; e) w9 E4 n
for k=1:9; j# G- O: v6 A0 J, |
for j=L(k) (k+1)9 a5 T; |+ a0 P, N7 b( B' l
for i=2:75- {$ o6 L- P: ]1 l4 C7 x, m D
array(i,j+1)=array(i,j)+u(k+1)*(array(i-1,j)-2*array(i,j)+array(i+1,j)); : g, F0 ]5 ~9 ?/ ^4 K7 ^
end& `: `; Z! F D3 }1 Q V
array(76,j+1)=array(74,j+1);
. {( q1 g6 h* ?5 w% j, k end/ R: P# \6 k& i0 J7 ]2 @5 a1 M% r
end+ _0 k. l) V) s' s/ M
array(:,length(array))=[];5 R2 }8 L1 Y5 z# p
3 f0 O" }- D$ l
( @0 E; N+ p* ]( Q/ I( g$ D2 y. u! \1
% X" j; |2 P, T- X8 n; Q2. } n* H$ \) R
3
- \ |- m4 F0 h; m4
% R7 L3 @, U5 e. @) F6 T$ \- O5! R5 R$ ?; X4 \- b
6
3 B; X2 M% X( R% y2 Q8 V! H7
9 s0 T. y% l( K# u: ^( h8
$ P: \( y: J e1 ?5 L4 ~5 z2 }9+ g" `& `+ R L
10
" v( c& E7 p0 y4 ?/ k11, M- d* o, D! M5 c
12
2 @+ y, b" N7 H. I, z* c5 J13) `3 x" U( n+ ~' f( V
14, W7 n; M f- s. i4 t
15
6 j& f! R. _/ \16
# ]1 f) G2 g# I5 D9 E8 D17) Z; }0 T% ^/ t. K& N7 D9 i% W
18: U+ D& T7 s. c, }9 y" M0 |/ L
19
$ ~5 B2 d, s$ \3 q3 f205 k9 \2 }8 I7 B0 I
21' z4 E/ }, s; U3 I
得模拟数据和真实数据对比得炉温曲线:
# I' w$ O4 a/ @- o: [7 I9 g/ {, j2 o4 }7 r- l. T
3 Q5 _3 f; v; k6 b, M! V. k9 X
' N& X0 o. d2 B8 O E( u) i
" I; h* g, F& I) I+ K问题二5 ~$ m& d; o0 K& F% ~8 Y9 o- p
问题二中,基于问题一中所建立的炉温曲线模型,在四个温度参数给定的条件求取传送带的最大过炉速度为优化问题。此问题可以看做是问题一所建立模型的反问题,即在温度分布
! |5 ~5 F& x* I' h: n已知的条件下,要求通过该分布计算最大过炉速度v。在具体求解该反问题时,可以利用遍历法对过炉速度进行遍历搜索,这样就将反问题转化为了正问题的求解,从而问题一中模型方法都可以继续使用。
% S$ P) r# k6 F! P8 _& v0 e: p
Z( I7 ? w* b$ `
4 K9 W8 k% x5 X+ p问题三和问题四
2 b& t8 |7 m" W3 w0 a! [问题三和问题四仍然和问题二类似,也是对过炉曲线提出了不同的要求,进而在这些要求之下确定影响炉温曲线的 5 个参数 T1, T2, T3, T4, v ,求解也可以采用与问题二相同的遍历法进行,但由于此时遍历的变量个数增多,如果遍历步长较小,必然会使得计算量增大,因而必要情况下,可采用分阶段的遍历,即:大范围,大步长,小范围,小步长。需要考虑的就是对于面积和对称性的数学描述,面积可以采用积分的离散化表示,对称性可以采用以最大峰值温度两侧取对称点,使对称点的温度差值尽可能小来实现。
$ D4 A( z1 H% D# R* K: p8 f: m
* p! ~: |: Q% E9 r: J* e4 R
答案如下:
4 @+ _ Y. d- Q3 O# B5 O+ Y4 e( J* d8 z0 w
; u( a, h7 H1 x% V注:用以上方法算出的结果均在最优解范围内,详细解读请待下次,困了该sleep了
, r2 L8 H0 {4 m* `/ H- U————————————————
1 M" v& B! Z; l, i' Q版权声明:本文为CSDN博主「盈博简」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
5 H& x. M: M& B" O" L& f原文链接:https://blog.csdn.net/Sandm_Hou/article/details/112726635
4 P- `3 S/ | c
1 R: h) j0 {: m9 N% j7 q, [: S( Y4 x% M$ c* b; ]
|
zan
|