Re: [eigen] [Sparse][LU] scale factors |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] [Sparse][LU] scale factors
- From: Gael Guennebaud <gael.guennebaud@xxxxxxxxx>
- Date: Wed, 10 Nov 2010 15:23:22 +0100
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:mime-version:received:in-reply-to :references:from:date:message-id:subject:to:content-type :content-transfer-encoding; bh=sZuVnKntf4T3PkBzzqUrjIPdXwJ9TX7p0aD5W+4duXU=; b=Meut9p7pVZEMeHblFpP8A7qmhYheMfmdPpHlx2sAaHVUbMUAk18M5pP+uWdjTwsMUK 2myjiXvzdDX3rEKkut4PVMpqPxfxY+TH4xOCbgs/vg5LaJDLCJElpaZ4on7glHLKHfZr h8b/ArErPexUEzyBZuTLuexZqZUza7RxktUiw=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type:content-transfer-encoding; b=O7ocd7Pe8lKxOu0INmiZPw05VJioUGDTjuCnDWSO8xtj7EwwQln4fvXjOSRLpLQDen ugYrKInk8BE+1WAvPRSVCln0qHUO/yRrOyi3lOmWK+pJheHUQ42BokPbKUrg2PVVu9MQ TUDnym888AtFqHAPQxTptfn5jLbcr1ynnDEGU=
On Wed, Nov 10, 2010 at 10:54 AM, <bernard.hugueney@xxxxxxxxxx> wrote:
>
> Hi,
> I'm using SuperLU and UmfPack backends for Sparse matrix LU decompositions.
> Those backends expose the P and Q permutations, but not the scaling factors
> (I believe that SuperLU backend gets them but does not give access[0], while
> UmfPack backend does not read the
> scaling factors [1], for UmfPack, one would also need acces to the do_recip
> flag).
>
> Are there some strong reasons not to provide those access ?
no particular reason...
> PS: Is there a "nice" way to convert the permutations vectors to sparse
> matrices such that P* and *Q do the permutation ?
The best would be to support products such as: PermutationMatrix times
a sparse matrix.
> I'm well aware that this would not be the proper way to perform those
> permutations, but I need thoses sparse matrices anyway
> , and my current code reading the values in the vectors and setting the 1..
> by hand in the sparse matrix feels ugly.
Feel free to provide a patch adding:
template<int Size, int SizeAtCompileTime>
Derived& operator=(const PermutationMatrix<Size,SizeAtCompileTime>& perm);
into SparseMatrixBase;
gael.
> PS2: I saw that Scipy patched SuperLU [2], and while I'm against embedding
> libraries, those patches seem serious ☹
>
> [0]
> https://bitbucket.org/eigen/eigen/src/tip/unsupported/Eigen/src/SparseExtra/SuperLUSupport.h#cl-370
> [1]
> https://bitbucket.org/eigen/eigen/src/10990f843213/unsupported/Eigen/src/SparseExtra/UmfPackSupport.h#cl-306
> [2]
> http://projects.scipy.org/scipy/log/trunk/scipy/sparse/linalg/dsolve/SuperLU/SRC?rev=6355
>
>
>