import flame import laff as laff def Set_to_lower_triangular_matrix_unb_var1(A): ATL, ATR, \ ABL, ABR = flame.part_2x2(A, \ 0, 0, 'TL') while ATL.shape[0] < A.shape[0]: A00, a01, A02, \ a10t, alpha11, a12t, \ A20, a21, A22 = flame.repart_2x2_to_3x3(ATL, ATR, \ ABL, ABR, \ 1, 1, 'BR') #------------------------------------------------------------# laff.zerov( a01 ) #------------------------------------------------------------# ATL, ATR, \ ABL, ABR = flame.cont_with_3x3_to_2x2(A00, a01, A02, \ a10t, alpha11, a12t, \ A20, a21, A22, \ 'TL') flame.merge_2x2(ATL, ATR, \ ABL, ABR, A) from numpy import random from numpy import matrix A = matrix( random.rand( 5,5 ) ) print( 'A before =' ) print( A ) Set_to_lower_triangular_matrix_unb_var1( A ) print( 'A after =' ) print( A ) import flame import laff as laff def Set_to_lower_triangular_matrix_unb_var2(A): ATL, ATR, \ ABL, ABR = flame.part_2x2(A, \ 0, 0, 'TL') while ATL.shape[0] < A.shape[0]: A00, a01, A02, \ a10t, alpha11, a12t, \ A20, a21, A22 = flame.repart_2x2_to_3x3(ATL, ATR, \ ABL, ABR, \ 1, 1, 'BR') #------------------------------------------------------------# laff.zerov( a12t ) #------------------------------------------------------------# ATL, ATR, \ ABL, ABR = flame.cont_with_3x3_to_2x2(A00, a01, A02, \ a10t, alpha11, a12t, \ A20, a21, A22, \ 'TL') flame.merge_2x2(ATL, ATR, \ ABL, ABR, A) from numpy import random from numpy import matrix A = matrix( random.rand( 5,5 ) ) print( 'A before =' ) print( A ) Set_to_lower_triangular_matrix_unb_var2( A ) print( 'A after =' ) print( A )