我有一个返回3个值的函数句柄。
@f(x,y) = basis_handle(x,y);
[z, dx, dy] = f(0.1,0.1) %returns 3 vectors
我现在要做的是创建一个函数句柄,用另一个向量执行这3个向量中每个向量的点积。类似的东西:
@f_2(x,y) c'*f(x,y) %c is a known vector, same size as ones returned by @f(x,y)
实际上,这个句柄只返回1个值,即使我试图要求更多,即这会产生错误:
[z, dx, dy] = f_2(0.1,0.1)
有没有办法创建一个函数句柄,可以按要求返回所有3个值?
答案 0 :(得分:0)
我想知道这是否有帮助(实际上它相当于将三个输出传递给可在f_2中定义的不同变量):
function varagout = f_1(x,y)
varagout=[x + 1 y-x y/x];
和
function varagout = f_2(x,y)
C=[1 2 3];
varagout=C.*f_1(x,y);
>> f_1(0.1,0.1)
ans = 1.1000 0 1.0000
>> f_2(0.1,0.1)
ans = 1.1000 0 3.0000