21 lines
404 B
Mathematica
21 lines
404 B
Mathematica
|
|
function X=spdiags(varargin)
|
||
|
|
%SPDIAGS (overloaded)
|
||
|
|
|
||
|
|
if nargin < 1
|
||
|
|
error('At-least 1 arguments needed');
|
||
|
|
end
|
||
|
|
|
||
|
|
X = varargin{1};
|
||
|
|
newBase = [];
|
||
|
|
for i = 1:length(X.lmi_variables)+1
|
||
|
|
Y = X.basis(:,i);
|
||
|
|
Y = reshape(Y,X.dim);
|
||
|
|
tempBase = spdiags(Y,varargin{2:end});
|
||
|
|
newBase = [newBase tempBase(:)];
|
||
|
|
end
|
||
|
|
X.basis = newBase;
|
||
|
|
X.dim = size(tempBase);
|
||
|
|
X.conicinfo = [0 0];
|
||
|
|
X = flush(X);
|
||
|
|
X = clean(X);
|