Re: *Matrix witihn matrix*

• To: mathgroup at yoda.physics.unc.edu
• Subject: Re: *Matrix witihn matrix*
• From: jfultz (John Fultz)
• Date: Tue, 28 Jun 1994 10:26:40 -0500

>I have a matrix containing sub-matrices which I wish to combine.
>
>I have implemented this as:
>
>CatMatrix[a_,b_,c_,d_]:=Block[{t1},
>t1=Length[a];Join[Table[Flatten[{a[[i]],b[[i]]}],
>{i,1,t1}],Table[Flatten[{c[[i]],d[[i]]}],
>{i,1,t1}]]].
>
>So that:
>
>a={{a11,a12,a13},{a21,a22,a23},{a31,a32,a33}};
>b={{b11,b12,b13},{b21,b22,b23},{b31,b32,b33}};
>c={{c11,c12,c13},{c21,c22,c23},{c31,c32,c33}};
>d={{d11,d12,d13},{d21,d22,d23},{d31,d32,d33}};
>
>{a,b,c,d}----->
>
>{{a11, a12, a13, b11, b12, b13}, {a21, a22, a23, b21, b22, b23},
>
>
>
>  {a31, a32, a33, b31, b32, b33},
>
>
>  {c11, c12, c13, d11, d12, d13},
>
>
>
>  {c21, c22, c23, d21, d22, d23}, {c31, c32, c33, d31, d32, d33}}
>
>Does anyone know of a  simplier implementation?

Load LinearAlgebra`MatrixManipulation` and use the BlockMatrix
command.  This is a more general implentation which will do much the
same thing.

In[1]:= <<LinearAlgebra`MatrixManipulation`

In[2]:= a={{a11,a12,a13},{a21,a22,a23},{a31,a32,a33}};

In[3]:= b={{b11,b12,b13},{b21,b22,b23},{b31,b32,b33}};

In[4]:= c={{c11,c12,c13},{c21,c22,c23},{c31,c32,c33}};

In[5]:= d={{d11,d12,d13},{d21,d22,d23},{d31,d32,d33}};

In[6]:= BlockMatrix[{{a,b},{c,d}}]

Out[6]= {{a11, a12, a13, b11, b12, b13}, {a21, a22, a23, b21, b22, b23}

>    {a31, a32, a33, b31, b32, b33}, {c11, c12, c13, d11, d12, d13},

>    {c21, c22, c23, d21, d22, d23}, {c31, c32, c33, d31, d32, d33}}

-John
--------------------------------------------------------------------------------
John Fultz      "I take responsibility for all I say and do"
jfultz at wri.com  "Goldfish schoals, nibblin' at my toes, Fun, fun, fun..."
--------------------------------------------------------------------------------

• Prev by Date: Re: *Matrix witihn matrix*
• Next by Date: Re: *Matrix witihn matrix*
• Previous by thread: Re: *Matrix witihn matrix*
• Next by thread: Re: *Matrix witihn matrix*