Go to the previous, next section.
The perpendicular method takes a fract_vector as an
argument. It returns TRUE if the dot product of its argument and
each of the basis vectors in the space is 0. The space_full
method checks to see if the vector space's basis vectors span the entire
space.
The proj_matrix method calculates the projection matrix for the
vector space. This matrix projects any vector b onto the vector
space. Let the current vector space be the column space for a matrix
A, and resulting matrix be P. Also, let AT be the
transpose of A. The projection is calculated using: P = A
* ((AT * A)^-1)*AT.
The beautify method simplifies the basis vectors in the space.
For example:
{(3, 0, 0), (8, 0, -5)} ==> {(1, 0, 0), (0, 0, 1)}
The reduce_magnitude method will try to maximally reduce the
numerator of the fractions in the basis vectors of the space. The
fill_space method increases the space dimension of the vector
space to the value given as its argument.
The method in determines if its fract_vector argument is
spanned by the vector space. The argument is factored with the LU
decomposition of the vector space's matrix representation. If the
resulting factored vector is dependent, then it is already in the vector
space. Finally, the method insert will insert its
fract_vector argument into the vector space, if the argument is
not already in the space.
Go to the previous, next section.