SLICOT-Reference icon indicating copy to clipboard operation
SLICOT-Reference copied to clipboard

Incorrect results MB03WD with increasing period P

Open iwoodsawyer opened this issue 4 years ago • 2 comments

The transformation matrices from the MB03WD periodic Schur decomposition are not computed correctly when the period P increases. The slicot example TMB03WD can be used to reproduce the problem, see attached data and result files. When P becomes 18 or larger, the transformation matrices getting incorrectly computed. With P=18 the calculated result NORM (Z'AZ - Aout) = 1.899 becomes very large. While with P=17 the periodic Schur decomposition is still computed correctly, because result NORM (Z'AZ - Aout) = 2.01839D-14 is still very small.

The problem seem to be with periodic Schur decomposition MB03WD and not with the periodic Hessenberg decomposition MB03VD/MB03VY, because using the slicot example TMB03VD with P=18 data shows that the periodic Hessenberg is computed correctly as the result NORM (Q'AQ - Aout) = 8.11581D-15 is very small.

Note, that the MB03WD function did not return any convergence error indicating the computation went wrong.

examples.zip

iwoodsawyer avatar Apr 08 '21 16:04 iwoodsawyer

For P = 17, the results seems to be correct. The computed eigenvalues are just the eigenvalues of the matrix

1.5 -.7 3.5 -.7 
1.  0.  2.  3. 
1.5 -.7 2.5 -.3 
1.  0.  2.  1. 
  -0.457125956138543 + 0.0im
 -0.3021830717156699 + 0.0im
  2.8796545139271057 - 1.3574054272339942im
  2.8796545139271057 + 1.3574054272339942im

raised to the power 17.

However, I was not able to reproduce your results for P = 18. The computed eigenvalues should be the above ones raised to the power 18, i.e.,

   7.597065506151983e-7 - 0.0im
 4.4143053112332784e-10 - 0.0im
   -8.433316071305162e7 - 1.1250751633904827e9im
   -8.433316071305162e7 + 1.1250751633904827e9im

and these are the eigenvalues computed with MB03WD

   -8.433316071306074e7 + 1.1250751633904915e9im
   -8.433316071306074e7 - 1.1250751633904915e9im
 4.4143053112340214e-10 + 0.0im
    7.59706550615205e-7 + 0.0im

which agree quite well with the above values.

I checked also using MB03BD (an alternative, to be prefered, for MB03WD), which provides essentially the same results. Also, the check of transformations is satisfactory in all cases.

andreasvarga avatar Mar 30 '22 11:03 andreasvarga

I also encountered failures for period 17 and above. I used matrices of the form

    rand*[1.5 -.7 3.5 -.7 
         1.  0.  2.  3. 
         1.5 -.7 2.5 -.3 
         1.  0.  2.  1.]

andreasvarga avatar May 31 '22 11:05 andreasvarga