Home | Develop | Download | Contact
test_matrix_operators_binary.cpp
1 
8 #include <iostream>
9 #include <Pds/Ra>
10 
11 int main(void)
12 {
13  Pds::Matrix A(2,2);
14  Pds::Matrix B(2,2);
15  Pds::Matrix B1(1,2,3);
16  Pds::Matrix C;
17  Pds::Vector V(2);
18  Pds::Matrix D(3,3);
19 
20 
21  A.Fill(3.0); std::cout<<"A:\n"<<A;
22  B.Fill(2.0); std::cout<<"B:\n"<<B;
23  V.Fill(1.0); std::cout<<"V:\n"<<V;
24  D.Fill(2.0); std::cout<<"D:\n"<<D;
25 
26  // + operator
27  std::cout<<std::endl;
28 
29  C=A.Add(B);
30  C.Print("A.Add(B)\n");
31 
32  C=A+B;
33  C.Print("A+B\n");
34 
35  C=2-A+5;
36  C.Print("2-A+5\n");
37 
38  // * operator
39  std::cout<<std::endl;
40 
41  C=A.Mul(B);
42  C.Print("A.Mul(B)\n");
43 
44  C=A.Mul(V);
45  C.Print("A.Mul(V)\n");
46 
47  Pds::Matrix F(4,3); F.Fill(1.0); std::cout<<"F:\n"<<F;
48  Pds::Matrix G(4,2); G.Fill(1.0); std::cout<<"G:\n"<<G;
49  C=F.TMul(G);
50  C.Print("F.TMul(G)\n");
51 
52  C=D.MulComp(-1,V);
53  C.Print("D.MulComp(-1,V)\n");
54 
55  C=A*B;
56  C.Print("A*B\n");
57 
58  // / operator
59  std::cout<<std::endl;
60 
61  C=A.Div(2);
62  C.Print("A.Div(2)\n");
63 
64  C=A/2;
65  C.Print("A/2\n");
66 
67  // Geq y Leq
68  C=Pds::MatrixId(4,4);
69  C.Print("\nC\n");
70 
71  C.Geq(8).Print("\nC.Geq(8)\n");
72 
73  C.Leq(8).Print("\nC.Leq(8)\n");
74 
75  A.Print("\nA\n");
76  B1.Print("B1\n");
77 
78  C=A.AddRowMatrix(B1);
79  C.Print("A.AddRowMatrix(B1)\n");
80 
81  C=A.SubRowMatrix(B1);
82  C.Print("A.SubRowMatrix(B1)\n");
83 
84  // (*) operator
85  std::cout<<std::endl;
86 
87  A.Print("\nA\n");
88  B.Print("B\n");
89 
90  C=B.Product(A.Product(B));
91  C.Print("B.Product(A.Product(B))\n");
92 
93  C=B&A&B;
94  C.Print("B&A&B\n");
95 
96  C=A.Div(B);
97  C.Print("A.Division(B)\n");
98 
99  C=A/B;
100  C.Print("A/B\n");
101 
102  C=A.Pow(B);
103  C.Print("A.Pow(B)\n");
104 
105  return 0;
106 }
La clase tipo Pds::Matrix . Esta clase genera una matriz de Nlin lineas y Ncol columnas....
Definition: Matrix.hpp:86
La clase tipo Pds::Vector . Esta clase genera una matriz de Nlin lineas y 1 columna....
Definition: Vector.hpp:78
Pds::Matrix MatrixId(unsigned int N)
Crea una matriz con datos correspondentes ao Id de cada elemento.
void Print(std::string str) const
Imprime en pantalla el contenido de la matriz después del texto indicado en str.
Pds::Matrix TMul(const Pds::Matrix &B) const
Multiplica con la transpuesta de sí mismo (A^T), la matriz B y el resultado es cargado en C....
Pds::Matrix Div(double b) const
[Elemento a elemento] Divide con sigo mismo (A), un valor b y el resultado es cargado en C....
Pds::Matrix MulComp(double b, const Pds::Vector &B) const
Multiplica con sigo mismo (A), un vector [b;B] y el resultado es cargado en C. Este método es similar...
Pds::Matrix SubRowMatrix(const Pds::Matrix &B) const
Resta con sigo mismo (A), una matriz B linea y el resultado es cargado en C. La unica linea de B es r...
Pds::Matrix Leq(double b) const
[Elemento a elemento] Calcula con sigo mismo (A), si (A) es menor que un valor b y el resultado es ca...
Pds::Matrix Mul(double b) const
Multiplica con sigo mismo (A), un valor b y el resultado es cargado en C. Este método es similar al o...
Pds::Matrix Geq(double b) const
[Elemento a elemento] Calcula con sigo mismo (A), si (A) es mayor que un valor b y el resultado es ca...
Pds::Matrix Pow(const Pds::Matrix &B) const
[Elemento a elemento]Potencia asi mismo (A), elemento a elemento, con una matriz B y el resultado es ...
Pds::Matrix AddRowMatrix(const Pds::Matrix &B) const
Suma con sigo mismo (A), una matriz B linea y el resultado es cargado en C. La unica linea de B es su...
Pds::Matrix Product(const Pds::Matrix &B) const
[Elemento a elemento] Multiplica con sigo mismo (A), elemento a elemento, una matriz B y el resultado...
Pds::Matrix Add(double b) const
[Elemento a elemento] Suma con sigo mismo (A), una valor b y el resultado es cargado en C....

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed