function[f] = get_f(y,Q,L)
Q = zeros(2) % creating a 2x2 matrix of zeros
L = diag(zeros(2)) % creating a diagonal matrix
% still playing with how I can pull y in as a scalar, I'm thinking I have
% to assign it earlier in the script where I call this function.
f = expm((Q-L).^y).*L % execution of the function itself
如何告诉函数查找输入的标量和2个大小相等的矩阵,然后执行列出的命令?
答案 0 :(得分:0)
在你的函数中,y
是你在函数调用中作为第一个参数放置的任何内容。
例如:
get_f(3.14, [1 2; 3 4], [1 0; 0 1])
使用
调用函数get_f
y = 3.14
Q = [1 2; 3 4]
L = [1 0; 0 1]
所以你的功能会起作用。
但是,如果您希望自己的功能失败,如果y
不是标量,或者Q
和L
的大小不同,你可以在函数的开头添加这样的条件:
if ~isscalar(y)
error('y must be a scalar')
end
if any(size(Q) ~= size(L))
error('Q and L must have the same size')
end