Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.

PARDISO and boundary condition

array123
Beginner
313 Views
hi,
I am having a coefficient matrix.While solving it with PARDISO if i apply neumann boundary condition on all 4 sides than it solves but if i change one boundary to dirichlet it does not solve linear equation rather it gives all values as zero.
0 Kudos
3 Replies
Alexander_K_Intel2
313 Views
Hi,

PARDISO solve system of equation like Ax=b, where x is unknown vector. So could you provide way how you construct matrix A and rhs b with dirichle boundary condition?
With best regards,
Alexander Kalinkin
0 Kudos
array123
Beginner
313 Views
hi,
my domain looks like

11 21 31 41 51
12 22 32 42 52
13 23 33 43 53
now at each cell i have unknown x and at boundaries north, south and west Neumann condition is applied and for east boundary it is dirichlet.
each cell has coefficient AP(its own), AE(east), AW(west), AN(north) and AS(south)
on making coefficient matrix 'A' looks like
AP11 AE11 0 0 0 AN11 0 0 0 0 0 0 0 0 0















AW21 AP21 AE21 0 0 0 AN21 0 0 0 0 0 0 0 0















0 AW31 AP31 AE31 0 0 0 AN31 0 0 0 0 0 0 0















0 0 AW41 AP41 AE41 0 0 0 AN41 0 0 0 0 0 0















0 0 0 AW51 AP51 AE51 0 0 0 AN51 0 0 0 0 0















AS12 0 0 0 AW12 AP12 AE12 0 0 0 AN12 0 0 0 0















0 AS22 0 0 0 AW22 AP22 AE22 0 0 0 AN22 0 0 0















0 0 AS32 0 0 0 AW32 AP32 AE32 0 0 0 AN32 0 0















0 0 0 AS42 0 0 0 AW42 AP42 AE42 0 0 0 AN42 0















0 0 0 0 AS52 0 0 0 AW52 AP52 AE52 0 0 0 AN52















0 0 0 0 0 AS13 0 0 0 AW13 AP13 AE13 0 0 0















0 0 0 0 0 0 AS23 0 0 0 AW23 AP23 AE23 0 0















0 0 0 0 0 0 0 AS33 0 0 0 AW33 AP33 AE33 0















0 0 0 0 0 0 0 0 AS43 0 0 0 AW43 AP43 AE43















0 0 0 0 0 0 0 0 0 AS53 0 0 0 AW53 AP53
For doing this if neumann is to be applied at west then AP=AP +AW is done and AW=0 is set.
For doing dirichlet at say east AE=0 is set.
thus Ax =b forms here b is known and supplied.
while doing this if i am applying neumann bc's(on all sides) then PARDISO is running but if i apply dirichlet at one boundary then PARDISO does not solves equation.
0 Kudos
Alexander_K_Intel2
313 Views
Hi,

PARDISO solves system of equation Ax=b, where A and b are user defined matrix and rhs. Could you check ||Ax-b|| where A and b are your matrix and rhs, x is solution probided by PARDISO, ||u|| - some norm of vector u. If this norm is not near zero could you attach here your matrix and rhs with real number (not symbolic) and way you use PARDISO to give us opportunity to investigate problem.
With best regards,
Alexander Kalinkin
0 Kudos
Reply