Contents
function LQR_rail(k,shifts,inexact,Galerkin,istest)
% Computes the optimal feedback via the low-rank Newton-ADI [1] and RADI % [2] methods for the selective cooling of Steel profiles application % described in [3,4,5]. % % Usage: LQR_Rail(k,shifts,inexact,Galerkin,istest) % % Inputs: % % k refinement level of the model to use % (1-4, i.e. 1357-79841Dofs) % (optinal, defaults to 1) % % shifts ADI shift selection strategy. Possible values: % 'heur' Penzl's heuristic shifts % 'Wachspress' Wachspress shifts, optimally solving the dense % shift selection problem. % (optional, defaults to 'heur') % % inexact use inexact Newton method % (optional, defaults to 0, i.e. false) % % Galerkin activate Galerkin projection acceleration in Newton method. % This superseeds inexact Newton selection, i.e, disables it in % case both are on. % (optional, defaults to 0, i.e. no Galerkin acceleration) % % istest flag to determine whether this demo runs as a CI test or % interactive demo % (optional, defaults to 0, i.e. interactive demo) % % References: % [1] P. Benner, J.-R. Li, T. Penzl, Numerical solution of large-scale % Lyapunov equations, Riccati equations, and linear-quadratic optimal % control problems, Numer. Lin. Alg. Appl. 15 (9) (2008) 755–777. % https://doi.org/10.1002/nla.622. % % [2] P. Benner, Z. Bujanović, P. Kürschner, J. Saak, RADI: A low-rank % ADI-type algorithm for large scale algebraic Riccati equations, % Numer. Math. 138 (2) (2018) 301–330. % https://doi.org/10.1007/s00211-017-0907-5. % % [3] J. Saak, Effiziente numerische Lösung eines % Optimalsteuerungsproblems für die Abkühlung von Stahlprofilen, % Diplomarbeit, Fachbereich 3/Mathematik und Informatik, Universität % Bremen, D-28334 Bremen (Sep. 2003). % % [4] P. Benner, J. Saak, A semi-discretized heat transfer model for % optimal cooling of steel profiles, in: P. Benner, V. Mehrmann, D. % Sorensen (Eds.), Dimension Reduction of Large-Scale Systems, Vol. 45 % of Lect. Notes Comput. Sci. Eng., Springer-Verlag, Berlin/Heidelberg, % Germany, 2005, pp. 353–356. https://doi.org/10.1007/3-540-27909-1_19. % % [5] J. Saak, Efficient numerical solution of large scale algebraic matrix % equations in PDE control and model order reduction, Dissertation, % Technische Universität Chemnitz, Chemnitz, Germany (Jul. 2009). % URL http://nbn-resolving.de/urn:nbn:de:bsz:ch1-200901642 % % % This program is free software; you can redistribute it and/or modify % it under the terms of the GNU General Public License as published by % the Free Software Foundation; either version 2 of the License, or % (at your option) any later version. % % This program is distributed in the hope that it will be useful, % but WITHOUT ANY WARRANTY; without even the implied warranty of % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the % GNU General Public License for more details. % % You should have received a copy of the GNU General Public License % along with this program; if not, see <http://www.gnu.org/licenses/>. % % Copyright (C) Jens Saak, Martin Koehler, Peter Benner and others % 2009-2020 %
narginchk(0,5); if nargin<1, k=1; end if nargin<2, shifts='heur'; end if nargin<3, inexact=0; end if nargin<4, Galerkin=0; end if nargin<5, istest=0; end
set operation
oper = operatormanager('default');
Problem data
eqn=getrail(k);
First we run the Newton-ADI Method
% ADI tolerances and maximum iteration number opts.adi.maxiter = 100; opts.adi.res_tol = 1e-14; opts.adi.rel_diff_tol = 1e-16; opts.adi.info = 1; eqn.type = 'T';
%Heuristic shift parameters via basic Arnoldi opts.shifts.num_desired=25; opts.shifts.num_Ritz=50; opts.shifts.num_hRitz=25; n=oper.size(eqn, opts); opts.shifts.b0=ones(n,1); switch lower(shifts) case 'heur' opts.shifts.method = 'heur'; case 'wachspress' opts.shifts.method = 'wachspress'; opts.shifts.wachspress = 'T'; end
Newton tolerances and maximum iteration number
opts.nm.maxiter = 8; opts.nm.res_tol = 1e-10; opts.nm.rel_diff_tol = 1e-16; opts.nm.info = 1; opts.nm.accumulateRes = 1; opts.norm = 'fro'; if Galerkin opts.nm.linesearch = 0; opts.nm.inexact = 0; opts.nm.projection.freq=2; opts.nm.projection.ortho=1; elseif inexact opts.nm.linesearch = 1; opts.nm.inexact = 'quadratic'; opts.nm.projection.freq=0; opts.nm.projection.ortho=0; else opts.nm.linesearch = 0; opts.nm.inexact = 0; opts.nm.projection.freq=0; opts.nm.projection.ortho=0; end opts.nm.res=struct('maxiter',10,'tol',1e-6,'orth',0);
tic; outnm = mess_lrnm(eqn, opts, oper); toc; if istest if min(outnm.res)>=opts.nm.res_tol error('MESS:TEST:accuracy','unexpectedly inaccurate result'); end else figure(1); disp(outnm.res); semilogy(outnm.res); title('0= C^TC + A^TXM + M^TXA -M^TXBB^TXM'); xlabel('number of iterations'); ylabel('normalized residual norm'); pause(1); end disp('size outnm.Z:'); disp(size(outnm.Z));
ADI step: 1 normalized residual: 9.303764e-01 relative change in Z: 1.000000e+00 normalized outer residual: 9.303763e-01 ADI step: 2 normalized residual: 8.539164e-01 relative change in Z: 7.132928e-01 normalized outer residual: 8.539163e-01 ADI step: 3 normalized residual: 7.658813e-01 relative change in Z: 5.972237e-01 normalized outer residual: 7.658810e-01 ADI step: 4 normalized residual: 6.714443e-01 relative change in Z: 5.173327e-01 normalized outer residual: 6.714436e-01 ADI step: 5 normalized residual: 5.639323e-01 relative change in Z: 4.760509e-01 normalized outer residual: 5.639310e-01 ADI step: 6 normalized residual: 4.531679e-01 relative change in Z: 4.291598e-01 normalized outer residual: 4.531654e-01 ADI step: 7 normalized residual: 3.481477e-01 relative change in Z: 3.835150e-01 normalized outer residual: 3.481435e-01 ADI step: 8 normalized residual: 2.268878e-01 relative change in Z: 3.886783e-01 normalized outer residual: 2.268803e-01 ADI step: 9 normalized residual: 1.396843e-01 relative change in Z: 3.373168e-01 normalized outer residual: 1.396731e-01 ADI step: 10 normalized residual: 9.304214e-02 relative change in Z: 2.662943e-01 normalized outer residual: 9.302818e-02 ADI step: 11 normalized residual: 5.883424e-02 relative change in Z: 2.405461e-01 normalized outer residual: 5.881764e-02 ADI step: 12 normalized residual: 2.861068e-02 relative change in Z: 2.391943e-01 normalized outer residual: 2.859205e-02 ADI step: 13 normalized residual: 1.189389e-02 relative change in Z: 2.043562e-01 normalized outer residual: 1.187739e-02 ADI step: 14 normalized residual: 5.529188e-03 relative change in Z: 1.638109e-01 normalized outer residual: 5.517507e-03 ADI step: 15 normalized residual: 2.524790e-03 relative change in Z: 1.498967e-01 normalized outer residual: 2.516767e-03 ADI step: 16 normalized residual: 8.685998e-04 relative change in Z: 1.231580e-01 normalized outer residual: 8.637869e-04 ADI step: 17 normalized residual: 4.342963e-04 relative change in Z: 6.713691e-02 normalized outer residual: 4.353459e-04 ADI step: 18 normalized residual: 2.979404e-04 relative change in Z: 5.074681e-02 normalized outer residual: 3.031402e-04 ADI step: 19 normalized residual: 2.084510e-04 relative change in Z: 5.837265e-02 normalized outer residual: 2.162634e-04 ADI step: 20 normalized residual: 1.406698e-04 relative change in Z: 5.945130e-02 normalized outer residual: 1.515315e-04 ADI step: 21 normalized residual: 7.542061e-05 relative change in Z: 6.124586e-02 normalized outer residual: 9.405439e-05 ADI step: 22 normalized residual: 1.927805e-05 relative change in Z: 5.916788e-02 normalized outer residual: 6.164351e-05 ADI step: 23 normalized residual: 2.121106e-07 relative change in Z: 3.843114e-02 normalized outer residual: 6.055295e-05 ADI step: 24 normalized residual: 1.007752e-07 relative change in Z: 6.685071e-03 normalized outer residual: 6.055160e-05 ADI step: 25 normalized residual: 9.970498e-08 relative change in Z: 6.274494e-04 normalized outer residual: 6.055189e-05 ADI step: 26 normalized residual: 9.504137e-08 relative change in Z: 5.697438e-05 normalized outer residual: 6.055190e-05 ADI step: 27 normalized residual: 8.977032e-08 relative change in Z: 6.075582e-05 normalized outer residual: 6.055192e-05 ADI step: 28 normalized residual: 8.368002e-08 relative change in Z: 6.516932e-05 normalized outer residual: 6.055193e-05 ADI step: 29 normalized residual: 7.722903e-08 relative change in Z: 6.599588e-05 normalized outer residual: 6.055193e-05 ADI step: 30 normalized residual: 6.987154e-08 relative change in Z: 6.783337e-05 normalized outer residual: 6.055193e-05 ADI step: 31 normalized residual: 6.183081e-08 relative change in Z: 6.773307e-05 normalized outer residual: 6.055193e-05 ADI step: 32 normalized residual: 5.315546e-08 relative change in Z: 6.942174e-05 normalized outer residual: 6.055195e-05 ADI step: 33 normalized residual: 4.087924e-08 relative change in Z: 8.596930e-05 normalized outer residual: 6.055202e-05 ADI step: 34 normalized residual: 2.949815e-08 relative change in Z: 9.234553e-05 normalized outer residual: 6.055218e-05 ADI step: 35 normalized residual: 2.207118e-08 relative change in Z: 8.686137e-05 normalized outer residual: 6.055243e-05 ADI step: 36 normalized residual: 1.562767e-08 relative change in Z: 9.095217e-05 normalized outer residual: 6.055284e-05 ADI step: 37 normalized residual: 8.636408e-09 relative change in Z: 1.040559e-04 normalized outer residual: 6.055340e-05 ADI step: 38 normalized residual: 3.991990e-09 relative change in Z: 9.828149e-05 normalized outer residual: 6.055380e-05 ADI step: 39 normalized residual: 2.028906e-09 relative change in Z: 8.145823e-05 normalized outer residual: 6.055399e-05 ADI step: 40 normalized residual: 9.850220e-10 relative change in Z: 7.628171e-05 normalized outer residual: 6.055408e-05 ADI step: 41 normalized residual: 2.840489e-10 relative change in Z: 7.045742e-05 normalized outer residual: 6.055416e-05 ADI step: 42 normalized residual: 6.254303e-11 relative change in Z: 4.131070e-05 normalized outer residual: 6.055419e-05 ADI step: 43 normalized residual: 1.410131e-11 relative change in Z: 2.082402e-05 normalized outer residual: 6.055419e-05 ADI step: 44 normalized residual: 1.568327e-12 relative change in Z: 1.158603e-05 normalized outer residual: 6.055419e-05 ADI step: 45 normalized residual: 5.071568e-14 relative change in Z: 4.411117e-06 normalized outer residual: 6.055419e-05 ADI step: 46 normalized residual: 2.645028e-14 relative change in Z: 5.288257e-07 normalized outer residual: 6.055419e-05 ADI step: 47 normalized residual: 2.444010e-14 relative change in Z: 1.267751e-07 normalized outer residual: 6.055419e-05 ADI step: 48 normalized residual: 2.390847e-14 relative change in Z: 6.088309e-08 normalized outer residual: 6.055419e-05 ADI step: 49 normalized residual: 2.354573e-14 relative change in Z: 4.903889e-08 normalized outer residual: 6.055419e-05 ADI step: 50 normalized residual: 2.326042e-14 relative change in Z: 4.267443e-08 normalized outer residual: 6.055419e-05 ADI step: 51 normalized residual: 2.251554e-14 relative change in Z: 2.496356e-08 normalized outer residual: 6.055419e-05 ADI step: 52 normalized residual: 2.167615e-14 relative change in Z: 2.693916e-08 normalized outer residual: 6.055419e-05 ADI step: 53 normalized residual: 2.071521e-14 relative change in Z: 2.931658e-08 normalized outer residual: 6.055419e-05 ADI step: 54 normalized residual: 1.971413e-14 relative change in Z: 3.033140e-08 normalized outer residual: 6.055419e-05 ADI step: 55 normalized residual: 1.859463e-14 relative change in Z: 3.237183e-08 normalized outer residual: 6.055419e-05 ADI step: 56 normalized residual: 1.737649e-14 relative change in Z: 3.438650e-08 normalized outer residual: 6.055419e-05 ADI step: 57 normalized residual: 1.602077e-14 relative change in Z: 3.790898e-08 normalized outer residual: 6.055419e-05 ADI step: 58 normalized residual: 1.393759e-14 relative change in Z: 5.106835e-08 normalized outer residual: 6.055419e-05 ADI step: 59 normalized residual: 1.162564e-14 relative change in Z: 6.098068e-08 normalized outer residual: 6.055419e-05 ADI step: 60 normalized residual: 9.604368e-15 relative change in Z: 6.311463e-08 normalized outer residual: 6.055419e-05 NM step: 1 normalized residual: 6.055419e-05 relative change in K: 1.000000e+00 number of ADI steps: 60 ADI step: 1 normalized residual: 9.303984e-01 relative change in Z: 1.000000e+00 normalized outer residual: 9.303757e-01 ADI step: 2 normalized residual: 8.539372e-01 relative change in Z: 7.132931e-01 normalized outer residual: 8.539150e-01 ADI step: 3 normalized residual: 7.659002e-01 relative change in Z: 5.972241e-01 normalized outer residual: 7.658789e-01 ADI step: 4 normalized residual: 6.714513e-01 relative change in Z: 5.173519e-01 normalized outer residual: 6.714313e-01 ADI step: 5 normalized residual: 5.639206e-01 relative change in Z: 4.760722e-01 normalized outer residual: 5.639022e-01 ADI step: 6 normalized residual: 4.530700e-01 relative change in Z: 4.292789e-01 normalized outer residual: 4.530537e-01 ADI step: 7 normalized residual: 3.480539e-01 relative change in Z: 3.834744e-01 normalized outer residual: 3.480397e-01 ADI step: 8 normalized residual: 2.266114e-01 relative change in Z: 3.889243e-01 normalized outer residual: 2.266002e-01 ADI step: 9 normalized residual: 1.394342e-01 relative change in Z: 3.373096e-01 normalized outer residual: 1.394262e-01 ADI step: 10 normalized residual: 9.290057e-02 relative change in Z: 2.660381e-01 normalized outer residual: 9.289533e-02 ADI step: 11 normalized residual: 5.876467e-02 relative change in Z: 2.403070e-01 normalized outer residual: 5.876175e-02 ADI step: 12 normalized residual: 2.854736e-02 relative change in Z: 2.391927e-01 normalized outer residual: 2.854576e-02 ADI step: 13 normalized residual: 1.189915e-02 relative change in Z: 2.039573e-01 normalized outer residual: 1.189729e-02 ADI step: 14 normalized residual: 5.515019e-03 relative change in Z: 1.640275e-01 normalized outer residual: 5.512677e-03 ADI step: 15 normalized residual: 2.520113e-03 relative change in Z: 1.496541e-01 normalized outer residual: 2.517412e-03 ADI step: 16 normalized residual: 8.507955e-04 relative change in Z: 1.236802e-01 normalized outer residual: 8.461822e-04 ADI step: 17 normalized residual: 4.374576e-04 relative change in Z: 6.600777e-02 normalized outer residual: 4.310616e-04 ADI step: 18 normalized residual: 3.017156e-04 relative change in Z: 5.086801e-02 normalized outer residual: 2.955861e-04 ADI step: 19 normalized residual: 2.097893e-04 relative change in Z: 5.861766e-02 normalized outer residual: 2.055130e-04 ADI step: 20 normalized residual: 1.389405e-04 relative change in Z: 5.939802e-02 normalized outer residual: 1.367476e-04 ADI step: 21 normalized residual: 7.191941e-05 relative change in Z: 6.048015e-02 normalized outer residual: 7.122983e-05 ADI step: 22 normalized residual: 1.688178e-05 relative change in Z: 5.714133e-02 normalized outer residual: 1.681057e-05 ADI step: 23 normalized residual: 2.042560e-07 relative change in Z: 3.546450e-02 normalized outer residual: 2.036977e-07 ADI step: 24 normalized residual: 1.028462e-07 relative change in Z: 6.533789e-03 normalized outer residual: 1.030121e-07 ADI step: 25 normalized residual: 1.016677e-07 relative change in Z: 6.675279e-04 normalized outer residual: 1.018252e-07 ADI step: 26 normalized residual: 9.693913e-08 relative change in Z: 5.740469e-05 normalized outer residual: 9.710456e-08 ADI step: 27 normalized residual: 9.159776e-08 relative change in Z: 6.121325e-05 normalized outer residual: 9.177312e-08 ADI step: 28 normalized residual: 8.543283e-08 relative change in Z: 6.565492e-05 normalized outer residual: 8.562131e-08 ADI step: 29 normalized residual: 7.891407e-08 relative change in Z: 6.648196e-05 normalized outer residual: 7.911884e-08 ADI step: 30 normalized residual: 7.149796e-08 relative change in Z: 6.832737e-05 normalized outer residual: 7.172526e-08 ADI step: 31 normalized residual: 6.340728e-08 relative change in Z: 6.827128e-05 normalized outer residual: 6.366566e-08 ADI step: 32 normalized residual: 5.469126e-08 relative change in Z: 7.004120e-05 normalized outer residual: 5.499397e-08 ADI step: 33 normalized residual: 4.231696e-08 relative change in Z: 8.705837e-05 normalized outer residual: 4.271489e-08 ADI step: 34 normalized residual: 3.079672e-08 relative change in Z: 9.389908e-05 normalized outer residual: 3.135358e-08 ADI step: 35 normalized residual: 2.320080e-08 relative change in Z: 8.868359e-05 normalized outer residual: 2.394859e-08 ADI step: 36 normalized residual: 1.650622e-08 relative change in Z: 9.316200e-05 normalized outer residual: 1.755870e-08 ADI step: 37 normalized residual: 9.112338e-09 relative change in Z: 1.068795e-04 normalized outer residual: 1.093080e-08 ADI step: 38 normalized residual: 4.130863e-09 relative change in Z: 1.005731e-04 normalized outer residual: 7.340154e-09 ADI step: 39 normalized residual: 2.008144e-09 relative change in Z: 8.279209e-05 normalized outer residual: 6.401983e-09 ADI step: 40 normalized residual: 9.495956e-10 relative change in Z: 7.593748e-05 normalized outer residual: 6.157209e-09 ADI step: 41 normalized residual: 2.635698e-10 relative change in Z: 6.978422e-05 normalized outer residual: 6.092678e-09 ADI step: 42 normalized residual: 5.924128e-11 relative change in Z: 3.980611e-05 normalized outer residual: 6.088392e-09 ADI step: 43 normalized residual: 1.343227e-11 relative change in Z: 2.029607e-05 normalized outer residual: 6.088347e-09 ADI step: 44 normalized residual: 1.497087e-12 relative change in Z: 1.131708e-05 normalized outer residual: 6.088365e-09 ADI step: 45 normalized residual: 5.188925e-14 relative change in Z: 4.305616e-06 normalized outer residual: 6.088369e-09 ADI step: 46 normalized residual: 2.877169e-14 relative change in Z: 5.171715e-07 normalized outer residual: 6.088370e-09 ADI step: 47 normalized residual: 2.664496e-14 relative change in Z: 1.253971e-07 normalized outer residual: 6.088370e-09 ADI step: 48 normalized residual: 2.604083e-14 relative change in Z: 6.196434e-08 normalized outer residual: 6.088370e-09 ADI step: 49 normalized residual: 2.563786e-14 relative change in Z: 4.921756e-08 normalized outer residual: 6.088370e-09 ADI step: 50 normalized residual: 2.532459e-14 relative change in Z: 4.253082e-08 normalized outer residual: 6.088370e-09 ADI step: 51 normalized residual: 2.455440e-14 relative change in Z: 2.546571e-08 normalized outer residual: 6.088370e-09 ADI step: 52 normalized residual: 2.368531e-14 relative change in Z: 2.750537e-08 normalized outer residual: 6.088370e-09 ADI step: 53 normalized residual: 2.268924e-14 relative change in Z: 2.997620e-08 normalized outer residual: 6.088370e-09 ADI step: 54 normalized residual: 2.165155e-14 relative change in Z: 3.109040e-08 normalized outer residual: 6.088370e-09 ADI step: 55 normalized residual: 2.049349e-14 relative change in Z: 3.331119e-08 normalized outer residual: 6.088370e-09 ADI step: 56 normalized residual: 1.923535e-14 relative change in Z: 3.557456e-08 normalized outer residual: 6.088370e-09 ADI step: 57 normalized residual: 1.783268e-14 relative change in Z: 3.938915e-08 normalized outer residual: 6.088370e-09 ADI step: 58 normalized residual: 1.564792e-14 relative change in Z: 5.339252e-08 normalized outer residual: 6.088370e-09 ADI step: 59 normalized residual: 1.315954e-14 relative change in Z: 6.415375e-08 normalized outer residual: 6.088370e-09 ADI step: 60 normalized residual: 1.091489e-14 relative change in Z: 6.668441e-08 normalized outer residual: 6.088370e-09 ADI step: 61 normalized residual: 8.340681e-15 relative change in Z: 7.394368e-08 normalized outer residual: 6.088370e-09 NM step: 2 normalized residual: 6.088370e-09 relative change in K: 7.698417e-03 number of ADI steps: 61 ADI step: 1 normalized residual: 9.303984e-01 relative change in Z: 1.000000e+00 normalized outer residual: 9.303757e-01 ADI step: 2 normalized residual: 8.539372e-01 relative change in Z: 7.132931e-01 normalized outer residual: 8.539150e-01 ADI step: 3 normalized residual: 7.659002e-01 relative change in Z: 5.972241e-01 normalized outer residual: 7.658789e-01 ADI step: 4 normalized residual: 6.714517e-01 relative change in Z: 5.173512e-01 normalized outer residual: 6.714316e-01 ADI step: 5 normalized residual: 5.639215e-01 relative change in Z: 4.760716e-01 normalized outer residual: 5.639031e-01 ADI step: 6 normalized residual: 4.530735e-01 relative change in Z: 4.292751e-01 normalized outer residual: 4.530571e-01 ADI step: 7 normalized residual: 3.480571e-01 relative change in Z: 3.834757e-01 normalized outer residual: 3.480429e-01 ADI step: 8 normalized residual: 2.266198e-01 relative change in Z: 3.889172e-01 normalized outer residual: 2.266085e-01 ADI step: 9 normalized residual: 1.394418e-01 relative change in Z: 3.373092e-01 normalized outer residual: 1.394338e-01 ADI step: 10 normalized residual: 9.290473e-02 relative change in Z: 2.660457e-01 normalized outer residual: 9.289948e-02 ADI step: 11 normalized residual: 5.876618e-02 relative change in Z: 2.403151e-01 normalized outer residual: 5.876326e-02 ADI step: 12 normalized residual: 2.854917e-02 relative change in Z: 2.391900e-01 normalized outer residual: 2.854758e-02 ADI step: 13 normalized residual: 1.189882e-02 relative change in Z: 2.039684e-01 normalized outer residual: 1.189700e-02 ADI step: 14 normalized residual: 5.515399e-03 relative change in Z: 1.640165e-01 normalized outer residual: 5.513124e-03 ADI step: 15 normalized residual: 2.520100e-03 relative change in Z: 1.496588e-01 normalized outer residual: 2.517503e-03 ADI step: 16 normalized residual: 8.504350e-04 relative change in Z: 1.236857e-01 normalized outer residual: 8.460321e-04 ADI step: 17 normalized residual: 4.371270e-04 relative change in Z: 6.599275e-02 normalized outer residual: 4.310531e-04 ADI step: 18 normalized residual: 3.014390e-04 relative change in Z: 5.084647e-02 normalized outer residual: 2.956577e-04 ADI step: 19 normalized residual: 2.096199e-04 relative change in Z: 5.859170e-02 normalized outer residual: 2.056472e-04 ADI step: 20 normalized residual: 1.388950e-04 relative change in Z: 5.937881e-02 normalized outer residual: 1.369203e-04 ADI step: 21 normalized residual: 7.196834e-05 relative change in Z: 6.048056e-02 normalized outer residual: 7.139905e-05 ADI step: 22 normalized residual: 1.693559e-05 relative change in Z: 5.717885e-02 normalized outer residual: 1.689916e-05 ADI step: 23 normalized residual: 2.046772e-07 relative change in Z: 3.553708e-02 normalized outer residual: 2.046736e-07 ADI step: 24 normalized residual: 1.028953e-07 relative change in Z: 6.540377e-03 normalized outer residual: 1.028953e-07 ADI step: 25 normalized residual: 1.017183e-07 relative change in Z: 6.665161e-04 normalized outer residual: 1.017183e-07 ADI step: 26 normalized residual: 9.699195e-08 relative change in Z: 5.739666e-05 normalized outer residual: 9.699195e-08 ADI step: 27 normalized residual: 9.165273e-08 relative change in Z: 6.120563e-05 normalized outer residual: 9.165273e-08 ADI step: 28 normalized residual: 8.548964e-08 relative change in Z: 6.564854e-05 normalized outer residual: 8.548964e-08 ADI step: 29 normalized residual: 7.897193e-08 relative change in Z: 6.647855e-05 normalized outer residual: 7.897193e-08 ADI step: 30 normalized residual: 7.155585e-08 relative change in Z: 6.832939e-05 normalized outer residual: 7.155584e-08 ADI step: 31 normalized residual: 6.346419e-08 relative change in Z: 6.828010e-05 normalized outer residual: 6.346419e-08 ADI step: 32 normalized residual: 5.474601e-08 relative change in Z: 7.005769e-05 normalized outer residual: 5.474601e-08 ADI step: 33 normalized residual: 4.236768e-08 relative change in Z: 8.708402e-05 normalized outer residual: 4.236768e-08 ADI step: 34 normalized residual: 3.084003e-08 relative change in Z: 9.394008e-05 normalized outer residual: 3.084003e-08 ADI step: 35 normalized residual: 2.323514e-08 relative change in Z: 8.873750e-05 normalized outer residual: 2.323514e-08 ADI step: 36 normalized residual: 1.653023e-08 relative change in Z: 9.322546e-05 normalized outer residual: 1.653023e-08 ADI step: 37 normalized residual: 9.124592e-09 relative change in Z: 1.069447e-04 normalized outer residual: 9.124592e-09 ADI step: 38 normalized residual: 4.134147e-09 relative change in Z: 1.006285e-04 normalized outer residual: 4.134147e-09 ADI step: 39 normalized residual: 2.008462e-09 relative change in Z: 8.280588e-05 normalized outer residual: 2.008462e-09 ADI step: 40 normalized residual: 9.492903e-10 relative change in Z: 7.593145e-05 normalized outer residual: 9.492903e-10 ADI step: 41 normalized residual: 2.634140e-10 relative change in Z: 6.977099e-05 normalized outer residual: 2.634140e-10 ADI step: 42 normalized residual: 5.922031e-11 relative change in Z: 3.979467e-05 normalized outer residual: 5.922030e-11 NM step: 3 normalized residual: 5.922030e-11 relative change in K: 6.516683e-06 number of ADI steps: 42 Elapsed time is 0.820291 seconds. 1.0e-04 * 0.6055 0.0001 0.0000 size outnm.Z: 1357 132

Lets try the RADI method and compare
% RADI-MESS settings opts.shifts.history = opts.shifts.num_desired*size(eqn.C,1); opts.shifts.num_desired = opts.shifts.num_desired; % choose either of the three shift methods, here opts.shifts.method = 'gen-ham-opti'; %opts.shifts.method = 'heur'; %opts.shifts.method = 'projection'; opts.shifts.naive_update_mode = false; % .. Suggest false (smart update is faster; convergence is the same). opts.radi.compute_sol_fac = 1; opts.radi.get_ZZt = 1; opts.radi.maxiter = opts.adi.maxiter; opts.norm = 2; opts.radi.res_tol = opts.nm.res_tol; opts.radi.rel_diff_tol = 0; opts.radi.info = 1; tic; outradi = mess_lrradi(eqn, opts, oper); toc; if istest if min(outnm.res)>=opts.nm.res_tol error('MESS:TEST:accuracy','unexpectedly inaccurate result'); end else figure(2); semilogy(outradi.res); title('0= C^TC + A^TXM + M^TXA -M^TXBB^TXM'); xlabel('number of iterations'); ylabel('normalized residual norm'); end disp('size outradi.Z:'); disp(size(outradi.Z));
RADI step: 1 normalized residual: 2.938578e-01 RADI step: 2 normalized residual: 1.055053e-01 RADI step: 3 normalized residual: 9.156909e-02 RADI step: 4 normalized residual: 2.423910e-02 RADI step: 5 normalized residual: 1.289624e-02 RADI step: 6 normalized residual: 1.109388e-02 RADI step: 7 normalized residual: 1.318018e-03 RADI step: 8 normalized residual: 1.058302e-03 RADI step: 9 normalized residual: 1.050657e-03 RADI step: 10 normalized residual: 1.047092e-03 RADI step: 11 normalized residual: 1.313463e-04 RADI step: 12 normalized residual: 1.281721e-04 RADI step: 13 normalized residual: 1.150106e-04 RADI step: 14 normalized residual: 4.954547e-05 RADI step: 15 normalized residual: 2.028448e-05 RADI step: 16 normalized residual: 6.927523e-06 RADI step: 17 normalized residual: 1.902232e-06 RADI step: 18 normalized residual: 1.804232e-06 RADI step: 19 normalized residual: 1.488907e-06 RADI step: 20 normalized residual: 2.224546e-07 RADI step: 21 normalized residual: 2.204511e-07 RADI step: 22 normalized residual: 1.563227e-07 RADI step: 23 normalized residual: 5.374679e-08 RADI step: 24 normalized residual: 3.856938e-08 RADI step: 25 normalized residual: 3.638868e-08 RADI step: 26 normalized residual: 9.370029e-09 RADI step: 27 normalized residual: 5.185467e-09 RADI step: 28 normalized residual: 1.299092e-09 RADI step: 29 normalized residual: 1.234112e-09 RADI step: 30 normalized residual: 1.052008e-09 RADI step: 31 normalized residual: 3.889062e-10 RADI step: 32 normalized residual: 1.042112e-10 RADI step: 33 normalized residual: 2.558412e-11 Elapsed time is 0.597165 seconds. size outradi.Z: 1357 130

compare
if not(istest) figure(3); ls_nm=[outnm.adi.niter]; ls_radi=1:outradi.niter; semilogy(cumsum(ls_nm),outnm.res,'k--',ls_radi,outradi.res,'b-'); title('0= C^TC + A^TXM + M^TXA -M^TXBB^TXM'); xlabel('number of solves with A+p*M'); ylabel('normalized residual norm'); legend('LR-NM','RADI'); end
