function [ L_out ] = Trinv_l_unb_var2( L )

  [ LTL, LTR, ...
    LBL, LBR ] = FLA_Part_2x2( L, ...
                               0, 0, 'FLA_TL' );

  while ( size( LTL, 1 ) < size( L, 1 ) )

    [ L00,  l01,      L02,  ...
      l10t, lambda11, l12t, ...
      L20,  l21,      L22 ] = FLA_Repart_2x2_to_3x3( LTL, LTR, ...
                                                     LBL, LBR, ...
                                                     1, 1, 'FLA_BR' );

    %------------------------------------------------------------%

        lambda11 = 1/lambda11;
        l21 = Trsv_ln_unb_var1(l21, L22);
        l21 = -l21;
        L20 = L20 - l21*l10t;
        l10t = l10t*L00;

    %------------------------------------------------------------%

    [ LTL, LTR, ...
      LBL, LBR ] = FLA_Cont_with_3x3_to_2x2( L00,  l01,      L02,  ...
                                             l10t, lambda11, l12t, ...
                                             L20,  l21,      L22, ...
                                             'FLA_TL' );

  end

  L_out = [ LTL, LTR
            LBL, LBR ];

return


LinearAlgebraWiki: Trinv/FLAME@lab/UnbVar2 (last edited 2008-08-06 20:19:29 by MarthaGanser)