Home | Develop | Download | Contact
Namespaces
Funciones Pds::Matrix – Math

Funciones que usan Pds::Matrix, Ejemplo: Pds::Sin(), Pds::Cos(), Pds::Exp(), Pds::Sqrt, etc. Más...

Namespaces

namespace  Pds
 Nombre de espacion para PDS (Procesamiento Digital de Senales)
 

Funciones trigonometricas

Descripcion de algunas funciones matematicas que usan Pds::Matrix.

Pds::Matrix Pds::Sin (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion seno.
Más...
 
Pds::Matrix Pds::Cos (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion coseno.
Más...
 
Pds::Matrix Pds::Tan (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion tangente.
Más...
 

Funciones exponencial

Descripcion de algunas funciones matematicas que usan Pds::Matrix.

Pds::Matrix Pds::Exp (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion exponente.
Más...
 
Pds::Matrix Pds::TwoExp (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion exponente de 2.
Más...
 
Pds::Matrix Pds::Log (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion logaritmo natural. Más...
 
Pds::Matrix Pds::Ln (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion logaritmo natural. Más...
 
Pds::Matrix Pds::Log2 (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion logaritmo de base 2. Más...
 
Pds::Matrix Pds::Log10 (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion logaritmo de base 10. Más...
 

Funciones de potencia

Descripcion de algunas funciones matematicas que usan Pds::Matrix.

Pds::Matrix Pds::Sqrt (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion raiz cuadrada. Más...
 
Pds::Matrix Pds::Pow (const Pds::Matrix &A, double var)
 Retorna el resultado de evaluar elemento a elemento la funcion pow. Más...
 
Pds::Matrix Pds::Pow (const Pds::Matrix &A, const Pds::Matrix &B)
 Retorna el resultado de evaluar elemento a elemento la funcion pow. Más...
 
Pds::Matrix Pds::Atan2 (const Pds::Matrix &A, const Pds::Matrix &B)
 Retorna el resultado de evaluar elemento a elemento la funcion atan2. Más...
 

Funciones Estadisticas

Descripcion de algunas funciones matematicas que usan Pds::Matrix.

double Pds::Var (const Pds::Matrix &A, double *mean)
 Calcula el valor de la varianza de la matriz A. Más...
 
double Pds::Var (const Pds::Matrix &A)
 Calcula el valor de la varianza de la matriz A. Más...
 
double Pds::Mean (const Pds::Matrix &A)
 Calcula el valor medio de los elementos de la matriz A. Más...
 
double Pds::Sum (const Pds::Matrix &A)
 Calcula el valor de la suma de los elementos de la matriz A. Más...
 
double Pds::Accuracy (const Pds::Matrix &A, const Pds::Matrix &B, double Umbral=0.5)
 Calcula el valor de la Accuracy entre los elementos de las matrices A y B. A>Umbral, B>Umbral. Más...
 
double Pds::MeanAbsoluteError (const Pds::Matrix &A, const Pds::Matrix &B)
 Calcula el valor del error absoluto medio. Más...
 

Funciones de álgebra lineal

Descripcion de algunas funciones matematicas que usan Pds::Matrix.

double Pds::Det (const Pds::Matrix &A)
 Calcula el valor de la detrminante de una matriz. Más...
 
double Pds::Rms (const Pds::Matrix &A)
 Calcula el valor raiz quadrático medio de una matriz. Más...
 
double Pds::MeanAbsolute (const Pds::Matrix &A)
 Calcula el valor absoluto medio de una matriz. Más...
 
double Pds::MeanSquare (const Pds::Matrix &A)
 Calcula el valor quadrático medio de una matriz. Más...
 
double Pds::SumSquare (const Pds::Matrix &A)
 Calcula el valor de la suma quadrática de una matriz. Más...
 
double Pds::Norm (const Pds::Matrix &A)
 Calcula el valor dela norma (Frobenius) de una matriz. Más...
 

Funciones de activación

Descripcion de algunas funciones matematicas que usan Pds::Matrix.

double Pds::SQNL (double x)
 Retorna el resultado de evaluar la funcion SQNL. Más...
 
Pds::Matrix Pds::SQNL (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion SQNL. Más...
 
double Pds::Gaussian (double x)
 Retorna el resultado de evaluar la funcion gaussiana. Más...
 
Pds::Matrix Pds::Gaussian (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion gaussiana. Más...
 
Pds::Matrix Pds::Tanh (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion tangente hiperbólico. Más...
 
double Pds::Tanh (double x)
 Retorna el resultado de evaluar la funcion tangente hiperbólico. Más...
 
double Pds::DTanh (double x)
 Retorna el resultado de evaluar la derivada de la funcion tangente hiperbólico. Más...
 
double Pds::Sigmoid (double x)
 Retorna el resultado de evaluar elemento a elemento la funcion sigmoid. Más...
 
Pds::Matrix Pds::Sigmoid (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion sigmoid. Más...
 
double Pds::DSigmoid (double x)
 Retorna el resultado de evaluar elemento a elemento la derivada de la funcion sigmoid. Más...
 

Funcione de analisis combinatorio

Descripcion de algunas funciones matematicas que usan Pds::Matrix.

unsigned int Pds::Factorial (unsigned int n)
 Evalúa factorial de n, igual a n!. Más...
 
unsigned int Pds::NchooseK (unsigned int n, unsigned int k)
 Retorna el combinatorio (n,k) Más...
 
unsigned int Pds::NmultichooseK (unsigned int n, unsigned int k)
 Retorna el combinatorio (n,k) Más...
 

Funciones de aredondamento a enteros

Descripcion de algunas funciones matematicas que usan Pds::Matrix.

double Pds::UnitStep (double x)
 Retorna el resultado de evaluar la funcion UnitStep(). Más...
 
Pds::Matrix Pds::UnitStep (const Pds::Matrix &A)
 Retorna el resultado de evaluar la funcion UnitStep(). Más...
 
double Pds::UnitRamp (double x)
 Retorna el resultado de evaluar la funcion UnitRamp(). Más...
 
Pds::Matrix Pds::UnitRamp (const Pds::Matrix &A)
 Retorna el resultado de evaluar la funcion UnitRamp(). Más...
 
double Pds::Sign (double x)
 Retorna el resultado de evaluar la funcion Sign. Más...
 
Pds::Matrix Pds::Sign (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion Sign. Más...
 
Pds::Matrix Pds::Round (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion round.
Más...
 

Funciones de teoria de la informacion

Descripcion de algunas funciones matematicas que usan Pds::Matrix.

double Pds::InformationGain (const Pds::Matrix &B, const std::vector< Pds::Matrix > &A, double Umbral=0.5)
 Retorna el Information Gain entre si mismo B y {A[0],A[1],...,A[N-1]}. Antes de comprarar las matrices se binarizan con el umbral Umbral. A[n]>Umbral, B>Umbral. Más...
 
double Pds::Hb (double x)
 Retorna el resultado de evaluar la funcion Entropia binária. Más...
 
Pds::Matrix Pds::Hb (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion Entropia binária. Más...
 
double Pds::HbInv (double h)
 Retorna el valor $p$ de la función de entropía binaria para un valor de $h\approx h_b(p)$. Más...
 
Pds::Matrix Pds::HbInv (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion inversa de la Entropia binária. Más...
 

Funciones varias

Descripcion de algunas funciones matematicas que usan Pds::Matrix.

Pds::Matrix Pds::Abs (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion valor absoluto.
Más...
 
double Pds::Logit (double x)
 Retorna el resultado de evaluar la funcion logit. Más...
 
Pds::Matrix Pds::Logit (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion logit. Más...
 
double Pds::Sinc (double x)
 Retorna el resultado de evaluar la funcion sinc. Más...
 
Pds::Matrix Pds::Sinc (const Pds::Matrix &A)
 Retorna el resultado de evaluar elemento a elemento la funcion sinc. Más...
 

Funciones de integración

Descripcion de algunas funciones matematicas que usan Pds::Matrix.

double Pds::SimpsonIntegration (double(*f)(double), double a, double b, unsigned int n)
 Evalúa la integral de a-->b de la función f(x), aplicando la regla de Simpson con n divisiones, si n no es par internamente la función hace n=n+1. Más...
 
double Pds::SimpsonIntegration (double(*f)(double, double), double r, double a, double b, unsigned int n)
 Evalúa la integral de a-->b de la función f(x,r), aplicando la regla de Simpson con n divisiones, si n no es par internamente la función hace n=n+1. Más...
 
double Pds::ImproperIntegration (double(*f)(double), double a, unsigned int n)
 Evalúa la integral de a-->infinito de la función f(x), aplicando el cambio de variable u<–1/(x+1) para integrar de 0-->1/(a+1) y ejecutar luego la regla de Simpson con n divisiones, si n no es par internamente la función hace n=n+1. Además es necesario que el limite de f(1/u-1)/u^2-->0 cuando u-->0. Más...
 
double Pds::ImproperIntegration (double(*f)(double, double), double r, double a, unsigned int n)
 Evalúa la integral de a-->infinito de la función f(x,r) en x, aplicando el cambio de variable u<–1/(x+1) para integrar de 0-->1/(a+1) y ejecutar luego la regla de Simpson con n divisiones, si n no es par internamente la función hace n=n+1. Además es necesario que el limite de f(1/u-1,r)/u^2-->0 cuando u-->0. Más...
 

Descripción detallada

Funciones que usan Pds::Matrix, Ejemplo: Pds::Sin(), Pds::Cos(), Pds::Exp(), Pds::Sqrt, etc.

#include <Pds/MathMatrix>


Estas funciones trabajan con una matriz de la forma.

\[ \mathbf{A}=\left(\begin{matrix} a_{00} & a_{01} & \cdots & a_{0(Ncol-1)}\\ a_{10} & a_{11} & \cdots & a_{1(Ncol-1)}\\ \vdots & \vdots & \vdots & \vdots \\ a_{(Nlin-2)0} & a_{(Nlin-2)1} & \cdots & a_{(Nlin-2)(Ncol-1)}\\ a_{(Nlin-1)0} & a_{(Nlin-1)1} & \cdots & a_{(Nlin-1)(Ncol-1)}\\ \end{matrix}\right) \]

\[ A\equiv [a_{i,j}] \]

nlin es el número de lineas y ncol es el número de columnas.

Informacion adicional puede ser encontrada en [1]

Documentación de las funciones

◆ Sin()

Pds::Matrix Pds::Sin ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion seno.

\[ sin(A) \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ Cos()

Pds::Matrix Pds::Cos ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion coseno.

\[ cos(A) \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ Tan()

Pds::Matrix Pds::Tan ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion tangente.

\[ tan(A) \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ Exp()

Pds::Matrix Pds::Exp ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion exponente.

\[ e^A \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ TwoExp()

Pds::Matrix Pds::TwoExp ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion exponente de 2.

\[ 2^A \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ Log()

Pds::Matrix Pds::Log ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion logaritmo natural.

\[ ln(A) \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()
Pds::Ln()

◆ Ln()

Pds::Matrix Pds::Ln ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion logaritmo natural.

\[ ln(A) \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()
Pds::Log()

◆ Log2()

Pds::Matrix Pds::Log2 ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion logaritmo de base 2.

\[ log_2(A) \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ Log10()

Pds::Matrix Pds::Log10 ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion logaritmo de base 10.

\[ log_{10}(A) \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ Sqrt()

Pds::Matrix Pds::Sqrt ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion raiz cuadrada.

\[ \sqrt{A} \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ Pow() [1/2]

Pds::Matrix Pds::Pow ( const Pds::Matrix A,
double  var 
)

Retorna el resultado de evaluar elemento a elemento la funcion pow.

\[ A^{var} \equiv pow(A,var) \]

Parámetros
[in]ALa matriz a evaluar
[in]varLa variable a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()
Ejemplos
example_vector_poly.cpp.

◆ Pow() [2/2]

Pds::Matrix Pds::Pow ( const Pds::Matrix A,
const Pds::Matrix B 
)

Retorna el resultado de evaluar elemento a elemento la funcion pow.

\[ A^B \equiv pow(A,B) \]

Parámetros
[in]ALa matriz a evaluar
[in]BLa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ Atan2()

Pds::Matrix Pds::Atan2 ( const Pds::Matrix A,
const Pds::Matrix B 
)

Retorna el resultado de evaluar elemento a elemento la funcion atan2.

\[ atan2(A,B) \]

Parámetros
[in]ALa matriz a evaluar
[in]BLa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ Var() [1/2]

double Pds::Var ( const Pds::Matrix A,
double *  mean 
)

Calcula el valor de la varianza de la matriz A.

Parámetros
[in]AMatriz a procesar.
[in]meanValor medio de los elelento de la Matriz A.
Devuelve
Retorna el valor de la varianza de la matriz. En caso de que la matriz sea vacía se retorna Pds::Ra::Nan.

◆ Var() [2/2]

double Pds::Var ( const Pds::Matrix A)

Calcula el valor de la varianza de la matriz A.

Parámetros
[in]AMatriz a procesar.
Devuelve
Retorna el valor de la varianza de la matriz. En caso de que la matriz sea vacía se retorna Pds::Ra::Nan.

◆ Mean()

double Pds::Mean ( const Pds::Matrix A)

Calcula el valor medio de los elementos de la matriz A.

Parámetros
[in]AMatriz a procesar.
Devuelve
Retorna el valor medio de los elementos de la matriz. En caso de que la matriz sea vacía se retorna Pds::Ra::Nan.

◆ Sum()

double Pds::Sum ( const Pds::Matrix A)

Calcula el valor de la suma de los elementos de la matriz A.

Parámetros
[in]AMatriz a procesar.
Devuelve
Retorna el valor de la suma de los elementos de la matriz. En caso de que la matriz sea vacía se retorna Pds::Ra::Nan.

◆ Accuracy()

double Pds::Accuracy ( const Pds::Matrix A,
const Pds::Matrix B,
double  Umbral = 0.5 
)

Calcula el valor de la Accuracy entre los elementos de las matrices A y B. A>Umbral, B>Umbral.

\[Accuracy=\frac{TP+TN}{TP+TN+FP+FN}=\frac{Number~of~A==B}{Number~of~elements~in~A}\]

TP=True positive TN=True negative FP=False positive FN=False negative

Parámetros
[in]AMatriz a procesar.
[in]BMatriz a procesar.
[in]UmbralUmbral de binarización.
Devuelve
Retorna el valor de la Accuracy entre los elementos de las matrices A y B. En caso de que la matriz sea vacía se retorna Pds::Ra::Nan.

◆ MeanAbsoluteError()

double Pds::MeanAbsoluteError ( const Pds::Matrix A,
const Pds::Matrix B 
)

Calcula el valor del error absoluto medio.

\[ Pds::MeanAbsoluteError(A,B)=\frac{1}{Nlin~Ncol}\sum \limits_{i}^{Nlin} \sum \limits_{j}^{Ncol} {|a_{ij}-b_{ij}|} \]

Parámetros
[in]AMatriz a procesar.
[in]BMatriz a procesar.
Devuelve
Retorna el valor del error absoluto medio. En caso de que la matriz sea vacía se retorna Pds::Ra::Nan.

◆ Det()

double Pds::Det ( const Pds::Matrix A)

Calcula el valor de la detrminante de una matriz.

\[ Pds::Det(A)=|A| \]

Devuelve
Retorna el valor de la determinante. En caso de que la matriz sea vacía se retorna Pds::Ra::Nan.

◆ Rms()

double Pds::Rms ( const Pds::Matrix A)

Calcula el valor raiz quadrático medio de una matriz.

\[ Pds::Rms(A)=\sqrt{\frac{1}{Nlin~Ncol}\sum \limits_{i}^{Nlin} \sum \limits_{j}^{Ncol} {|a_{ij}|}^2} \]

Devuelve
Retorna el valor raiz cuadrático medio. En caso de que la matriz sea vacía se retorna Pds::Ra::Nan.

◆ MeanAbsolute()

double Pds::MeanAbsolute ( const Pds::Matrix A)

Calcula el valor absoluto medio de una matriz.

\[ Pds::MeanSquare(A)=\frac{1}{Nlin~Ncol}\sum \limits_{i}^{Nlin} \sum \limits_{j}^{Ncol} {|a_{ij}|} \]

Devuelve
Retorna el valor absoluto medio. En caso de que la matriz sea vacía se retorna Pds::Ra::Nan.

◆ MeanSquare()

double Pds::MeanSquare ( const Pds::Matrix A)

Calcula el valor quadrático medio de una matriz.

\[ Pds::MeanSquare(A)=\frac{1}{Nlin~Ncol}\sum \limits_{i}^{Nlin} \sum \limits_{j}^{Ncol} {|a_{ij}|}^2 \]

Devuelve
Retorna el valor cuadrático medio. En caso de que la matriz sea vacía se retorna Pds::Ra::Nan.

◆ SumSquare()

double Pds::SumSquare ( const Pds::Matrix A)

Calcula el valor de la suma quadrática de una matriz.

\[ Pds::SumSquare(A)=\sum \limits_{i}^{Nlin} \sum \limits_{j}^{Ncol} {|a_{ij}|}^2 \]

Devuelve
Retorna el valor de la suma cuadrática. En caso de que la matriz sea vacía se retorna Pds::Ra::Nan.

◆ Norm()

double Pds::Norm ( const Pds::Matrix A)

Calcula el valor dela norma (Frobenius) de una matriz.

\[ Pds::Norm(A)=\sqrt{\sum \limits_{i}^{Nlin} \sum \limits_{j}^{Ncol} {|a_{ij}|}^2} \]

Devuelve
Retorna el valor de la norma de Frobenius. En caso de que la matriz sea vacía se retorna Pds::Ra::Nan.

◆ SQNL() [1/2]

double Pds::SQNL ( double  x)

Retorna el resultado de evaluar la funcion SQNL.

\[ sqnl(x)=+1 \quad if(2<x)\]

\[ sqnl(x)=x-\frac{x^2}{4} \quad if(0\leq x\leq 2)\]

\[ sqnl(x)=x+\frac{x^2}{4} \quad if(-2 \leq x< 0)\]

\[ sqnl(x)=-1 \quad if(x<-2)\]

Parámetros
[in]xLa variable a evaluar
Devuelve
Retorna la varaible evaluada.

◆ SQNL() [2/2]

Pds::Matrix Pds::SQNL ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion SQNL.

\[ sqnl(x)=+1 \quad if(2<x)\]

\[ sqnl(x)=x-\frac{x^2}{4} \quad if(0\leq x\leq 2)\]

\[ sqnl(x)=x+\frac{x^2}{4} \quad if(-2 \leq x< 0)\]

\[ sqnl(x)=-1 \quad if(x<-2)\]

\[ sqnl(A)\]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ Gaussian() [1/2]

double Pds::Gaussian ( double  x)

Retorna el resultado de evaluar la funcion gaussiana.

\[ gaussian(x)=e^{-x^2} \]

Parámetros
[in]xLa variable a evaluar
Devuelve
Retorna la variable evaluada.

◆ Gaussian() [2/2]

Pds::Matrix Pds::Gaussian ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion gaussiana.

\[ gaussian(A)=e^{-A^2} \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ Tanh() [1/2]

Pds::Matrix Pds::Tanh ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion tangente hiperbólico.

\[ tanh{A}=\frac{e^{2A}-1}{e^{2A}+1} \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ Tanh() [2/2]

double Pds::Tanh ( double  x)

Retorna el resultado de evaluar la funcion tangente hiperbólico.

\[ tanh{x}=\frac{e^{2x}-1}{e^{2x}+1} \]

Parámetros
[in]xLa variable a evaluar
Devuelve
Retorna la variable evaluada.

◆ DTanh()

double Pds::DTanh ( double  x)

Retorna el resultado de evaluar la derivada de la funcion tangente hiperbólico.

\[ D_x~tanh{x}=\frac{4 e^{2x}}{(e^{2x}+1)^2} \]

Parámetros
[in]xLa variable a evaluar
Devuelve
Retorna la variable evaluada.

◆ Sigmoid() [1/2]

double Pds::Sigmoid ( double  x)

Retorna el resultado de evaluar elemento a elemento la funcion sigmoid.

\[ \frac{1}{1+e^{-x}} \]

Parámetros
[in]xLa varaible a evaluar
Devuelve
Retorna la variable evaluada.

◆ Sigmoid() [2/2]

Pds::Matrix Pds::Sigmoid ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion sigmoid.

\[ \frac{1}{1+e^{-A}} \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ DSigmoid()

double Pds::DSigmoid ( double  x)

Retorna el resultado de evaluar elemento a elemento la derivada de la funcion sigmoid.

\[ \frac{e^{-x}}{(1+e^{-x})^2} \]

Parámetros
[in]xLa varaible a evaluar
Devuelve
Retorna la variable evaluada.

◆ Factorial()

unsigned int Pds::Factorial ( unsigned int  n)

Evalúa factorial de n, igual a n!.

\[ y=n!\equiv n(n-1)(n-2)(n-3)...1 \]

Tiene problemas de presición, cuando n es muy grande.

Parámetros
[in]nValor de entrada.
Devuelve
El valor de n!.

◆ NchooseK()

unsigned int Pds::NchooseK ( unsigned int  n,
unsigned int  k 
)

Retorna el combinatorio (n,k)

\[ {n \choose k}=\frac{n!}{k!(n-k)!} \]

Parámetros
[in]nValor superior del combinatorio.
[in]kValor inferior del combinatorio.
Devuelve
El valor del combinatorio (n,k). Si k>n retorna 0.

◆ NmultichooseK()

unsigned int Pds::NmultichooseK ( unsigned int  n,
unsigned int  k 
)

Retorna el combinatorio (n,k)

\[ \left({n \choose k}\right)={{n+k-1} \choose k} \]

Parámetros
[in]nValor superior del combinatorio.
[in]kValor inferior del combinatorio.
Devuelve
El valor del combinatorio (n,k).

◆ UnitStep() [1/2]

double Pds::UnitStep ( double  x)

Retorna el resultado de evaluar la funcion UnitStep().

\[ if(x\geq 0)\quad return\quad 1 \]

\[ else \quad return\quad 0 \]

Parámetros
[in]xLa varaible a evaluar
Devuelve
Retorna la varaible evaluada.

◆ UnitStep() [2/2]

Pds::Matrix Pds::UnitStep ( const Pds::Matrix A)

Retorna el resultado de evaluar la funcion UnitStep().

\[ if(x\geq 0)\quad return\quad 1 \]

\[ else \quad return\quad 0 \]

\[ UnitStep(A) \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.

◆ UnitRamp() [1/2]

double Pds::UnitRamp ( double  x)

Retorna el resultado de evaluar la funcion UnitRamp().

\[ if(x\geq 0)\quad return\quad x \]

\[ else \quad return\quad 0 \]

Parámetros
[in]xLa varaible a evaluar
Devuelve
Retorna la varaible evaluada.

◆ UnitRamp() [2/2]

Pds::Matrix Pds::UnitRamp ( const Pds::Matrix A)

Retorna el resultado de evaluar la funcion UnitRamp().

\[ if(x\geq 0)\quad return\quad x \]

\[ else \quad return\quad 0 \]

\[ UnitRamp(A) \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.

◆ Sign() [1/2]

double Pds::Sign ( double  x)

Retorna el resultado de evaluar la funcion Sign.

\[ if(x>0)\quad return\quad+1 \]

\[ if(x=0)\quad return\quad~0 \]

\[ if(x<0)\quad return\quad-1 \]

Parámetros
[in]xLa varaible a evaluar
Devuelve
Retorna la varaible evaluada.

◆ Sign() [2/2]

Pds::Matrix Pds::Sign ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion Sign.

\[ if(x>0)\quad sign(x)\quad return\quad+1 \]

\[ if(x=0)\quad sign(x)\quad return\quad~0 \]

\[ if(x<0)\quad sign(x)\quad return\quad-1 \]

\[ sign(A) \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.

◆ Round()

Pds::Matrix Pds::Round ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion round.

\[ round(A) \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ InformationGain()

double Pds::InformationGain ( const Pds::Matrix B,
const std::vector< Pds::Matrix > &  A,
double  Umbral = 0.5 
)

Retorna el Information Gain entre si mismo B y {A[0],A[1],...,A[N-1]}. Antes de comprarar las matrices se binarizan con el umbral Umbral. A[n]>Umbral, B>Umbral.

\[h_b(p)=- p log_2(p)- (1-p) log_2(1-p)\]

\[IG=h_b(p_{\mathbf{B}})-\sum_{n=0}^{N-1} \frac{N_{\mathbf{A[n]}}}{N_{\mathbf{B}}}h_b(p_{\mathbf{A[n]}})\]

Parámetros
[in]BMatriz total. Estas seran binarizadas con Umbral.
[in]Avector de matrices. Estas seran binarizadas con Umbral.
[in]UmbralUmbral de binarización. A>Umbral.
Devuelve
Retorna el Information Gain entre si mismo B y {A[0],A[1],...,A[N-1]}. En caso de que la matriz sea vacía o algun otro problema se retorna Pds::Ra::Nan.

◆ Hb() [1/2]

double Pds::Hb ( double  x)

Retorna el resultado de evaluar la funcion Entropia binária.

\[ h_b(x)=-x~log_2(x)-(1-x) log_2(1-x) \]

Parámetros
[in]xLa varaible a evaluar
Devuelve
Retorna lavaraible evaluada.

◆ Hb() [2/2]

Pds::Matrix Pds::Hb ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion Entropia binária.

\[ h_b(x)=-x~log_2(x)-(1-x) log_2(1-x) \]

\[ h_b(A) \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ HbInv() [1/2]

double Pds::HbInv ( double  h)

Retorna el valor $p$ de la función de entropía binaria para un valor de $h\approx h_b(p)$.

\[h_b(p)\equiv -p~log_2(p)-(1-p)~log_2(1-p)\]

Parámetros
[in]hValor de entrada.
Devuelve
El valor de $p$ en $h\approx h_b(p)$. La busqueeda finaliza quando $|h-H_b(p)|<|\frac{E(h)}{1000000}|$, $ E(h)=h +(1-2 h) u(h-0.5)$ .

◆ HbInv() [2/2]

Pds::Matrix Pds::HbInv ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion inversa de la Entropia binária.

\[h_b(p)\equiv -p~log_2(p)-(1-p)~log_2(1-p)\]

Parámetros
[in]ALa matriz a evaluar
Devuelve
El valor de $p$ en $h\approx h_b(p)$. La busqueeda finaliza quando $|h-H_b(p)|<|\frac{E(h)}{1000000}|$, $ E(h)=h +(1-2 h) u(h-0.5)$ .
Ver también
Pds::Matrix::Apply()

◆ Abs()

Pds::Matrix Pds::Abs ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion valor absoluto.

\[ |A| \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ Logit() [1/2]

double Pds::Logit ( double  x)

Retorna el resultado de evaluar la funcion logit.

\[ log\left(\frac{x}{1-x}\right) \]

Parámetros
[in]xLa variable a evaluar
Devuelve
Retorna la variable evaluada.

◆ Logit() [2/2]

Pds::Matrix Pds::Logit ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion logit.

\[ log\left(\frac{A}{1-A}\right) \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ Sinc() [1/2]

double Pds::Sinc ( double  x)

Retorna el resultado de evaluar la funcion sinc.

\[ sinc(x)=\frac{sin(x)}{x} \]

Parámetros
[in]xLa variable a evaluar
Devuelve
Retorna la variable evaluada.

◆ Sinc() [2/2]

Pds::Matrix Pds::Sinc ( const Pds::Matrix A)

Retorna el resultado de evaluar elemento a elemento la funcion sinc.

\[ sinc(x)=\frac{sin(x)}{x} \]

\[ sinc(A) \]

Parámetros
[in]ALa matriz a evaluar
Devuelve
Retorna la matriz evaluada.
Ver también
Pds::Matrix::Apply()

◆ SimpsonIntegration() [1/2]

double Pds::SimpsonIntegration ( double(*)(double)  f,
double  a,
double  b,
unsigned int  n 
)

Evalúa la integral de a-->b de la función f(x), aplicando la regla de Simpson con n divisiones, si n no es par internamente la función hace n=n+1.

\[S_n=\int_{a}^{b}f(x)dx\]

\[h=\frac{b-a}{n}\]

\[x_i=a+h~i\]

\[S_n=\frac{h}{3}(f(x_0)+f(x_n)+4\left [ f(x_1)+f(x_3)+\cdots +f(x_{n-1}) \right ]+2\left [ f(x_2)+f(x_4)+\cdots +f(x_{n-2}) \right ])\]

Parámetros
[in]fLa función a integrar.
[in]aLímite inferior de la integral.
[in]bLímite superior de la integral.
[in]nEs el número de divisiones.
Devuelve
El valor de la integral o cero si hubo un error, ejemplo b<a o n==0.
Ejemplos
example_matrix_math_integration.cpp.

◆ SimpsonIntegration() [2/2]

double Pds::SimpsonIntegration ( double(*)(double, double)  f,
double  r,
double  a,
double  b,
unsigned int  n 
)

Evalúa la integral de a-->b de la función f(x,r), aplicando la regla de Simpson con n divisiones, si n no es par internamente la función hace n=n+1.

\[S_n=\int_{a}^{b}f(x,r)dx\]

\[h=\frac{b-a}{n}\]

\[x_i=a+h~i\]

\[S_n=\frac{h}{3}(f(x_0,r)+f(x_n,r)+4\left [ f(x_1,r)+f(x_3,r)+\cdots +f(x_{n-1},r) \right ]+2\left [ f(x_2,r)+f(x_4,r)+\cdots +f(x_{n-2},r) \right ])\]

Parámetros
[in]fLa función a integrar.
[in]rParámetro de la función.
[in]aLímite inferior de la integral.
[in]bLímite superior de la integral.
[in]nEs el número de divisiones.
Devuelve
El valor de la integral o cero si hubo un error, ejemplo b<a o n==0.

◆ ImproperIntegration() [1/2]

double Pds::ImproperIntegration ( double(*)(double)  f,
double  a,
unsigned int  n 
)

Evalúa la integral de a-->infinito de la función f(x), aplicando el cambio de variable u<–1/(x+1) para integrar de 0-->1/(a+1) y ejecutar luego la regla de Simpson con n divisiones, si n no es par internamente la función hace n=n+1. Además es necesario que el limite de f(1/u-1)/u^2-->0 cuando u-->0.

\[S_t=\left \{ \begin{matrix} ~&~&\int_{x_{0}=a}^{ \infty }f(x)dx & a \geq 0 \\ \int_{a}^{0}f(x)dx &+ &\int_{x_{0}=0}^{ \infty }f(x)dx & a < 0 \end{matrix}\right.\]

\[\int_{x_{0}}^{ \infty }f(x)dx \xrightarrow{u=\frac{1}{x+1}} \int_{0}^{ \frac{1}{x_{0}+1} }\frac{f(\frac{1}{u}-1)}{u^2}du\]

Se asume que

\[ \lim_{u \rightarrow 0+}\frac{f(\frac{1}{u}-1)}{u^2}=0 \]

Parámetros
[in]fLa función a integrar.
[in]aLímite inferior de la integral.
[in]nEs el número de divisiones.
Devuelve
El valor de la integral o cero si hubo un error, ejemplo b<a o n<=0.
Ejemplos
example_matrix_math_integration.cpp.

◆ ImproperIntegration() [2/2]

double Pds::ImproperIntegration ( double(*)(double, double)  f,
double  r,
double  a,
unsigned int  n 
)

Evalúa la integral de a-->infinito de la función f(x,r) en x, aplicando el cambio de variable u<–1/(x+1) para integrar de 0-->1/(a+1) y ejecutar luego la regla de Simpson con n divisiones, si n no es par internamente la función hace n=n+1. Además es necesario que el limite de f(1/u-1,r)/u^2-->0 cuando u-->0.

\[S_t=\left \{ \begin{matrix} ~&~&\int_{x_{0}=a}^{ \infty }f(x,r)dx & a \geq 0 \\ \int_{a}^{0}f(x,r)dx &+ &\int_{x_{0}=0}^{ \infty }f(x,r)dx & a < 0 \end{matrix}\right.\]

\[\int_{x_{0}}^{ \infty }f(x,r)dx \xrightarrow{u=\frac{1}{x+1}} \int_{0}^{ \frac{1}{x_{0}+1} }\frac{f(\frac{1}{u}-1,r)}{u^2}du\]

Se asume que

\[ \lim_{u \rightarrow 0+}\frac{f(\frac{1}{u}-1,r)}{u^2}=0 \]

Parámetros
[in]fLa función a integrar.
[in]rValor del parámetro .
[in]aLímite inferior de la integral.
[in]nEs el número de divisiones.
Devuelve
El valor de la integral o cero si hubo un error, ejemplo b<a o n<=0.

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed