From 92833d3ceb1979e3fbf9f626e4bb8a8583bcbc85 Mon Sep 17 00:00:00 2001 From: Michel Juillard Date: Mon, 10 Sep 2012 14:27:56 +0200 Subject: [PATCH] In CHECK, use the eigenvalues as computed by the reordered real generalized Schur decomposition, rather than the ones computed by eig() --- matlab/dr_block.m | 3 --- matlab/dyn_first_order_solver.m | 5 ----- 2 files changed, 8 deletions(-) diff --git a/matlab/dr_block.m b/matlab/dr_block.m index d6dca0a1c..fedc72ce7 100644 --- a/matlab/dr_block.m +++ b/matlab/dr_block.m @@ -462,9 +462,6 @@ for i = 1:Size; data(i).rank = rank(w(nd-nyf+1:end,nd-nyf+1:end)); dr.full_rank = dr.full_rank && (rcond(w(nd-nyf+1:end,nd- ... nyf+1:end)) > 1e-9); - if ~exist('OCTAVE_VERSION','builtin') - data(i).eigval = eig(E,D); - end dr.eigval = [dr.eigval ; data(i).eigval]; end if (verbose) diff --git a/matlab/dyn_first_order_solver.m b/matlab/dyn_first_order_solver.m index b0d9a81c0..e38de5020 100644 --- a/matlab/dyn_first_order_solver.m +++ b/matlab/dyn_first_order_solver.m @@ -238,11 +238,6 @@ else else dr.full_rank = 1; end - % Under Octave, eig(A,B) doesn't exist, and - % lambda = qz(A,B) won't return infinite eigenvalues - if ~exist('OCTAVE_VERSION') - dr.eigval = eig(E,D); - end return end