📄 ge.m
字号:
function z = ge(x,y)%GE Greater than or equal for sptensors.%% See also SPTENSOR.%%MATLAB Tensor Toolbox.%Copyright 2007, Sandia Corporation. % This is the MATLAB Tensor Toolbox by Brett Bader and Tamara Kolda. % http://csmr.ca.sandia.gov/~tgkolda/TensorToolbox.% Copyright (2007) Sandia Corporation. Under the terms of Contract% DE-AC04-94AL85000, there is a non-exclusive license for use of this% work by or on behalf of the U.S. Government. Export of this data may% require a license from the United States Government.% The full license terms can be found in tensor_toolbox/LICENSE.txt% $Id: ge.m,v 1.4 2007/01/10 01:27:31 bwbader Exp $%% Observations for sparse matrix case.% The result of a >= 5 is sparse.% The result of a >= 0 is sparse.% The result of a >= full(a) is sparse.%% Case 1: One argument is a scalarif isscalar(y) subs1 = x.subs((x.vals >= y),:); if y <= 0 subs2 = setdiff(allsubs(x),x.subs,'rows'); else subs2 = []; end z = sptensor([subs1;subs2],true,size(x)); return;end% Call back with the arguments reversed.if isscalar(x) z = le(y,x); return;end%% Case 2: Both x and y are tensors of some sort% Check that the sizes matchif ~isequal(x.size,y.size) error('Size mismatch');end% Case 2a: Two sparse tensorsif isa(x,'sptensor') && isa(y,'sptensor') z = le(y,x); return;end% Case 2b: One dense tensorif isa(y,'tensor') % x zero subs1 = find(y <= 0); subs1 = setdiff(subs1,x.subs,'rows'); % x nonzero subs2 = x.subs(x.vals >= y(x.subs,'extract'),:); % assemble z = sptensor([subs1;subs2],true,size(x)); return; end%% Otherwiseerror('The arguments must be two sptensors or an sptensor and a scalar.');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -