Produs Kronecker

Intrebari despre limbajul C++, standardul C++, STL, OOP in C++ sau alte subiecte nelegate de VisualC++
Post Reply
tuxman
Junior
Junior
Posts: 4
Joined: 23 Apr 2016, 11:55
Judet: Constanţa

Produs Kronecker

Post by tuxman » 12 Oct 2018, 11:02

Salut,

Vreau sa calculez produsul Kronecker dintre doua matrice. Rezultatul ar trebui sa fie, o matrice tridiagonala, cu valoarea 2 pe diagonala principala, si valoarea -1 pe celelalte diagonale.
Eu obtin niste valori foarte mari...

Code: Select all

#include <iostream> 
using namespace std;  
const int n = 4; 
  
 
void Kroneckerproduct(int A[n][n], int B[n][n], int C[n*n][n*n]) 
{ 
  
    
    for (int i = 0; i < n; i++) { 
  
        
        for (int k = 0; k < n; k++) { 
  
            
            for (int j = 0; j < n; j++) { 
  
                
                for (int l = 0; l < n; l++) { 
  
                    
                    C[i + l + 1][j + k + 1] = A[i][j] * B[k][l]; 
                    
                } 
            } 
            
        } 
    } 
} 
  
 
int main() 
{ 
    int A[4][4] = { { 2, -1, 0, 0 }, { -1, 2, -1, 0 }, { 0, -1, 2, -1 }, { 0, 0, -1, 2 } }, 
        B[4][4] = { { 1, 0, 0, 0 }, { 0, 1, 0, 0 }, { 0, 0, 1, 0}, { 0, 0, 0, 1} };
        
    int C[n*n][n*n]; //rezultat
    Kroneckerproduct(A, B, C); 
    
    for (int i = 0; i < n*n; i++) {
       for (int j = 0; j < n*n; j++) {
           cout<<C[i][j]<<" ";
	   }
           cout<<"\n"; 
    }
    system("PAUSE");
    return 0; 
} 
Numai bine !



tuxman
Junior
Junior
Posts: 4
Joined: 23 Apr 2016, 11:55
Judet: Constanţa

Re: Produs Kronecker

Post by tuxman » 19 Oct 2018, 12:57

Am rezolvat...cu armadillo...are functia kron

Post Reply