- 在线时间
- 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 这里不会写了
! ~4 S# K( A$ K2 x%用最速下降法求解问题;
( b+ }4 m5 k, w( ~: {8 Z: |eps=0.1; %给出误差线;
6 Y3 q5 g( O4 M: m |8 q7 lp=[];
* ?* X+ ?6 _4 m& ~syms y z lamd
2 H5 C& d% \% V+ S: g: pf=exp(y^2+z^2-y*z)*cos(y+z);
# W' \" m! P' F! cgrd=jacobian(f,[y,z]);
9 e$ Y: E" w% M9 I; b# L0 S+ C+ Hx=[1 1];%给出起始点;
8 f) ~" Q: o* t7 ` C6 j; UX=subs(grd,[y,z],x); %计算x点出的梯度;% s' A6 l9 d+ d7 l
XX=sqrt(X(1)^2+X(2)^2); %x的模;
& J6 N/ n. q Y2 Z if XX<=eps;, R8 \7 ^# ]- M: F$ j6 a
disp('所求点为x=');) T# o" a7 d" o# z6 e
disp(x);, d+ N6 y; z: O; f% s
else4 \ Y3 n u; x
for k=1:20;
* A. ^! Z$ ?* t; ?; T0 A p=-X./XX;
) k5 p6 @+ m; Q! Z g/ j) l H=subs(f,[y,z],x+lamd*p);% y4 U3 x: G% h) y; x, c
%求解最优步长lamd是关键问题;
% o8 \; q6 a8 f- L2 A( V' z lamd=fminbnd(@(lamd),myfun(lamd,x),0,1);
! f( `/ E9 H/ f* m x=x+lamd*p
! R5 Q& B7 F& R! u, R X=subs(grd,[y,z],x);$ k) o/ I J: d; b0 c
XX=sqrt(X(1)^2+X(2)^2); %x的模;
) ^2 Y$ }1 `% x3 k" Y+ j if XX<=eps;
$ ]$ n) K9 x5 d6 f9 U6 Q8 V disp('所求点为x=');( ~6 T! l& r+ ~2 Z! n5 o1 C
disp(x);0 F. o& @; o& E
end" }$ k9 o7 a' R
end, [, G" D! W) c: d Z
end
6 w1 J2 i: U0 j E v* c! o# c |
zan
|