iCub-main
|
Functions | |
void | dchud (double *r, int ldr, int p, double *x, double *z, int ldz, int nz, double *y, double *rho, double *c, double *s, unsigned char rtrans=0, unsigned char ztrans=0) |
Mathematical helper functions for use in the learningMachine library. More... | |
void | gsl_linalg_cholesky_update (gsl_matrix *R, gsl_vector *x, gsl_vector *c, gsl_vector *s, gsl_matrix *Z=NULL, gsl_vector *y=NULL, gsl_vector *rho=NULL, unsigned char rtrans=0, unsigned char ztrans=0) |
void | cholupdate (yarp::sig::Matrix &R, const yarp::sig::Vector &x, yarp::sig::Vector &c, yarp::sig::Vector &s, yarp::sig::Matrix &Z, const yarp::sig::Vector &y, yarp::sig::Vector &rho, bool rtrans=0, bool ztrans=0) |
Perform a rank-1 update to a Cholesky factor, while updating additional vectors using the used Given's rotations and updating the norm of residuals. More... | |
void | cholupdate (yarp::sig::Matrix &R, const yarp::sig::Vector &x, bool rtrans=0) |
Perform a rank-1 update to a Cholesky factor. More... | |
void | cholsolve (const yarp::sig::Matrix &R, const yarp::sig::Matrix &B, yarp::sig::Matrix &X) |
Solves a system A*x=b for multiple row vectors in B using a precomputed Cholesky factor R. More... | |
yarp::sig::Matrix | cholsolve (const yarp::sig::Matrix &R, const yarp::sig::Matrix &B) |
Solves a system A*x=b for multiple row vectors in B using a precomputed Cholesky factor R. More... | |
void | cholsolve (const yarp::sig::Matrix &R, const yarp::sig::Vector &b, yarp::sig::Vector &x) |
Solves a system A*x=b for using a precomputed Cholesky factor R. More... | |
yarp::sig::Vector | cholsolve (const yarp::sig::Matrix &R, const yarp::sig::Vector &b) |
Solves a system A*x=b for using a precomputed Cholesky factor R. More... | |
yarp::sig::Matrix | outerprod (const yarp::sig::Vector &v1, const yarp::sig::Vector &v2) |
Computes the outer product of two vectors. More... | |
yarp::sig::Vector & | addvec (yarp::sig::Vector &v, double val) |
Adds a scalar to a vector inplace. More... | |
void | trsolve (const yarp::sig::Matrix &A, const yarp::sig::Vector &b, yarp::sig::Vector &x, bool transa=false) |
Solves a triangular linear system Ax=b where A is triangular. More... | |
yarp::sig::Vector | trsolve (const yarp::sig::Matrix &A, const yarp::sig::Vector &b, bool transa=false) |
Solves a linear system Ax=b where A is triangular. More... | |
void | fillrandom (yarp::sig::Vector &v, yarp::math::RandScalar &prng) |
Fills an entire vector using the provided pseudo random number generator. More... | |
void | fillrandom (yarp::sig::Matrix &M, yarp::math::RandScalar &prng) |
Fills an entire matrix using the provided pseudo random number generator. More... | |
void | fillrandom (yarp::sig::Vector &v, yarp::math::RandnScalar &prng) |
Fills an entire vector using the provided pseudo random number generator. More... | |
void | fillrandom (yarp::sig::Matrix &M, yarp::math::RandnScalar &prng) |
Fills an entire matrix using the provided pseudo random number generator. More... | |
yarp::sig::Vector | random (int length, yarp::math::RandScalar &prng) |
Returns a random vector with given dimensionality. More... | |
yarp::sig::Matrix | random (int rows, int columns, yarp::math::RandScalar &prng) |
Returns a random matrix with given dimensionality. More... | |
yarp::sig::Vector | random (int length, yarp::math::RandnScalar &prng) |
Returns a random vector with given dimensionality. More... | |
yarp::sig::Matrix | random (int rows, int columns, yarp::math::RandnScalar &prng) |
Returns a random matrix with given dimensionality. More... | |
yarp::sig::Vector & | map (yarp::sig::Vector &v, double(op)(double)) |
Performs a unary operator inplace on each element of a vector. More... | |
yarp::sig::Matrix & | map (yarp::sig::Matrix &M, double(op)(double)) |
Performs a unary operator inplace on each element of a matrix. More... | |
yarp::sig::Vector | map (const yarp::sig::Vector &v, double(op)(double)) |
Performs a unary operator on each element of a vector. More... | |
yarp::sig::Matrix | map (const yarp::sig::Matrix &M, double(op)(double)) |
Performs a unary operator on each element of a matrix. More... | |
yarp::sig::Matrix & | cosmat (yarp::sig::Matrix &M) |
Computes the cosine of a matrix element-wise inplace. More... | |
yarp::sig::Matrix & | sinmat (yarp::sig::Matrix &M) |
Computes the sine of a matrix element-wise inplace. More... | |
yarp::sig::Vector & | cosvec (yarp::sig::Vector &v) |
Computes the cosine of a vector element-wise inplace. More... | |
yarp::sig::Vector & | sinvec (yarp::sig::Vector &v) |
Computes the sine of a vector element-wise inplace. More... | |
yarp::sig::Matrix | cosmat (const yarp::sig::Matrix &M) |
Computes the cosine of a matrix element-wise. More... | |
yarp::sig::Matrix | sinmat (const yarp::sig::Matrix &M) |
Computes the sine of a matrix element-wise. More... | |
yarp::sig::Vector | cosvec (const yarp::sig::Vector &v) |
Computes the cosine of a vector element-wise. More... | |
yarp::sig::Vector | sinvec (const yarp::sig::Vector &v) |
Computes the sine of a vector element-wise. More... | |
yarp::sig::Vector & iCub::learningmachine::math::addvec | ( | yarp::sig::Vector & | v, |
double | val | ||
) |
yarp::sig::Matrix iCub::learningmachine::math::cholsolve | ( | const yarp::sig::Matrix & | R, |
const yarp::sig::Matrix & | B | ||
) |
void iCub::learningmachine::math::cholsolve | ( | const yarp::sig::Matrix & | R, |
const yarp::sig::Matrix & | B, | ||
yarp::sig::Matrix & | X | ||
) |
yarp::sig::Vector iCub::learningmachine::math::cholsolve | ( | const yarp::sig::Matrix & | R, |
const yarp::sig::Vector & | b | ||
) |
void iCub::learningmachine::math::cholsolve | ( | const yarp::sig::Matrix & | R, |
const yarp::sig::Vector & | b, | ||
yarp::sig::Vector & | x | ||
) |
void iCub::learningmachine::math::cholupdate | ( | yarp::sig::Matrix & | R, |
const yarp::sig::Vector & | x, | ||
bool | rtrans = 0 |
||
) |
Perform a rank-1 update to a Cholesky factor.
For more information, please see chapter 10.2 of the LINPACK User's Guide.
R | an upper triangular Cholesky factor |
x | the vector used to update the Cholesky factor |
rtrans | flag indicating whether R is provided transposed |
void iCub::learningmachine::math::cholupdate | ( | yarp::sig::Matrix & | R, |
const yarp::sig::Vector & | x, | ||
yarp::sig::Vector & | c, | ||
yarp::sig::Vector & | s, | ||
yarp::sig::Matrix & | Z, | ||
const yarp::sig::Vector & | y, | ||
yarp::sig::Vector & | rho, | ||
bool | rtrans = 0 , |
||
bool | ztrans = 0 |
||
) |
Perform a rank-1 update to a Cholesky factor, while updating additional vectors using the used Given's rotations and updating the norm of residuals.
For more information, please see chapter 10.2 of the LINPACK User's Guide.
R | an upper triangular Cholesky factor |
x | the vector used to update the Cholesky factor |
c | on output, the cosines of the Given's rotations |
s | on output, the sines of the Given's rotations |
Z | a number of column vectors updated along with R |
y | a vector containing scalars used to update Z |
rho | the norm of the residuals |
rtrans | flag indicating whether R is provided transposed |
ztrans | flag indicating whether Z is provided transposed |
yarp::sig::Matrix iCub::learningmachine::math::cosmat | ( | const yarp::sig::Matrix & | M | ) |
yarp::sig::Matrix & iCub::learningmachine::math::cosmat | ( | yarp::sig::Matrix & | M | ) |
yarp::sig::Vector iCub::learningmachine::math::cosvec | ( | const yarp::sig::Vector & | v | ) |
yarp::sig::Vector & iCub::learningmachine::math::cosvec | ( | yarp::sig::Vector & | v | ) |
void iCub::learningmachine::math::dchud | ( | double * | r, |
int | ldr, | ||
int | p, | ||
double * | x, | ||
double * | z, | ||
int | ldz, | ||
int | nz, | ||
double * | y, | ||
double * | rho, | ||
double * | c, | ||
double * | s, | ||
unsigned char | rtrans = 0 , |
||
unsigned char | ztrans = 0 |
||
) |
void iCub::learningmachine::math::fillrandom | ( | yarp::sig::Matrix & | M, |
yarp::math::RandnScalar & | prng | ||
) |
void iCub::learningmachine::math::fillrandom | ( | yarp::sig::Matrix & | M, |
yarp::math::RandScalar & | prng | ||
) |
void iCub::learningmachine::math::fillrandom | ( | yarp::sig::Vector & | v, |
yarp::math::RandnScalar & | prng | ||
) |
void iCub::learningmachine::math::fillrandom | ( | yarp::sig::Vector & | v, |
yarp::math::RandScalar & | prng | ||
) |
void iCub::learningmachine::math::gsl_linalg_cholesky_update | ( | gsl_matrix * | R, |
gsl_vector * | x, | ||
gsl_vector * | c, | ||
gsl_vector * | s, | ||
gsl_matrix * | Z = NULL , |
||
gsl_vector * | y = NULL , |
||
gsl_vector * | rho = NULL , |
||
unsigned char | rtrans = 0 , |
||
unsigned char | ztrans = 0 |
||
) |
yarp::sig::Matrix iCub::learningmachine::math::map | ( | const yarp::sig::Matrix & | M, |
double(op)(double) | |||
) |
yarp::sig::Vector iCub::learningmachine::math::map | ( | const yarp::sig::Vector & | v, |
double(op)(double) | |||
) |
yarp::sig::Matrix & iCub::learningmachine::math::map | ( | yarp::sig::Matrix & | M, |
double(op)(double) | |||
) |
yarp::sig::Vector & iCub::learningmachine::math::map | ( | yarp::sig::Vector & | v, |
double(op)(double) | |||
) |
yarp::sig::Matrix iCub::learningmachine::math::outerprod | ( | const yarp::sig::Vector & | v1, |
const yarp::sig::Vector & | v2 | ||
) |
yarp::sig::Vector iCub::learningmachine::math::random | ( | int | length, |
yarp::math::RandnScalar & | prng | ||
) |
yarp::sig::Vector iCub::learningmachine::math::random | ( | int | length, |
yarp::math::RandScalar & | prng | ||
) |
yarp::sig::Matrix iCub::learningmachine::math::random | ( | int | rows, |
int | columns, | ||
yarp::math::RandnScalar & | prng | ||
) |
yarp::sig::Matrix iCub::learningmachine::math::random | ( | int | rows, |
int | columns, | ||
yarp::math::RandScalar & | prng | ||
) |
yarp::sig::Matrix iCub::learningmachine::math::sinmat | ( | const yarp::sig::Matrix & | M | ) |
yarp::sig::Matrix & iCub::learningmachine::math::sinmat | ( | yarp::sig::Matrix & | M | ) |
yarp::sig::Vector iCub::learningmachine::math::sinvec | ( | const yarp::sig::Vector & | v | ) |
yarp::sig::Vector & iCub::learningmachine::math::sinvec | ( | yarp::sig::Vector & | v | ) |
yarp::sig::Vector iCub::learningmachine::math::trsolve | ( | const yarp::sig::Matrix & | A, |
const yarp::sig::Vector & | b, | ||
bool | transa = false |
||
) |
void iCub::learningmachine::math::trsolve | ( | const yarp::sig::Matrix & | A, |
const yarp::sig::Vector & | b, | ||
yarp::sig::Vector & | x, | ||
bool | transa = false |
||
) |