#include "common_defs.h"
#include "Matrix.h"
Include dependency graph for main_Matrix.cpp:
Go to the source code of this file.
Functions | |
int | main () |
|
Definition at line 12 of file main_Matrix.cpp. References Matrix::column(), Matrix::line(), and Matrix::transpose(). 00013 { 00014 cout << boolalpha; 00015 00016 MSG(Constructors); 00017 00018 Matrix mat0; 00019 Matrix mat1(5, 5, 1.5); 00020 OUT(mat0); 00021 OUT(mat1); 00022 OUT(mat1 == mat0); 00023 00024 MSG(Assignments); 00025 00026 EXEC(mat0 = mat1); 00027 OUT(mat0); 00028 OUT(mat1 == mat0); 00029 OUT(mat1 += mat1); 00030 OUT(mat1 -= mat1); 00031 OUT(mat0 *= mat0); 00032 00033 MSG (Arithmetic operations); 00034 00035 OUT(mat0 + mat0); 00036 OUT(mat0 - mat0); 00037 OUT(mat0 * mat0); 00038 00039 try 00040 { 00041 Matrix mat(10, 10); 00042 OUT(mat0 + mat); 00043 } 00044 catch (Matrix::Bad_Dimensions) 00045 { 00046 cerr << "*** Bad dimensions" << endl; 00047 } 00048 00049 try 00050 { 00051 Matrix mat(5, 10, 3.0); 00052 OUT(mat0 * mat); 00053 OUT(mat0 * mat.transpose()); 00054 } 00055 catch (Matrix::Bad_Dimensions) 00056 { 00057 cerr << "*** Bad dimensions" << endl; 00058 } 00059 00060 MSG (Subscript and transpose); 00061 00062 Matrix mat2(3, 4); 00063 for (int i = 0; i < 3; ++i) 00064 for (int j = 0; j < 4; ++j) 00065 mat2[i][j] = i; 00066 OUT(mat2); 00067 OUT(mat2.transpose()); 00068 OUT(~mat2); 00069 EXEC(mat2(0, 0) = 2.75); 00070 OUT(mat2(0, 0)); 00071 00072 MSG(Conversion between Matrices and MVectors); 00073 00074 OUT(mat2.line(1)); 00075 OUT(mat2.transpose().column(1)); 00076 00077 MVector mv(5, 2.5); 00078 Matrix mat3 = mv; 00079 OUT(mat3); 00080 OUT(mat3.transpose()); 00081 00082 EXEC(mv = mat3); 00083 OUT(mv); 00084 OUT(static_cast<MVector>(mv)); 00085 00086 return 0; 00087 }
Here is the call graph for this function: ![]() |