- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 565662 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174921
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
|
2016数学建模国赛A题程序(原创)作者cclplus 9 l3 f5 Z6 C; E$ ~7 O
- H/ X% `$ G1 t; N
' N7 C) }1 @- q$ Y
clear all;( e1 G3 s; Y" q& R. s; U
close all;0 s+ I& e p; v- @% ^) {
clc
' N; S4 @" x6 i* I7 kformat long( x) q$ g/ m8 q' k
syms h S Fw Ff Ff1 a b c d l L F depth n pl m x1 y1 y t distance n a1 b1;
* h. W" B' c9 J( N2 jF=[];
* \# t7 h0 Y) [5 O; @- W$ [: btheta=[];
+ T7 z0 `% C* u, |( Fv=24; %风速
4 ~. {! ~* w6 \% U2 J1 D1 v! ?* Xl=105*10^(-3); %锚链每节链环的长度& {& n, ~1 f0 E4 u( n6 I
L=22.05; %锚链的总长度
8 k9 }% y* X9 U/ G" ^( U9 J& B& Knum=0; %通过更改不在海床上的链节数得到一个最优解/ Z9 [& ^% }# x) s9 l
num1=round(L/l);* [8 x6 w9 q1 ~
num2=0;; y! Z. t9 ?. O; H" B& X' J
lin=0/180*pi; %第一个链节与水平方向的夹角- B( P5 a$ n/ _( A& v3 Z/ J3 H7 l: q
lin1=90/180*pi;: {9 ^! \+ Z$ v, I8 o/ X3 x
lin2=0;
( R( w; H, s6 A) ^3 }m2=1200; %重物球质量0 {7 Q y4 I$ j9 M5 Z$ C
pg=7.7*10^3; %重物球的密度(单位:kg/m^3)
& p( e( ~6 l$ e, G) edepth=20; %水深
+ t7 ?/ n( l3 C6 U8 o" @9 Wpl=7; %锚链单位长度的质量" `4 m3 |5 h$ E+ }1 b% m9 Q
vh=0; %海水流速$ l" z4 H+ Z, l
g=9.8; %可通过改变此语句来修改重力加速度,单位为m/s^2
3 w, Y( W! H# D' }# Y6 ip=1.025*10^3; %海水密度% }( K1 ~* |+ |; A
M=1000; %浮标质量
, z+ F& Z- b% h3 f" R! v+ im=10; %钢管质量( n# T2 u9 q1 {) K
m1=100; %设备和钢桶总质量3 k) n7 O+ ^8 k
y=0;
7 S- X/ V s# q8 }9 {2 Od=1;
1 `$ o! ?0 T. u. k$ |+ Mj1=0;
2 x/ I3 ?0 [0 q# e0 P; Uj2=0;
1 a7 w+ l; I8 W8 s& }while(abs(y-d)>0.005)%在这里选择所需要的精度,/ ^/ Q8 f2 ]- c
if (y>d)&&(num<round(L/l))
5 V/ n" ?4 u" z8 B- @num1=num;( z+ x, e' H0 x. V
num=round((num1+num2)/2);) _5 h4 k1 j, g4 F9 D! k
elseif (y<d)&&(num<round(L/l));
; m; U; U0 ^4 A( M! l+ L$ x0 lnum2=num;0 @( k9 K9 L( _, N# }) W! I1 I
num=round((num1+num2)/2);- R; g( G0 u$ j% }
elseif (y<d)&&(num==round(L/l))
9 Y/ ^: Y$ i; g; {; qlin2=lin;, d1 M6 f! E8 t. M# W. o# x) r
lin=(lin1+lin2)/2;
9 G4 I: C2 }* `% {/ F/ G! Z1 Aelseif(y>d)&&(num==round(L/l))
- `5 u# Q$ F! V4 jlin1=lin;0 f' e/ i- R2 r- H ?( s
lin=(lin1+lin2)/2;
|& V7 D( {4 Xend
+ q7 F& r7 G& i8 L6 {! ^& V5 r, v%钢桶受到的浮力3 Z: p0 i/ b1 |$ q L3 X( ^
Ff1=p*g*pi*(0.3/2)^2;
" Y3 |$ s3 F1 w3 K%钢管收到的浮力
/ Y! h& m. |, Y; F- Z% V' RFf2=p*g*pi*(0.05/2)^2;
0 m0 Y: r0 b* S%重物球所受浮力
7 X m$ L0 C9 q5 C9 o2 `( C4 q" IFfg=p*g*m2/pg;
( }5 g5 E8 M1 {0 a3 Z%重物球所受海水水流力* a9 ?( A$ {2 P. u1 ?
Fhg=374*pi*((m2/pg/3/4)^(1/3))^2*vh^2;' P. g; S, e3 k# K9 d% N9 v" }4 x
%风对浮标受力面的投影面积
, N4 r0 s5 l% N. c1 h! s2 pS=2*(2-h);
! ]( _# c# G9 f3 p8 U# ^9 H%风对浮标产生的力
. `$ |* C2 c7 p- hFw=0.625*S*v^2;
5 C6 b( ?/ r" M+ `8 X1 k# I%浮标在水中的体积4 N/ O2 o: j+ V( V
V=pi*(2/2)^2*h;
1 ~3 |: f2 t8 E- ^7 d%浮标所受到的浮力
; \3 t$ \8 V3 jFf=p*g*V;
# q4 @+ Y1 T6 j# C' q1 m%浮标受到海水的近似水流力
! X! E) T$ r6 p2 e& [ ~: UFb=374*2*h*vh^2;0 O* v: S+ H6 R
%钢桶受到海水的近似水流力
+ |2 e7 Q: N& d, P5 WFs1=374*0.3*vh^2;
" h5 }9 K2 K5 y. q%钢管受到海水的水流力的近似值
7 W6 e+ d" X# k6 I8 ~7 rFs=374*0.05*vh^2;
+ D5 P8 D. o1 M. r+ ^- c5 D1 c%浮标浸没水中的高度
. R+ a/ \3 y2 mif num==round(L/l)
4 K% B9 J* @3 _; [h=(m2*g+M*g+4*m*g+m1*g-Ff1-4*Ff2-Ffg+pl*L*g+(Fhg+4*Fs+Fs1)*tan(lin))/(p*g*pi-(1.25*v^2+374*vh^2)*tan(lin));0 I2 d: N: p8 \" j& ^$ z3 K# H
else 2 o# Q) \5 u' H1 h& D( _5 H3 [
h=(m2*g+M*g+4*m*g+m1*g-Ff1-4*Ff2-Ffg+num*pl*l*g)/(p*g*pi);( f( u. a l8 |; x" P" P
end
7 ?3 ~8 E4 R, m. U3 B# ia=Fw+Fb;, F' g, n7 _3 W- l& ]8 t9 L
b=-M*g+Ff+(Fw+Fb)*tan(lin);/ }0 |3 B1 v7 ^
if j1==06 Q- _ J5 K9 Y. U2 a/ j
a=eval(a);6 x7 ^# C6 o" h1 t
b=eval(b); ]# J6 J9 |1 K/ Z& u {6 R/ @
else5 `! b! A( i3 o* F0 N' h, |
end
; C. Q) x @3 Z1 F2 P% EF(1)=sqrt(a^2+b^2);
0 k( n4 k/ [9 y6 T! r" K# P2 n3 j Z& gtheta(1)=atan(b/a);, l" j5 G. F7 ^
n=0;; T9 @1 C! N' G1 A, V
for i=1:4
7 g' A" G9 q2 G%钢管受到海水的水流力
5 Z1 V5 }) L/ T5 Q6 t/ s8 c0 PFh(i)=374*0.05*sin(theta(i));
8 m }% F$ f7 j' l/ s1 ^n=n+Fh(i);4 b* Y8 T! Q7 z9 _0 _
a=Fw+Fb+n;. d3 C- ~& v x; p
if j1==0
* N8 V: a c4 G8 da=eval(a);
: h+ G* D7 ?. o' selse6 f- f# e2 M( {: u$ n4 z
end
{8 k5 _8 X& Z: x" gb=F(i)*sin(theta(i))+p*g*pi*(50*10^(-3)/2)^2-m*g;
# b' k/ F8 A: u" M3 CF(i+1)=sqrt(a^2+b^2);
$ `! @" B4 L' Ltheta(i+1)=atan(b/a);1 H1 E9 j7 z; E0 J8 B
end. }+ X# A, n& G; A' p- ~& d! D
c=0;& J, H1 V7 {* w
for i=1:5
; v# U8 y: Q, Q: u; G# t ?. J1 @c=c+sin(theta(i));3 g- t, ` E, Y8 D& c
end
& } o8 L" b: r/ b# n9 ]6 Qd=depth-c-h;. V5 c4 L) ~& v5 C; s/ x
y1=lin;. M& M- b# j2 o! B5 n' h& I
distance=0;) _* A" h, O' s% P6 j1 D
if num==round(L/l)
" R2 |$ J% h8 G. _y=l*sin(y1);
1 F" ] b& h; r2 }/ D0 B' m* [6 f9 D" kx1=Fw/sqrt(1-(sin(y1))^2);
* z' R( _' r) F6 i% Nfor i=1:num-1
7 T; Y; Y1 v) m/ \/ sm=(x1*sin(y1)+i*pl*l*g)/sqrt((x1*sin(y1)+i*pl*l*g)^2+Fw^2);
) Z5 A% N) j6 j- ]. pm=m*l;
4 s, v7 K; j) G# ~( cy=y+m;. s1 q& T) l! p, ^3 B) ?
n=Fw/sqrt((x1*y1+i*pl*l*g)^2+Fw^2)*l;
% w+ u7 j) S- C8 d4 }if j1==0
2 c, T7 k% N( f! E. m0 `n=eval(n);
' ?& x0 P5 G" D7 xelse; l2 T" }# F; B, Y& R9 A
end4 B5 R- R# M0 ]
distance=distance+n;0 h1 k% { D2 M
if j1==0
1 n& ^# j' v0 y7 c* `3 S5 ey=eval(y);; w" W9 p2 z, |: v9 x
else/ y! {5 y' }5 X2 O7 [, y% p* A
end
0 `- V7 k! l. v; L$ ?end5 R- S7 l# e, Q2 g
else8 |. |: m. j: I
y=y1*l;
9 ?" z5 c; E0 y9 Odistance=(round(L/l)-num)*l;( X7 b. W; |* B, q F d
for i=1:num3 t4 N1 O' a: I% F
x1=Fw/sqrt(1-(sin(y1))^2);
7 n, ]5 f: b! M$ \3 Jm=(x1*y1+i*pl*l*g)/sqrt((x1*y1+i*pl*l*g)^2+Fw^2)*l;
) ~$ Q. r6 M* O* ?4 dy=y+m;
( A$ k, ?. R7 h0 On=Fw/sqrt((x1*y1+i*pl*l*g)^2+Fw^2)*l;$ U% ^- P* D) `( i: g
if j1==09 G& s$ |4 n* M
y=eval(y);
! p8 T8 J+ P7 C5 Y1 H* wn=eval(n);
: x& Z" ~3 x/ b% b4 celse
9 R4 Z( \# E m) Lend! Y, b/ W/ q/ Z) o
distance=distance+n;$ L$ W6 _, t) _% _# J' ~
end6 D/ {+ {6 p, S2 `
end$ o; o1 W+ I3 @( ]8 m
m=0;
7 j$ p, N8 T9 I1 V1 @j1=1;
' L1 x% Z2 Q! x% P2 Aj2=j2+1;2 v y, S5 E- F) Q8 x- F
end
& t" f" b5 P/ K9 u& {5 W%钢桶受到的浮力
) n* I8 W3 h$ p; {Ff1=p*g*pi*(0.3/2)^2;
: `! ^. e4 I' {* j; p- J6 ^%钢管收到的浮力
, K) f2 ^. ^4 c' E" e- qFf2=p*g*pi*(0.05/2)^2;
9 l$ A& d1 l# v' I8 T%重物球所受浮力
, |# S) H! X6 lFfg=p*g*m2/pg;: b1 }5 b3 W* _% r
%重物球所受海水水流力# _, a3 j3 h$ [6 f
Fhg=374*pi*((m2/pg/3/4)^(1/3))^2*vh^2;
, n* h, p& w3 ^" \%风对浮标受力面的投影面积
8 |: ]4 }8 d+ |" kS=2*(2-h);% d; [- [- R; Z" S7 [% C+ d
%风对浮标产生的力5 r; b4 p. \/ V( v; ?/ O! C( g& E7 t6 C
Fw=0.625*S*v^2;
* S" Y! a/ p1 ?/ S%浮标在水中的体积% r. q. V$ t* c W
V=pi*(2/2)^2*h;
6 F. ]7 e: R7 N5 @2 ^%浮标所受到的浮力
+ e& f; U5 g5 GFf=p*g*V;
7 J0 l# u# r! l% N' z3 i9 k%浮标受到海水的近似水流力4 I5 b4 q# I8 u1 z% C% P
Fb=374*2*h*vh^2;
: f' C7 k- f u2 ~ f%钢桶受到海水的近似水流力& P5 ~5 D9 Z" |9 B
Fs1=374*0.3*vh^2;
) K/ a9 u& p* M' M1 ]& x. J%钢管受到海水的水流力的近似值, V2 A1 F* \) Y. z6 p0 s
Fs=374*0.05*vh^2;
) ?* C$ @( v* c0 [- i! X; j; g%浮标浸没水中的高度1 [# ?1 W+ B1 E9 J% o) {6 N% N
if num==round(L/l)
- |6 p) L3 n. i4 k+ D1 D. K' [h=(m2*g+M*g+4*m*g+m1*g-Ff1-4*Ff2-Ffg+pl*L*g+(Fhg+4*Fs+Fs1)*tan(lin))/(p*g*pi-(1.25*v^2+374*vh^2)*tan(lin));
7 r" x( ]8 f0 |5 T0 |' G+ Eelse 9 q1 G- a. c' {0 q# a! N$ e
h=(m2*g+M*g+4*m*g+m1*g-Ff1-4*Ff2-Ffg+num*pl*l*g)/(p*g*pi);# @: G/ \( }& j7 h* q6 i" G
end$ q+ J# j8 K0 p( H
a=Fw+Fb;
/ w( U! ?' u8 K9 pb=-M*g+Ff+(Fw+Fb)*tan(lin);3 Q: Q" V' v8 ^: f ^3 V9 Q$ c! [
F(1)=sqrt(a^2+b^2);+ P7 R" `. s3 F- M
theta(1)=atan(b/a); _' [* U+ l0 Q0 B$ g0 p. P
n=0;
) s6 m9 R; Q7 X; H/ {! a2 {: mfor i=1:4
8 [1 N$ C: q& A2 f0 D+ X8 i%钢管受到海水的水流力% C/ \0 _& l% K8 a( q% r* q, A! a
Fh(i)=374*0.05*sin(theta(i));
& B# h: A; a: t- kn=n+Fh(i);
K6 L. M c$ J& ^a=Fw+Fb+n;% E- B& f: E W
b=F(i)*sin(theta(i))+p*g*pi*(50*10^(-3)/2)^2-m*g;. g8 ~# t6 z; Q7 L: g, ^
F(i+1)=sqrt(a^2+b^2);* ^' i+ Z- z$ ~9 w5 G. n ^
theta(i+1)=atan(b/a);) b8 s7 Y: S- }. B) J$ t" d- m
end2 v# {. t8 e! l- o9 b' j; Q
disp('输出钢管和钢桶的倾斜角度(角度制)')
! {8 A4 k0 Q) gth=90-theta*180/pi+ e |, Z7 r+ B# X
m=85*pi/180;; V- l1 ^3 t0 A
if theta(5)>m, p# y& F4 x5 ]6 t! Q) x9 ^
disp('钢桶的倾斜角足够小,测量准确')
4 Q2 c$ B: z# helse
2 W0 f3 }, `; d4 j* X r+ Idisp('钢桶的倾斜角过大')
* C% D, ?1 t1 j4 v6 P3 _* [end! x7 @) R7 d# f( d, _) Y8 h9 D- x( b
c=0;% E# C) O: J3 V2 ~' T+ T; Z4 S- @- _3 N
for i=1:58 ]8 R( F! |! N. P* @7 K) n0 X
c=c+sin(theta(i)); g0 F7 L, w2 m u* U
end: H# V5 C. M* g1 v$ d
d=depth-c-h;0 X! S" w) u! l* o
y1=lin;
) e9 [7 S, S. I+ K* f; Sdistance=0;
- E3 U' Q5 [, Z; E3 Nif num==round(L/l)
8 k5 f% R! t8 V; h; f, p' ny=l*sin(y1);% q W; Q1 Y. F# z9 @
x1=Fw/sqrt(1-(sin(y1))^2);
, n% ]/ U* R: Ufor i=1:num-1' S( H6 A" \) n* d+ o) i
m=(x1*sin(y1)+i*pl*l*g)/sqrt((x1*sin(y1)+i*pl*l*g)^2+Fw^2); U9 _" h2 |* ?
m=m*l;5 U; c- d: l ^- M
y=y+m;% {* S m) \, f: g' w
n=Fw/sqrt((x1*y1+i*pl*l*g)^2+Fw^2)*l;
2 D* S. G, V1 M$ ^: s Tdistance=distance+n;
" P: ~; d, C: H% `1 c; Uplot(distance,y,'o')7 u! C6 Z& I- Q2 g& ^) {" n
hold on
& ]. Z2 J7 L! send
2 Z7 E# G1 q e5 A' Lelse K2 M+ D6 N6 ^* j
y=y1*l;; a/ f/ A( G! o9 b" ^8 G% a/ K, e
for i=1:round(L/l)-num `+ i: v$ @' ~0 U+ D
distance=i*l;
5 x) o4 N! J: Y6 g9 @: t8 qy=0;4 ?8 L2 \) ?4 n5 `) o) `. j8 h8 R$ B3 {
plot(distance,y,'o')* x: O& Z7 \/ u2 h: Y4 _& c5 x3 Q
hold on$ h9 W3 y9 |* v M: q
grid on# {$ U$ M9 I1 j" }; v
end; W7 _7 x+ T6 G1 C* A0 z8 T
for i=1:num
% P b8 O9 S, }% R7 Zx1=Fw/sqrt(1-(sin(y1))^2);6 J0 u+ K5 ], m7 N* K
m=(x1*y1+i*pl*l*g)/sqrt((x1*y1+i*pl*l*g)^2+Fw^2)*l;
+ z& v9 [3 Y' R3 p; }y=y+m;
/ r4 `3 T4 _& l1 K1 w/ x5 pn=Fw/sqrt((x1*y1+i*pl*l*g)^2+Fw^2)*l;- J% W2 ~0 [- ]
if j1==0* Q3 `; j5 h1 h7 h1 ~; D( R
y=eval(y);
6 F3 U+ `0 u c* ^$ ? |4 ~- sn=eval(n);8 M' y2 B- o6 f( [6 @* ]
else
" z6 @. h7 f4 r( f! `end; T' D- J% Y9 r$ z l
distance=distance+n;" x6 s* c8 a" s5 k4 I
plot(distance,y,'o')
2 J: c. ^, P! z7 [hold on
% `: v ^, P& j' y- `3 Iend
" W7 {, T" n: E( ^8 @end' X# j3 X6 ^0 _% J
m=0;
( e5 c! g5 n+ d; d6 j5 f. G6 }% m' f+ Lfor i=1:5) }4 h: b6 j( v' p& S4 x, O. M* W
m=m+cos(theta(i));7 ]# @6 p+ C% h: K: O5 m8 r7 R
end
b0 y' [7 ~5 ?+ C%浮标的运动半径1 p' X) g9 P$ g) C" f
disp('输出浮标的运动半径')
* b- c% d/ Q; P1 C0 oans=distance+m
. M: d0 e: d" B# s4 c9 r1 E1 Z+ f& u% C! t
& l; c U: }' w+ N8 W6 D
! H! n- j6 K' b/ }$ N0 K
. v1 H3 g, [6 ~8 G3 t6 m6 k* `" V: i9 `1 ^6 Y
5 `! G" f) G9 ]7 H9 R
) p8 z, Y7 R# }% s( g3 f |
zan
|