- 在线时间
- 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 这里不会写了. y- V! b( @5 O
%用最速下降法求解问题;
, ?0 O, r9 j! j/ a' u/ }/ Yeps=0.1; %给出误差线;$ I: E: e! }0 e: P8 @
p=[];( K. f: K* j: f) b. K% m
syms y z lamd
' @) | _- _( r: t; Df=exp(y^2+z^2-y*z)*cos(y+z);
9 d. q6 Z+ c7 K! Ngrd=jacobian(f,[y,z]);$ v. y. I' h5 l! |# i
x=[1 1];%给出起始点;: g t* n( @0 V& V
X=subs(grd,[y,z],x); %计算x点出的梯度;
6 H! o- \9 i0 s7 L+ m3 l3 \+ |XX=sqrt(X(1)^2+X(2)^2); %x的模;
& m% Y$ Y2 c _0 n9 G# h if XX<=eps;
& I6 w# B% o! z' d* F6 @6 f- E disp('所求点为x=');, i0 Z/ Y) z+ ^) p# Y
disp(x);
8 c6 a' ^2 \1 {& X( O' N6 N else8 ] t# z2 `6 Y" v7 Q
for k=1:20;
# F0 D8 `) \& t0 c2 j" r p=-X./XX;: n. g6 N# g; p* F* p, r
H=subs(f,[y,z],x+lamd*p);
# }, p& W* f4 w %求解最优步长lamd是关键问题;
" F' w2 J/ d; x% X$ W lamd=fminbnd(@(lamd),myfun(lamd,x),0,1);
4 ]. j3 |5 X( f; p. c, J x=x+lamd*p' h' o4 E, W8 }- ~1 u, h: S, }& Y- L/ S
X=subs(grd,[y,z],x);, e& w6 P. q+ Q0 B' t# ^
XX=sqrt(X(1)^2+X(2)^2); %x的模;3 y; f' r: O Q+ k( K+ {0 l( u
if XX<=eps;
1 D# t) o( H5 a/ n8 ^' e disp('所求点为x=');3 f" t3 A# @, O) d" i8 d% g
disp(x);
7 ?; V* `& M3 f9 Y; \6 j' S9 N+ c end
# [2 Y. @1 Z, |+ q1 B& e$ ] end0 c6 H, ~. t* j5 c u, r9 t
end
) r* P) \5 x6 D3 Y" B |
zan
|