EDA365电子论坛网
标题:
关于函数返回的矩阵循环赋值
[打印本页]
作者:
Smartk
时间:
2020-2-25 18:17
标题:
关于函数返回的矩阵循环赋值
原本使用 function f=myfun(x)
8 M/ _0 p1 X7 ^% W
f=sin(x(1))+*cos(x(2))
/ @# A) ~2 k [# e/ l
对其用[x,fval]=fminsearch(@myfun,[-1 -1])便会返回x=【值 值 】一个1*2矩阵 和 fval=【值】一个1*1矩阵
2 n" s$ F8 N" \! j
( x) Q' ]- Y4 |/ J. o" u; s
现在加入循环 function f=myfun(x,a)
$ Q. m0 l( Z9 ]% P6 k: }
f=sin(x(1))+a.*cos(x(2))
% N+ G" x4 M7 e/ C
6 p5 v* F, F: X0 v. d
fval=zeros(1,2);
2 {# y# Y9 p/ ]
for a=1:2
6 O+ j) l* p2 v: {, q- T
[x,fval(a)]=fminsearch(@(x)myfun(x,a),1000)
- y4 r# E7 Q( z
2 F1 f9 A) M6 r$ r$ N1 a1 }' ]
end
3 U% ^, t6 _& ?
便可以把两次循环的fval的值存起来,但用相同方法,由于x=【值 值 】返回一个1*2矩阵便会无法执行赋值
3 C) \: j: m4 M/ \1 o2 q+ P: U4 l
请问有没有什么好的解决方法
8 h( s& p9 `! b- k! E" V
$ B3 i& z+ p* T" R a+ e* t- \
9 }% y" @& q" P8 M! r2 s
) s% v1 ~, M( Q9 `3 E
作者:
ExxNEN
时间:
2020-2-26 17:44
不能多循环一遍吗
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2