poblano_toolbox
poblano_toolbox copied to clipboard
ncg: create test for negative inner product update
In all update types except Steepest Descent, a check on the sign of an vector inner product is checked:
if gkTgkold > 0
bk = ...;
else
fprintf(1,[mfilename,': warning: bk set to 0\n']);
bk = 0;
end
Currently, there is no test which reaches the else clause. A function and starting point should be identified which exercises this code.
This code is unreachable. Since gkTgkold is the value of gkTgk from the previous iteration, which is the inner product of the gradient with itself, it will never be negative. Also, if gkTgk is 0 then poblano_out will return. So `gkTgkold is always positive.
These check can be removed.