comparison util/SMALL_solve.m @ 154:0de08f68256b ivand_dev

ALPS toolbox - Algebraic Pursuit added to smallbox
author Ivan Damnjanovic lnx <ivan.damnjanovic@eecs.qmul.ac.uk>
date Fri, 12 Aug 2011 11:17:47 +0100
parents 31d2864dfdd4
children b14209313ba4
comparison
equal deleted inserted replaced
153:af307f247ac7 154:0de08f68256b
46 start=cputime; 46 start=cputime;
47 tStart=tic; 47 tStart=tic;
48 if strcmpi(solver.toolbox,'sparselab') 48 if strcmpi(solver.toolbox,'sparselab')
49 y = eval([solver.name,'(SparseLab_A, b, n,',solver.param,');']); 49 y = eval([solver.name,'(SparseLab_A, b, n,',solver.param,');']);
50 elseif strcmpi(solver.toolbox,'sparsify') 50 elseif strcmpi(solver.toolbox,'sparsify')
51 y = eval([solver.name,'(b, A, n, ''P_trans'', AT,',solver.param,');']); 51 if isa(Problem.A,'float')
52 y = eval([solver.name,'(b, A, n,',solver.param,');']);
53 else
54 y = eval([solver.name,'(b, A, n, ''P_trans'', AT,',solver.param,');']);
55 end
52 elseif (strcmpi(solver.toolbox,'spgl1')||strcmpi(solver.toolbox,'gpsr')) 56 elseif (strcmpi(solver.toolbox,'spgl1')||strcmpi(solver.toolbox,'gpsr'))
53 y = eval([solver.name,'(b, A,',solver.param,');']); 57 y = eval([solver.name,'(b, A,',solver.param,');']);
54 elseif (strcmpi(solver.toolbox,'SPAMS')) 58 elseif (strcmpi(solver.toolbox,'SPAMS'))
55 y = eval([solver.name,'(b, A, solver.param);']); 59 y = eval([solver.name,'(b, A, solver.param);']);
56 elseif (strcmpi(solver.toolbox,'SMALL')) 60 elseif (strcmpi(solver.toolbox,'SMALL'))
64 epsilon=solver.param.epsilon; 68 epsilon=solver.param.epsilon;
65 maxatoms=solver.param.maxatoms; 69 maxatoms=solver.param.maxatoms;
66 y = eval([solver.name,'(A, b, G,epsilon,''maxatoms'',maxatoms,''checkdict'',''off'');']); 70 y = eval([solver.name,'(A, b, G,epsilon,''maxatoms'',maxatoms,''checkdict'',''off'');']);
67 elseif (strcmpi(solver.toolbox, 'ompsbox')) 71 elseif (strcmpi(solver.toolbox, 'ompsbox'))
68 basedict = Problem.basedict; 72 basedict = Problem.basedict;
69 if issparse(Problem.A) 73 if issparse(Problem.A)
70 A = Problem.A; 74 A = Problem.A;
71 else 75 else
72 A = sparse(Problem.A); 76 A = sparse(Problem.A);
73 end 77 end
74 G = dicttsep(basedict,A,dictsep(basedict,A,speye(size(A,2)))); 78 G = dicttsep(basedict,A,dictsep(basedict,A,speye(size(A,2))));
75 epsilon=solver.param.epsilon; 79 epsilon=solver.param.epsilon;
76 maxatoms=solver.param.maxatoms; 80 maxatoms=solver.param.maxatoms;
77 y = eval([solver.name,'(basedict, A, b, G,epsilon,''maxatoms'',maxatoms,''checkdict'',''off'');']); 81 y = eval([solver.name,'(basedict, A, b, G,epsilon,''maxatoms'',maxatoms,''checkdict'',''off'');']);
78 Problem.sparse=1; 82 Problem.sparse=1;
79 % To introduce new sparse representation algorithm put the files in 83 elseif (strcmpi(solver.toolbox, 'ALPS'))
80 % your Matlab path. Next, unique name <TolboxID> for your toolbox and 84 if ~isa(Problem.A,'float')
81 % prefferd API <Preffered_API> needs to be defined. 85 % ALPS does not accept implicit dictionary definition
82 % 86 A = opToMatrix(Problem.A, 1);
83 % elseif strcmpi(solver.toolbox,'<ToolboxID>') 87 end
84 % 88 [y, numiter, time, y_path] = wrapper_ALPS_toolbox(b, A, solver.param);
85 % % - Evaluate the function (solver.name - defined in the main) with 89
86 % % parameters given above 90
87 % 91 % To introduce new sparse representation algorithm put the files in
88 % y = eval([solver.name,'(<Preffered_API>);']); 92 % your Matlab path. Next, unique name <TolboxID> for your toolbox and
89 93 % prefferd API <Preffered_API> needs to be defined.
94 %
95 % elseif strcmpi(solver.toolbox,'<ToolboxID>')
96 %
97 % % - Evaluate the function (solver.name - defined in the main) with
98 % % parameters given above
99 %
100 % y = eval([solver.name,'(<Preffered_API>);']);
101
90 else 102 else
91 printf('\nToolbox has not been registered. Please change SMALL_solver file.\n'); 103 printf('\nToolbox has not been registered. Please change SMALL_solver file.\n');
92 return 104 return
93 end 105 end
94 106