Matrices de Toeplitz

Installer et compiler ces fichiers dans votre répertoire de travail.

c00a.c
/* ------------------------------------ */
/*  Save as :   c00a.c                  */
/* ------------------------------------ */
#include "v_a.h"
/* ------------------------------------ */
#define   RC  RC6
/* ------------------------------------ */
int main(void)
{
/* Toeplitz Matrix 
   
        V
 
   U    1 5 6 7
        2 
        3         
        4
     
  */
  
double u[R1*RC]={ 1,2,3,4,5,6};
double v[RC*C1]={ 1,
	              6,
	              5,
	              4,
	              3,
	              2};
	              	                 
double **V   = ca_A_mR(v,i_mR(RC,C1));	
double **U   = ca_A_mR(u,i_mR(R1,RC));
double **A   =           i_mR(RC,RC);

  clrscrn();
  
  rToeplitz_mR(U,V,A);
  
  printf(" A[R%d,C%d] : \n",rsize_R(A),csize_R(A));
  p_mR(A,S4,P0,C10);
  stop();

  f_mR(U);
  f_mR(V);   
  f_mR(A);
  
  return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */


En algèbre linéaire, une matrice circulante est une matrice carrée dans laquelle on passe d'une ligne à la suivante par permutation circulaire (décalage vers la droite) des coefficients. Une matrice circulante constitue un cas particulier de matrice de Toeplitz. Wikipedia


Exemple de sortie écran :

 A[R6,C6] : 

  +1   +2   +3   +4   +5   +6 
  +6   +1   +2   +3   +4   +5 
  +5   +6   +1   +2   +3   +4 
  +4   +5   +6   +1   +2   +3 
  +3   +4   +5   +6   +1   +2 
  +2   +3   +4   +5   +6   +1 

 Press return to continue.