Home | Develop | Download | Contact
example_matrix_algebra.cpp

Programa para el testeo de las funciones.

Programa para el testeo de las funciones.Para compilar o código example_matrix_algebra.cpp:

g++ -static -o example_matrix_algebra example_matrix_algebra.cpp -lpdsramm

Para executar o programa:

./example_matrix_algebra

Retornando por consola:


A:
1  2  1  
1  -2 1  
1  1  2  

ID.T():
1 3 2 

V=A.MultiIndex(ID) :
8  
-8 
4  
A.Det():        -4

A:
1  2  1  
1  -2 1  
1  1  2  
A.MultipleMse(Block):
0.33333333333333 0.33333333333333 0.33333333333333 0.33333333333333 
3                3                3                3                
0.33333333333333 0.33333333333333 0.33333333333333 0.33333333333333 

A:
1  2  1  
1  -2 1  
1  1  2  

A:
0.40824829046386  0.81649658092773  0.40824829046386  
0.40824829046386  -0.81649658092773 0.40824829046386  
0.40824829046386  0.40824829046386  0.81649658092773  

B:
0.00109512  -0.00027612 
-0.00027612 6.962e-05   
B.Det():        1.4841643539154e-23
B.Det():        1.3234889800848e-23

Código example_matrix_algebra.cpp:

#include <cmath>
#include <Pds/Ra>
int main(void)
{
Pds::Matrix A("1 2 1\n1 -2 1\n1 1 2");
std::vector<Pds::Matrix> Block(3);
Block[0]=Pds::Ones(2,2);
Block[1]=Pds::Ones(2,2);
Block[2]=Pds::Ones(2,2);
A.Print("\nA:\n");
Pds::Vector ID({1,3,2});
ID.T().Print("\nID.T():\n");
V.Print("\nV=A.MultiIndex(ID) :\n");
std::cout<<"A.Det():\t"<<A.Det()<<std::endl;
A.Print("\nA:\n");
A.IdInMultipleMse(Block).Print("A.IdInMultipleMse(Block):\n");
A.Print("\nA:\n");
A.Print("\nA:\n");
Pds::Matrix B("0.00109512 -0.00027612\n-0.00027612 6.962e-05");
B.Print("\nB:\n");
std::cout<<"B.Det():\t"<<B.Det()<<std::endl;
std::cout<<"B.Det():\t"<<B.Get(0)*B.Get(3)-B.Get(1)*B.Get(2)<<std::endl;
return 0;
}
La clase tipo Pds::Matrix . Esta clase genera una matriz de Nlin lineas y Ncol columnas....
Definition: Matrix.hpp:96
La clase tipo Pds::Vector . Esta clase genera una matriz de Nlin lineas y 1 columna....
Definition: Vector.hpp:80
Pds::Matrix Ones(const Pds::Size &S)
Retorna una matriz con unos.
Pds::Vector MultiIndex(const Pds::Vector &d) const
Dada una matriz es calculado el vector .
Pds::Matrix T(void) const
Transpuesta de si mismo (A), el resultado es cargado en B.
double Get(unsigned int id) const
Retorna el valor en la posición del índice id, hace una verificación si la posición existe.
double Det(void) const
Calcula la determinante.
bool NormalizeRows(void)
Normaliza cada linea de la matriz convirtiendolo en una linea unitaria.
Pds::Array< unsigned int > IdInMultipleMse(const Pds::Matrix &X) const
Calcula que linea de es mas cercana a cada linea de .
void Print(const std::string &str, unsigned int precision) const
Imprime en pantalla el contenido de la matriz después del texto indicado en str.

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed