homSolve (Matrix)

Returns

c TRUE
if cM^T=<0> and
c
is not zero, otherwise, returns
_ FALSE
.

Arguments

The

matrix
to find an eigenvector for.

Return values

Resulting

eigenvector
, empty if it doesn't exist (see Vector).
existenceCondition
is TRUE if eigenvector exists, FALSE otherwise.

Complexity

O(size^3)

Example

"sl/algebra" useFile checkedHomSolve: [ homSolve [ v:; "v:" print v.makeRange [print "," print] each LF print ] [ drop "no result" print LF print ] if ] func; ((2.0 1.0 1.0) (-1.0 1.0 1.0) (0.0 2.0 -2.0)) makeMatrix checkedHomSolve ((2.0 1.0 1.0) (-5.0 1.0 2.0) (-1.0 0.666666 1.0)) makeMatrix checkedHomSolve ((2.0 1.0 1.0) (-5.0 2.0 2.0)) makeMatrix checkedHomSolve ((2.0 1.0) (1.0 0.5) (-2.0 -1.0)) makeMatrix checkedHomSolve
Output:
no result v:-0.111111,1.000000,-0.777778, v:0.000000,-1.000000,1.000000, v:-0.500000,1.000000,