- 在线时间
- 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 这里不会写了5 Q2 N( @8 O$ v5 M3 y0 d) T3 O
%用最速下降法求解问题;. [2 I" `1 Y( q( D" t4 E
eps=0.1; %给出误差线;) w! y* i" {1 Y; v2 V
p=[];. u" L. v5 j- `4 G" W
syms y z lamd
" M7 R4 K; ]+ ~& ]/ if=exp(y^2+z^2-y*z)*cos(y+z);
0 u4 ?2 w' Y0 f0 v zgrd=jacobian(f,[y,z]);- s$ w# w6 X5 O. l2 e8 B
x=[1 1];%给出起始点;; [' g+ H0 W' `
X=subs(grd,[y,z],x); %计算x点出的梯度;
O& o+ I S- \( _7 [/ x! [XX=sqrt(X(1)^2+X(2)^2); %x的模;: H, x% F# J& H; w5 j2 f
if XX<=eps;
/ i' L' @. Z1 y e2 m- q/ A disp('所求点为x=');9 ?; e/ G! s o' s0 z. Z( @* W8 a. p
disp(x);
! \/ M2 {. @. N; `* M3 ~. g3 F& ?6 h else
. l5 D: X4 ~% q5 Z: u# B6 n for k=1:20;
! I3 [) b& A# U9 C% Y3 r p=-X./XX;
3 p: {+ O8 a. m: [; \ H=subs(f,[y,z],x+lamd*p);
0 u, c+ a0 w& m# \ %求解最优步长lamd是关键问题;
$ u* e+ y* S5 `& o& F3 F% T3 p lamd=fminbnd(@(lamd),myfun(lamd,x),0,1);
9 L* b' ^" C0 j2 z& @6 S: D$ j x=x+lamd*p: k5 u' O1 ~: I$ [$ e3 B: C
X=subs(grd,[y,z],x);
" F9 N4 I! d, T# u" q7 }% k XX=sqrt(X(1)^2+X(2)^2); %x的模;
* q/ S2 D% h. K+ r if XX<=eps;
. |1 f2 I& t; D- H! n disp('所求点为x=');
- _$ ^' f7 X4 d: l0 } disp(x);
O, v9 n! p; h. n6 [7 [ end. g. T$ g2 m' b( Y# i$ x
end# u& e2 \' L7 m+ N5 _2 s- i
end0 l+ D/ C4 T$ _4 @
|
zan
|