- 在线时间
- 105 小时
- 最后登录
- 2017-12-14
- 注册时间
- 2012-10-18
- 听众数
- 8
- 收听数
- 0
- 能力
- 0 分
- 体力
- 651 点
- 威望
- 0 点
- 阅读权限
- 40
- 积分
- 317
- 相册
- 0
- 日志
- 0
- 记录
- 3
- 帖子
- 233
- 主题
- 7
- 精华
- 0
- 分享
- 0
- 好友
- 30
升级   5.67% TA的每日心情 | 慵懒 2016-10-11 09:39 |
|---|
签到天数: 173 天 [LV.7]常住居民III
- 自我介绍
- 想学习数学建模
 群组: 数学建模培训课堂2 群组: 2011年第一期数学建模 群组: 数学建模培训课堂1 |
fminbnd 这里不会写了
+ X$ Z4 K/ ~! Q, g%用最速下降法求解问题;; \! x% X% Z7 r5 z
eps=0.1; %给出误差线;3 U+ [3 i$ z m
p=[];3 g5 T* R* @/ s3 Q, Q3 [
syms y z lamd
# e' x; n) _. E2 p" Xf=exp(y^2+z^2-y*z)*cos(y+z);
/ B/ i7 H7 n. g9 n) egrd=jacobian(f,[y,z]);0 g* r" X# u3 }
x=[1 1];%给出起始点;, n+ J& n' N7 |6 p8 R" x/ U4 t
X=subs(grd,[y,z],x); %计算x点出的梯度;. y" k. _5 E9 ]6 T4 H; @( \
XX=sqrt(X(1)^2+X(2)^2); %x的模;# h6 H) \$ p- p( S5 l; l
if XX<=eps;' X* R O1 m# I
disp('所求点为x=');
0 K D7 J O! l7 M7 k: s/ K, \; M- k disp(x);1 b' X* a' C; k; a* r2 O+ \
else7 R1 b5 O& e6 P, q7 N
for k=1:20;/ l. E- \( M* {* b( [
p=-X./XX;
, N0 j7 X) e7 ` H=subs(f,[y,z],x+lamd*p);" u1 B( x! ?+ _: f. j* M, S% ]
%求解最优步长lamd是关键问题;
0 I+ A8 a# b2 W- s" f. D lamd=fminbnd(@(lamd),myfun(lamd,x),0,1);; I. ?* d% x8 {! @
x=x+lamd*p
" _0 F9 U& W- i- P* S# A X=subs(grd,[y,z],x);
* O3 q( L* \' T8 p XX=sqrt(X(1)^2+X(2)^2); %x的模;4 x6 T+ O; ~. o5 _
if XX<=eps;
8 _% V! k, S$ ?8 C2 B! x disp('所求点为x=');
) k4 \3 X5 W* \4 e8 {8 { disp(x);
5 w7 e0 H( b5 n- s6 X4 O ` end# p, a( ]2 r3 p& {) D+ M
end/ \( [5 `" e; Y7 L M. D
end6 \" {0 a; J9 x3 j
|
zan
|