|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
原本使用 function f=myfun(x)
& G% @1 p) h$ a* h M( Z f=sin(x(1))+*cos(x(2))
) V; B; W2 x% F2 k" \3 h对其用[x,fval]=fminsearch(@myfun,[-1 -1])便会返回x=【值 值 】一个1*2矩阵 和 fval=【值】一个1*1矩阵6 \' r1 C' I: X; F/ {7 [" S: x2 w
3 d+ y* W. }' ?* s5 M1 |
现在加入循环 function f=myfun(x,a)
, u6 C4 K( Y5 `$ G* X4 p f=sin(x(1))+a.*cos(x(2))1 C. k! _0 h; w7 X
5 z) k+ _4 N3 T' N9 A
fval=zeros(1,2);
; H4 a' C: k( Z. V for a=1:25 k5 {) U i3 E3 d) U9 \
[x,fval(a)]=fminsearch(@(x)myfun(x,a),1000)
! g2 u* G! g8 d! H- s# u4 N
- X1 Y3 ]8 O8 k& H end
( D, @1 n' V# D便可以把两次循环的fval的值存起来,但用相同方法,由于x=【值 值 】返回一个1*2矩阵便会无法执行赋值
9 b9 U3 o2 o" u4 @; X6 _* Z请问有没有什么好的解决方法. B: m1 }6 ~) [
7 c1 U; _ y: K: Y
. T( Z+ u- n; f) O
5 B9 s7 j. S' i9 I; X- @0 O |
|