1 03254 where 06 &8 79A@B4DCECEC¢ 4F9 - EL FAROUK anas

2§ 4 where 2§ has the same th row as the upper tri- angular 2 = "¤¢ ¢¤B$ 4 but is the unit matrix otherwise. After ¨ steps, we obtain the factorization. ¤ ¢ ¡. &1 ¤.
191KB taille 2 téléchargements 32 vues
Round off error analysis of symplectic Gram-Schmidt-like algorithms Ahmed S ALAM and Anas E LFAROUK Laboratoire de Mathématiques Pures et Appliquées, Université du Littoral-Côte d’Opale. C.U. de la Mi-Voix, 50 rue F. Buisson, B.P. 699, 62228 Calais, Cedex, France. [email protected]

Abstract Gram-Schmidt-like orthogonalization process with respect to a given skew-symmetric scalar product is a key step in model reduction methods, structure-preserving, for a class of large sparse structured (as Hamiltonian or skew Hamiltonian) eigenvalue problems.  The aim of this paper is to study the effect of rounding errors on the factorization and on the loss of  -orthogonality for the modified version of the symplectic Gram-Schmidt algorithm. Keywords: Skew-symmetric scalar product, symplectic Gram-Schmidt algorithms, modified versions, round-off errors . AMS subject classifications. 65F15, 65F50

1 Introduction In the exact arithmetic, for a given   with  , the GramSchmidt algorithm (GS) computes a factorization

/

!#"

where $&% ')(*",+-+-+".'

0  has orthonormal columns and is upper triangular. This orthogonalization process is a crucial piece of Arnoldi and Lanczos methods [11, 15, 17]. They are the best-known techniques for solving large 1

and sparse linear systems or for computing a small number of eigenvalues (and the associated eigenvectors) of large and sparse eigenvalue problems. They are structure-preserving for the main class of symmetric matrices. Numerical aspects of the Gram-Schmidt algorithm have been the aim of intensive research (see [5, 11, 12, 17] and the references therein). Let us say that the classical Gram-Schmidt algorithm (CGS) has very poor numerical properties in that there is typically a severe loss of orthogonality. Interestingly, a rearrangement of the calculation, known as modified Gram-Schmidt (MGS), yields a much sounder computational procedure. Björck [4] showed that the MGS produces a / satisfying computed $&% ')(*",+-+-+" '







"   ) " (1) is the unit roundoff and  ) the 2-norm condition number of  We 

$

where  also mention [12] that the computed triangular factor satisfies

produced by the MGS

     !

(2)

        !

(3)

Moreover there exists  with perfectly orthonormal columns such that Recall that in the exact arithmetic, CGS and MGS coincide. Many applications provide important structured eigenvalue problem, as those arising for example from control theory [6, 13, 14]. Symplectic Gram-Schmidtlike algorithms are a key step for structure preserving methods, in the context of a large and sparse Hamiltonian or skew-Hamiltonian eigenvalue problem. Some theoretical and numerical aspects of such algorithms has been showed in [18]. In particular, such algorithms are computationally unstable. The computed vectors may depart from " -orthogonality to an almost arbitrary extent. Therefore, in order to maintain the accuracy of the results, some remedy to the classical symplectic Gram-Schmidt algorithm is needed. A modified version of the algorithm has been proposed and was showed to give significantly improved results [18]. The present work attempts to present a rigorous round-off error analysis for the modified versions. The propagation of errors will be studied in detail. In particular, error bounds for the deviation from the " -orthogonality and for the # factorization of the computed vectors will be derived. The remainder of this paper is organized as follows. In section 2, we recall some notations, definitions and results. Section 3 describes different versions of classical and modified symplectic Gram-Schmidt algorithm (CSGS, MSGS). In section 4, the error analysis is developed. Section 5 is devoted to the conclusion. 2

2 Notations and some preliminaries In this section, we recall some notations and necessary tools which will be used throughout this paper.

2.1 Notations We use italic capital and lower letters to denote matrices and vectors respectively. The transpose of a matrix     is denoted by    The absolute value   is given by          and we set   iff      The range of (i.e. the linear space, spanned by the columns of ) is denoted by    and the usual scalar product by  "     We set



" 



















"

(4)

where and denote the null and the identity matrices of   respectively. The matrix " is skew-symmetric and orthogonal. If the actual dimensions of the   matrices are apparent from the context, we will write simply " " "  We also use the notation   $&%

 " , "

"" 

!"#

"

..

.

" '

"

where the dimension will be apparent from the context.

2.2 Scalar product associated to the matrix Consider the bilinear form  " *)+ /

0  "

/





(

 " , from  . -  to  defined by

  "  " 0, & "

"1

 



"1 

(5)

The form is non-degenerate i.e.

 " 0,  and is skew-symmetric i.e. /

"

 



"

/

123  



  "  " 0,  #  4 "0 0, 3



(6)

(7)

,

For any real  -by-  matrix , there is a unique matrix with respect to  ,"  , defined by /

"

 

  "  " 0,   "

It is easy to show that



"

,



,



 0,

, the adjoint of



(8)

"

(9)

The following properties of the adjoint with respect to  ,"   , are all analogous to /

" properties of transpose. We have obviously: "  





0 , 

,







,

, "  0    

,

,



"

, ,



 "

,









 ,



(10) A linear space equipped with the underlying skew-symmetric inner product  ,"   , is called symplectic linear space.

2.3 Structured sets Let 

be the set of real polynomials and consider a function    +    +  "

 We introduce the following structured sets, associated to and the underlying scalar product   " "  )     ,    (11)

For a nonsingular matrix  , let us denote by ' the minimal polynomial of   satisfying '      It can be expressed as

'      



   

(12)

(

Thus    . The usual structured sets (the automorphism group, Jordan  and Lie algebras) fit into the more general one given by  " "  Furthermore, let us consider the particular functions given by 

(,       "



) 

 

Then, the automorphism group is given by  #     #  "#  0,  " 0, "

4

"

/



"

 



  

   

 







" " ("

the Jordan algebra

is given by

 )       " 0,   ".  0 , "

 )     ,     " "  " /

"

 

   

and the Lie algebra, is given by 



   

   . " 0, # " 0 , "     ,      " "  /

"

 

   

is a multiplicative group, called the symplectic group. " are linear space (not closed under multiplication). A matrix # in is called symplectic, a matrix   in is called skew-Hamiltonian and a matrix  in is called Hamiltonian. The symplectic group provides structure-preserving similarities for matrices in ""  and [2, 14, 16] i.e. / #  " $ 12 #  ( #  " where  " " or   Furthermore, let us define the more general structured set  " "   )    "      ,    (13)  Thus,  " "  are subsets of  " "   It is important to remark that provides structure-preserving similarities for matrices in  " "   " i.e. / / ( #  "   "  " $  " "  12 #  #   " "   This fact, can be exploited to tackle more structure-preserving methods for a more variety of structured matrices. It is expected that results given below, can be adapted to this context.

2.4 Extensions In the literature, symplectic matrices are defined as elements of the symplectic automorphism group  This definition is extended [18] to matrices which are not necessarily square but only of size -   An extension of the definition of the

adjoint is needed. The adjoint of 0  is defined by

and the adjoint of

 



, 





" "

(14)

is defined by ,



  "  "  5

(15)

Thus, in particular, the underlying inner product can be written

 " 0, 



Definition 1. A matrix #  



 

"



 



,  0   

, 

,



"

The matrix





(17)

" 



( " , " 

&% (*"  ( " -"   , "  

and we have





/

be a 

 " " , 





$  (



 



/

"   "

  *"

"" 





  /



satisfies ,

 ,

"

real matrix and -



 "

is explicitly given by 

Let   % ( "  obviously

  



, ,

For proof and more details see [18]. Let us consider the permutation  

 % ( " "

(16)

with respect to  , "  



The non square adjoint (15) of /

 

is called symplectic if

# ,# /

,



"



a -



 ,



(18)

(19)

(20) (21)

real matrix, then we get

"  ! 

2.5 Symplectic geometry We outline here some features of the orthogonality in Euclidean and symplectic spaces. The automorphism group, with respect to the classical scalar product in /  is given by       "     "  "  "    " i.e. the set of orthogonal matrices. Furthermore, a known characterization of is

0  "

/

&  



 "  & "0 

(22)

It is interesting to note that (22) has no analogous for a symplectic group. In fact,

for any matrix #   (symplectic or not), one has

# 

"#

 !  "0 0,!

 0,

6





(23)

We outline briefly some features of symplectic geometry contrasting with orthogonal geometry. See [3, 18] for more details on common features of orthogonal and symplectic geometry and on special features of symplectic geometry. As usual,

a vector    is said to be orthogonal to     " with respect to the skewsymmetric scalar product  ,"  , " iff  " 0,   We use the symbol for the orthogonality in an Euclidean space whereas  is used for a symplectic space.

Let  be a linear subspace of   Define the symplectic complement of  to be the subspace     0   /   "  " 0,   The symplectic complement satisfies

 

     and

dim 



dim 

However, unlike orthogonal complements, space. We distinguish four cases:

 

is symplectic if





(24)



 



 







 

(25) does not need to be the null



This is true iff the restriction of  , "   , on  is a non-degenerate form.

 

is isotropic [3] if





     This is true iff the restriction of  ,"  , on 

(26)

(27) is the null form. Indeed, any

one-dimensional subspace is isotropic.

 

is coisotropic if

 is coisotropic iff  is coisotropic.

 

is Lagrangian if









     

(28)

is isotropic. Indeed, any codimension-one subspace

 

  

(29)

A subspace is Lagrangian iff it is both isotropic and coisotropic. In a finitedimensional linear space of dimension  , a Lagrangian subspace is an isotropic subspace of dimension  Every isotropic subspace can be extended to a Lagrangian subspace. 7

In Euclidean spaces, there exists no isotropic subspaces different from the zero space, whereas there are in symplectic spaces. We recall that any finite Euclidean space " can be written as a direct sum of a given one-dimensional subspace (line) and its orthogonal complement, i.e /

   " 







    

(30)



As a consequence of (30), the Euclidean space  can be written as a direct sum  of orthogonal lines i.e,

(*" 

"



  

    (  

 



 "

 

)"

&

     

/



(31)

Contrasting with the Euclidean case, a symplectic linear space  can never be written as a direct sum of symplectic one-dimensional subspaces (lines) as (31). This is due to the fact that any one-dimensional subspace is isotropic, i.e / 

    

 " 

(32)



However, such splitting is possible using two-dimensional subspaces (planes). In

fact, for any  ( "  symplectic subspace of  " one gets





   ( " 



(*"  



  

As a consequence of (33), the symplectic linear space   direct sum of symplectic planes, i.e



(33) can be written as a

  ",+-+-+"  " such that,    (     (*"  /   " and where the matrix %    (* "   is symplectic, for  

 

  " /

     " 







( " 

   4  

( " 

4

 "

(34)

(35)

The symplectic Gram-Schmidt algorithm, as introduced in [18] constructs such splitting (34), (35).

3 Description of the algorithm The Symplectic Gram-Schmidt (SGS) algorithm is one of the most widely used algorithms to orthogonalize a set of vectors with respect to a specified skew symmetric inner product. It is a key step in some structure preserving methods, for 8

large and sparse Hamiltonian, skew-Hamiltonian or more generalized structured /

eigenvalue problem. Let !(  %  ( "    " and suppose that  !(. is symplectic. Then there exists ( 

% (*" 

/

  and  ( ( 

 ( (

( 

which are symplectic and upper triangular respectively, such that

 (  

(





(( 



 

(36)

We refer to this step as the elementary #  factorization of  (  The factorization is not unique since the coefficients  ( (  and ( can be chosen arbitrarily. The procedure which returns ( and  ( ( satisfying (36) for the entry !( is the following



Elementary

factorization (ESR)

Input:  ( 



 













 

#



( 



"

(( 



%  (*"  



/



Output:  ( 

 

% ( " 

/



symplectic,  ( ( 

 ( (

( 





Choose an arbitrary ( ( " compute (  (( ( Choose an arbitrary  ( ," compute   ( ( Compute 

  ( "  if     (. symplectic), compute   end







Setting  (  "  , we get easily

( ( 







(37)

Let us mention that Della-Dora [10] used  the elementary # decomposition corresponding to the choice ( (   " (   Other choices of the free parameters were studied in [18]. In particular, it has been showed that the algorithm is numerically sensitive to ESR factorization and an optimal choice, in some sense, has been proposed. We shall explain below how such a source of numerical instability can be avoided and how the error analysis results will allow us to explain the behaviour of the algorithm as well as the numerical results reported in [18]. See also [7, 8] and the references therein for other elementary decompositions. Let  /    a given matrix and consider   %  (*"   *".    " where is  -  matrix permutation (19). The Symplectic Gram-Schmidt algorithm generates the 9





"

matrices $&%  (*" scheme



/

 

such that 

and

 !  , according to the following



 (   (  ( ( (ESR)  for    "    "   





  (      (  

end 





    

(



 

(" 

(  ( (ESR)



The matrices  and are respectively symplectic and upper triangular.  stands for the projection onto the symplectic complement of the subspace spanned /  by the columns of   % (*"    "    The factorization         stands for the elementary # factorization. Several implementations of the procedure lie under this common presentations (depending upon the representation of  ). The  may be expressed as the matrix

 



 



(



   

,



This corresponds to the classical symplectic Gram-Schmidt (CSGS) version. The matrix  may also be expressed by

  

 

   



,

     

 

( ( , 

 

The corresponding algorithm is the modified version (MSGS).

3.1 Symplectic Gram-Schmidt algorithm.  /   To be more precise,  consider   %  (*"    ".  The mathematical SGS al gorithm, applied to  consists in computing   & for   "   *"  and

     for      , with  upper triangular, following the scheme  (











( 



(

(



.. .

( (*" 







( 

 



( 

(





  -"      

  

10

"



 



"

where

 

satisfy ,

 

Setting   

%

 

( " 

or equivalently 



  ( " 

 

((









" 

..

 $&%

(

.. .

.

'

"



, we get the factorization 



 



(38)

is upper triangular,  and the matrix  satisfies





Setting

"

$ 

 " , "

   " " 

  (   (   (               (   (   

  

we obtain

+-+-+

"#

 By construction,

 





Setting

and $  &%  (*"

0

 / , we get in particular  ," ,    

/

 





,

     







"



 

This form of SGS is introduced in [18], so that the orthogonalization process, the derivation of the modified versions and the link with the splitting (34), (35) become easy to treat.

3.2 Classical symplectic Gram-Schmidt algorithm (CSGS) The column version of CSGS corresponds to the computation of the elements of two columns at time. The algorithm is as follows

11

CSGS, column version



/

Input:   %  (*"    ". /  & Output: $   %  ( "    "  symplectic,  (   (  ( ( (ESR)  for # "    " , Compute         for    "    "  (  Compute           ! 

 



 



 

   





  







end





(ESR) 

    

&  * upper triangular

(

3.3 Modified symplectic Gram-Schmidt algorithm (MSGS) The MSGS algorithm computes a sequence of matrices

where 









"

(*"









  (  ." 







( ". 



 "    ".





  *".

"





  

 

( 







"

. Here the first   columns matrices 





are final columns matrices in V, and   "    ". have been made orthogonal to  ( "    "   ( " with respect to the inner product  ,"   ,  In the  th step,   is obtained  by normalizing   using ESR factorization  







  



   " 

(39)



where       Then   ( "    ". are orthogonalized against   using the   , projector      " i.e. one computes  

and 

We see that  angular  factorization











 



( 

 



&



 

,



 







 " ,







 







 

  

"

  *" "







(40)

  

!

(41)



    (  " where  has the same  th row as the upper tri * " but is the unit matrix otherwise. After  steps, we obtain the 

  (    



( 



 

12

( 

 

(

  .

(  



(42)

Note that in the MSGS, contrasting with the CSGS, all the projections      are   subtracted from the   sequentially as soon as   is computed. The ’s elements are computed one row at time. This gives MSGS, row version







Input:  &%  Output: $ %  ( for    "     "   Compute      " for #  Compute        ( Compute     end end







 





 

 

   ". / /  "" symplectic, (*"



    (ESR)  "     ,            

&  * upper triangular.

! 

The column version of the modified symplectic Gram-Schmidt algorithm is as follows MSGS, column version



/

Input:  &%  *( "    ". /  Output: $ %  ( "    "  symplectic, Compute  (   (  ( ( (ESR)  for # "    " 

 



 





 



 













for    "    " Compute     Compute   end Compute   end

 



 



 

,

 



 

)

    



  

&  * upper triangular.

! 

 #  

3.4 Free normalization symplectic Gram-Schmidt. The normalization (39) is explicitly computed in the above versions of the SGS. It has been showed that the algorithm is sensitive to such factorization [18]. In order to avoid such a source of numerical instability, we propose a free normal13



ization version of the SGS algorithm. Consider   %  (*"    ". normalization version computes    and     following the scheme 

(    (*"

         

  



.. .

 



where

 

satisfy





 

  





The free

"

 0

, 



    " 

   

(

 



We have in particular





, 

 

/

(



 

(   ( "  (   (  

/



 

(43)

 

(44)

 from (44) Setting   &%  4  ( "  4  , one deduces 

  

Setting

 and 



 % ( "

"  

/

( (



"# !





+-+-+

..

$ %

( 

.. .

.

'



"

, we get the factorization







  

(46)

is upper triangular, with 

The matrix 

(45)





 By construction,

    ( "     

satisfies 





 -"



  "  



for #



 



 ( " ,"

14



"

  *"   

   " " 

(47)

3.5 Free normalization classical symplectic Gram-Schmidt



In the column version, the elements of the  th step, we have 

 

 

, 





 

 





are computed two columns at time. At

" for    "

( 

 





(



"  

"

  

  

(48)

(49)

We obtain the algorithm Free normalization CSGS, column version



/

Input:  &%  (*"    ."  /  Output:   &% (  "    "   symplectic,  (    ( and  (  (   ! Compute (  ( "    for # "    "  

 





 

Compute     

 



Compute 



Compute



 









 ! 





   

  ,











 

( 

" for    "

  (

4   ( " 4   





  

 

upper triangular.

"   

  

  



end

3.6 Free normalization modified symplectic Gram-Schmidt The column version of the free normalization modified symplectic Gram-Schmidt algorithm is given as follows Free normalization MSGS, column version

15

 

 (  

  (*"









for #



for    "

 

 



 



 







 "

"         (    and               

Compute





Compute  end

 











 !





/  %  (*"    ."  /  & &% (   "    "   symplectic, ( (    "



Input:  Output:



 

  

upper triangular.







,   







end

It is also possible to compute elements  of  two rows at time. We obtain the (     Then, for   "   *" " we row version of the algorithm. We set   /     %  (  "   *"    ( ".  "    ".  The  th step performs the followcompute    ing computations  



and







(



 

 



"

  

  









   ( "   



  "

  

"

 

for 

 





, 









"

     

This gives Free normalization MSGS, row version





/

   ". /    "  symplectic, 





Input:   %  (*" & Output:  &% (  "  for     "    " 

   

 













Compute      (   "    "  for #  



Compute     





 



  

Compute  end   

end



 !









  , 

(

 



"     



 











 

  

  

16

  

 

upper triangular.

To end this section, let us say that, in the exact arithmetic, CSGS and MSGS     give the same decomposition   !  The decomposition     is also the same for the free normalization version of SGS and MSGS. The two decompositions are connected by the following relations 



 



   "

 

 

    

 "

  

   



  

! 

(50)

Numerically, the algorithms CSGS and MSGS behave differently, see the example below and [18] for more details.

4 Error analysis It is important to note from now, that the algorithm for which the error analysis will be detailed is the free normalization MSGS, row version. The free normalization version avoid an important source of numerical instability.

4.1 Floating point arithmetic model The floating point arithmetic model shall be used in the error analysis following the technique and the notation introduced by Wilkinson [19]. Thus let ’o’ any of  the four arithmetic operators "!" - "  Then an equation of the form





 ’o’   "

will imply that  "  and are floating point numbers and obtained from  and  using the appropriate floating point operation. We assume that the rounding errors in these operations are such that

 where  

 ’o’   & ’o’    

  " 





 "

(51)

 is the unit round off. We will use the following results [11]



  

                 



 "   



"





"



17



 





 

. 

.   "   "  .        "   

(52) (53)



where  and are  -  floating point matrices and is  a floating point number. Let  and  be vectors of dimension  , where      Then the following error bounds for the computed inner-product of  and  are valid

  where





) ( 

 

 





 







 



 

 





  







 

 



"







"

(54)

    



 





 

  

    



"

(55) (56)

)   applies to the case when the inner product is accumulated in double preci sion and then rounded. The computed quantities will be denoted by bars. Thus, we write         ( "   " (57)   (58)    , "  







 

 



 



(

,





 









  

  "  " 

  









 

     









"

(59) (60)



This algorithm will not break down unless  . As for the Euclidean GS, this may happen due to rounding errors even when rank of  equal  But, contrary to the Euclidean GS, a break down may be encountered even in the exact arithmetic and even when  is of maximal rank. Let us recall that the error analysis concerns the free normalization MSGS. This means that the ESR factorization is never explicitly computed in the body of the algorithm. As a consequence, the   decomposition      is unique. For the convenience of notation, we also introduce the normalized quantities 



   

 "

  



    

 

(61)

In the sequel, these formulas will allow us to derive the corresponding error bounds for the normalized version. For illustrating the effect of rounding errors

18

and the behaviour of CSGS and MSGS algorithms, let us consider the matrix 

$ %  %













 

 

" 



" 





" 





" 

















" " " "#



 

 









 

" "

and assume that

 









% % % %



 i.e 

 

%



is so small that



%

" % %

'

   

(62)

If no other rounding errors are made, then the matrices  computed by CSGS and MSGS respectively are 

 

 

 

 





"  "  " 













 







" 



"  "  " 











"

% % % % % '



    









  

" %

 



 

%









"



 

 

%

   



 "

  

%









 



$ %





 

" "







"

"#



" "







"#







"





" "





 

 

$ % % %

 %

 % % 

% % % 



%

 





'

/   In fact, setting   %  ( ". -". " the two first steps of MSGS and CSGS are  the same. For CSGS, the last step computes  by the formula 

 



19

, 





(63)

According to (62) we get

 





!



In contrast to CSGS, the MSGS compute    ,













by the formula 

(

( 



(64)

According to (62), we obtain









The loss of orthogonality between  

##

, 



  

and 

provided by CSGS, is complete since







 





 

"

  

while it is completely preserved for MSGS, since 

##

, 









 



 

4.2 Error bounds in an elementary projection. 



(

In the  th step of free normalization MSGS row version, the matrices       are computed for   "    "  as the projection of   on the symplectic complement subspace of       . It can be also interpreted as an oblique projection. If the subtraction is performed without rounding errors the result is,





 

 

 

,











  





-"

   

(65)



where    is the exact matrix multiplier corresponding to the computed   and      If using the computed multiplier     , the subtraction is performed exactly, then the result is  









We define the related errors



 

 

(

 

 



 





 







(

 

 

  

and  





  ,





  



 









 



! 

by 

 

     20





 







  





" 

(66)    

     

(67)



For simplicity of notation we omit for a while the indices and  and put 

 



and



 

 



( 

"





we get

,

















 





  ,



 

 







Remark 2. It is easy to verify that if   and





   Lemma 3. The quantity   



then

 



  

  



and





 

then (73) can be rewritten 

 

 





,



  "





" 

 

     

-



  



   



(71)





 



 

  

   "



 

(70)

is bounded by

 



 









Proof. Since 

  

-"

   "

"

0

The equations(66) and (67) can be rewritten



(69)





 

(68)



 

   " 









  -"

)   "

 

 



/ &% " "

 



with



"

" 

 ,"

,

Setting



/ "

&%   " 

      

We have now ,

















 

)  , #    ,

)  

21

,





  





)   , # )  

,



(72)

"

(73)



" 

       ,

)











  

)  

(74)

Using (55), the first term of the right hand of (74) can be bounded



  ,      ,  )    











)



  





,





 

,



 .



(75)

To bound the second term of the right  hand of (74), we get from (55) 

 

As 

"     "

  





  



  , we deduce 

 







)   





Setting





 



we get 









 

)   





  



  

"   



 





 







  "   "

 

  "   "

 

  



 

"



  

  

(76)

Then, from (74), (75) and (76), we get 

 















From (76), we get

  

 

 





,



  



, 

 



     ,



  ! 

 



  



  

 





  

(77)





which implies



   

 



  

  



" 

 





) 





(78)

Assuming, the weak additional condition 

$     

 22





  

  "

(79)

we get from (78) 







) 







From (77) and (80), we obtain

 

 



Since

 

  





 



  ,  



 

 

 

   







 



  



(80)



 , 

 . 



(81)

"

        

  

        

      







  

   ,      











, 

we obtain from (81)



  







 



(82)

Assuming the weak condition

   





 

and Setting

 



)

"

(83)

 )

 





(84)

then, from (82) we obtain 



  



  





   



 



     

with

 







   



"





Using (84), we get







           

   

"

 





 

 

 

  





 

  







 



)

"

 23

& 



  





(85)

Thus using (56), we obtain 





      )        

 





we have

           We get

It follows from (82) and (87)

 



 







"

    





 

(87)

       

 



 -

  

Corollary 4. The quantity 

    







(86)



  









 

) 

 









Assuming for   that

 



can also be bounded by 

-

            

(88)

Proof. From (61) and (70), we have

 

Since

,

     











   

 ," we get





Thus,



    





,

  



   

i.e.

  







   



    

      

The result follows then from (61), (72) and (69). 24





 

(



  

,

  

  ,





   

,

 

" (89)

  

(90)

The bound (88) is obtained without specifying the choice of the ESR decomposition and thus, it is valid for all normalized versions. A nice and unexpected consequence of (90) permits us to give a positive answer to the challenging problem of determining the optimal choice of the free parameters involved in the algorithm. The free parameters appear the ESR step. The form of SGS proposed in [18] isolates the ESR step from the orthogonalization process. An optimal choice, in some sense, was proposed in [18]. We get the following result Theorem 5. An optimal choice of the elementary #  

is given by

 

decomposition

    

  (   (            (  (  and       







with















" 



  





"

    ( "      Proof. An arbitrary ESR decomposition       is given by    (     (   (      "             " where  (   is arbitrary and   (   (      with     ( "     Among     all these possible decompositions, from (90), an optimal one corresponds to        minimum. This implies that the arbitrary parameter   (   must  be taken  equal 0"  and thus,    is diagonal. Setting     (   ( and since   (   (          

    The minimum

we get      of     is attained for         So the optimal choice corresponds to    (   (            where















 (  (     (   (

In this case, we get

    













 



     

  (  (      

25



     (  (  







The equation (88) can be rewritten

    

 

 -

    

(91)

In the sequel, the normalized version will refer to this of Theorem 5. From equa  tion (61) we obtain the useful relations

 

 









 

and  





 



     

(92)

Remark 6. Using (92), the bound given by (91) may be improved by a factor

   



can be bounded by

 

 







& 

    

 -



(93)

    !     

(94)

We shall prove the following estimates which will be used for our analysis. 

Lemma 7. The quantities

   



  



 





   

Proof. From (70), we get





can be bounded by

  





and so









    

From (71), we have





 

 

(









(





(  



(



 

26

 



     

 





"

(95)

      

(96)

 4  

(97)



(







(

 

  *  

 4   

 (  

(   





According to (51) and (97), we obtain    (.       (  (  



(   

   















 





and 



( 

 (







   

  *  

 4  

 

 4 





  "

  

(98)

(99)



Using (98) and (99) to eliminate





Since 

 







 

    

( 

      (    (  ( 



, we get







   

 4     



for   " " " we obtain

.

  



 

 

 

i.e. 



 



(

.      





( 



 

    







4 

 

 



   " 

(100)

Using Remark 2, we get



 

     



Another estimate of can be given by  From (71), we get

 





   



 





0

From Remark 2, we get

12

  

 

  ! 



 







  

(101)



   !     





 





 



 

  







(102)

 





(103)

(104)

From (94) and (102), we get

 









 



 

  



 

)

     

!

If we neglect terms in  of order superior than one, then

  &     !      



(105)

(106)

Using (104), (105) and Corollary 4, we get

          27

(107)

Using (66),(94) and (105) we get 









( 

 



   !   









 

(108)

Using (108) several times, we obtain



 



( 





   

From (109), we have

    



 

 





     

(109)



(

     





 

(110)

     

(111)

     

(112)





Using (107), (109) and (110), we get

   



  









     

    

  

(  







(   

 





(



 





(





Remark 8. The corresponding errors estimates Gram-Schmidt given by Björck [4] are:

   





  



                      





 (   *   (   *

and



 



in the Euclidean

 





At first sight, the expressions of these errors seem very different from their corresponding ones ((111), (112)) in the symplectic case. In particular, bounds in the 

 symplectic case are higher due to the presence of the factor    (   This factor is 1 in the Euclidean case (see [4]) while it is great or equal 1 in the symplectic case (see [18]). A simple examination shows that these expressions (Euclidean and symplectic cases) become very similar for the extreme symplectic case corresponding to     

In term of  , we have 28







Lemma 9. The quantities

   



  



 









 

(   (  









(





(113)

        0 

 



        0

 





   

  

can be bounded by

   

 





and 



(

(114)

Proof. The result is straightforward from Lemma 7 and relation (92).

4.3 Error bounds in the  factorization via MSGS. The error in the #

factorization via MSGS is defined by



    

(  

We shall prove the following estimate Theorem 10. A bound of the error in the #

 !(  







)

Proof. Summing (66) for    "

"  





we get





(



  

 



 

 



(   (    (

 &



(

  



(



  





(115)



-"

    

( 

 







Furthermore, we obtain

 (! 

      

 and using



 

factorization via MSGS is given by

 

   ( 

29

(

 



 &



(116)

  (





(





(

 



  ( 

From (95), we get

  ( 







(



  (     (   (    















Finally,

 (!  

 

  ( 







(





 



(





"





(



  ( 

)

 



   



  

  

   ) 





( 

 



     

(

 ( (     (





   



"

      

(   (    (

  



 



    (  (

Remark 11. Comparing this result to the corresponding one for the modified Euclidean MGS (2), the error in the # factorization, via MSGS, is amplified by the factor (  This factor equals 1 in the Euclidean MGS.  In term of   , we have

Theorem 12. A bound of the error in the #

 (  









)





  

factorization via MSGS is given by



  ( 



          0

( 

(



(117)

Proof. The result is straightforward from Theorem 10 and relation (92).

4.4 Error bounds for the loss of orthogonality.

 

The loss of orthogonality, in a # factorization via a free normalization modified symplectic Gram-Schmidt algorithm, is controlled by  " "    " "    "   ," where  is the returned matrix. Theorem 13. We have the error’s boud  



 " "

""  



"  



 

 30

(    )  (

     





(

  

(118)

Proof. From equations (66) and (67), we have 

 

 

 

 

Since

 





 





( 

( 



Summing (119) for   ,









 

  







(







"







  







(119)

     



,

 

(120)

(



   











 (



, 

-   

"

 

..

..

.

..

" (

+-+-+



.

..

.

.

..

.

+-+-+

 

" 



( 





we get





 

"

)" for 

 "     

Thus, it follows



 "   

Setting



# 



 





" we get



"

.. . .. . 

$&% % % % % %



(

"

" 



'







for



"

 "$  

 

 

" 

  





 "  





and

 

,

(121)

( 

 the upper triangular matrix, given by

Setting

 



 

+-+-+



.. . .. .

" "#

where









"

"$

 

  "





,

   " " we have  " ( " +-+-+  .. . " ( "

" " ," for "

 







  

 and using

(



 

  *"   "







 

(122)

"

(123)

is the computed upper triangular matrix, we obtain

#





"











(

 



 "

-   



," 

#   denotes the 2-by-2 block in position  "  of # Assuming and according to (123), we obtain  

#  31



(

 !

(124) to be nonsingular (125)

From equations (121) and (124), we get

#







Then







 (



#  

, 

-   

 

 



 ,







 

( 





  (      ( 









      

( 











(126)



From equations (95), ( 96) and (126), we get

#  

 





  

 





The norm of # 



 

   % 





(  



(

   



   % 

   % 





  

 



 





 %

/   ( 

/   ( 





(

( 







(

       



    



  

      



  







(





(

  can be bounded by ( /  (      %          (





/ ( 



( 





/   (  

     















 )!  

 



It is straightforward then

# 

   %

   



/  ( 

Furthermore, neglecting terms in 

for



# 



 

( 









( 

(



( 

(

      





 )

, we obtain

      

Then, from (122), (125) and (127), we have 32





 )

(127)

 



 " "

"" 

 

"  



 

(    (

     

(  )  



 )

Remark 14. Comparing this result to the corresponding one for the modified Euclidean MGS [4], the error in the deviation from the " -orthogonality, via MSGS, (  This factor equals 1 in the Euclidean MGS. is amplified by the factor  In term of   and  , we obtain Theorem 15. We have the error’s boud  



 " "

   " " 



" 







    )

 

  

(    (







 



      (      0 





(128)

   ( ( "    " - and using (61),we get &   Proof. Setting       Thus, from Theorem 13, we obtain  



 " "

   " "  (

Since    

 

(



"  



    )



 









   0







(



(

     



 

     (   (



( and 



, we obtain

  (  ( ( "

   " 

( !



      (   







 

0



The result is then straightforward by using relation (92).

5 Conclusion The study of the error propagation for an numerical algorithm is usually a difficult task. In this paper, various implementations of symplectic Gram-Schmidt algorithm are detailed. An optimal ESR factorization (for which the algorithm is facvery sensitive) is deduced from the study. Error bounds for the computed # torization and for the deviation from the " -orthogonality are derived. Comparing 33

with the Euclidean case, the symplectic GS is more sensitive to rounding errors. Roughly speaking, this sensitivity is due to two independent causes. The first one, is the symplectic geometry. In fact, the symplectic group is unbounded whereas the orthogonal one is bounded. This phenomena is illustrated in Theorem 13 by the fact that the loss of " -orthogonality , is amplified by the factor (which can be (   high)       This factor equals 1 in the Euclidean case.





(







The second cause is due to the fact that an isotropic space can be encountered dur ing computations. If # , the space    , is then isotropic. The algorithm  presents an incurable breakdown. The # decomposition does not exist. Recall that no incurable breakdown is encountered in the Euclidean GS. However, even  when   , a loss of " -orthogonality can occur. This is clear from Theorem 15.  (

             The factor becomes high when     is high, which can





(

happen when   !  



0









0

    and  is near to be 0. This situation has no equivalent for the Euclidean GS. The deviation from the " -orthogonality can be controlled     during the computations. When a high value of     is encountered, then a deviation from the " -orthogonality is expected. Finally, the numerical experiments reported in [18] attested that the ESR factorization of Theorem 5 is numerically a good choice. This choice can be also easily understood since it corresponds to the best condition number of    , (i.e   ,   ) in the factorization         

References [1] Nabih N. Abdelmalek, Round off error analysis for Gram-schmidt method and solution of linear least squares problems, BIT 11 (1971), 345-368. [2] G. Ammar, C. Mehl, and V. Mehrmann, Schur-like forms for matrix Lie groups, Lie algebras and Jordan algebras, Linear Algebra Appl. 287 (1999), 11–39. [3] E. Artin, Geometric Algebra, Interscience Publishers, New York, 1957. [4] Å. Björck, Solving linear least squares problem by Gram-Schmidt orthogonalization, BIT 7 (1967), 1–21.

34

[5]

, Numerics of Gram-Schmidt orthogonalization, Linear Algebra Appl. 197/198 (1994), 297–316.

[6] C. Brezinski, Computational aspects of linear control, Kluwer Academic Publishers, Dordrecht/Hardbound, 2002. [7] A. Bunse-Gerstner, Matrix factorizations for symplectic QR-like methods, Linear Algebra Appl. 83 (1986), 49–77. [8] A. Bunse-Gerstner and V. Mehrmann, A symplectic QR-like algorithm for the solution of the real algebraic Riccati equation, IEEE Trans. Automat. Control AC-31 (1986), 1104–1113. [9] R. Byers, A Hamiltonian QR algorithm, SIAM J. Sci. Statist. Comput. 7 (1986), 212–229. [10] J. Della-Dora, Numerical linear algorithms and group theory, Linear Algebra Appl. 10 (1975), 267–283. [11] G. Golub and C. Van Loan, Matrix Computations, third ed., The Johns Hopkins U.P., Baltimore, 1996. [12] N. J. Higham, Accuracy and Stability of Numerical Algorithms, SIAM Publications, Philadelphia, PA., 1996. [13] H. Kwakernaak and R. Sivan, Linear Optimal Control Systems, WileyInterscience, New York, 1972. [14] P. Lancaster and L. Rodman, The Algebraic Riccati Equation, Oxford U.P., Oxford, 1995. [15] C. Lanczos, An iteration method for the solution of the eigenvalue problem of linear differential and integral operators, J. Res. Nat. Bur. Standards 45 (1950), 255–282. [16] V. Mehrmann, Der SR-algorithms zur Bestimmung der Eigenwerte einer Matrix, Diplomarbeit, Universität Bielefeld, 1979. [17] Y. Saad, Iterative Methods for Sparse Linear Systems, PWS Publishing Co., Boston, 1996.

35

[18] A. Salam, On theoretical and numerical aspects of symplectic GramSchmidt-like algorithms, Numer. Algo., 39 (2005), 237-242. [19] J.H. Wilkinson, Rounding Errors in Algebraic Processes, London: H.M.S.O. 1963.

36