Hi,
first of all: I have been using Lapack++ over the last two years and,
well, thanks a lot for developing it. It has been of much use in my
research (I'm an OR PhD student).
I am registering an issue when solving an ill-conditioned system Ax = b,
where
A = [ 0.138071 -0.683418 0.169102 ;
-0.333333 -0.471405 0.816497 ;
1 -2.82843 0 ]
and b = [ 1 1 1]'.
The solutions I get, with the three LinearSolve functions in Lapack++, are
LaLinearSolve: [1.04761e+15 3.70385e+14 6.41525e+14]
with residuals = [0.0132217 -0.00119019 -0.117126]
LaLULinearSolve: [1.04761e+15 3.70385e+14 6.41525e+14]
with residuals = [0.0132217 -0.00119019 -0.117126]
LaQRLinearSolve: [9.25854e+14 3.27339e+14 5.66968e+14]
with residuals = [-0.0255127 0.099823 0.0626831]
With GNU Octave 3.3.3. I get the solution:
-2.6147e+06
-9.2445e+05
-1.6012e+06
with residuals
1.00000
1.00000
1.00000
I though the underlying FORTRAN LAPACK routines used by Lapack++ and
Octave were the same, though it seems that they are not. Is it possible
that there is some issue in the linear system solving routines?
Can I give you more any more detailed information?
Thanks a lot,
-Stefano
|