Language Reference

HOMOGEN Function

solves homogeneous linear systems

HOMOGEN( matrix)

where matrix is a numeric matrix or literal.

The HOMOGEN function solves the homogeneous system of linear equations a*x=0 for x. For at least one solution vector x to exist, the m x n matrix a, m \geq n, has to be of rank r \lt n. The HOMOGEN function computes an n x (n-r) column orthonormal matrix x with the property a*x=0, x^' x=i. If a^'a is ill-conditioned, rounding-error problems can occur in determining the correct rank of a and in determining the correct number of solutions x. Consider the following example (Wilkinson and Reinsch 1971, p. 149):

  
    a={22  10   2   3   7, 
       14   7  10   0   8, 
       -1  13  -1 -11   3, 
       -3  -2  13  -2   4, 
        9   8   1  -2   4, 
        9   1  -7   5  -1, 
        2  -6   6   5   1, 
        4   5   0  -2   2}; 
    x=homogen(a);
 

These statements produce the following solution:

  
           X             5 rows      2 cols    (numeric) 
  
                        -0.419095          0 
                        0.4405091  0.4185481 
                        -0.052005  0.3487901 
                        0.6760591   0.244153 
                        0.4129773  -0.802217
 
In addition, this function could be used to determine the rank of an m x n matrix a, m \geq n.

If x is an n x m matrix, then, in addition to the memory allocated for the return matrix, the HOMOGEN function temporarily allocates an n^2 + nm array for performing its computation.

Previous Page | Next Page | Top of Page