View Issue Details

IDProjectCategoryView StatusLast Update
0000913OpenFOAMBugpublic2015-02-05 09:24
Reporterhk318i Assigned Tohenry  
PriorityhighSeverityminorReproducibilityalways
Status closedResolutionno change required 
PlatformLinuxOSOtherOS Version(please specify)
Summary0000913: SVD outputs vectors and values have wrong arrangement
DescriptionBased on Singular Value decomposition theory, the diagonal matrix S values should arranged in decreasing order. Also U and V matrices should be arranged based on S matrices.

The problem in the current implementation is that the output for the three matrices are wrong however the values are right.

I compared the results against GNU Scientific Library (GSL) and Octave.
TagsNo tags attached.

Activities

user17

2013-07-08 15:47

  ~0002312

This is true. Do you need them in descending order?

hk318i

2013-07-08 15:49

reporter   ~0002313

yes, I do

user17

2013-07-08 16:30

  ~0002314

You can sort U, V and S yourself if you need it. It is only a convention that they are sorted in descending order. None of our applications have required it so far.

hk318i

2013-07-08 16:51

reporter   ~0002315

Thank you, I will modify it. Could you confirm which method is used in OpenFOAM?

user17

2013-07-09 09:25

  ~0002316

Bidiagonalization followed by QR.

Another decent library is Eigen, which uses a different method:

http://eigen.tuxfamily.org/dox/classEigen_1_1JacobiSVD.html

Issue History

Date Modified Username Field Change
2013-07-08 15:16 hk318i New Issue
2013-07-08 15:47 user17 Note Added: 0002312
2013-07-08 15:49 hk318i Note Added: 0002313
2013-07-08 16:30 user17 Note Added: 0002314
2013-07-08 16:51 hk318i Note Added: 0002315
2013-07-09 09:25 user17 Note Added: 0002316
2015-02-05 09:24 henry Status new => closed
2015-02-05 09:24 henry Assigned To => henry
2015-02-05 09:24 henry Resolution open => no change required