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