Sponsored links: Algebra eBooks
 

Related

mat_fullunblocker

? mat_fullunblocker;

Calculate

mat_fullunblocker

? mat_fullunblocker;

Calculate

mat_fullunblocker

Run Example
(%i1)C4ex : matrix([C4,zeromatrix(3,3)],[zeromatrix(3,3),C4]);
                         [              [ 0  0  0 ] ]
                         [              [         ] ]
                         [     C4       [ 0  0  0 ] ]
                         [              [         ] ]
                         [              [ 0  0  0 ] ]
(%o1)                    [                          ]
                         [ [ 0  0  0 ]              ]
                         [ [         ]              ]
                         [ [ 0  0  0 ]      C4      ]
                         [ [         ]              ]
                         [ [ 0  0  0 ]              ]
(%i2) C4exi : matrix([C4i,zeromatrix(3,3)],[zeromatrix(3,3),C4i]);
                         [              [ 0  0  0 ] ]
                         [              [         ] ]
                         [     C4i      [ 0  0  0 ] ]
                         [              [         ] ]
                         [              [ 0  0  0 ] ]
(%o2)                    [                          ]
                         [ [ 0  0  0 ]              ]
                         [ [         ]              ]
                         [ [ 0  0  0 ]      C4i     ]
                         [ [         ]              ]
                         [ [ 0  0  0 ]              ]
(%i3) C4 : (2/3)*matrix([1/sqrt(2),1/sqrt(2),1/sqrt(2)],[1,-1/2,-1/2],[0,sqrt(3)/2,-sqrt(3)/2]);
                        [ sqrt(2)  sqrt(2)   sqrt(2)  ]
                        [ -------  -------   -------  ]
                        [    3        3         3     ]
                        [                             ]
                        [    2         1         1    ]
(%o3)                   [    -       - -       - -    ]
                        [    3         3         3    ]
                        [                             ]
                        [             1          1    ]
                        [    0     -------  - ------- ]
                        [          sqrt(3)    sqrt(3) ]
(%i4) C4i : ratsimp(invert(C4));
                          [    1                    ]
                          [ -------   1       0     ]
                          [ sqrt(2)                 ]
                          [                         ]
                          [    1       1   sqrt(3)  ]
(%o4)                     [ -------  - -   -------  ]
                          [ sqrt(2)    2      2     ]
                          [                         ]
                          [    1       1    sqrt(3) ]
                          [ -------  - -  - ------- ]
                          [ sqrt(2)    2       2    ]
(%i5) C4ex : mat_fullunblocker(ev(C4ex));
         [ sqrt(2)  sqrt(2)   sqrt(2)                               ]
         [ -------  -------   -------      0        0         0     ]
         [    3        3         3                                  ]
         [                                                          ]
         [    2         1         1                                 ]
         [    -       - -       - -        0        0         0     ]
         [    3         3         3                                 ]
         [                                                          ]
         [             1          1                                 ]
         [    0     -------  - -------     0        0         0     ]
         [          sqrt(3)    sqrt(3)                              ]
(%o5)    [                                                          ]
         [                              sqrt(2)  sqrt(2)   sqrt(2)  ]
         [    0        0         0      -------  -------   -------  ]
         [                                 3        3         3     ]
         [                                                          ]
         [                                 2         1         1    ]
         [    0        0         0         -       - -       - -    ]
         [                                 3         3         3    ]
         [                                                          ]
         [                                          1          1    ]
         [    0        0         0         0     -------  - ------- ]
         [                                       sqrt(3)    sqrt(3) ]
(%i6) C4exi : ratsimp(invert(C4ex));
             [    1                                             ]
             [ -------   1       0         0      0       0     ]
             [ sqrt(2)                                          ]
             [                                                  ]
             [    1       1   sqrt(3)                           ]
             [ -------  - -   -------      0      0       0     ]
             [ sqrt(2)    2      2                              ]
             [                                                  ]
             [    1       1    sqrt(3)                          ]
             [ -------  - -  - -------     0      0       0     ]
             [ sqrt(2)    2       2                             ]
(%o6)        [                                                  ]
             [                             1                    ]
             [    0      0       0      -------   1       0     ]
             [                          sqrt(2)                 ]
             [                                                  ]
             [                             1       1   sqrt(3)  ]
             [    0      0       0      -------  - -   -------  ]
             [                          sqrt(2)    2      2     ]
             [                                                  ]
             [                             1       1    sqrt(3) ]
             [    0      0       0      -------  - -  - ------- ]
             [                          sqrt(2)    2       2    ]
(%i7) 
Run Example
B:matrix([-1,-4,5],[3,12,0]);
                                [ - 1  - 4  5 ]
(%o1)                           [             ]
                                [  3   12   0 ]
(%i2) BI:matrix([B,ident(2)]);
                         [ [ - 1  - 4  5 ]  [ 1  0 ] ]
(%o2)                    [ [             ]  [      ] ]
                         [ [  3   12   0 ]  [ 0  1 ] ]
(%i3) BI:mat_fullunblocker(BI);
                             [ - 1  - 4  5  1  0 ]
(%o3)                        [                   ]
                             [  3   12   0  0  1 ]
(%i4) BI:triangularize(BI);
                              [ 3  12  0   0  1 ]
(%o4)                         [                 ]
                              [ 0  0   15  3  1 ]
(%i5) P:submatrix(BI,1,2,3);
                                   [ 0  1 ]
(%o5)                              [      ]
                                   [ 3  1 ]
(%i6) BJ:mat_fullunblocker(matrix([submatrix(BI,4,5)],[ident(3)]));
                                 [ 3  12  0  ]
                                 [           ]
                                 [ 0  0   15 ]
                                 [           ]
(%o6)                            [ 1  0   0  ]
                                 [           ]
                                 [ 0  1   0  ]
                                 [           ]
                                 [ 0  0   1  ]
(%i7) BJ:transpose(echelon(transpose(BJ)));
                                [ 1  0    0  ]
                                [            ]
                                [ 0  1    0  ]
                                [            ]
                                [ 1          ]
                                [ -  0    1  ]
                                [ 3          ]
(%o7)                           [            ]
                                [          1 ]
                                [ 0  0   - - ]
                                [          4 ]
                                [            ]
                                [    1       ]
                                [ 0  --   0  ]
                                [    15      ]
(%i8) J:submatrix(3,4,5,BJ);
                                  [ 1  0  0 ]
(%o8)                             [         ]
                                  [ 0  1  0 ]
(%i9) Q:submatrix(1,2,BJ);
                                [ 1          ]
                                [ -  0    1  ]
                                [ 3          ]
                                [            ]
                                [          1 ]
(%o9)                           [ 0  0   - - ]
                                [          4 ]
                                [            ]
                                [    1       ]
                                [ 0  --   0  ]
                                [    15      ]
(%i10) P.B.Q;
                                  [ 1  0  0 ]
(%o10)                            [         ]
                                  [ 0  1  0 ]
(%i11) G:Q.transpose(J).P;
                                   [    1  ]
                                   [ 0  -  ]
                                   [    3  ]
                                   [       ]
(%o11)                             [ 0  0  ]
                                   [       ]
                                   [ 1  1  ]
                                   [ -  -- ]
                                   [ 5  15 ]
(%i12) B.G.B;
                                [ - 1  - 4  5 ]
(%o12)                          [             ]
                                [  3   12   0 ]
(%i13) 
Run Example
B:matrix([-1,-4,5],[3,12,0]);
                                [ - 1  - 4  5 ]
(%o1)                           [             ]
                                [  3   12   0 ]
(%i2) BI:matrix([B,ident(2)]);
                         [ [ - 1  - 4  5 ]  [ 1  0 ] ]
(%o2)                    [ [             ]  [      ] ]
                         [ [  3   12   0 ]  [ 0  1 ] ]
(%i3) BI:mat_fullunblocker(BI);
                             [ - 1  - 4  5  1  0 ]
(%o3)                        [                   ]
                             [  3   12   0  0  1 ]
(%i4) BI:triangularize(BI);
                              [ 3  12  0   0  1 ]
(%o4)                         [                 ]
                              [ 0  0   15  3  1 ]
(%i5) P:submatrix(BI,1,2,3);
                                   [ 0  1 ]
(%o5)                              [      ]
                                   [ 3  1 ]
(%i6) BJ:mat_fullunblocker(matrix([submatrix(BI,4,5)],[ident(3)]));
                                 [ 3  12  0  ]
                                 [           ]
                                 [ 0  0   15 ]
                                 [           ]
(%o6)                            [ 1  0   0  ]
                                 [           ]
                                 [ 0  1   0  ]
                                 [           ]
                                 [ 0  0   1  ]
(%i7) BJ:transpose(echelon(transpose(BJ)));
                                [ 1  0    0  ]
                                [            ]
                                [ 0  1    0  ]
                                [            ]
                                [ 1          ]
                                [ -  0    1  ]
                                [ 3          ]
(%o7)                           [            ]
                                [          1 ]
                                [ 0  0   - - ]
                                [          4 ]
                                [            ]
                                [    1       ]
                                [ 0  --   0  ]
                                [    15      ]
(%i8) 

Related Help

Help for Mat_fullunblocker