I don't understand the ArrayFlatten function. I didn't understand the definition in the documentation, and I didn't understand the examples there and in Stephen Wolfram book An Elementary Introduction to the Wolfram Language, chapter 30. Can anybody be more precise without being too verbose?
I think Murray's example illustrates the purpose of ArrayFlatten very well, but maybe your confusion starts much earlier. Does the rest of chapter 30 make sense to you? Do you understand functions like Flatten and Partition?
ArrayFlatten
Flatten
Partition
As I mentioned in my post, I didn't understand the example in the documentation, which is the example in the reply.
Does it help you if you look at the first Basic Example in the documentation as follows?
m = {{1, 2}, {3, 4}}; multi = {{m, m, m}, {m, m, m}} multi // MatrixForm ArrayFlatten[multi] ArrayFlatten[multi] // MatrixForm