Matrices with alignment
5 May 2008 by Stefan Kottwitz
The entries of matrix columns are centered by default. Let’s see an example:
\[ \begin{pmatrix} 1 & 2 & 1 \\ 0 & -2 & -3 \\ 0 & 3 & -2 \end{pmatrix} \]
Output:

For right alignment you could use an array environment instead of pmatrix. I will show a possibility to get left, right or centered alignment by redefining the internal amsmath macro \env@matrix. Its original definition in version 2.13 is:
\def\env@matrix{\hskip -\arraycolsep \let\@ifnextchar\new@ifnextchar \array{*\c@MaxMatrixCols c}}
I introduce an optional parameter, its default value is c:
\makeatletter \renewcommand*\env@matrix[1][c]{\hskip -\arraycolsep \let\@ifnextchar\new@ifnextchar \array{*\c@MaxMatrixCols #1}} \makeatother
Now, if you write \begin{pmatrix}[r] … above you will get:

See complete source code example.
This topic was discussed in the Matheplanet Forum.
This entry was posted on 5 May 2008 at 3:30 PM and is filed under Mathematics. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.




11 September 2009 at 2:48 PM
Thanks for this — I wish that it were in amslatex already!