Turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- Intel Community
- Software
- Software Development SDKs and Libraries
- Intel® oneAPI Math Kernel Library
- Extract upper/lower triangular matrix of sparse (CSR) symmetric matrices

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page

enpex

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

02-02-2012
01:57 AM

230 Views

Extract upper/lower triangular matrix of sparse (CSR) symmetric matrices

I am trying to use PARDISO to solve a sparse linear least-squares problem Ax=b, where A is a m-by-n matrix with m>n. Let's assume I already constructed A in CSR-format.

In order to solve that system using sparse solvers I learned that it is necessary to compute C=(A' A) and d=(A' b) and then solve Cx=d instead (see here). So, I compute C using mkl_?csrmultcsr.

The problem: since C is symmetric, PARDISO expects it to be an upper triangular matrix, which it is not after using mkl_?csrmultcsr. So, the matrix checker (iparm(26)=1) fails.

My question: Is there another function in the MKL which extracts the upper/lower triangular matrix of a whole matrix?

Thank you in advance for you time and suggestions,

Nils

1 Solution

Alexander_K_Intel2

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

02-02-2012
02:15 AM

230 Views

From my point of view the best solution in this case is to set matrix C as unsymmetric and use full format of matrix C.

With best regards,

Alexander Kalinkin

Link Copied

2 Replies

Alexander_K_Intel2

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

02-02-2012
02:15 AM

231 Views

From my point of view the best solution in this case is to set matrix C as unsymmetric and use full format of matrix C.

With best regards,

Alexander Kalinkin

enpex

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

02-03-2012
03:30 AM

230 Views

Thanks for your answer. This is exactly how I am doing it at the moment. I just wondered if there exists another way. So, know I know - thanks!

Regards,

Nils

Topic Options

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

For more complete information about compiler optimizations, see our Optimization Notice.