Edit 4
To capture what I said in some additional comments: if you do decide to use the lowest singular value as a merit function for further root finding or minimization, as a function of the parameter κ
, then you may run into the problem that SingularValueList
will omit the lowest singular values if they are too small relative to the largest singular value. This can lead to jumps if you plot the lowest singular value versus κ
, because you aren't tracking the same singular value at all times. To insure that no singular values are omitted, one has to use
SingularValueList[m, Tolerance -> 0]
I can't answer the question of whether this is physically the best procedure, because I don't know what the physical problem is.
A very good mathematical discussion of the singular value decomposition is in Numerical Recipes in C on page 59.