prod.m

来自「matlab波形优化算法经常要用到的matlab toolbox工具箱:yalm」· M 代码 · 共 26 行

M
26
字号
function product=prod(X)
%PROD (overloaded)

% Author Johan L鱢berg
% $Id: prod.m,v 1.8 2008/01/16 22:14:12 joloef Exp $

% Ugly hack to fix a special user case prod([1e-7 1e-7 1e7 1e7].*[x1 x2 x3
% x4])
scale = 1;
if min(size(X))==1
    base = getbase(X);
    for i = 1:size(X.basis,1)
        si = norm(full(base(i,:)));
        if si<1
            scale = scale * si;
            base(i,:) = base(i,:)/si;
        end
    end
    X.basis = base;
end
product = 1;
for i = 1:length(X)
    pick = cell(1,1);pick{1}={i};
    product = product*subsref(X,struct('type','()','subs',pick));
end
product.basis = product.basis*scale;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?