by **susan_ex2_texas** » Mon Jun 29, 2009 2:19 pm

Thank you! Okay, I just want to be absolutely sure that I have this right. The Lapack call dgeqp3 takes the following:

* JPVT (input/output) INTEGER array, dimension (N)

* On entry, if JPVT(J).ne.0, the J-th column of A is permuted

* to the front of A*P (a leading column); if JPVT(J)=0,

* the J-th column of A is a free column.

* On exit, if JPVT(J)=K, then the J-th column of A*P was the

* the K-th column of A.

Since I don't know anything about the rank and columns of my matrix beforehand, I initialize the array JPVT to zero, and then pass it to db3qp3. On exit, I walk the array JPVT, and find *any* column with a non-zero entry. These columns form a maximal linearly independent set.

Or, do I need to know the rank of A, and find only the columns that have been permuted to the 1 -> rank(A) position?

Thank you very much! I am sure this is a very basic question, so I apologize for taking time!

Very best regards,

Susan