Home > solver > DSA_BD_Atyfun.m

DSA_BD_Atyfun

PURPOSE ^

Atyfun: compute sum_{k=1}^m yk*Ak.

SYNOPSIS ^

function Q = DSA_BD_Atyfun(blk,At,y,normalize,AL)

DESCRIPTION ^

 Atyfun: compute sum_{k=1}^m yk*Ak.
%
%  DSA_BD_Atyfun(blk,At,y,normalize,AL)
%
% SDPT3: version 3.1
% Copyright (c) 1997 by
% K.C. Toh, M.J. Todd, R.H. Tutuncu
% Last Modified: 16 Sep 2004
%
%**********************************************************%%**********************************************************
% DSA_BD:
% Modified by C.Ortiz
% Last Modified: 3/31/2011

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 % Atyfun: compute sum_{k=1}^m yk*Ak.
0002 %%
0003 %%  DSA_BD_Atyfun(blk,At,y,normalize,AL)
0004 %%
0005 %% SDPT3: version 3.1
0006 %% Copyright (c) 1997 by
0007 %% K.C. Toh, M.J. Todd, R.H. Tutuncu
0008 %% Last Modified: 16 Sep 2004
0009 %%
0010 %%**********************************************************%%**********************************************************
0011 %% DSA_BD:
0012 %% Modified by C.Ortiz
0013 %% Last Modified: 3/31/2011
0014 
0015 function Q = DSA_BD_Atyfun(blk,At,y,normalize,AL)
0016 if (nargin < 4); AL = []; end
0017 if isempty(AL) || normalize <= 1; existAL = 0; else existAL = 1; end;
0018 
0019 % isspAy = ones(size(blk,1),1);
0020 Q = cell(size(blk,1),1);
0021 %%
0022 if (existAL)
0023     if strcmp(AL.matfct_options,'chol')
0024         y = AL.R \ y;
0025     elseif strcmp(AL.matfct_options,'spcholmatlab')
0026         y = AL.S*(AL.R \ y);%mexbwsolve(AL.Rt,y);
0027     end
0028 end
0029 if iscell(At)
0030     for p = 1:size(blk,1)
0031         pblk = blk(p,:);
0032         if strcmp(pblk{1},'s')
0033             Q{p} = mexsmat(pblk,At{p,1}*y);
0034         elseif strcmp(pblk{1},'l') || strcmp(pblk{1},'u')
0035             Q{p} = At{p,1}*y;
0036         end
0037     end
0038 else
0039     if strcmp(blk{1,1},'s')
0040         Q = mexsmat(blk,At*y);
0041     elseif strcmp(blk{1,1},'l') || strcmp(blk{1,1},'u')
0042         Q = At*y;
0043     end
0044 end
0045 %%*********************************************************
0046

Generated on Mon 19-Sep-2011 21:41:33 by m2html © 2005