# Dattorro Convex Optimization of Eternity II

### From Wikimization

(Difference between revisions)

Line 1: | Line 1: | ||

- | [http://www.convexoptimization.com/TOOLS/E/E_full.mat | + | [http://www.convexoptimization.com/TOOLS/E/E_full.mat E996.mat] |

- | [http://www.convexoptimization.com/TOOLS/E/E_small.mat E_small.mat] | ||

<pre> | <pre> | ||

%%% Theorem of the Alternative. | %%% Theorem of the Alternative. |

## Revision as of 10:47, 16 June 2009

%%% Theorem of the Alternative. clear all clc load E_small %load E_full [m n] = size(E); found=[]; cvx_quiet('true') cvx_precision('low') for i=1:n inconclusive = true; cvx_begin variable a(n+1,1); a(1:n) >= 0; -E(:,i) == [E t]*a; cvx_end if strcmp(cvx_status,'Solved') || strcmp(cvx_status,'Solved/Inaccurate') problem_solved = 1; inconclusive = false; else cvx_begin variable z(m,1); t'*z == 0; E(:,i)'*z == 1; E'*z >= 0; cvx_end if strcmp(cvx_status,'Solved') || strcmp(cvx_status,'Solved/Inaccurate') problem_solved = 2; inconclusive = false; end end fprintf('%6d/%6d',i,n); if inconclusive, fprintf(' numeric failure\n'), else fprintf(' problem %d solved\n',problem_solved), end end