[DEBUTANT] fonction devant retourner un tableau
Salut,
je suis en train de faire une fonction qui doit retourner un tableau de matrice (classe template defini dans BOOST::uBLAS).
Il s agit d'un tableau dynamique (en rouge dans le code ci-dessous).
Le probleme est que je ne sais pas quel type donne à ce tableau pour le definir dans "l'entete" de ma fonction et je ne sais pas comment le definir dans mon return en fin de fonction.
J ai egalement essayer d utiliser la classe vecteur de la bibliotheque standard mais apparement je ne peut pas definir un vecteur de matrice...?
Voilà mon code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
matrix<float> decomp_lu(matrix<float> m)
{
matrix<float> *V_results; //pointeur de matrice
int dim=m.size1();
V_results = new matrix<float>[dim];
matrix<float> l(m.size1(), m.size1());
cout << "dimension de la matrice soumise au LU :"<<m.size1()<<"\n";
for(int i=0; i<=m.size1()-2; i=i+1)//calcul de L, l'operation est faite (n-1) fois
{
//coef à 0 de la matrice L
for(int c=0; c<m.size1(); ++ c)
for(int d=0; d<m.size2(); ++ d)
l(c,d)=0;
//coef à 1 sur la diagonale de la matrice L
for(int c=0; c<m.size1(); ++ c)
l(c,c)=1;
//calcul des coef non nuls de la matrice L
for(int j=i; j<=m.size1()-2; ++ j)
l(j+1,i)=-m(j+1,i)/m(i,i);
V_results[i]=l;
cout << "operation numero "<< i <<", L : "<< l <<"\n";
m=prod(l, m);
cout << "operation numero "<< i <<", U : "<< m <<"\n";
}
V_results[m.size1()-1]=m;
return(m);
} |
J usqu a present cette fonction ne retourne qu'une matrice, mais j aurai besoin de pouvoir en utiliser 2 par la suite d ou l idee de retourner un tableau de matrice.
Merci.