Programa para el testeo de las funciones.
Programa para el testeo de las funciones.Para compilar o código example_matrixmath_dsp.cpp:
g++ -static -o example_matrixmath_dsp example_matrixmath_dsp.cpp -lpdsramm
Para executar o programa:
Retornando por consola:
A.T():
1 -1 5 -1 1 2 -1
B.T():
1 2 3
A.Conv1D(B,1,Pds::Ra::Same).T():
1 6 6 14 1 6 4
A.Conv1D(B,1,Pds::Ra::Full).T():
1 1 6 6 14 1 6 4 -3
A.Conv1D(B,1,Pds::Ra::Valid).T():
6 6 14 1 6
Pds::Conv1DCh(Vetor,{B,B},1,Pds::Ra::Valid).T():
12 12 28 2 12
Pds::Conv1DCh(Sample,{B,B},1,Pds::Ra::Valid).T():
12 12 28 2 12
Código example_matrixmath_dsp.cpp:
#include <Pds/Ra>
int main(void)
{
R.
T().
Print(
"\nA.Conv1D(B,1,Pds::Ra::Same).T():\n");
R.
T().
Print(
"\nA.Conv1D(B,1,Pds::Ra::Full).T():\n");
R.
T().
Print(
"\nA.Conv1D(B,1,Pds::Ra::Valid).T():\n");
std::vector<Pds::Matrix> Sample={A,A};
std::vector<Pds::Vector> Vetor={A,A};
R.
T().
Print(
"\nPds::Conv1DCh(Vetor,{B,B},1,Pds::Ra::Valid).T():\n");
R.
T().
Print(
"\nPds::Conv1DCh(Sample,{B,B},1,Pds::Ra::Valid).T():\n");
return 0;
}
La clase tipo Pds::Vector . Esta clase genera una matriz de Nlin lineas y 1 columna....
Pds::Vector Conv1DCh(const std::vector< Pds::Vector > &A, const std::vector< Pds::Vector > &Kernel, unsigned int Strides=1, Pds::Ra::Padding Padding=Pds::Ra::Valid)
Calcula la convolución de todos los canales entre A y Kernel.
Pds::Matrix T(void) const
Transpuesta de si mismo (A), el resultado es cargado en B.
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.
Pds::Vector Conv1D(const Pds::Vector &B, unsigned int Stride=1, Pds::Ra::Padding Padding=Pds::Ra::Full) const
Calcula la convolución entre A y B.