It's the first time I use uBLAS, and I want to know the right way to initialize a matrix. Example: | 3 2| M = | 1 5| | 3 4| How can I create such a matrix? For example, in Matlab, you can type:
M = [3, 2; 1, 5; 3, 4]
I haven't found documentation for something as simple as that!!! I need help!
Oscar Vargas wrote:
It's the first time I use uBLAS, and I want to know the right way to initialize a matrix.
Example: | 3 2| M = | 1 5| | 3 4|
How can I create such a matrix?
The documentation is very clear on how to create a matrix: http://www.boost.org/doc/libs/1_46_1/libs/numeric/ublas/doc/matrix.htm#12Exa... In your example, you could do at least two things: // option 1: just assign to each cell // somewhere inside a function... matrix<double> M (2, 3); // or matrix<int>, matrix<complex>... M(0, 0) = 3; M(0, 1) = 2; M(1, 0) = 1; M(1, 1) = 5; M(2, 0) = 3; M(2, 1) = 4; // option 2: define a constant two-dimensional array as initializer const int ROWS = 3; const int COLS = 2; const int MATRIX_INIT[][COLS] = {{3, 2}, {1, 5}, {3, 4}}; // somewhere inside a function... matrix<double> M (ROWS, COLS); // or int, complex, whatever for (int i = 0; i < ROWS; ++i) for (int j = 0; j < COLS; ++j) M(i, j) = MATRIX_INIT[i][j]; Which option is best depends on your needs. There might be more options that I'm not aware of but this should get you started. HTH, Julian
participants (2)
-
Julian Gonggrijp
-
Oscar Vargas