#include #include "matrix.hh" #include "matrix.hh" #include "vector.hh" void check_mat_as_const(const Matrix& A) { //for (unsigned int i = 0; i < A.rows(); ++i) { // for (unsigned int j = 0; j < A.cols() ++j) { // std::cout << "A.get_entry(" << i << ", " << j << ") = " << A.get_entry(i, j); // } //} //std::cout << "A = " << A << std::endl; //std::cout << "A.transpose() = " << A.transpose() << std::endl; //const Matrix B(3, 2, 1.0); //std::cout << "A.add(B) = " << A.add(B) << std::endl; //std::cout << "A + B = " << A + B << std::endl; //for (unsigned int i = 0; i < A.rows(); ++i) { // for (unsigned int j = 0; j < A.cols() ++j) { // std::cout << "A[" << i << "][" << j << "] = " << A[i][j]; // } //} //const Matrix C(2, 3, -1.0); //std::cout << "A - B = " << A - B << std::endl; //std::cout << "A*C = " << A*C << std::endl; //const Vector u(2, 1.0); //std::cout << "A*u = " << A*u << std::endl; //std::cout << "det of A is " << A.det() << std::endl; } int main() { Matrix A(2, 3, 0.0); //for (unsigned int i = 0; i < A.rows(); j++) { // for (unsigned int j = 0; j < A.cols(); j++) { // A.set_entry(i, j, i+j); // } //} check_mat_as_const(A); //for (unsigned int i = 0; i < A.rows(); j++) { // Vector& row = A[i]; // for (unsigned int j = 0; j < row.size(); j++) { // row[j] = i; // } //} //const Matrix B(2, 3, 1.0); //A += B; //std::cout << A << std::endl; //(A += B) += B; //Matrix empty; //std::cout << "empty = " << empty << std::endl; //A.scal(2.5); //std::cout << "A = " << A << std::endl; //A *= 0.75; //std::cout << "A = " << A << std::endl; //A.axpy(B, 0.5); //std::cout << "A = " << A << std::endl; return 0; }