Home | Develop | Download | Contact
example_matrix_static_matrix.cpp
1
86#include <Pds/Ra>
87
88int main(void)
89{
90 char filepath[]="filedat.txt";
91
93 Pds::Matrix B=2*Pds::Ones(3);
94 Pds::Matrix C(3,3);
95 C.FillId();
96 C.Print("C:\n");
97
98 bool state=A.Save(filepath);
99 if(state==true) A.Print("A:\n");
100
101 Pds::Matrix D;
102 D.Load(filepath);
103 D.Print("D:\n");
104
105 std::vector<Pds::Matrix> Block(3);
106 Block[0]=A; Block[1]=B; Block[2]=C;
107 Pds::Matrix::GetSamples(Block).Print("Pds::Matrix::GetSamples(Block)\n");
108 Pds::Matrix::GetSamples(Block,{1,5,3}).Print("Pds::Matrix::GetSamples(Block,{1,5,3})\n");
109
111 std::cout<<"Pds::Matrix::IsSampleBlock(Block) == true\n";
112 else
113 std::cout<<"Pds::Matrix::IsSampleBlock(Block) == false\n";
114
115 Pds::Matrix E=Pds::Matrix::FromString("1 2 3\n 4 5 6\n\n");
116 E.Print("E:\n");
117
118 std::cout<<std::endl;
119
120 std::vector<Pds::Matrix> W;
121
123 W[0].Print("W[0]:\n");
124 W[1].Print("W[1]:\n");
125
127 W[0].Print("W[0]:\n");
128 W[1].Print("W[1]:\n");
129
130 Pds::Matrix::FlattenSampleBlock(W).T().Print("\nFlattenSampleBlock(W).T():\n");
131
132 std::cout<<std::endl;
133
134 std::vector<std::vector<Pds::Matrix>> T;
136 T[0][0].Print("T[0][0]:\n");
137 T[0][1].Print("T[0][1]:\n");
138 T[1][0].Print("T[1][0]:\n");
139 T[1][1].Print("T[1][1]:\n");
141 T[0][0].Print("T[0][0]:\n");
142 T[0][1].Print("T[0][1]:\n");
143 T[1][0].Print("T[1][0]:\n");
144 T[1][1].Print("T[1][1]:\n");
145
146 std::cout<<"Pds::Matrix::IsBatchBlock(T):"<<Pds::Matrix::IsBatchBlock(T)<<"\n";
147
148 T[0][0].MakeEmpty();
149 std::cout<<"Pds::Matrix::IsBatchBlock(T):"<<Pds::Matrix::IsBatchBlock(T)<<"\n";
150
151 return 0;
152}
La clase tipo Pds::Matrix . Esta clase genera una matriz de Nlin lineas y Ncol columnas....
Definition: Matrix.hpp:96
La clase tipo Pds::Size . Esta clase genera un objeto con dos parametros Nlin y Ncol....
Definition: Size.hpp:57
Pds::Matrix Ones(const Pds::Size &S)
Retorna una matriz con unos.
bool Load(const std::string &filepath)
Lee desde un archivo una matriz de Nlin lineas y Ncol columnas.
static Pds::Matrix GetSamples(const std::vector< Pds::Matrix > &Block)
Convierte las muestras de un bloque (std::vector<Pds::Matrix>) de N matrices (Pds::Matrix) de L eleme...
static bool IsSampleBlock(const std::vector< Pds::Matrix > &Block)
Verifica que el bloque (std::vector<Pds::Matrix>) sea un vector no vacío de matrices no nulas y simil...
static std::vector< Pds::Matrix > ZerosSampleBlock(unsigned int N, const Pds::Size &Sz)
Crea un bloque (std::vector<Pds::Matrix>) con matrices no nulas y similares inicializadas con Pds::Ze...
Pds::Matrix T(void) const
Transpuesta de si mismo (A), el resultado es cargado en B.
static bool IsBatchBlock(const std::vector< std::vector< Pds::Matrix > > &Tensor)
Verifica que el tensor (std::vector<std::vector<Pds::Matrix>>) sea un vector de vectores no vacíos de...
bool Save(const std::string &filepath) const
Escribe en un archivo de texto el contenido de la matriz.
static Pds::Vector FlattenSampleBlock(const std::vector< Pds::Matrix > &Block)
Convierte a Pds::vector un SampleBlock.
static std::vector< std::vector< Pds::Matrix > > ZerosBatchBlock(unsigned int L, unsigned int N, const Pds::Size &Sz)
Crea un tensor (std::vector<std::vector<Pds::Matrix>>) con matrices no nulas y similares inicializada...
static std::vector< std::vector< Pds::Matrix > > RandNBatchBlock(unsigned int L, unsigned int N, const Pds::Size &Sz)
Crea un tensor (std::vector<std::vector<Pds::Matrix>>) con matrices no nulas y similares inicializada...
static Pds::Matrix FromString(const std::string &str)
Convierte un sdt::string a una Matriz de Nlin lineas y Ncol columnas.
static std::vector< Pds::Matrix > RandNSampleBlock(unsigned int N, const Pds::Size &Sz)
Crea un bloque (std::vector<Pds::Matrix>) con matrices no nulas y similares inicializadas con Pds::Ra...
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