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

Hi~

I'm trying to use Poisson Solver Routines to solver Poisson equation on a whole sphere. After reading the manual, I compile and execute the example code 'd_sph_with_poles_f.f90' with command 'make libintel64 function=d_sph_with_poles_f threading=sequential'. The solution of Helmholtz problem seems to be OK, but when I set q = 0.0D0 to solve the Poisson problem, I got the following error message:

"The problem is degenerate due to rounding errors. The approximate solution that provides the minimal Euclidean norm of the solution will be computed"

Disable 'if (stat.ne.0) goto 999' would allow me to get the solution. I change the parameter to 'np=360,nt=180' and plot the result. It seems to be OK.

I also test another Poisson problem:

u(ip,it) = cos(theta_i)*((sin(theta_i))**2.0)*cos(2.0*(phi_i-1.5))

f(ip,it) = -cos(2.0*(phi_i-1.5))*cos(theta_i)*(-4.0+4.0*(cos(theta_i))**2.0-8.0*(sin(theta_i))**2.0)

the result is also satisfying.

I found a previous topic about this problem ( https://software.intel.com/en-us/forums/intel-math-kernel-library/topic/300036 ), which solve the problem in a similar way.

My question is : why did this warning occur? May the solution of Poisson problem solved by those routines still be trusted?

Thank you!

Link Copied

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

Hi,

This warning mean that solution is not unique and any solution plus const is also a solution.

Thanks,

Alex

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