Print Level = 1is an example of a string used to set an optional parameter. For each option the string contains one or more of the following items:
– | a mandatory keyword; |
– | a phrase that qualifies the keyword; |
– | a number that specifies an integer or double value. Such numbers may be up to contiguous characters in Fortran's I, F, E or D formats, terminated by a space if this is not the last item on the line. |
[lwsav, iwsav, rwsav, inform] = e04nh('Nolist', lwsav, iwsav, rwsav);suppresses printing of this and subsequent options. Printing will automatically be turned on again after a call to nag_opt_qp_dense_solve (e04nf) and may be turned on again at any time using the keyword List.
None.
Open in the MATLAB editor: e04nh_example
function e04nh_example fprintf('e04nh example results\n\n'); % Problem specification n = 7; m = 7; nclin = 7; a = [ 1, 1, 1, 1, 1, 1, 1; 0.15, 0.04, 0.02, 0.04, 0.02, 0.01, 0.03; 0.03, 0.05, 0.08, 0.02, 0.06, 0.01, 0; 0.02, 0.04, 0.01, 0.02, 0.02, 0.00, 0; 0.02, 0.03, 0.00, 0.00, 0.01, 0.00, 0; 0.70, 0.75, 0.80, 0.75, 0.80, 0.97, 0; 0.02, 0.06, 0.08, 0.12, 0.02, 0.01, 0.97]; bl = [-0.01; -0.10; -0.01; -0.04; -0.10; -0.01; -0.01;... -0.13; -1e25; -1e25; -1e25; -1e25; -0.0992; -0.003]; bu = [ 0.01; 0.15; 0.03; 0.02; 0.05; 1e25; 1e25;... -0.13; -0.0049; -0.0064; -0.0037; -0.0012; 1e25; 0.002]; cvec = [-0.02; -0.2; -0.2; -0.2; -0.2; 0.04; 0.04]; x = [-0.01; -0.03; 0; -0.01; -0.1; 0.02; 0.01]; h = zeros(m,n); h(1, 1) = 2; h(2, 2) = 2; h(3:4,3:4) = 2; h(5, 5) = 2; h(6:7,6:7) = -2; % Initialize and set options istate = zeros(14, 1, 'int64'); [cwsav,lwsav,iwsav,rwsav,ifail] = e04wb('e04nf'); [lwsav, iwsav, rwsav, inform] = e04nh(... 'NoList', lwsav, iwsav, rwsav); [lwsav, iwsav, rwsav, inform] = e04nh(... 'Print Level = 0', lwsav, iwsav, rwsav); [lwsav, iwsav, rwsav, inform] = e04nh(... 'Check Frequency = 10', lwsav, iwsav, rwsav); % Solve [istate, x, iter, obj, ax, clamda, user, lwsav, iwsav, rwsav, ifail] = ... e04nf(... a, bl, bu, cvec, h, @qphess, istate, x, lwsav, iwsav, rwsav); fprintf('Minimum value : %9.4f\n\n',obj); fprintf('Found after %3d iterations at x:\n ',iter); fprintf(' %9.4f',x); fprintf('\nLinear contrained values Ax:\n '); fprintf(' %9.4f',ax); fprintf('\n'); function [hx, user, iwsav] = qphess(n, jthcol, h, ldh, x, user, iwsav) if (iwsav(365) == 3 || iwsav(365) == 4) % Problem type QP1 and QP2 hx = h*x; elseif(iwsav(365) == 5 || iwsav(365) == 6) hx = transpose(h)*h*x; else hx = zeros(n,1); end
e04nh example results Minimum value : 0.0370 Found after 7 iterations at x: -0.0100 -0.0699 0.0183 -0.0243 -0.0620 0.0138 0.0041 Linear contrained values Ax: -0.1300 -0.0059 -0.0064 -0.0045 -0.0029 -0.0992 -0.0030