![]() |
ViSP
2.6.2
|
#include <vpRowVector.h>
Public Types | |
enum | vpDetMethod { LU_DECOMPOSITION } |
Public Member Functions | |
vpRowVector () | |
vpRowVector (unsigned int nn) | |
vpRowVector (const vpRowVector &v) | |
void | resize (unsigned int i) |
double & | operator[] (unsigned int n) |
const double & | operator[] (unsigned int n) const |
vpRowVector & | operator= (const vpRowVector &v) |
vpRowVector & | operator= (const vpMatrix &m) |
double | operator* (const vpColVector &x) const |
vpRowVector | operator* (const vpMatrix &A) const |
vpRowVector & | operator= (const double x) |
void | reshape (vpMatrix &m, const unsigned int &nrows, const unsigned int &ncols) |
vpMatrix | reshape (const unsigned int &nrows, const unsigned int &ncols) |
vpColVector | t () const |
vpRowVector & | normalize () |
vpRowVector & | normalize (vpRowVector &x) const |
unsigned int | size () const |
void | init () |
void | kill () |
void | eye (unsigned int n) |
void | eye (unsigned int m, unsigned int n) |
void | setIdentity (const double &val=1.0) |
void | stackMatrices (const vpMatrix &A) |
void | insert (const vpMatrix &A, const unsigned int r, const unsigned int c) |
Columns, Rows extraction, Submatrix | |
void | init (const vpMatrix &m, unsigned int r, unsigned int c, unsigned int nrows, unsigned int ncols) |
vpRowVector | row (const unsigned int i) |
vpColVector | column (const unsigned int j) |
Set/get Matrix size | |
unsigned int | getRows () const |
unsigned int | getCols () const |
void | resize (const unsigned int nrows, const unsigned int ncols, const bool nullify=true) |
double | getMinValue () const |
double | getMaxValue () const |
Copy / assignment | |
vpMatrix & | operator<< (double *) |
void | diag (const vpColVector &A) |
Printing | |
int | print (std::ostream &s, unsigned int length, char const *intro=0) |
std::ostream & | matlabPrint (std::ostream &os) |
std::ostream & | cppPrint (std::ostream &os, const char *matrixName=NULL, bool octet=false) |
void | printSize () |
Matrix operations | |
vpMatrix & | operator+= (const vpMatrix &B) |
vpMatrix & | operator+= (const double x) |
vpMatrix & | operator-= (const vpMatrix &B) |
vpMatrix & | operator-= (const double x) |
vpTranslationVector | operator* (const vpTranslationVector &b) const |
vpMatrix | operator* (const double x) const |
vpMatrix | operator+ (const vpMatrix &B) const |
vpMatrix | operator- (const vpMatrix &B) const |
vpMatrix | operator- () const |
vpMatrix & | operator*= (const double x) |
vpMatrix & | operator/= (double x) |
vpMatrix | operator/ (const double x) const |
double | sumSquare () const |
double | det (vpDetMethod method=LU_DECOMPOSITION) const |
vpMatrix | expm () |
Transpose, Identity | |
vpMatrix | transpose () const |
void | transpose (vpMatrix &C) const |
vpMatrix | AAt () const |
void | AAt (vpMatrix &B) const |
vpMatrix | AtA () const |
void | AtA (vpMatrix &B) const |
Kronecker product | |
void | stackColumns (vpColVector &out) |
vpColVector | stackColumns () |
void | stackRows (vpRowVector &out) |
vpRowVector | stackRows () |
void | kron (const vpMatrix &m1, vpMatrix &out) |
vpMatrix | kron (const vpMatrix &m1) |
LU decomposition | |
vpMatrix | inverseByLU () const |
SVD decomposition | |
void | svd (vpColVector &w, vpMatrix &v) |
void | solveBySVD (const vpColVector &B, vpColVector &x) const |
vpColVector | solveBySVD (const vpColVector &B) const |
vpMatrix | pseudoInverse (double svThreshold=1e-6) const |
unsigned int | pseudoInverse (vpMatrix &Ap, double svThreshold=1e-6) const |
unsigned int | pseudoInverse (vpMatrix &Ap, vpColVector &sv, double svThreshold=1e-6) const |
unsigned int | pseudoInverse (vpMatrix &Ap, vpColVector &sv, double svThreshold, vpMatrix &ImA, vpMatrix &ImAt) const |
unsigned int | pseudoInverse (vpMatrix &Ap, vpColVector &sv, double svThreshold, vpMatrix &ImA, vpMatrix &ImAt, vpMatrix &kerA) const |
unsigned int | kernel (vpMatrix &KerA, double svThreshold=1e-6) |
Eigen values | |
vpColVector | eigenValues () |
void | eigenValues (vpColVector &evalue, vpMatrix &evector) |
Norms | |
double | euclideanNorm () const |
double | infinityNorm () const |
Static Public Member Functions | |
static bool | saveMatrix (const char *filename, const vpMatrix &M, const bool binary=false, const char *Header="") |
static bool | saveMatrix (std::string filename, const vpMatrix &M, const bool binary=false, const char *Header="") |
static bool | loadMatrix (const char *filename, vpMatrix &M, const bool binary=false, char *Header=NULL) |
static bool | loadMatrix (std::string filename, vpMatrix &M, const bool binary=false, char *Header=NULL) |
static void | mult2Matrices (const vpMatrix &A, const vpMatrix &B, vpMatrix &C) |
static void | add2Matrices (const vpMatrix &A, const vpMatrix &B, vpMatrix &C) |
static void | add2WeightedMatrices (const vpMatrix &A, const double &wA, const vpMatrix &B, const double &wB, vpMatrix &C) |
static void | sub2Matrices (const vpMatrix &A, const vpMatrix &B, vpMatrix &C) |
static void | negateMatrix (const vpMatrix &A, vpMatrix &C) |
static void | multMatrixVector (const vpMatrix &A, const vpColVector &b, vpColVector &c) |
static vpMatrix | computeCovarianceMatrix (const vpMatrix &A, const vpColVector &x, const vpColVector &b) |
static vpMatrix | computeCovarianceMatrix (const vpMatrix &A, const vpColVector &x, const vpColVector &b, const vpMatrix &w) |
static void | kron (const vpMatrix &m1, const vpMatrix &m2, vpMatrix &out) |
static vpMatrix | kron (const vpMatrix &m1, const vpMatrix &m2) |
static vpMatrix | stackMatrices (const vpMatrix &A, const vpMatrix &B) |
static void | stackMatrices (const vpMatrix &A, const vpMatrix &B, vpMatrix &C) |
static vpMatrix | juxtaposeMatrices (const vpMatrix &A, const vpMatrix &B) |
static void | juxtaposeMatrices (const vpMatrix &A, const vpMatrix &B, vpMatrix &C) |
static void | createDiagonalMatrix (const vpColVector &A, vpMatrix &DA) |
static vpMatrix | insert (const vpMatrix &A, const vpMatrix &B, const unsigned int r, const unsigned int c) |
static void | insert (const vpMatrix &A, const vpMatrix &B, vpMatrix &C, const unsigned int r, const unsigned int c) |
Public Attributes | |
double * | data |
Protected Member Functions | |
vpRowVector (vpMatrix &m, unsigned int i) | |
Protected Attributes | |
unsigned int | rowNum |
unsigned int | colNum |
double ** | rowPtrs |
unsigned int | dsize |
unsigned int | trsize |
Friends | |
class | vpMatrix |
Related Functions | |
(Note that these are not member functions.) | |
enum | vpGEMMmethod |
vpMatrix | operator* (const double &x, const vpMatrix &B) |
void | vpGEMM (const vpMatrix &A, const vpMatrix &B, const double &alpha, const vpMatrix &C, const double &beta, vpMatrix &D, const unsigned int &ops=0) |
void | skew (const vpTranslationVector &t, vpMatrix &M) |
Definition of the row vector class.
vpRowVector class provides a data structure for the row vectors as well as a set of operations on these vectors
Definition at line 73 of file vpRowVector.h.
|
inherited |
Method used to compute the determinant of a square matrix.
Enumerator | |
---|---|
LU_DECOMPOSITION |
LU decomposition method. |
Definition at line 103 of file vpMatrix.h.
|
protected |
Constructor (Take line i of matrix m)
Definition at line 194 of file vpRowVector.cpp.
|
inline |
basic constructor
Definition at line 84 of file vpRowVector.h.
|
inline |
constructor of vector of size n
Definition at line 86 of file vpRowVector.h.
vpRowVector::vpRowVector | ( | const vpRowVector & | v | ) |
copy constructor
Definition at line 189 of file vpRowVector.cpp.
|
inherited |
Computes the operation
Definition at line 1246 of file vpMatrix.cpp.
|
inherited |
Compute the AAt operation such as .
The result is placed in the parameter B and not returned.
A new matrix won't be allocated for every use of the function. This results in a speed gain if used many times with the same result matrix size.
Definition at line 1266 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::resize(), vpMatrix::rowNum, vpMatrix::rowPtrs, vpCERROR, and vpERROR_TRACE.
|
staticinherited |
Operation C = A + B.
The result is placed in the third parameter C and not returned. A new matrix won't be allocated for every use of the function (Speed gain if used many times with the same result matrix size).
Definition at line 491 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::getCols(), vpMatrix::getRows(), vpMatrixException::incorrectMatrixSizeError, vpMatrix::resize(), vpMatrix::rowNum, vpMatrix::rowPtrs, and vpERROR_TRACE.
Referenced by vpMatrix::operator+().
|
staticinherited |
Operation C = A*wA + B*wB
The result is placed in the third parameter C and not returned. A new matrix won't be allocated for every use of the function (Speed gain if used many times with the same result matrix size).
Definition at line 452 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::getCols(), vpMatrix::getRows(), vpMatrixException::incorrectMatrixSizeError, vpMatrix::resize(), vpMatrix::rowNum, vpMatrix::rowPtrs, and vpERROR_TRACE.
|
inherited |
Compute the AtA operation such as
Definition at line 1357 of file vpMatrix.cpp.
Referenced by vpCalibration::calibrationTsai(), and vpNurbs::globalCurveApprox().
|
inherited |
Compute the AtA operation such as .
The result is placed in the parameter B and not returned.
A new matrix won't be allocated for every use of the function. This results in a speed gain if used many times with the same result matrix size.
Definition at line 1309 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::data, vpMatrix::resize(), vpMatrix::rowNum, vpCERROR, and vpERROR_TRACE.
|
inherited |
Column extraction.
Return the ith columns of the matrix.
Definition at line 2238 of file vpMatrix.cpp.
References vpMatrix::getRows().
Referenced by vpHomography::DLT(), vpPose::poseDementhonPlan(), and vpPose::poseFromRectangle().
|
staticinherited |
Compute the covariance matrix of the parameters x from a least squares minimisation defined as: Ax = b
A | : Matrix A from Ax = b. |
x | : Vector x from Ax = b corresponding to the parameters to estimate. |
b | : Vector b from Ax = b. |
Definition at line 56 of file vpMatrix_covariance.cpp.
References vpMatrix::pseudoInverse(), vpColVector::t(), and vpMatrix::t().
Referenced by vpMbEdgeTracker::computeVVS(), vpPose::poseVirtualVS(), and vpPose::poseVirtualVSrobust().
|
staticinherited |
Compute the covariance matrix of the parameters x from a least squares minimisation defined as: WAx = Wb
A | : Matrix A from WAx = Wb. |
x | : Vector x from WAx = Wb corresponding to the parameters to estimate. |
b | : Vector b from WAx = Wb. |
W | : Diagonal weigths matrix from WAx = Wb. |
Definition at line 74 of file vpMatrix_covariance.cpp.
References vpMatrix::pseudoInverse(), and vpMatrix::t().
|
inherited |
Print to be used as part of a C++ code later.
Print under the following form: vpMatrix A(6,4); A[0][0] = 1.4; A[0][1] = 0.6; ...
os | the stream to be printed in. |
matrixName | name of the matrix, "A" by default, to be used for the line vpMatrix A(6,7) (see example). |
octet | if false, print using double, if true, print byte per byte each bytes of the double array. |
Definition at line 2737 of file vpMatrix.cpp.
References vpMatrix::getRows().
|
staticinherited |
Create a diagonal matrix with the element of a vector .
A | : Vector which element will be put in the diagonal. |
DA | : Diagonal matrix DA[i][i] = A[i] |
Definition at line 2549 of file vpMatrix.cpp.
References vpMatrix::getRows(), vpMatrix::resize(), vpCERROR, and vpERROR_TRACE.
|
inherited |
Compute the determinant of a n-by-n matrix.
method | : Method used to compute the determinant. Default LU decomposition methos is faster than the method based on Gaussian elimination. |
Definition at line 3382 of file vpMatrix.cpp.
References vpMatrix::LU_DECOMPOSITION.
Referenced by vpHomography::computeDisplacement().
|
inherited |
Create a diagonal matrix with the element of a vector.
A | : Vector which element will be put in the diagonal. |
Definition at line 2521 of file vpMatrix.cpp.
References vpMatrix::getRows(), vpMatrix::resize(), vpCERROR, and vpERROR_TRACE.
Referenced by vpMbEdgeTracker::computeVVS().
|
inherited |
Compute the eigenvalues of a n-by-n real symmetric matrix.
vpMatrixException::matrixError | If the matrix is not square or if the matrix is not symmetric. |
vpMatrixException::notImplementedError | If the GSL library is not detected |
Here an example:
Definition at line 2965 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrixException::matrixError, vpMatrixException::notImplementedError, vpMatrix::rowNum, vpMatrix::t(), and vpERROR_TRACE.
|
inherited |
Compute the eigenvalues of a n-by-n real symmetric matrix.
evalue | : Eigenvalues of the matrix. |
evector | : Eigenvector of the matrix. |
vpMatrixException::matrixError | If the matrix is not square or if the matrix is not symmetric. |
vpMatrixException::notImplementedError | If the GSL library is not detected |
Here an example:
Definition at line 3084 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::data, vpMatrixException::matrixError, vpMatrixException::notImplementedError, vpColVector::resize(), vpMatrix::resize(), vpMatrix::rowNum, vpMatrix::t(), and vpERROR_TRACE.
|
inherited |
Compute and return the Euclidean norm .
Definition at line 2785 of file vpMatrix.cpp.
References vpMatrix::data, and vpMatrix::dsize.
Referenced by vpSimulatorAfma6::setPosition().
|
inherited |
Compute the exponential matrix of a square matrix.
Definition at line 3569 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrixException::incorrectMatrixSizeError, vpMatrix::inverseByLU(), vpMatrix::rowNum, vpMatrix::setIdentity(), and vpTRACE.
|
inherited |
Set an n-by-n matrix to identity.
eye(n) is an n-by-n matrix with ones on the diagonal and zeros else where.
Definition at line 1130 of file vpMatrix.cpp.
References vpCERROR, and vpERROR_TRACE.
Referenced by vpServo::setServo().
|
inherited |
Set an m-by-n matrix to identity.
eye(m,n) is an m-by-n matrix with ones on the diagonal and zeros else where.
Definition at line 1150 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::resize(), vpMatrix::rowNum, vpCERROR, and vpERROR_TRACE.
|
inlineinherited |
Return the number of columns of the matrix.
Definition at line 159 of file vpMatrix.h.
Referenced by vpMatrix::add2Matrices(), vpMatrix::add2WeightedMatrices(), vpSubRowVector::checkParentStatus(), vpSubMatrix::checkParentStatus(), vpServo::computeControlLaw(), vpServo::computeInteractionMatrix(), vpMbTracker::computeJTR(), vpImageSimulator::getImage(), vpSubRowVector::init(), vpSubMatrix::init(), vpCameraParameters::initFromCalibrationMatrix(), vpMatrix::insert(), vpMatrix::juxtaposeMatrices(), vpMatrix::kernel(), vpMatrix::kron(), operator*(), vpRotationMatrix::operator*(), vpVelocityTwistMatrix::operator*(), vpForceTwistMatrix::operator*(), vpMatrix::operator*(), vpMatrix::operator+=(), vpMatrix::operator-=(), vpSubRowVector::operator=(), operator=(), vpSubColVector::operator=(), vpSubMatrix::operator=(), vpRotationMatrix::operator=(), vpColVector::operator=(), vpPose::poseDementhonPlan(), vpMatrix::print(), vpMatrix::pseudoInverse(), vpIoTools::readConfigVar(), reshape(), vpColVector::reshape(), vpMatrix::row(), vpMatrix::saveMatrix(), vpServo::secondaryTask(), size(), vpMatrix::stackMatrices(), vpMatrix::sub2Matrices(), and vpMatrix::svd().
|
inherited |
Definition at line 3654 of file vpMatrix.cpp.
References vpMatrix::data, and vpMatrix::dsize.
|
inherited |
Definition at line 3640 of file vpMatrix.cpp.
References vpMatrix::data, and vpMatrix::dsize.
|
inlineinherited |
Return the number of rows of the matrix.
Definition at line 157 of file vpMatrix.h.
Referenced by vpMatrix::add2Matrices(), vpMatrix::add2WeightedMatrices(), vpLine::changeFrame(), vpSubColVector::checkParentStatus(), vpSubMatrix::checkParentStatus(), vpMatrix::column(), vpServo::computeError(), vpServo::computeInteractionMatrix(), vpMbTracker::computeJTR(), vpPtu46::computeMGD(), vpPose::computeResidual(), vpHomography::computeResidual(), vpHomography::computeTransformation(), vpMbEdgeTracker::computeVVS(), vpMatrix::cppPrint(), vpMatrix::createDiagonalMatrix(), vpColVector::crossProd(), vpDot2::defineDots(), vpHomography::degenerateConfiguration(), vpMatrix::diag(), vpProjectionDisplay::display(), vpColVector::dotProd(), vpGenericFeature::error(), vpImageFilter::filter(), vpPtu46::get_eJe(), vpBiclops::get_eJe(), vpPtu46::get_fJe(), vpBiclops::get_fJe(), vpBiclops::get_fMe(), vpGenericFeature::get_s(), vpBasicFeature::getDimension(), vpImageSimulator::getImage(), vpAfma6::getInverseKinematics(), vpViper::getInverseKinematicsWrist(), vpSubColVector::init(), vpSubMatrix::init(), vpCameraParameters::initFromCalibrationMatrix(), vpMatrix::insert(), vpFeatureLuminance::interaction(), vpGenericFeature::interaction(), vpMatrix::inverseByLU(), vpColVector::invSort(), vpMatrix::juxtaposeMatrices(), vpMatrix::kernel(), vpScale::KernelDensity(), vpScale::KernelDensityGradient(), vpMatrix::kron(), vpMatrix::matlabPrint(), vpColVector::mean(), vpScale::MeanShift(), vpColVector::median(), vpRobust::MEstimator(), vpMatrix::multMatrixVector(), operator*(), vpRotationMatrix::operator*(), vpVelocityTwistMatrix::operator*(), vpForceTwistMatrix::operator*(), vpMatrix::operator*(), vpMatrix::operator+=(), vpMatrix::operator-=(), vpColVector::operator<<(), vpSubColVector::operator=(), vpSubMatrix::operator=(), vpSubRowVector::operator=(), vpRotationMatrix::operator=(), vpColVector::operator=(), vpRGBa::operator=(), vpPlot::plot(), vpPose::poseDementhonPlan(), vpPose::poseVirtualVSrobust(), vpKalmanFilter::prediction(), vpMatrix::print(), vpLine::projection(), vpMatrix::pseudoInverse(), vpIoTools::readConfigVar(), reshape(), vpColVector::reshape(), vpMatrix::saveMatrix(), vpGenericFeature::set_s(), vpGenericFeature::setError(), vpGenericFeature::setInteractionMatrix(), vpSimulatorAfma6::setJointLimit(), vpSimulatorViper850::setJointLimit(), vpRobotBiclopsController::setPosition(), vpRobotAfma4::setPosition(), vpRobotBiclopsController::setVelocity(), vpRobotPtu46::setVelocity(), vpRobotBiclops::setVelocity(), vpSimulatorAfma6::setVelocity(), vpSimulatorViper850::setVelocity(), vpRobotAfma4::setVelocity(), vpLine::setWorldCoordinates(), vpRobust::simultMEstimator(), vpColVector::size(), vpColVector::skew(), vpColVector::sort(), vpColVector::stack(), vpMatrix::stackMatrices(), vpMatrix::sub2Matrices(), vpMatrix::svd(), and vpColVector::vpColVector().
|
inherited |
Compute and return the infinity norm with
where
is the matrix size.
Definition at line 2809 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::rowNum, and vpMatrix::rowPtrs.
|
inherited |
Initialization of the object matrix.
initialization of the object matrix. Number of columns and rows are zero.
Definition at line 93 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::data, vpMatrix::dsize, vpMatrix::rowNum, vpMatrix::rowPtrs, and vpMatrix::trsize.
Referenced by vpColVector::vpColVector(), vpMatrix::vpMatrix(), vpRotationVector::vpRotationVector(), vpSubColVector::vpSubColVector(), vpSubMatrix::vpSubMatrix(), vpSubRowVector::vpSubRowVector(), and vpTranslationVector::vpTranslationVector().
|
inherited |
subvpMatrix extraction
Definition at line 261 of file vpMatrix.cpp.
References vpMatrix::resize(), and vpERROR_TRACE.
|
inherited |
Insert matrix A at the given position in the current matrix.
A | : The matrix to insert. |
r | : The index of the row to begin to insert data. |
c | : The index of the column to begin to insert data. |
Definition at line 2908 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::getCols(), vpMatrix::getRows(), vpMatrixException::incorrectMatrixSizeError, and vpMatrix::rowNum.
Referenced by vpNurbs::curveKnotIns(), and vpMatrix::insert().
|
staticinherited |
Insert matrix B in matrix A at the given position.
A | : Main matrix. |
B | : Matrix to insert. |
r | : Index of the row where to add the matrix. |
c | : Index of the column where to add the matrix. |
Definition at line 2346 of file vpMatrix.cpp.
References vpMatrix::insert(), and vpCERROR.
|
staticinherited |
Insert matrix B in matrix A at the given position.
A | : Main matrix. |
B | : Matrix to insert. |
C | : Result matrix. |
r | : Index of the row where to insert matrix B. |
c | : Index of the column where to insert matrix B. |
Definition at line 2377 of file vpMatrix.cpp.
References vpMatrix::getCols(), vpMatrix::getRows(), vpMatrixException::incorrectMatrixSizeError, vpMatrix::resize(), vpCERROR, and vpERROR_TRACE.
|
inherited |
Compute the inverse of a n-by-n matrix using the LU decomposition.
Here an example:
Definition at line 236 of file vpMatrix_lu.cpp.
References vpMatrix::colNum, vpMatrix::getRows(), vpMatrixException::matrixError, vpMatrix::rowNum, and vpERROR_TRACE.
Referenced by vpMatrix::expm(), and vpKalmanFilter::filtering().
Juxtapose to matrices C = [ A B ].
A | : Left matrix. |
B | : Right matrix. |
Definition at line 2420 of file vpMatrix.cpp.
References vpCERROR.
Juxtapose to matrices C = [ A B ].
A | : Left matrix. |
B | : Right matrix. |
C | : Juxtaposed matrix C = [ A B ] |
Definition at line 2449 of file vpMatrix.cpp.
References vpMatrix::getCols(), vpMatrix::getRows(), vpMatrixException::incorrectMatrixSizeError, vpMatrix::resize(), vpCERROR, and vpERROR_TRACE.
|
inherited |
Function to compute the null space (the kernel) of the interaction matrix A which is not full rank. The null space ( the kernel ) of a matrix A is defined as Null(A) = Ker(M) ={KerA : A*KerA =0}.
kerA | : The matrix to contain the null space (kernel) of A (A*KerA.t()=0) |
svThreshold | : Specify the used threshold in the svd(...) function (a function to compute the singular value decomposition) |
Definition at line 3186 of file vpMatrix.cpp.
References vpMatrix::getCols(), vpMatrix::getRows(), vpMatrix::resize(), vpMatrix::row(), vpMatrix::sumSquare(), and vpMatrix::svd().
|
inherited |
Destruction of the matrix (Memory de-allocation)
Definition at line 284 of file vpMatrix.cpp.
References vpMatrix::data, and vpMatrix::rowPtrs.
Referenced by vpMatrix::~vpMatrix().
Compute Kronecker product matrix.
m | : vpMatrix. |
out | : If m1.kron(m2) out contains the kronecker product's result : ![]() |
Definition at line 1475 of file vpMatrix.cpp.
Referenced by vpMatrix::kron().
Compute Kronecker product matrix.
m | : vpMatrix; |
Definition at line 1516 of file vpMatrix.cpp.
References vpMatrix::kron().
Compute Kronecker product matrix.
Definition at line 1441 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::getCols(), vpMatrix::getRows(), vpMatrixException::incorrectMatrixSizeError, vpMatrix::rowNum, and vpERROR_TRACE.
Compute Kronecker product matrix.
Definition at line 1485 of file vpMatrix.cpp.
References vpMatrix::getCols(), and vpMatrix::getRows().
|
staticinherited |
Load a matrix to a file.
filename | : Absolute file name. |
M | : Matrix to be loaded. |
binary | : If true the matrix is loaded from a binary file, else from a text file. |
Header | : Header of the file loaded in this parameter. |
Definition at line 3482 of file vpMatrix.cpp.
References vpMatrix::resize().
Referenced by vpDot2::defineDots(), and vpMatrix::loadMatrix().
|
inlinestaticinherited |
Load a matrix to a file.
filename | : absolute file name |
M | : matrix to be loaded |
binary | :If true the matrix is load from a binary file, else from a text file. |
Header | : Header of the file is load in this parameter |
Definition at line 217 of file vpMatrix.h.
References vpMatrix::loadMatrix().
|
inherited |
Print using matlab syntax, to be put in matlab later.
Print using the following form: [ a,b,c; d,e,f; g,h,i]
Definition at line 2704 of file vpMatrix.cpp.
References vpMatrix::getRows().
|
staticinherited |
Operation C = A * B.
The result is placed in the third parameter C and not returned. A new matrix won't be allocated for every use of the function (Speed gain if used many times with the same result matrix size).
Definition at line 391 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrixException::incorrectMatrixSizeError, vpMatrix::resize(), vpMatrix::rowNum, vpMatrix::rowPtrs, and vpERROR_TRACE.
Referenced by vpMatrix::operator*().
|
staticinherited |
Operation c = A * b (c and b are vectors).
The result is placed in the second parameter C and not returned. A new matrix won't be allocated for every use of the function (Speed gain if used many times with the same result matrix size).
Definition at line 809 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::getRows(), vpMatrixException::incorrectMatrixSizeError, vpColVector::resize(), vpMatrix::rowNum, vpMatrix::rowPtrs, and vpERROR_TRACE.
Referenced by vpRotationMatrix::operator*(), and vpMatrix::operator*().
Operation C = -A.
The result is placed in the second parameter C and not returned. A new matrix won't be allocated for every use of the function (Speed gain if used many times with the same result matrix size).
Definition at line 707 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::resize(), vpMatrix::rowNum, vpMatrix::rowPtrs, and vpERROR_TRACE.
Referenced by vpMatrix::operator-().
vpRowVector & normalize | ( | ) |
normalise the vector
Definition at line 222 of file vpRowVector.cpp.
References vpMatrix::sumSquare().
vpRowVector & normalize | ( | vpRowVector & | x | ) | const |
normalise the vector
Definition at line 206 of file vpRowVector.cpp.
References vpMatrix::sumSquare().
double vpRowVector::operator* | ( | const vpColVector & | x | ) | const |
operator dot product
Multiply a row vector by a column vector.
x | : Column vector. |
vpMatrixException::matrixError | : If the number of elements of the two vectors is not the same. |
Definition at line 114 of file vpRowVector.cpp.
References vpMatrix::getCols(), vpMatrix::getRows(), vpMatrixException::matrixError, and vpERROR_TRACE.
vpRowVector vpRowVector::operator* | ( | const vpMatrix & | A | ) | const |
operator dot product
Multiply a row vector by a Matrix.
A | : Matrix. |
vpMatrixException::matrixError | : If the number of elements of the rowVector is not equal to the number of rows of the matrix. |
Definition at line 145 of file vpRowVector.cpp.
References vpMatrix::colNum, vpMatrix::data, vpMatrix::getCols(), vpMatrix::getRows(), vpMatrixException::incorrectMatrixSizeError, and vpERROR_TRACE.
|
inherited |
Operation c = A * b (A is unchanged, c and b are translation vectors).
Definition at line 853 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrixException::incorrectMatrixSizeError, vpMatrix::rowNum, vpMatrix::rowPtrs, and vpERROR_TRACE.
|
inherited |
Cij = Aij * x (A is unchanged)
Definition at line 928 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::resize(), vpMatrix::rowNum, vpMatrix::rowPtrs, and vpERROR_TRACE.
|
inherited |
Multiply all the element of the matrix by x : Aij = Aij * x.
Definition at line 1056 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::rowNum, and vpMatrix::rowPtrs.
Operation C = A + B (A is unchanged).
Definition at line 542 of file vpMatrix.cpp.
References vpMatrix::add2Matrices().
Operation A = A + B.
Definition at line 622 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::getCols(), vpMatrix::getRows(), vpMatrixException::incorrectMatrixSizeError, vpMatrix::rowNum, vpMatrix::rowPtrs, and vpERROR_TRACE.
|
inherited |
Add x to all the element of the matrix : Aij = Aij + x.
Definition at line 1008 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::rowNum, and vpMatrix::rowPtrs.
Operation C = A - B (A is unchanged).
Definition at line 613 of file vpMatrix.cpp.
References vpMatrix::sub2Matrices().
|
inherited |
Operation C = -A (A is unchanged).
Definition at line 749 of file vpMatrix.cpp.
References vpMatrix::negateMatrix().
Operation A = A - B.
Definition at line 662 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::getCols(), vpMatrix::getRows(), vpMatrixException::incorrectMatrixSizeError, vpMatrix::rowNum, vpMatrix::rowPtrs, and vpERROR_TRACE.
|
inherited |
Substract x to all the element of the matrix : Aij = Aij - x.
Definition at line 1032 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::rowNum, and vpMatrix::rowPtrs.
|
inherited |
Cij = Aij / x (A is unchanged)
Definition at line 963 of file vpMatrix.cpp.
References vpMatrix::colNum, vpException::divideByZeroError, vpMatrix::resize(), vpMatrix::rowNum, vpMatrix::rowPtrs, vpCERROR, and vpERROR_TRACE.
|
inherited |
Divide all the element of the matrix by x : Aij = Aij / x.
Definition at line 1071 of file vpMatrix.cpp.
References vpMatrix::colNum, vpException::divideByZeroError, vpMatrix::rowNum, and vpMatrix::rowPtrs.
|
inherited |
Assigment from an array of double.
Definition at line 366 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::rowNum, and vpMatrix::rowPtrs.
vpRowVector & vpRowVector::operator= | ( | const vpRowVector & | v | ) |
Copy operator. Allow operation such as A = v.
Definition at line 57 of file vpRowVector.cpp.
References vpMatrix::colNum, vpMatrix::getCols(), resize(), vpMatrix::rowNum, and vpMatrix::rowPtrs.
vpRowVector & vpRowVector::operator= | ( | const vpMatrix & | m | ) |
copy from a matrix
Definition at line 74 of file vpRowVector.cpp.
References vpMatrix::colNum, vpMatrix::data, vpMatrix::getCols(), and resize().
vpRowVector & vpRowVector::operator= | ( | const double | x | ) |
initialisation each element of the vector is x
Definition at line 90 of file vpRowVector.cpp.
References vpMatrix::colNum, vpMatrix::rowNum, and vpMatrix::rowPtrs.
|
inline |
|
inline |
|
inherited |
Pretty print a matrix. The data are tabulated. The common widths before and after the decimal point are set with respect to the parameter maxlen.
s | Stream used for the printing. |
length | The suggested width of each matrix element. The actual width grows in order to accomodate the whole integral part, and shrinks if the whole extent is not needed for all the numbers. |
intro | The introduction which is printed before the matrix. Can be set to zero (or omitted), in which case the introduction is not printed. |
Definition at line 2613 of file vpMatrix.cpp.
References vpMatrix::getCols(), vpMatrix::getRows(), and vpMath::maximum().
|
inlineinherited |
Definition at line 182 of file vpMatrix.h.
|
inherited |
Compute the pseudo inverse of the matrix using the SVD.
Compute and return the pseudo inverse of a n-by-m matrix : .
svThreshold | : Threshold used to test the singular values. |
Here an example to compute the inverse of a n-by-n matrix. If the matrix is n-by-n it is also possible to use inverseByLU().
Definition at line 1810 of file vpMatrix.cpp.
Referenced by vpCalibration::calibrationTsai(), vpSimulatorAfma6::computeArticularVelocity(), vpSimulatorViper850::computeArticularVelocity(), vpServo::computeControlLaw(), vpMatrix::computeCovarianceMatrix(), vpHomography::computeDisplacement(), vpHomography::computeRotation(), vpMbEdgeTracker::computeVVS(), vpNurbs::globalCurveApprox(), vpNurbs::globalCurveInterp(), vpMeEllipse::initTracking(), vpHomography::inverse(), vpMeLine::leastSquare(), vpPose::poseDementhonNonPlan(), vpPose::poseFromRectangle(), vpPose::poseVirtualVS(), vpMatrix::pseudoInverse(), and vpMatrix::solveBySVD().
|
inherited |
Compute the pseudo inverse of the matrix .
Compute the pseudo inverse of the matrix using the SVD. return the rank
Ap | : The pseudo inverse ![]() |
svThreshold | : Threshold used to test the singular values. |
Definition at line 1770 of file vpMatrix.cpp.
References vpMatrix::pseudoInverse().
|
inherited |
Compute the pseudo inverse of the matrix .
Compute the pseudo inverse of the matrix using the SVD. return the rank and the singular value
Ap | : The pseudo inverse ![]() |
sv | : Singular values. |
svThreshold | : Threshold used to test the singular values. |
Definition at line 1826 of file vpMatrix.cpp.
References vpMatrix::pseudoInverse().
|
inherited |
Compute the pseudo inverse of the matrix along with Ker A, Ker
, Im A and Im
.
Compute the pseudo inverse of the matrix using the SVD. return the rank and the singular value, image
Pseudo inverse, kernel and image are computed using the SVD decomposition.
A is an m x n matrix, if m >=n the svd works on A other wise it works on .
Therefore if m>=n we have
where Im(A) is an m x r matrix (r is the rank of A) and Im(A^T) is an r x n matrix
Ap | : The pseudo inverse ![]() |
sv | : Singular values. |
svThreshold | : Threshold used to test the singular values. |
imAt | : Image A^T |
imA | Image A |
Definition at line 1865 of file vpMatrix.cpp.
References vpMatrix::getCols(), vpMatrix::getRows(), vpColVector::resize(), vpMatrix::resize(), vpMatrix::svd(), and vpMatrix::t().
|
inherited |
Compute the pseudo inverse of the matrix along with Ker A, Ker
, Im A and Im
.
Compute the pseudo inverse of the matrix using the SVD. return the rank and the singular value, image, kernel.
Pseudo inverse, kernel and image are computed using the SVD decomposition.
A is an m x n matrix, if m >=n the svd works on A other wise it works on .
Therefore if m>=n we have
where Im(A) is an m x r matrix (r is the rank of A) and Im(A^T) is an r x n matrix
Ap | : The pseudo inverse ![]() |
sv | : Singular values. |
svThreshold | : Threshold used to test the singular values. |
imA | Image A |
imAt | : Image A^T |
kerA | : null space of A |
Definition at line 2043 of file vpMatrix.cpp.
References vpMatrix::getCols(), vpMatrix::getRows(), vpColVector::resize(), vpMatrix::resize(), vpMatrix::row(), vpMatrix::sumSquare(), vpMatrix::svd(), and vpMatrix::t().
void vpRowVector::reshape | ( | vpMatrix & | m, |
const unsigned int & | nrows, | ||
const unsigned int & | ncols | ||
) |
Reshape methods.
reshape the row vector in a matrix
m | : the reshaped Matrix |
nrows | : number of rows of the matrix |
ncols | : number of columns of the matrix |
Definition at line 249 of file vpRowVector.cpp.
References vpMatrix::data, vpMatrix::dsize, vpMatrix::getCols(), vpMatrix::getRows(), vpMatrixException::incorrectMatrixSizeError, vpMatrix::resize(), and vpERROR_TRACE.
Referenced by reshape().
vpMatrix vpRowVector::reshape | ( | const unsigned int & | nrows, |
const unsigned int & | ncols | ||
) |
reshape the row vector in a matrix
nrows | : number of rows of the matrix |
ncols | : number of columns of the matrix |
Definition at line 237 of file vpRowVector.cpp.
References reshape().
|
inline |
Set the size of the Row vector.
Definition at line 91 of file vpRowVector.h.
References vpMatrix::resize().
Referenced by operator=(), vpMatrix::stackRows(), and vpColVector::t().
|
inherited |
Set the size of the matrix and initialize all the values to zero.
nrows | : number of rows |
ncols | : number of column |
flagNullify | : if true, then the matrix is re-initialized to 0 after resize. If false, the initial values from the common part of the matrix (common part between old and new version of the matrix) are kept. Default value is true. |
Definition at line 174 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::data, vpMatrix::dsize, vpException::memoryAllocationError, vpMatrix::rowNum, vpMatrix::rowPtrs, vpMatrix::t(), vpMatrix::trsize, vpCDEBUG, vpDEBUG_TRACE, and vpERROR_TRACE.
Referenced by vpMatrix::AAt(), vpMatrix::add2Matrices(), vpMatrix::add2WeightedMatrices(), vpMatrix::AtA(), vpServo::computeControlLaw(), vpMbTracker::computeJTR(), vpMatrix::createDiagonalMatrix(), vpMatrix::diag(), vpProjectionDisplay::display(), vpHomography::DLT(), vpMatrix::eigenValues(), vpMatrix::eye(), vpPtu46::get_eJe(), vpAfma4::get_eJe(), vpAfma6::get_eJe(), vpBiclops::get_eJe(), vpPtu46::get_fJe(), vpAfma4::get_fJe(), vpAfma6::get_fJe(), vpBiclops::get_fJe(), vpAfma4::get_fJe_inverse(), vpViper::get_fJw(), vpCameraParameters::get_K(), vpRobotCamera::init(), vpRotationMatrix::init(), vpProjectionDisplay::init(), vpVelocityTwistMatrix::init(), vpForceTwistMatrix::init(), vpKalmanFilter::init(), vpHomogeneousMatrix::init(), vpMatrix::init(), vpMatrix::insert(), vpFeatureEllipse::interaction(), vpFeatureVanishingPoint::interaction(), vpFeatureLuminance::interaction(), vpFeatureSegment::interaction(), vpGenericFeature::interaction(), vpFeatureDepth::interaction(), vpFeaturePoint::interaction(), vpFeatureLine::interaction(), vpFeaturePoint3D::interaction(), vpFeaturePointPolar::interaction(), vpFeatureThetaU::interaction(), vpFeatureTranslation::interaction(), vpMatrix::juxtaposeMatrices(), vpMatrix::kernel(), vpMatrix::loadMatrix(), vpMatrix::mult2Matrices(), vpMatrix::negateMatrix(), vpMatrix::operator*(), vpMatrix::operator/(), vpMatrix::operator=(), vpPose::poseDementhonNonPlan(), vpPose::poseDementhonPlan(), vpPose::poseVirtualVSrobust(), vpMatrix::pseudoInverse(), vpIoTools::readConfigVar(), reshape(), vpColVector::reshape(), resize(), vpColVector::resize(), vpServo::secondaryTask(), vpColVector::skew(), vpMatrix::skew(), vpMatrix::stackMatrices(), vpMatrix::sub2Matrices(), vpMatrix::svd(), vpMatrix::t(), vpMatrix::transpose(), and vpMatrix::vpMatrix().
|
inherited |
Row extraction.
Return the ith rows of the matrix.
Definition at line 2223 of file vpMatrix.cpp.
References vpMatrix::getCols().
Referenced by vpMatrix::kernel(), vpMatrix::pseudoInverse(), and vpMatrix::transpose().
|
staticinherited |
Save a matrix to a file.
filename | : Absolute file name. |
M | : Matrix to be saved. |
binary | : If true the matrix is saved in a binary file, else a text file. |
Header | : Optional line that will be saved at the beginning of the file. |
Warning : If you save the matrix as in a text file the precision is less than if you save it in a binary file.
Definition at line 3409 of file vpMatrix.cpp.
References vpMatrix::getCols(), and vpMatrix::getRows().
Referenced by vpDot2::defineDots(), and vpMatrix::saveMatrix().
|
inlinestaticinherited |
Save a matrix to a file.
filename | : absolute file name |
M | : matrix to be saved |
binary | :If true the matrix is save in a binary file, else a text file. |
Header | : optional line that will be saved at the beginning of the file |
Warning : If you save the matrix as in a text file the precision is less than if you save it in a binary file.
Definition at line 200 of file vpMatrix.h.
References vpMatrix::saveMatrix().
|
inherited |
By default set the matrix to identity. More generally set M[i][i] = val.
Definition at line 1108 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrixException::matrixError, vpMatrix::rowNum, and vpERROR_TRACE.
Referenced by vpServo::computeControlLaw(), vpHomography::computeTransformation(), vpMatrix::expm(), vpHomography::HLM(), vpRobotCamera::init(), vpFeatureThetaU::interaction(), vpMeLine::leastSquare(), vpPose::poseFromRectangle(), and vpServo::secondaryTask().
|
inline |
Return the size of the vector in term of number of columns.
Definition at line 127 of file vpRowVector.h.
References vpMatrix::getCols().
|
inherited |
Solve a linear system using Singular Value Decomposition (SVD).
Non destructive wrt. A and B.
b | : Vector ![]() |
x | : Vector ![]() |
Here an example:
Definition at line 1571 of file vpMatrix.cpp.
References vpMatrix::pseudoInverse().
Referenced by vpMatrix::solveBySVD().
|
inherited |
Solve a linear system using Singular Value Decomposition (SVD).
Non destructive wrt. A and B.
B | : Vector ![]() |
Here an example:
Definition at line 1626 of file vpMatrix.cpp.
References vpMatrix::colNum, and vpMatrix::solveBySVD().
|
inherited |
Stacks columns of a matrix in a vector.
out | : a vpColVector. |
Definition at line 1371 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::data, vpColVector::resize(), vpMatrix::rowNum, vpMatrix::rowPtrs, vpCERROR, and vpERROR_TRACE.
|
inherited |
Stacks columns of a matrix in a vector.
Definition at line 1395 of file vpMatrix.cpp.
References vpMatrix::colNum, and vpMatrix::rowNum.
Stack two Matrices C = [ A B ]^T.
Stack matrices. "Stack" two matrices C = [ A B ]^T.
A | : Upper matrix. |
B | : Lower matrix. |
Definition at line 2261 of file vpMatrix.cpp.
References vpCERROR.
Referenced by vpCalibration::calibrationTsai(), vpHomography::computeDisplacement(), vpHomography::computeRotation(), vpFeatureSegment::error(), vpFeatureEllipse::error(), vpFeatureVanishingPoint::error(), vpFeatureMomentAlpha::error(), vpGenericFeature::error(), vpFeaturePoint::error(), vpFeatureLine::error(), vpFeaturePoint3D::error(), vpFeaturePointPolar::error(), vpFeatureThetaU::error(), vpFeatureTranslation::error(), vpBasicFeature::get_s(), vpFeatureEllipse::interaction(), vpFeatureVanishingPoint::interaction(), vpFeatureSegment::interaction(), vpFeatureMoment::interaction(), vpGenericFeature::interaction(), vpFeaturePoint::interaction(), vpFeatureLine::interaction(), vpFeaturePoint3D::interaction(), vpFeaturePointPolar::interaction(), vpFeatureThetaU::interaction(), vpFeatureTranslation::interaction(), and vpMatrix::stackMatrices().
Stack two Matrices C = [ A B ]^T.
stackMatrices. "stack" two matrices C = [ A B ]^T
A | : Upper matrix. |
B | : Lower matrix. |
C | : Stacked matrix C = [ A B ]^T |
Definition at line 2290 of file vpMatrix.cpp.
References vpMatrix::getCols(), vpMatrix::getRows(), vpMatrixException::incorrectMatrixSizeError, vpMatrix::resize(), vpCERROR, and vpERROR_TRACE.
|
inherited |
Stack A at the end of the current matrix, or copy if the matrix has no dimensions : this = [ this A ]^T
Here an example for a robot velocity log :
Definition at line 2889 of file vpMatrix.cpp.
References vpMatrix::rowNum, and vpMatrix::stackMatrices().
|
inherited |
Stacks rows of a matrix in a vector
out | : a vpRowVector. |
Definition at line 1406 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::data, vpMatrix::dsize, resize(), vpMatrix::rowNum, vpCERROR, and vpERROR_TRACE.
|
inherited |
Stacks rows of a matrix in a vector.
Definition at line 1428 of file vpMatrix.cpp.
References vpMatrix::colNum, and vpMatrix::rowNum.
|
staticinherited |
Operation C = A - B.
The result is placed in the third parameter C and not returned. A new matrix won't be allocated for every use of the function (Speed gain if used many times with the same result matrix size).
Definition at line 560 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::getCols(), vpMatrix::getRows(), vpMatrixException::incorrectMatrixSizeError, vpMatrix::resize(), vpMatrix::rowNum, vpMatrix::rowPtrs, and vpERROR_TRACE.
Referenced by vpMatrix::operator-().
|
inherited |
return sum of the Aij^2 (for all i, for all j)
Definition at line 758 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::rowNum, and vpMatrix::rowPtrs.
Referenced by vpPose::calculArbreDementhon(), vpCalibration::calibrationTsai(), vpHomography::computeDisplacement(), vpHomography::computeResidual(), vpHomography::computeRotation(), vpFeatureDepth::error(), vpFeatureThetaU::error(), vpFeatureTranslation::error(), vpMbTracker::extractCylinders(), vpFeatureThetaU::interaction(), vpMatrix::kernel(), normalize(), vpColVector::normalize(), vpPose::poseDementhonNonPlan(), vpPose::poseDementhonPlan(), vpPose::poseFromRectangle(), vpPose::poseLagrangeNonPlan(), vpPose::poseLagrangePlan(), vpPose::poseVirtualVS(), vpPose::poseVirtualVSrobust(), vpMatrix::pseudoInverse(), vpServoData::save(), vpSimulatorAfma6::setPosition(), and vpSimulatorViper850::setPosition().
|
inherited |
Singular value decomposition (SVD).
w | : Vector of singular values. ![]() |
v | : Matrix ![]() |
Here an example of SVD decomposition of a non square Matrix M.
Definition at line 1700 of file vpMatrix.cpp.
References vpMatrix::getCols(), vpMatrix::getRows(), vpColVector::resize(), and vpMatrix::resize().
Referenced by vpHomography::computeDisplacement(), vpHomography::DLT(), vpMatrix::kernel(), vpPose::poseDementhonPlan(), and vpMatrix::pseudoInverse().
vpColVector vpRowVector::t | ( | ) | const |
Transpose the vector.
Transpose the row vector A.
A is defined inside the class
Definition at line 177 of file vpRowVector.cpp.
References vpMatrix::colNum, and vpMatrix::data.
|
inherited |
Compute and return the transpose of the matrix.
Definition at line 1204 of file vpMatrix.cpp.
|
inherited |
Compute At the transpose of the matrix.
At | : Resulting transpose matrix. |
Definition at line 1216 of file vpMatrix.cpp.
References vpMatrix::colNum, vpMatrix::resize(), vpMatrix::row(), vpMatrix::rowNum, vpMatrix::rowPtrs, vpCERROR, and vpERROR_TRACE.
Multiplication by a scalar Cij = x*Bij.
Definition at line 884 of file vpMatrix.cpp.
References vpMatrix::getCols(), vpMatrix::getRows(), vpMatrix::resize(), and vpERROR_TRACE.
|
related |
Compute the skew symmetric matrix of translation vector
(matrice de pre-produit vectoriel).
t | : Translation vector in input used to compute the skew symmetric matrix M. |
M | : Skew symmetric matrix of translation vector ![]() |
Definition at line 296 of file vpTranslationVector.cpp.
References vpMatrix::resize().
|
related |
This function performs generalized matrix multiplication: D = alpha*op(A)*op(B) + beta*op(C), where op(X) is X or X^T. Operation on A, B and C matrices is described by enumeration vpGEMMmethod.
For example, to compute alpha*A^T*B^T+beta*C we need to call :
If C is not used, vpGEMM must be called using an empty matrix null :
vpMatrixException::incorrectMatrixSizeError | if the sizes of the matrices do not allow the operations. |
A | : a Matrix |
B | : a Matrix |
alpha | : a scalar |
C | : a Matrix |
beta | : a scalar |
D | : a Matrix |
ops | : a scalar describing operation applied on the matrices |
Definition at line 331 of file vpGEMM.h.
References vpMatrixException::incorrectMatrixSizeError, and vpERROR_TRACE.
|
related |
Enumeration of the operations applied on matrices in vpGEMM function.
Operations are :
|
friend |
Definition at line 75 of file vpRowVector.h.
|
protectedinherited |
number of columns
Definition at line 112 of file vpMatrix.h.
Referenced by vpMatrix::AAt(), vpMatrix::add2Matrices(), vpMatrix::add2WeightedMatrices(), vpMatrix::AtA(), vpMatrix::eigenValues(), vpMatrix::expm(), vpMatrix::eye(), vpMatrix::infinityNorm(), vpSubColVector::init(), vpSubRowVector::init(), vpSubMatrix::init(), vpMatrix::init(), vpMatrix::insert(), vpMatrix::inverseByLU(), vpMatrix::kron(), vpMatrix::mult2Matrices(), vpMatrix::multMatrixVector(), vpMatrix::negateMatrix(), operator*(), vpMatrix::operator*(), vpMatrix::operator*=(), vpMatrix::operator+=(), vpMatrix::operator-=(), vpMatrix::operator/(), vpMatrix::operator/=(), vpColVector::operator<<(), vpMatrix::operator<<(), vpSubRowVector::operator=(), operator=(), vpSubMatrix::operator=(), vpMatrix::operator=(), vpMatrix::resize(), vpMatrix::setIdentity(), vpMatrix::solveBySVD(), vpMatrix::stackColumns(), vpMatrix::stackRows(), vpMatrix::sub2Matrices(), vpMatrix::sumSquare(), t(), vpMatrix::t(), vpMatrix::transpose(), vpMatrix::vpMatrix(), vpSubColVector::vpSubColVector(), vpSubMatrix::vpSubMatrix(), and vpSubRowVector::vpSubRowVector().
|
inherited |
address of the first element of the data array
Definition at line 116 of file vpMatrix.h.
Referenced by vpMatrix::AtA(), vpSubColVector::checkParentStatus(), vpSubRowVector::checkParentStatus(), vpSubMatrix::checkParentStatus(), vpPose::computeResidual(), vpHomography::computeResidual(), vpPose::computeTransformation(), vpHomography::computeTransformation(), vpColVector::dotProd(), vpMatrix::eigenValues(), vpMatrix::euclideanNorm(), vpRobotViper850::getForceTorque(), vpMatrix::getMaxValue(), vpMatrix::getMinValue(), vpRobotViper850::getPosition(), vpRobotViper850::getVelocity(), vpSubColVector::init(), vpSubRowVector::init(), vpSubMatrix::init(), vpMatrix::init(), vpRobotViper850::init(), vpColVector::invSort(), vpMatrix::kill(), vpColVector::mean(), vpColVector::median(), operator*(), vpColVector::operator*(), vpTranslationVector::operator*(), vpHomography::operator*(), vpColVector::operator+(), vpTranslationVector::operator-(), vpColVector::operator-(), vpHomography::operator/(), vpSubColVector::operator=(), vpSubRowVector::operator=(), operator=(), vpColVector::operator=(), vpTranslationVector::operator=(), vpMatrix::operator=(), operator[](), vpColVector::operator[](), vpPose::ransac(), vpHomography::ransac(), reshape(), vpColVector::reshape(), vpMatrix::resize(), vpRobotAfma4::setPosition(), vpRobotViper850::setPosition(), vpRobotAfma4::setVelocity(), vpRobotAfma6::setVelocity(), vpRobotViper850::setVelocity(), vpColVector::sort(), vpMatrix::stackColumns(), vpMatrix::stackRows(), t(), vpColVector::t(), vpColVector::vpColVector(), vpMatrix::vpMatrix(), vpSubColVector::vpSubColVector(), vpSubMatrix::vpSubMatrix(), vpSubRowVector::vpSubRowVector(), vpSubColVector::~vpSubColVector(), vpSubMatrix::~vpSubMatrix(), and vpSubRowVector::~vpSubRowVector().
|
protectedinherited |
Current size (rowNum * colNum)
Definition at line 122 of file vpMatrix.h.
Referenced by vpMatrix::euclideanNorm(), vpMatrix::getMaxValue(), vpMatrix::getMinValue(), vpSubColVector::init(), vpSubRowVector::init(), vpSubMatrix::init(), vpMatrix::init(), vpTranslationVector::operator*(), vpTranslationVector::operator-(), vpMatrix::operator=(), reshape(), vpColVector::reshape(), vpMatrix::resize(), vpMatrix::stackRows(), vpSubColVector::vpSubColVector(), vpSubMatrix::vpSubMatrix(), and vpSubRowVector::vpSubRowVector().
|
protectedinherited |
number of rows
Definition at line 110 of file vpMatrix.h.
Referenced by vpMatrix::AAt(), vpMatrix::add2Matrices(), vpMatrix::add2WeightedMatrices(), vpMatrix::AtA(), vpColVector::deg2rad(), vpMatrix::eigenValues(), vpMatrix::expm(), vpMatrix::eye(), vpMatrix::infinityNorm(), vpSubColVector::init(), vpSubRowVector::init(), vpSubMatrix::init(), vpMatrix::init(), vpMatrix::insert(), vpMatrix::inverseByLU(), vpMatrix::kron(), vpMatrix::mult2Matrices(), vpMatrix::multMatrixVector(), vpMatrix::negateMatrix(), vpColVector::operator*(), vpHomogeneousMatrix::operator*(), vpMatrix::operator*(), vpMatrix::operator*=(), vpColVector::operator+(), vpMatrix::operator+=(), vpColVector::operator-(), vpMatrix::operator-=(), vpMatrix::operator/(), vpMatrix::operator/=(), vpColVector::operator<<(), vpMatrix::operator<<(), vpSubColVector::operator=(), vpSubRowVector::operator=(), operator=(), vpSubMatrix::operator=(), vpColVector::operator=(), vpTranslationVector::operator=(), vpMatrix::operator=(), vpColVector::rad2deg(), vpMatrix::resize(), vpMatrix::setIdentity(), vpMatrix::stackColumns(), vpMatrix::stackMatrices(), vpMatrix::stackRows(), vpMatrix::sub2Matrices(), vpMatrix::sumSquare(), vpColVector::t(), vpMatrix::t(), vpMatrix::transpose(), vpMatrix::vpMatrix(), vpSubColVector::vpSubColVector(), vpSubMatrix::vpSubMatrix(), and vpSubRowVector::vpSubRowVector().
|
protectedinherited |
address of the first element of each rows
Definition at line 119 of file vpMatrix.h.
Referenced by vpMatrix::AAt(), vpMatrix::add2Matrices(), vpMatrix::add2WeightedMatrices(), vpMatrix::infinityNorm(), vpSubColVector::init(), vpSubRowVector::init(), vpSubMatrix::init(), vpMatrix::init(), vpMatrix::kill(), vpMatrix::mult2Matrices(), vpMatrix::multMatrixVector(), vpMatrix::negateMatrix(), vpRotationMatrix::operator*(), vpVelocityTwistMatrix::operator*(), vpForceTwistMatrix::operator*(), vpHomogeneousMatrix::operator*(), vpMatrix::operator*(), vpMatrix::operator*=(), vpMatrix::operator+=(), vpMatrix::operator-=(), vpMatrix::operator/(), vpMatrix::operator/=(), vpColVector::operator<<(), vpMatrix::operator<<(), operator=(), vpSubMatrix::operator=(), vpRotationMatrix::operator=(), vpVelocityTwistMatrix::operator=(), vpForceTwistMatrix::operator=(), vpHomogeneousMatrix::operator=(), vpMatrix::operator=(), vpMatrix::resize(), vpMatrix::stackColumns(), vpMatrix::sub2Matrices(), vpMatrix::sumSquare(), vpMatrix::transpose(), vpSubColVector::vpSubColVector(), vpSubMatrix::vpSubMatrix(), and vpSubRowVector::vpSubRowVector().
|
protectedinherited |
Total row space.
Definition at line 124 of file vpMatrix.h.
Referenced by vpSubColVector::init(), vpSubRowVector::init(), vpSubMatrix::init(), vpMatrix::init(), vpMatrix::resize(), vpSubColVector::vpSubColVector(), vpSubMatrix::vpSubMatrix(), and vpSubRowVector::vpSubRowVector().