- 在线时间
- 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 这里不会写了
0 l& |. k9 q" H%用最速下降法求解问题;
" D, {4 x+ h9 U7 I+ beps=0.1; %给出误差线;6 }3 b* @/ \+ [* q* y
p=[];2 ?9 Z5 b$ b- j' b% r6 M9 Z, q
syms y z lamd. T2 Y4 i; s/ Y, f, _
f=exp(y^2+z^2-y*z)*cos(y+z);% K$ k+ U3 O5 ^1 H+ Y6 _
grd=jacobian(f,[y,z]);$ ?9 C- f8 l) V& C/ G
x=[1 1];%给出起始点;
) M; _' B1 |" M+ y2 j# iX=subs(grd,[y,z],x); %计算x点出的梯度;: \% n& t4 J. d8 ?; l( G, T8 ]
XX=sqrt(X(1)^2+X(2)^2); %x的模;
4 E# B# T1 Z+ n/ l) Y" x if XX<=eps;
8 X7 U: e$ l! c# w8 B" q. n% `' D, |8 d disp('所求点为x=');
5 N0 H/ A) e- C disp(x);
v- y; V2 Z5 l! K% X4 V else9 Z6 [1 d! B+ b" k9 r! y
for k=1:20;$ o" Q# c5 w+ F( U
p=-X./XX;. N6 g: L4 _ H U. E A
H=subs(f,[y,z],x+lamd*p);
2 x A& p5 D8 v4 f, Y- R: M* \: R %求解最优步长lamd是关键问题;! I5 W) d( W# o( J! b5 j5 I
lamd=fminbnd(@(lamd),myfun(lamd,x),0,1);9 L3 O8 h- E# Q' u- K* U
x=x+lamd*p
3 M& P, b0 @0 M _ X=subs(grd,[y,z],x);" I1 O1 R8 Q7 U
XX=sqrt(X(1)^2+X(2)^2); %x的模;( p& K- k* ?6 n/ j# G4 W
if XX<=eps;' d9 W) u4 z# e- S8 n$ A
disp('所求点为x=');
3 p2 `* }& N) v- W ~ disp(x);
2 _" x, p# ]" r3 c O- q8 A4 r end( S5 {. m- I7 W4 F2 ~- V. _ e- y- X
end' o7 A! K% t" z0 K! |
end
( q6 O+ q3 R6 P$ x' e5 M6 v |
zan
|