\documentclass[]{article}
\usepackage{tikz}
\usetikzlibrary{fit}
\usepackage{amsmath,amsthm}
\usetikzlibrary{positioning}
\usepackage[upright]{fourier}
\usetikzlibrary{matrix,arrows,decorations.pathmorphing}
\tikzset{sfondo/.style={rectangle,fill=gray!50,fill opacity=0.5,inner sep=0pt}}
\begin{document}
\begin{tikzpicture}
\matrix (B) [matrix of math nodes, text height = 2mm, minimum width = 3.7mm, left delimiter =(, right delimiter =), nodes in empty cells]
{
\node(left) {1}; & \node {}; & & & & & & & & & & & & \node (a) {}; \\
\node{}; & \node(right) {1}; \\
\node (b) {}; & \node(h) {}; & \node(c) {\ast}; & \ast & \ast &\ast &\ast &\ast &\ast &\ast &\ast &\ast & & \node(d){\ast}; \\
};
\node
{B =};
\node[sfondo,fit=(left.north west) (right.south east)] {};
\draw[] (left.north west) — (a.north east);
\draw[] (b.north west) — (d.north east);
\draw[] (c.south west) — (d.south east);
\draw[] (B-1-2.north east) — (h.south east);
\matrix (F) [matrix of math nodes, text height = 2mm, minimum width = 5em, right=4pt of B, align = center, font=\small]
{
\node {}; \\
\node {}; \\
$j_1^\circ$ \\
};
\draw [<->,decorate,decoration={segment length=.5mm}] (F-1-1.north) — (F-2-1.south);
\draw[] (F-1-1.north west) — (F-1-1.north east);
\draw[] (F-3-1.north west) — (F-3-1.north east);
\draw[] (F-3-1.south west) — (F-3-1.south east);
\matrix [matrix of math nodes, text height = 2mm, minimum width = 3.6mm, nodes in empty cells, above=0pt of B, font=\small]
{
\underset{\downarrow}{\xi_1} & \underset{\downarrow}{\xi_2} & \underset{\downarrow}{\xi_3} & & & & & & & & & & & \underset{\downarrow}{\xi_{n-r}} \\
};
\end{tikzpicture}
@OldClaudio: Ho provato a fare come dicevi e finora questo è il risultato.
Le lettere \xi_1, \xi_2 ecc. non mi vengono ancora perfettamente allineate.
Nella matrice di destra vorrei che la freccia fosse più corta della distanza tra le due righe, ho provato nel seguent modo:
\draw [<->,decorate,decoration={segment length=.5mm}] (F-1-1.north) — (F-2-1.south);
ma non ci sono riuscito. Inoltre dovrei anche far sì che sia un testo sulla destra in piccolo.
Infine quando scrivo le lettere j_1^\circ (per il momento mi serve di scriverla così) la distanza della cella aumenta non allineadosi più con la matrice di fianco.
PS. C’è un altro modo per scrivere la lettera “B = ” della matrice?
Io ho usato il comando draw
{B = }
Grazie ancora per l’aiuto.
Massimiliano