J'ai un petit problème pour la création d'un matrice. je veux répéter les deux premières colonnes de cette matrice environ 70 fois à la suite de la première. Je n'est pas l'impression d'être très explicite donc je vous fait un petit exemple: 1 2 1 3 1 5 1 2 1 3 1 5 1 2 1 3 1 5 et ainsi de suite 70 fois. J'espère être assez claire. Voici mon programme, je ne sais pas trop si je m'y suis bien pris
//Création matrice M=sparse(eye(2310,5));//matrice à remplir
//Première colonne a=sparse(A');//un block à insérer dans M M(1:33)=a;//insertion du block A ai=sparse(AI');//un block à insérer dans M M(34:66)=ai;//insertion du block ai
Marsh Posté le 02-04-2010 à 11:48:36
Bonjour,
J'ai un petit problème pour la création d'un matrice. je veux répéter les deux premières colonnes de cette matrice environ 70 fois à la suite de la première.
Je n'est pas l'impression d'être très explicite donc je vous fait un petit exemple:
1 2
1 3
1 5
1 2
1 3
1 5
1 2
1 3
1 5
et ainsi de suite 70 fois. J'espère être assez claire.
Voici mon programme, je ne sais pas trop si je m'y suis bien pris
merci pour votre aide
//programme matrice
//Colonne croissante
A=[225:30:1185];
A';
B=[215:30:1175];
B';
I=eye(66,66);
C=diag(I)*184;
D=[0:1:32];
D';
E=diag(I)*0;
//Colonne décroissante
AI=[1185:-30:225];
AI';
BI=[1175:-30:215];
BI';
CI=diag(I)*184;
DI=[32:-1:0];
DI';
EI=diag(I);
//Point de contrôle
X=[410,400,700,40,0];
//Création matrice
M=sparse(eye(2310,5));//matrice à remplir
//Première colonne
a=sparse(A');//un block à insérer dans M
M(1:33)=a;//insertion du block A
ai=sparse(AI');//un block à insérer dans M
M(34:66)=ai;//insertion du block ai
//Deuxième colonne
b=sparse(B');
M(1:33,2)=b;
bi=sparse(BI');
M(34:66,2)=bi;
//Troisième colonne
c=sparse(C);
M(1:66,3)=c;
//Quatrième colonne
d=sparse(D');
M(1:33,4)=d;
di=sparse(DI');
M(34:66,4)=di;
//Cinquième colonne
e=sparse(E);
M(1:66,5)=e;
//Point de contrôle
M(67,=[410 400 700 33 71];
full(M)//pour contrôle