# Manual de LaTeX/Fórmulas matemáticas/Arreglos matemáticos
## Matrices y arreglos

Se puede crear una matriz básica utilizando el entorno de la matrix: en común con otras estructuras similares a tablas, las entradas se especifican por fila, con columnas separadas usando & y una nueva fila separada con una barra invertida doble (\\)
| \[ \begin{matrix} a & b & c \\ d & e & f \\ g & h & i \end{matrix} \] | ${\begin{matrix}a&b&c\\d&e&f\\g&h&i\end{matrix}}$ |
Para especificar la alineación de columnas en la tabla, use la versión destacada:
| \begin{matrix} -1 & 3 \\ 2 & -4 \end{matrix} = \begin{matrix*}[r] -1 & 3 \\ 2 & -4 \end{matrix*} | ${\begin{matrix}-1&3\\2&-4\end{matrix}}={\begin{matrix}-1&\,\;\;3\\\,\;\;2&-4\end{matrix}}$ |
La alineación por defecto es c pero puede ser cualquier tipo de columna válida en el entorno de array.
Sin embargo, las matrices generalmente están encerradas en delimitadores de algún tipo, y si bien es posible usar los comandos \left y \right, hay varios otros entornos predefinidos que incluyen delimitadores automáticamente:
| Nombre del entorno | Delimitador | Notas |
| pmatrix | $(\,)$ | centra las columnas por defecto |
| pmatrix* | $(\,)$ | permite especificar la alineación de columnas en parámetros opcionales |
| bmatrix | $[\,]$ | centra las columnas por defecto |
| bmatrix* | $[\,]$ | permite especificar la alineación de columnas en parámetros opcionales |
| Bmatrix | $\{\,\}$ | centra las columnas por defecto |
| Bmatrix* | $\{\,\}$ | permite especificar la alineación de columnas en parámetros opcionales |
| vmatrix | $|\,|$ | centra las columnas por defecto |
| vmatrix* | $|\,|$ | permite especificar la alineación de columnas en parámetros opcionales |
| Vmatrix | $\|\,\|$ | centra las columnas por defecto |
| Vmatrix* | $\|\,\|$ | permite especificar la alineación de columnas en parámetros opcionales |
Cuando se escribe matrices de tamaño arbitrario, es común usar tres puntos supensivos horizontales, verticales y diagonales de para completar ciertas columnas y filas. Estos se pueden especificar utilizando \cdots, \vdots y \ddots respectivamente:
| A_{m,n} = \begin{pmatrix} a_{1,1} & a_{1,2} & \cdots & a_{1,n} \\ a_{2,1} & a_{2,2} & \cdots & a_{2,n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m,1} & a_{m,2} & \cdots & a_{m,n} \end{pmatrix} | $A_{m,n}={\begin{pmatrix}a_{1,1}&a_{1,2}&\cdots &a_{1,n}\\a_{2,1}&a_{2,2}&\cdots &a_{2,n}\\\vdots &\vdots &\ddots &\vdots \\a_{m,1}&a_{m,2}&\cdots &a_{m,n}\end{pmatrix}}$ |
En algunos casos, es posible que desee tener un control más preciso de la alineación dentro de cada columna, o que desee insertar líneas entre columnas o filas. Esto se puede lograr utilizando el entorno array, que es esencialmente una versión en modo matemático del entorno tabular, que requiere que las columnas se especifiquen previamente:
| \begin{array}{c|c} 1 & 2 \\ \hline 3 & 4 \end{array} | ${\begin{array}{c|c}1&2\\\hline 3&4\end{array}}$ |
En el siguiente ejemplo se puede notar que la clase de entornos de amsmath no deja suficiente espacio cuando se usa junto con fracciones que dan como resultado la siguiente salida:
$M={\begin{bmatrix}{\frac {5}{6}}&{\frac {1}{6}}&0\\{\frac {5}{6}}&0&{\frac {1}{6}}\\0&{\frac {5}{6}}&{\frac {1}{6}}\end{bmatrix}}$
Para contrarrestar este problema, agregue espacio inicial adicional con el parámetro opcional \\ al comando:
| M = \begin{bmatrix} \frac{5}{6} & \frac{1}{6} & 0 \\[0.3em] \frac{5}{6} & 0 & \frac{1}{6} \\[0.3em] 0 & \frac{5}{6} & \frac{1}{6} \end{bmatrix} | $M={\begin{bmatrix}{\frac {5}{6}}&{\frac {1}{6}}&0\\[0.3em]{\frac {5}{6}}&0&{\frac {1}{6}}\\[0.3em]0&{\frac {5}{6}}&{\frac {1}{6}}\end{bmatrix}}$ |
Si necesita "borde" o "índices" en su matriz, TeX simple proporciona la macro \bordermatrix
* M = \bordermatrix{~ & x & y \cr A & 1 & 0 \cr B & 0 & 1 \cr}

### Matrices en el texto

Para insertar una matriz pequeña, y no aumentar el espacio en la línea que la contiene, use el entorno smallmatrix:
* A matrix in text must be set smaller: $\bigl(\begin{smallmatrix} a&b \\ c&d \end{smallmatrix} \bigr)$ to not increase leading in a portion of text.
* 1 2 3 4 5 6 require el paquete amsmath
* 1 2 3 4 5 6 require el paquete mathtools