!standard G.3.1(78/3) 11-01-28 AC95-00211/01

!standard G.3.2(146/3)

!class confirmation 11-01-28

!status received no action 11-01-28

!status received 10-08-31

!subject Ranges of the Vectors output of Eigensystem

!standard G.3.2(146/3)

!class confirmation 11-01-28

!status received no action 11-01-28

!status received 10-08-31

!subject Ranges of the Vectors output of Eigensystem

!summary

!appendix

!topic Ranges of the Vectors output of Eigensystem !reference Ada 2005 RM G.3.1(78/3), G.3.2(146/3) !from Simon Wright 10-08-31 !discussion It's not clear why the output parameter Vectors has ranges (A'Range (1), A'Range (2)). It should be (A'Range (1), A'Range (1)). Looking at the RM wording "The out parameter Vectors is a matrix whose columns are the eigenvectors of the matrix A. The order of the columns corresponds to the order of the eigenvalues.", one would expect that the eigenvector for Values (J) would be column J of Vectors, whereas in fact it's column (J - Values'First + Vectors'First (2)). Of course, in many uses the range(s) concerned will be 1 .. N so no one will notice the difference. *************************************************************** Summary of private mail on this topic: Randy Brukardt: The following was on Ada-Comment a while back. I don't know enough to make an intelligent decision on whether this ought to be fixed, ignored, or somewhere in between. It strikes me that his suggestion would be an inconsistency (a runtime incompatibility - the worst kind), so there would have to be substantial reason to change it. John Barnes: Pascal and I discussed this years ago. Perhaps the mistake was to allow A to have ranges other than 1 .. N in the first place. As you say, changing it now would be an incompatibility of the worst kind. Leave it alone. ***************************************************************

Questions? Ask the ACAA Technical Agent