como adicionar mais preenchimento às linhas da tabela quando a tabela possui um array dentro dela?

como adicionar mais preenchimento às linhas da tabela quando a tabela possui um array dentro dela?

A solução que encontrei para adicionar mais espaçamento entre as linhas da tabela é usar\arraystretch

Mas isso não está funcionando para mim. A mesa que tenho tem \begin{array}dentro dela. E isso \arraystretché esticar o array dentro da tabela e não adicionar mais espaço entre a parte inferior dos vetores mostrados e as linhas da tabela, que era tudo que eu queria.

Observe: Não consigo alterar o código usado arraypara compor o vetor na última coluna, para outra coisa. Como esse código é gerado automaticamente.

Posso alterar qualquer outra coisa na tabela, mas preciso manter o arraycódigo como está. Não tenho como mudar isso.

E o exemplo ajudará a explicar.

\documentclass[12pt]{article}
\usepackage{amsmath}
\begin{document}
\begin{center}
\bgroup
\renewcommand{\arraystretch}{2}
\begin{tabular}{|c|c|c|c|c|}\hline
eigenvalue & {\footnotesize algebraic multiplicity $m$}&  {\footnotesize geometric multiplicty $k$}& {\small defective?}& eigenvectors \\ \hline 
$3 i$&$1$&$1$&No&$\left[\begin{array}{c}i \\1 \\\end{array}\right]$ \\ \hline
$-3 i$&$1$&$1$&No&$\left[\begin{array}{c}-i \\1 \\\end{array}\right]$ \\ \hline
\end{tabular}
\egroup
\end{center}                       
\end{document}

Quando compilado usando lualatex, esta é a saída

insira a descrição da imagem aqui

Mudar \renewcommand{\arraystretch}{2}para \renewcommand{\arraystretch}{5}também estica os vetores internos mantendo o mesmo espaço entre a parte inferior dos vetores e as bordas da tabela, o que não é o que eu quero.

Aqui está o resultado com5

insira a descrição da imagem aqui

Qual é a maneira correta de resolver isso? Só preciso de mais espaço entre a parte superior/inferior dos vetores mostrados e as linhas que separam as linhas. O resto das células estão OK como estão.

TL 2020

referência:

no verso

Responder1

Você pode adicionar algum espaço vertical ao conteúdo das células usando a macro \makegapedcellsdefinida nos makecellpacotes. Como sua tabela é muito larga e cabe na largura do texto, sugiro reformular os cabeçalhos das colunas para a segunda e a terceira colunas:

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{makecell}

\begin{document}
    \begin{center}
    \setcellgapes{5pt}
    \makegapedcells
\begin{tabular}{|*{5}{c|} }
    \hline
    &   \multicolumn{2}{c|}{ multiplicity}
            &   &                   \\
    \cline{2-3}
eigenvalue 
    &   algebraic $m$
        &   multiplicty $k$
            &   defective?
                &   eigenvectors    \\ 
    \hline
$3i$    & 1 & 1 &   No  & $\begin{bmatrix} i \\1 \end{bmatrix}$     \\ 
    \hline
$-3i$   & 1 & 1 &   No  & $\begin{bmatrix} -i \\1 \end{bmatrix}$     \\ 
    \hline
\end{tabular}
    \end{center}
\end{document}

insira a descrição da imagem aqui

Editar:

Se por algum motivo você usar seu código para matrizes, basta substituir o código curto e elegante usando bmatrixpelo seu código usando array:

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{makecell}

\begin{document}
    \begin{center}
    \setcellgapes{5pt}
    \makegapedcells
\begin{tabular}{|*{5}{c|} }
    \hline
    &   \multicolumn{2}{c|}{ multiplicity}
            &   &                   \\
    \cline{2-3}
eigenvalue 
    &   algebraic $m$
        &   multiplicty $k$
            &   defective?
                &   eigenvectors    \\ 
    \hline
$3i$    & 1 & 1 &   No  & $\left[\begin{array}{c} i \\1 \end{array}\right]$     \\ 
    \hline
$-3i$   & 1 & 1 &   No  & $\left[\begin{array}{c} -i \\1 \end{array}\right]$     \\ 
    \hline
\end{tabular}
    \end{center}
\end{document}

O resultado da solução acima é o mesmo de antes ...

Responder2

O cellspacepacote permite que você defina ummínimopreenchimento vertical na parte superior e inferior das células em colunas com especificador prefixado com a letra S(ou Cse você carregar siunitx, e a mathopção faz o mesmo para os amsmath ambientes de matriz. Independentemente deste problema, tomei a liberdade de simplificar seu código substituindo \left[\begin{array}[c}...\end{array}\right]por o mais simples \begin{bmatrix} ... \end{bmatrix}.

\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage[math]{cellspace}
\setlength{\cellspacetoplimit}{6pt}
\setlength{\cellspacebottomlimit}{6pt}

\begin{document}

\begin{center}
\begin{tabular}{|*{5}{Sc|}}\hline
eigenvalue & {\footnotesize algebraic multiplicity $m$}& {\footnotesize geometric multiplicty $k$}& {\small defective?}& eigenvectors \\ \hline
$3 i$&$1$&$1$&No&$\begin{bmatrix}i \\ \,1\, \end{bmatrix}$ \\ \hline
$-3 i$&$1$&$1$&No&$\begin{bmatrix} -i \\1 \\\end{bmatrix}$ \\ \hline
\end{tabular}
\end{center}

\end{document}

insira a descrição da imagem aqui

informação relacionada