Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
LinearAlgebra(3)	   Library Functions Manual	      LinearAlgebra(3)

NAME
       vpIdentity3,  vpIdentity4, vpNormalize3,	vpMatrixVectorMult4, vpMatrix-
       Mult4, 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 elimina-
       tion 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)

VolPack							      LinearAlgebra(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=volpack-LinAlgebra&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help