Showing results for

- Intel Community
- Software
- Software Development SDKs and Libraries
- Intel® oneAPI Math Kernel Library
- Theoretically same matrix, 2 results

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

apocalx

Beginner

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

08-24-2011
12:17 PM

84 Views

Theoretically same matrix, 2 results

A:

[1,1] =222222.22222222-j222222.22222222

[1,2] = -222222.22222222+j222222.22222222

[1,3] = 1+j0

[1,9] = -1+j0

[2,2] = 222238.30206999-j222278.5016894

[2,10] = -16.079847764363+j56.27946717527

[3,3] = 0+j0

[3,4] = -1+j0

[4,4] = 222222.22222222-j222222.22222222

[4,5] = -222222.22222222+j222222.22222222

[4,6] = 1+j0

[5,5] = 222238.30206999-j222278.5016894

[5,11] = -16.079847764363+j56.27946717527

[6,6] = 0+j0

[6,7] = -1+j0

[7,7] = 222222.22222222-j222222.22222222

[7,8] = -222222.22222222+j222222.22222222

[7,9] = 1+j0

[8,8] = 222238.30206999-j222278.5016894

[8,12] = -16.079847764363+j56.27946717527

[9,9] = 0+j0

[10,10] = 16.079847764363-j56.27946717527

[11,11] = 16.079847764363-j56.27946717527

[12,12] = 16.079847764363-j56.27946717527

B: (All values are 0.0 except)

[2] = 1.0+j0.0

For this system, I get this result :

X:

[1] = 424279418162.948180 -j 1979970618093.757800

[2] = 424279418162.948180 -j 1979970618093.757800

[3] = 0.000000 +j 0.000000

[4] = 424279418162.948180 -j 1979970618093.757800

[5] = 424279418162.948180 -j 1979970618093.757800

[6] = 0.000000 +j 0.000000

[7] = 424279418162.948180 -j 1979970618093.757800

[8] = 424279418162.948180 -j 1979970618093.757800

[9] = 0.000000 +j 0.000000

[10] = 424279418162.948180 -j 1979970618093.757800

[11] = 424279418162.948180 -j 1979970618093.757800

[12] = 424279418162.948180 -j 1979970618093.757800

If I try to resolve the same system Ax=B by adding explicitly some 0.0 in my matrix :

A:

[1,1] = 222222.22222222-j222222.22222222

[1,2] = -222222.22222222+j222222.22222222

[1,3] = 1+j0

[1,9] = -1+j0

[2,2] = 222238.30206999-j222278.5016894

[2,5] = 0+j0

[2,8] = 0+j0

[2,10] = -16.079847764363+j56.27946717527

[2,11] = -0+j0

[2,12] = -0+j0

[3,3] = 0+j0

[3,4] = -1+j0

[4,4] = 222222.22222222-j222222.22222222

[4,5] = -222222.22222222+j222222.22222222

[4,6] = 1+j0

[5,5] = 222238.30206999-j222278.5016894

[5,8] = 0+j0

[5,10] = -0+j0

[5,11] = -16.079847764363+j56.27946717527

[5,12] = -0+j0

[6,6] = 0+j0

[6,7] = -1+j0

[7,7] = 222222.22222222-j222222.22222222

[7,8] = -222222.22222222+j222222.22222222

[7,9] = 1+j0

[8,8] = 222238.30206999-j222278.5016894

[8,10] = -0+j0

[8,11] = -0+j0

[8,12] = -16.079847764363+j56.27946717527

[9,9] = 0+j0

[10,10] = 16.079847764363-j56.27946717527

[10,11] = 0+j0

[10,12] = 0+j0

[11,11] = 16.079847764363-j56.27946717527

[11,12] = 0+j0

[12,12] = 16.079847764363-j56.27946717527

I get this result:

X:

[1] = 442367.885616 +j 3.823953

[2] = 442367.885618 +j 3.823955

[3] = 0.000000 -j0.000001

[4] = 442367.885616 +j 3.823953

[5] = 442367.885616 +j 3.823953

[6] = 0.000000 +j 0.000001

[7] = 442367.885616 +j 3.823953

[8] = 442367.885616 +j 3.823953

[9] = 0.000000 +j 0.000000

[10] = 442367.885618 +j 3.823955

[11] = 442367.885616 +j 3.823953

[12] = 442367.885616 +j 3.823953

Why the fact of adding some 0.0 give me differents results?

MarcB

Link Copied

7 Replies

Alexander_K_Intel2

Employee

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

08-24-2011
06:15 PM

84 Views

Please attach your testcase with compile line here, it could help us to reproduce your issue with your input parameters (like mtype, iparm and so on).

With best regards,

Alexander Kalinkin

Gennady_F_Intel

Moderator

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

09-08-2011
07:36 AM

84 Views

any update?Would you please give us the example for checking the problem on our side?

--Gennady

apocalx

Beginner

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

09-08-2011
10:26 AM

84 Views

I will build a small test case with my case and post it on the forum in next day

apocalx

Beginner

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

09-09-2011
08:13 AM

84 Views

In the test case, I have 2 symmetrical sparses matrix 12x12 (complex number)

In the first one, I have 24 values on diagonal and in upper triangle.

In the second one, I have the same 24 values at the same place in the matrix + 12 values equals to 0.0.

These 12 values are not on the diagonal but in the upper triangle.

So, if I well understand sparse matrix, these 2 matrices are equals.

The only different that I'm expecting is in the symbolic factorisation and permutation, not in the result.

Why I get differents results with theorically the same matrices?

Thanks

Gennady_F_Intel

Moderator

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

09-12-2011
04:57 AM

84 Views

just for info : the same problemThe matrix is singular. The last row is all zeros. see more details here:

http://software.intel.com/en-us/forums/showthread.php?t=85881&o=a&s=lr
apocalx

Beginner

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

09-12-2011
06:29 AM

84 Views

My matrix is symmetrical, so some upper triangle row are all to zero, but when you watch the entire matrix(upper and lower triangle), all row have at least 1 non zeros number!

For example : The only upper triangular row that is all equal to zero is row #9 with [9,9] = 0 + j0

But, we have also have [1,9] = -1 + j0.

So, in the full matrix (upper and lower triangle), the row #9 is not all equal to zero

Marc

Alexander_K_Intel2

Employee

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

09-12-2011
07:43 AM

84 Views

Hi,

When I've multiply your matrix on vector with components all set to 1 I've got zero vector (let call it y). It's mean that your matrix have zero Eigen number. It's mean that if vector x is solution of your system Ax=b then x+c*y also solution of your system, where c could be any number. So, on my point of view, pardiso solver provided your different solutions in different time but all these solutions are correct!

With best regards,

Alexander Kalinkin

- 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.