Funciones que usan Pds::Vector, Ejemplo: Pds::PolyMat(), Pds::PolyFit(), Pds::PolyVal(), etc. Más...
Namespaces | |
namespace | Pds |
Nombre de espacio para Pds (Procesamiento Digital de Senales) | |
funciones de fitting | |
Descripción de algunas funciones que usan Pds::Vector. | |
Pds::Vector | Pds::PolyFit (const Pds::Vector &X, const Pds::Vector &Y, unsigned int N) |
Retorna Un polinomio de grado N con el menor error cuadrático medio para el par X e Y. Más... | |
funciones básicas | |
Descripción de algunas funciones que usan Pds::Vector. | |
Pds::Matrix | Pds::PolyMat (const Pds::Vector &X, unsigned int N) |
Retorna la Matriz de Vandermonde del vector X de M elementos. Más... | |
Pds::Matrix | Pds::PolyMat (double x, unsigned int N) |
Retorna la Matriz de Vandermonde del vector X de M elementos. Más... | |
Pds::Vector | Pds::PolyVal (const Pds::Vector &P, const Pds::Vector &X) |
Retorna El resultado de evaluar un polinomio P de grado N. Más... | |
Pds::Matrix | Pds::PolyVal (const Pds::Vector &P, const Pds::Matrix &X) |
Retorna El resultado de evaluar un polinomio P de grado N. Más... | |
double | Pds::PolyVal (const Pds::Vector &P, double x) |
Retorna El resultado de evaluar un polinomio P de grado N. Más... | |
funciones relativas al calculo | |
Descripción de algunas funciones que usan Pds::Vector. | |
Pds::Vector | Pds::PolyDer (const Pds::Vector &P, unsigned int N=1) |
Retorna la derivada D del polinomio P(x). Más... | |
funciones aritméticas | |
Descripción de algunas funciones que usan Pds::Vector. | |
Pds::Vector | Pds::PolyMul (const Pds::Vector &P, const Pds::Vector &Q) |
Retorna la multiplicación de los polinomio P(x) e Q(x). Más... | |
Pds::Vector | Pds::PolyAdd (const Pds::Vector &P, const Pds::Vector &Q) |
Retorna la suma de los polinomio P(x) e Q(x). Más... | |
bool | Pds::PolyAcc (Pds::Vector &Acc, const Pds::Vector &P) |
Retorna la suma de los polinomio Acc(x) e P(x). Más... | |
Pds::Vector | Pds::PolyPoly (const Pds::Vector &P, const Pds::Vector &Q) |
Dados los polinomios P(x) y P(x), la función retorna la evaluación de P(Q(x)). Más... | |
Funciones que usan Pds::Vector, Ejemplo: Pds::PolyMat(), Pds::PolyFit(), Pds::PolyVal(), etc.
Estas funciones trabajan con una matriz de la forma.
Informacion adicional puede ser encontrada en [5]
Pds::Vector Pds::PolyFit | ( | const Pds::Vector & | X, |
const Pds::Vector & | Y, | ||
unsigned int | N | ||
) |
Retorna Un polinomio de grado N con el menor error cuadrático medio para el par X e Y.
unsigned int L=100;
Pds::Vector X=Pds::LinSpace(0,1,L);
Pds::Vector Y=Pds::Pow(X,2)+0.05*Pds::RandN(L,1);
Pds::Vector P=Pds::PolyFit(X,Y,2);
P.T().Print("P.T():\n");
La salida sería:
P.T(): -0.0053770932721563 0.017219023067994 0.98828000248775
Pds::Matrix Pds::PolyMat | ( | const Pds::Vector & | X, |
unsigned int | N | ||
) |
Retorna la Matriz de Vandermonde del vector X de M elementos.
Pds::Vector X="1\n 2\n -1\n 3";
Pds::Matrix M=Pds::PolyMat(X,3);
M.Print("M:\n");
La salida sería:
M: 1 1 1 1 1 2 4 8 1 -1 1 -1 1 3 9 27
[in] | X | Vector a evaluar. |
[in] | N | Orden del polinomio. |
Pds::Matrix Pds::PolyMat | ( | double | x, |
unsigned int | N | ||
) |
Retorna la Matriz de Vandermonde del vector X de M elementos.
double x=-2;
Pds::Matrix M=Pds::PolyMat(x,3);
M.Print("M:\n");
La salida sería:
M: 1 -2 4 -8
[in] | x | Valor a evaluar. |
[in] | N | Orden del polinomio. |
Pds::Vector Pds::PolyVal | ( | const Pds::Vector & | P, |
const Pds::Vector & | X | ||
) |
Retorna El resultado de evaluar un polinomio P de grado N.
Pds::Vector P="1 0 1";
Pds::Vector X="1 -1 2 -2";
Pds::Vector V=Pds::PolyVal(P,X);
V.T().Print("V.T():\n");
La salida sería:
V.T(): 2 2 5 5
[in] | P | Polinomio a evaluar. |
[in] | X | Vector a evaluar. |
Pds::Matrix Pds::PolyVal | ( | const Pds::Vector & | P, |
const Pds::Matrix & | X | ||
) |
Retorna El resultado de evaluar un polinomio P de grado N.
Pds::Vector P="1 0 1";
Pds::Matrix X= "0 1 2\n"
"3 4 5\n"
"6 7 8";
Pds::Matrix A=Pds::PolyVal(P,X);
A.Print("A:\n");
La salida sería:
A: 1 2 5 10 17 26 37 50 65
[in] | P | Polinomio a evaluar. |
[in] | X | Matriz a evaluar. |
double Pds::PolyVal | ( | const Pds::Vector & | P, |
double | x | ||
) |
Retorna El resultado de evaluar un polinomio P de grado N.
Pds::Vector P="1 0 1";
double x= -2;
double a=Pds::PolyVal(P,x);
std::cout<<a<<"\n";
La salida sería:
5
[in] | P | Polinomio a evaluar. |
[in] | x | Variable a avaliar. |
Pds::Vector Pds::PolyDer | ( | const Pds::Vector & | P, |
unsigned int | N = 1 |
||
) |
Retorna la derivada D del polinomio P(x).
Pds::Vector P="1 0 1";
Pds::Vector D=Pds::PolyDer(P,1);
D.T().Print("D.T():\t");
La salida sería:
D.T(): 0 2
[in] | P | Polinomio a evaluar. |
[in] | N | Orden de la derivada, por defecto es la primera derivada. |
Pds::Vector Pds::PolyMul | ( | const Pds::Vector & | P, |
const Pds::Vector & | Q | ||
) |
Retorna la multiplicación de los polinomio P(x) e Q(x).
Pds::Vector P1="1 1";
Pds::Vector P2="1 2 1";
Pds::Vector D=Pds::PolyMul(P1,P2);
D.T().Print("D.T():\t");
La salida sería:
D.T(): 1 3 3 1
[in] | P | Polinomio a multiplicar. |
[in] | Q | Polinomio a multiplicar. |
Pds::Vector Pds::PolyAdd | ( | const Pds::Vector & | P, |
const Pds::Vector & | Q | ||
) |
Retorna la suma de los polinomio P(x) e Q(x).
Pds::Vector P1="1 1";
Pds::Vector P2="1 2 1";
Pds::Vector D=Pds::PolyAdd(P1,P2);
D.T().Print("D.T():\t");
La salida sería:
D.T(): 2 3 1
[in] | P | Polinomio a sumar. |
[in] | Q | Polinomio a sumar. |
bool Pds::PolyAcc | ( | Pds::Vector & | Acc, |
const Pds::Vector & | P | ||
) |
Retorna la suma de los polinomio Acc(x) e P(x).
Pds::Vector Acc;
Pds::PolyAcc(Acc,"1 2 1");
Acc.T().Print("Acc.T():\t");
La salida sería:
Acc.T(): 1 2 1
[out] | Acc | Polinomio acumulador. Si el tamaño de es mayor que el tamaño de entonces la función no reserva nueva memoria, caso contraio el acumulador si reorganiza su memoria. |
[in] | P | Polinomio a sumar. |
Pds::Vector Pds::PolyPoly | ( | const Pds::Vector & | P, |
const Pds::Vector & | Q | ||
) |
Dados los polinomios P(x) y P(x), la función retorna la evaluación de P(Q(x)).
Pds::Vector P="1 1 1";
Pds::Vector Q="1 -2";
Pds::Vector D=Pds::PolyPoly(P,Q);
D.T().Print("D.T():\t");
La salida sería:
D.T(): 3 -6 4
[in] | P | Polinomio a evaluar. |
[in] | Q | Polinomio a evaluar. |