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

Does anyone know if the MKL Fast Poisson Solver can be used for the nonlinear Poisson eqn?

vahid_a_
Novice
786 Views

Hello,

Is it possible to modify the Intel MKL Fast Poisson Solver for the problem of type:

Δ .[K(u). Δ(u) ] = f 

where Δ is the gradient symbol (I didn't find the reverse triangle in the special characters). K(u) is a positive differentiable function dependent on the position. Check the equation here: 

http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.645.5026&rep=re...

The difference between the above equation and the demonstrated Poisson eqn. at MKL Poisson solver page is the term K(u).

 

0 Kudos
5 Replies
mecej4
Honored Contributor III
786 Views

If the boundary values of u are known, you can reduce the problem to the linear Poisson problem by employing the Kirchoff transformation φ =  \int K(u) du. What types of boundary conditions are you given?

0 Kudos
vahid_a_
Novice
786 Views

The boundary values are known.

I have a 2D domain where the right and left boundaries are period and the top and bottom are Neumann BCs. However, in my case, I dont have an exact function for K(u) to integrate. K values are given over the domain. Hence, K(x,y) is a very in-homogenous distribution. Let me rewrite the equation as:

Δ .[ K(x,y). Δ( u(x,y) ) ] = f 

where the BCs are:

Neumann @ top/bottom

Period @ left/right

 

0 Kudos
mecej4
Honored Contributor III
786 Views

Originally you wrote K = K(u), now you say K = K(x,y). The two are not equivalent, and Kirchoff's transformation does not help if K is not known in terms of u.

0 Kudos
vahid_a_
Novice
786 Views

I was also confused when I first generated this topic. I saw the 1st equation form in that paper and I asked my question. Nevertheless, is there any fast method to solve the below equation other than Successive over relation (SOR) method?

Δ .[ K(x,y). Δ( u(x,y) ) ] = f 

0 Kudos
mecej4
Honored Contributor III
786 Views

If you know K(x,y) and the source/sink function f is not dependent on u, the problem is linear. The title of the thread could be misleading.

In contrast to the case where K is a constant, the coefficients in the difference equations vary over the grid. You may use any sparse linear equation solver for your problem, such as Pardiso.

0 Kudos
Reply