MathGroup Archive 2010

[Date Index] [Thread Index] [Author Index]

Search the Archive

Constructing matrix out of submatrices


I would like to construct a matrix out of submatrices. I guess this is
straight forward but somehow I couldn't find the correct way in the
documentation. The example that follows is of course simplified. Please
don't take shortcuts.

I start with a zero matrix and a submatrix:

matrix = ConstantArray[0, {3, 3}]
submatrix = {{a, b}, {c, d}}

I want to specificy the upper-left corner in the matrix where the
submatrix should be placed. If the position is {1,1} the result should be:

result = {{a, b, 0}, {c, d, 0}, {0, 0, 0}}

If it is {1,2}:

result = {{0, a, b}, {0, c, d}, {0, 0, 0}}


ReplacePart together with ArrayFlatten comes close, but the submatrix
does not "override" zeros:

ReplacePart[matrix, {1, 1} -> submatrix] // ArrayFlatten

{{a, b, 0, 0}, {c, d, 0, 0}, {0, 0, 0, 0}, {0, 0, 0, 0}}

What are possible solutions?



  • Prev by Date: Re: Factor, Extension
  • Next by Date: Re: Balance point of a solid
  • Previous by thread: Re: 2-D Butterworth lowpass filter?
  • Next by thread: Re: Constructing matrix out of submatrices