Man page - linalgebra(3)
Packages contains this manual
Manual
LinearAlgebra
NAMESYNOPSIS
ARGUMENTS
DESCRIPTION
ERRORS
SEE ALSO
NAME
vpIdentity3, vpIdentity4, vpNormalize3, vpMatrixVectorMult4, vpMatrixMult4, vpCrossProduct, vpSolveSystem4, vpSetVector3, vpSetVector4 - linear algebra routines
SYNOPSIS
#include <volpack.h>
void
|
vpIdentity3( m_dst ) |
vpMatrix3 m_dst;
void
|
vpIdentity4( m_dst ) |
vpMatrix4 m_dst;
vpResult
|
vpNormalize3( v_src1 ) |
vpVector3 v_src1;
void
|
vpMatrixVectorMult4( v_dst, m_src1, v_src1 ) |
vpVector4 v_dst;
|
vpMatrix4 m_src1; |
||
|
vpVector4 v_src1; |
void
|
vpMatrixMult4( m_dst, m_src1, m_src2 ) |
vpVector4 m_dst, m_src1, m_src2;
void
|
vpCrossProduct( v_dst, v_src1, v_src2 ) |
vpVector3 v_dst, v_src1, v_src2;
vpResult
|
vpSolveSystem4( m_src1, b, count ) |
vpMatrix4 m_src1;
|
vpVector4 b[]; |
||
|
int count; |
void
|
vpSetVector3( v_dst, x, y, z ) |
vpVector3 v_dst;
|
double x, y, z; |
void
|
vpSetVector4( v_dst, x, y, z, w ) |
vpVector4 v_dst;
|
double x, y, z, w; |
ARGUMENTS
m_src1, m_src2, m_dst
Source and destination matrices.
v_src1, v_src2, v_dst
Source and destination vectors.
|
b |
Array of right-hand-side vectors. |
|||
|
count |
Number of right-hand-side vectors. |
x, y, z, w
Vector components.
DESCRIPTION
These routines form a simple linear algebra package used internally by VolPack. The routines are also available as utility routines for use by the application.
vpIdentity3 assigns the identity matrix to a 3-by-3 matrix.
vpIdentity4 assigns the identity matrix to a 4-by-4 matrix.
vpNormalize3 normalizes a 3-element vector (so the magnitude is 1.0). The result overwrites the source vector.
vpMatrixVectorMult4 multiplies a 4-by-4 matrix by a 4-element column vector and stores the result in the destination vector (v_dst = m . v_src) .
vpMatrixMult4 multiplies two 4-by-4 matrices and stores the result in the destination matrix (m_dst = m_src1 . m_src2) .
vpCrossProduct computes the cross product of two 3-element vectors and stores the result in the destination vector (v_dst = v_src1 x v_src2) .
vpSolveSystem4 solves the linear system m . x = b for each right-hand-side vector in the b array. The solution vectors overwrite the vectors in the b array. The solution is computed using Gauss-Jordan elimination with partial pivoting and implicit scaling.
vpSetVector3 initializes the components of a 3-element vector (v_dst = [x, y, z]). It is a macro.
vpSetVector4 initializes the components of a 4-element vector (v_dst = [x, y, z, w]). It is a macro.
ERRORS
vpNormalize3
and
vpSolveSystem4
normally return VP_OK. The
following error return value is possible:
VPERROR_SINGULAR
The vector is a 0 vector ( vpNormalize3 only), or the matrix is singular ( vpSolveSystem4 only).
SEE ALSO
VolPack(3)