|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
原本使用 function f=myfun(x)
+ N' K* p& j/ E7 A8 S f=sin(x(1))+*cos(x(2))
4 o4 `( A+ Q- G( C( s0 G: j% Q2 Y对其用[x,fval]=fminsearch(@myfun,[-1 -1])便会返回x=【值 值 】一个1*2矩阵 和 fval=【值】一个1*1矩阵! W: J8 S7 Q; {
. I7 G; N$ z( V1 \% _0 r
现在加入循环 function f=myfun(x,a)
* T' Y$ x1 ^8 ~% M2 o# n* b f=sin(x(1))+a.*cos(x(2))
7 i* i% I4 J, T# j- _% A$ |3 d) p# ~$ @% q: p) W
fval=zeros(1,2);
) L5 p4 F V8 b* S! } for a=1:2' U" n0 N: h( A4 `
[x,fval(a)]=fminsearch(@(x)myfun(x,a),1000)
: O& I" c/ B& L4 d( @: u. @4 \' J* x5 z3 m$ U0 x+ k
end
" t9 F3 A. w" r/ \0 M+ ~便可以把两次循环的fval的值存起来,但用相同方法,由于x=【值 值 】返回一个1*2矩阵便会无法执行赋值
8 k, X8 j/ z2 |& {2 v# `, `) D请问有没有什么好的解决方法
1 |+ A: g7 `1 ^1 k
) ` v5 h; h7 x1 h# N7 ]6 y% u& N5 j7 C
3 @! C# U7 W) G4 l( G
# @; ~3 Z7 [4 L% {* `. ^9 G |
|