hi,

i have recently installed gsl and am currently using it to solve linear
systems using QR decomposition problems.

currently i am using:
 // construct a matrix view object for GSL of the matrix to solve
  gsl_matrix_view M = gsl_matrix_view_array(A, n, m);

  // construct a vector view object of the y values
  gsl_vector_view b = gsl_vector_view_array(b, N);

  // storage space vector for the diagonal values used in QR decomp
  gsl_vector *tau = gsl_vector_alloc((MIN(n, m)));

  // allocate a return vector
  gsl_vector *x = gsl_vector_alloc(m);

  // perform QR decomposition of the matrix
  gsl_linalg_QR_decomp(&M.matrix, tau);

  // solve the system by back substitution
  gsl_linalg_QR_solve(&M.matrix, tau, &b.vector, x);



where n(=N),m are the dimensions of the matrix M and b is a vector of  rhs
values. this works perfectly well when n==m (square matrix), but as soon
as i try to solve a system with a non-square matrix i receive the
following output:

gsl: qr.c:114: ERROR: QR matrix must be square
Default GSL error handler invoked.
Abort (core dumped)


i am sure i am making some stupid error but cannot work out what it is!


thanks very much,


matt.



_______________________________________________
Help-gsl mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-gsl

Reply via email to