Mercurial > octave
comparison scripts/optimization/lsqnonneg.m @ 31551:fd29c7a50a78 stable
maint: use commas, semicolons consistently with Octave conventions.
* makeValidName.m: Remove %!test and move BIST %!asserts to column 1.
* base64decode.m, base64encode.m, which.m, logm.m, uniquetol.m, perms.m:
Delete semicolon (';') at end of %!assert BIST.
* lin2mu.m, interp2.m, interpn.m, lsqnonneg.m, pqpnonneg.m, uniquetol.m,
betainc.m, normalize.m: Add semicolon (';') to end of assert statement within
%!test BIST.
* __memoize__.m, tar_is_bsd.m, publish.m: Add semicolon (';') to line with
keyword "persistent".
* stft.m: Use comma (',') after "case" keyword when code immediately follows.
* gallery.m: Align commas used in case statements in massive switch block.
Remove unnecessary parentheses around a numeric case argument.
* ranks.m: Remove semicolon (';') from case statemnt argument.
author | Rik <rik@octave.org> |
---|---|
date | Sat, 26 Nov 2022 06:32:08 -0800 |
parents | 10a813492497 |
children | 597f3ee61a48 |
comparison
equal
deleted
inserted
replaced
31549:ed7b17c7ddf3 | 31551:fd29c7a50a78 |
---|---|
245 %! [x, resn, resid, ~, ~, lambda] = lsqnonneg ([1 0; 0 1; 2 1], [1 1 3]'); | 245 %! [x, resn, resid, ~, ~, lambda] = lsqnonneg ([1 0; 0 1; 2 1], [1 1 3]'); |
246 %! assert (x, [1 1]', 10*eps); | 246 %! assert (x, [1 1]', 10*eps); |
247 %! assert (resn, 0, 10*eps); | 247 %! assert (resn, 0, 10*eps); |
248 %! assert (resid, [0 0 0]', 10*eps); | 248 %! assert (resid, [0 0 0]', 10*eps); |
249 %! assert (lambda, [0 0]', 10*eps); | 249 %! assert (lambda, [0 0]', 10*eps); |
250 %! assert (x .* lambda, [0 0]') | 250 %! assert (x .* lambda, [0 0]'); |
251 | 251 |
252 %!test | 252 %!test |
253 %! [x, resn, resid, ~, ~, lambda] = lsqnonneg ([1 0; 0 1; 2 1], [1 -1 1]'); | 253 %! [x, resn, resid, ~, ~, lambda] = lsqnonneg ([1 0; 0 1; 2 1], [1 -1 1]'); |
254 %! assert (x, [0.6 0]', 10*eps); | 254 %! assert (x, [0.6 0]', 10*eps); |
255 %! assert (resn, 1.2, 10*eps); | 255 %! assert (resn, 1.2, 10*eps); |
256 %! assert (resid, [0.4 -1 -0.2]', 10*eps); | 256 %! assert (resid, [0.4 -1 -0.2]', 10*eps); |
257 %! assert (lambda, [0 -1.2]', 10*eps); | 257 %! assert (lambda, [0 -1.2]', 10*eps); |
258 %! assert (x .* lambda, [0 0]') | 258 %! assert (x .* lambda, [0 0]'); |
259 | 259 |
260 %!test | 260 %!test |
261 %! [x, resn, resid, ~, ~, lambda] = lsqnonneg ([1 0; 0 1; 2 1], [-1 1 -1]'); | 261 %! [x, resn, resid, ~, ~, lambda] = lsqnonneg ([1 0; 0 1; 2 1], [-1 1 -1]'); |
262 %! assert (x, [0 0]', 10*eps); | 262 %! assert (x, [0 0]', 10*eps); |
263 %! assert (resn, 3, 10*eps); | 263 %! assert (resn, 3, 10*eps); |
264 %! assert (resid, [-1 1 -1]', 10*eps); | 264 %! assert (resid, [-1 1 -1]', 10*eps); |
265 %! assert (lambda, [-3 0]', 10*eps); | 265 %! assert (lambda, [-3 0]', 10*eps); |
266 %! assert (x .* lambda, [0 0]') | 266 %! assert (x .* lambda, [0 0]'); |
267 | 267 |
268 %!test | 268 %!test |
269 %! [x, resn, resid, ~, ~, lambda] = lsqnonneg ([1 0; 0 1; 2 1], [-1 -1 -3]'); | 269 %! [x, resn, resid, ~, ~, lambda] = lsqnonneg ([1 0; 0 1; 2 1], [-1 -1 -3]'); |
270 %! assert (x, [0 0]', 10*eps); | 270 %! assert (x, [0 0]', 10*eps); |
271 %! assert (resn, 11, 20*eps); | 271 %! assert (resn, 11, 20*eps); |
272 %! assert (resid, [-1 -1 -3]', 10*eps); | 272 %! assert (resid, [-1 -1 -3]', 10*eps); |
273 %! assert (lambda, [-7 -4]', 10*eps); | 273 %! assert (lambda, [-7 -4]', 10*eps); |
274 %! assert (x .* lambda, [0 0]') | 274 %! assert (x .* lambda, [0 0]'); |
275 | 275 |
276 ## Test input validation | 276 ## Test input validation |
277 %!error <Invalid call> lsqnonneg () | 277 %!error <Invalid call> lsqnonneg () |
278 %!error <Invalid call> lsqnonneg (1) | 278 %!error <Invalid call> lsqnonneg (1) |
279 %!error <C .* must be numeric matrices> lsqnonneg ({1},2) | 279 %!error <C .* must be numeric matrices> lsqnonneg ({1},2) |