Autres typologies de parenthèses utilisant le package spalign

Sep 21 2020

Si j'ai ce MWE créé avec le package spalign ,

\documentclass[a4paper,12pt]{article}
\usepackage{amsmath,amssymb}
\usepackage{spalign}

\begin{document}

\[ \def\spalignendline{\cr}
\spalignrun{\bordermatrix{\the\spaligntoks}}
{, a b; A -1 -2; B -4 4} \]
\end{document}

Quelle est la procédure pour avoir des { }crochets verticaux, carrés, pour les matrices?

À la pag. 6 il y a la procédure,

mais je n'arrive pas à l'adapter avec mon code.

Réponses

3 egreg Sep 21 2020 at 20:47

Je ne pense pas que cela \bordermatrixsoit réellement influencé par le réglage de l' delimsoption.

En effet, le code

\documentclass[a4paper,12pt]{article}
\usepackage{amsmath,amssymb}
\usepackage[delims=\lbrack\rbrack]{spalign}

\begin{document}

\[\spalignmat{1 2;3 4}\]

\[ \def\spalignendline{\cr}
\spalignrun{\bordermatrix{\the\spaligntoks}}
{, a b; A -1 -2; B -4 4} \]
\end{document}

produit

C'est parce que \bordermatrixn'est pas régi par spalign, mais est une commande du noyau LaTeX (et en fait un portage de TeX ordinaire).

Vous aurez peut-être plus de chance avec nicematrix, dont j'aime beaucoup mieux la syntaxe.

\documentclass[a4paper,12pt]{article}
\usepackage{amsmath,amssymb}
\usepackage{nicematrix}

\begin{document}

\[
\begin{bNiceMatrix}[first-row, first-col]
  &  a &  b \\
A & -1 & -2 \\
B & -4 &  4
\end{bNiceMatrix}
\]

\end{document}

3 StevenB.Segletes Sep 21 2020 at 20:13

Le problème est que \spalignrunne produit que les jetons ( \the\spaligntoks) à l'intérieur de la matrice, pas les délimiteurs eux-mêmes. Il vous suffit donc d'appeler un logiciel de matrice de bordure qui permet une réinitialisation pratique des délimiteurs. Le premier que j'ai trouvé était kbordermatrix.

\documentclass[a4paper,12pt]{article}
\usepackage{amsmath,amssymb,kbordermatrix}
\usepackage{spalign}

\begin{document}

\[ \def\spalignendline{\cr}
\renewcommand{\kbldelim}{\langle}
\renewcommand{\kbrdelim}{|}
\spalignrun{\kbordermatrix{\the\spaligntoks}}
{, a b; A -1 -2; B -4 4} \]
\end{document}