Poster of Linux kernelThe best gift for a Linux geek
LinearAlgebra

LinearAlgebra

Section: C Library Functions (3) Updated:
Local index Up
 

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)


 

Index

NAME
SYNOPSIS
ARGUMENTS
DESCRIPTION
ERRORS
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 21:49:24 GMT, April 16, 2011