- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi - I'm having trouble deciphering an error code. When I run Phase=11 in Pardiso I get the following error messages. However, I've checked the input arrays and they seem to be reasonable. Any thoughts on what I'm missing?
When iparm(27)=0:
*** Error in PARDISO ( sequence_ido,parameters) error_num= 8
*** Input check: ia(neqns+1)_new -1 _old 0 are incompatible
*** Input parameters: inconsistent error= 8 max_fac_store_in: 1
matrix_number_in : 1 matrix_type_in : 2
ido_in : 11 neqns_in : 14751
ia(neqns_in+1)-1 : -1 nb_in : 1
And when iparm(27)=1:
*** Error in PARDISO ( sequence_ido,parameters) error_num= 18
*** Input check: unexpected error with working arrays ia and/or ja
To derive the input arrays I've used the following code to extract the sparse storage form from a full upper triangular matrix GLKF(NEQ,NEQ) where nomenclature JA = COLUMNS, IA = ROWINDEX, A = VALUES:
KOUNT=COUNT(GLKF/=0d0)
ALLOCATE ( VALUES(KOUNT), COLUMNS(KOUNT), ROWINDEX(NEQ+1) )
KOUNTER = KOUNT
KOUNT = 0
ROWINDEX(1)=1
DO J=1,NEQ
ROWINDEX(J+1)=ROWINDEX(J)
DO I=1,NEQ
IF (GLKF(J,I)/=0.OR.I==J) THEN
ROWINDEX(J+1)=ROWINDEX(J+1)+1
KOUNT=KOUNT+1
VALUES(KOUNT)=GLKF(J,I)
COLUMNS(KOUNT)=I
END IF
END DO
END DO
Many thanks!
When iparm(27)=0:
*** Error in PARDISO ( sequence_ido,parameters) error_num= 8
*** Input check: ia(neqns+1)_new -1 _old 0 are incompatible
*** Input parameters: inconsistent error= 8 max_fac_store_in: 1
matrix_number_in : 1 matrix_type_in : 2
ido_in : 11 neqns_in : 14751
ia(neqns_in+1)-1 : -1 nb_in : 1
And when iparm(27)=1:
*** Error in PARDISO ( sequence_ido,parameters) error_num= 18
*** Input check: unexpected error with working arrays ia and/or ja
To derive the input arrays I've used the following code to extract the sparse storage form from a full upper triangular matrix GLKF(NEQ,NEQ) where nomenclature JA = COLUMNS, IA = ROWINDEX, A = VALUES:
KOUNT=COUNT(GLKF/=0d0)
ALLOCATE ( VALUES(KOUNT), COLUMNS(KOUNT), ROWINDEX(NEQ+1) )
KOUNTER = KOUNT
KOUNT = 0
ROWINDEX(1)=1
DO J=1,NEQ
ROWINDEX(J+1)=ROWINDEX(J)
DO I=1,NEQ
IF (GLKF(J,I)/=0.OR.I==J) THEN
ROWINDEX(J+1)=ROWINDEX(J+1)+1
KOUNT=KOUNT+1
VALUES(KOUNT)=GLKF(J,I)
COLUMNS(KOUNT)=I
END IF
END DO
END DO
Many thanks!
Link Copied
5 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The values of KOUNT from the first line of code shown above will not agree with the that after the nested loops since you handle zero-valued diagonal elements differently in the two places.
Depending on how you call PARDISO, a consistency check would catch this discrepancy.
Depending on how you call PARDISO, a consistency check would catch this discrepancy.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks mecej4, but earlier in the code I check for zeros on the diagonal - there are none if we get to this point. Any thoughts on the specific error messages?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If there are no zeros on the diagonal, why do you have this statement:
IF (GLKF(J,I)/=0.OR.I==J) THEN
If there are some zero values on the principal diagonal when this statement is executed, the statements in the IF block will be executed even for those zero elements.
IF (GLKF(J,I)/=0.OR.I==J) THEN
If there are some zero values on the principal diagonal when this statement is executed, the statements in the IF block will be executed even for those zero elements.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I was worried that would be a hang up in getting my question answered. The .OR.I==J code functions but doesn't have an effect - it's residual from a previous attempt at remedy. As I stated previously, no zeros on the diagonal. That's taken care of previously.
Do you know where I can find out more about the various error codes cited in my original post?
Do you know where I can find out more about the various error codes cited in my original post?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
One can see the next line: "ia(neqns_in+1)-1 : -1" so its seem that you have some problem with ia array. Could you print the value of neqns and ia(neqns_in+1) before first pardiso call?
With best regards,
Alexander Kalinkin

Reply
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