Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- Intel Community
- Software
- Software Development SDKs and Libraries
- Intel® oneAPI Math Kernel Library
- MKL POISSON LIBRARY WARNING: The problem is degenerate up to rounding errors!

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

Chang_Lei

Beginner

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

07-20-2010
12:14 AM

98 Views

MKL POISSON LIBRARY WARNING: The problem is degenerate up to rounding errors!

I 'm using MKLPoissonlibrary to solvePoissonequations.

Theexample given by MKL is complied andexecutedsuccessfully. But for my problem, which is 3dPoissonequation with Neumann boundary condition, MKL gives waring:

The results are not like what were expected.

Is there anyone who can tell me what exactly this warning info means? Or how can I check my conditions given to MKL?Any useful suggestions areappreciated.

Link Copied

9 Replies

Alexander_K_Intel2

Employee

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

07-20-2010
01:12 AM

98 Views

It's look like you use Poisson Library with Neumann boundary condition. It's clear that solution of such equation is notunique moreover if u - solution then (u + c) is solution too where c is any constant. So Poisson Library return u with minimalEuclidean norm between all possible solutions.

With best regards,

Alexander Kalinkin

Chang_Lei

Beginner

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

07-20-2010
01:44 AM

98 Views

However, the result I got is not likely to be correct. For example, although the result obeys Neumannboundarycondition in direction *x* and *y*, but inz direction boundary nonzero gradient isvisible.

I have checked my boundary condition several times and no mistake was found.Is there any other reason for which this resultcould be obtainedif I give the correct boundary condition?

Regards.

Lei Chang

Alexander_K_Intel2

Employee

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

07-20-2010
01:50 AM

98 Views

Are your arraysbd_{a,b}x,bd_{a,b}y,bd_{a,b}z equals zero or not? If not then boundary gradient of resulted solution is not equal zero.

With best regards,

Alexander Kalinkin

Chang_Lei

Beginner

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

07-20-2010
02:16 AM

98 Views

Thanks for yourangelic patience.

Lei Chang

Alexander_K_Intel2

Employee

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

07-20-2010
02:24 AM

98 Views

Could you provide testcase to investigate the problem?

With best regards,

Alexander Kalinkin

Chang_Lei

Beginner

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

07-29-2010
11:40 PM

98 Views

It's part ofincompressible Navier-stokes solverfor multi-phase flow and is inconvenient to provide.

I have checked out some other error and now I can useMKL for my problemcorrectly.

Thank you very much!

Alexander_K_Intel2

Employee

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

07-30-2010
01:42 AM

98 Views

But if it is not asecret could you wrote in few words why dirichle boundary condition provide error?

With best regards,

Alexander Kalinkin

stathis_p_

Beginner

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

08-05-2013
09:14 AM

98 Views

Hello.

I'm having a similar problem when i'm trying to run one of the examples which i found in MKL example folder. The difference is, that when I use Neumman boundary conditions (NNNNNN) at the compilation i get the following error:

*user1@user1:~/Documents/IntelFortran/mkl_poisson_solver$ make soia32 function=d_Helmholtz_3D_f **rm -f *.mod *.o **make mkl_dfti.mod mkl_trig_transforms.mod mkl_poisson.mod d_Helmholtz_3D_f.res _IA=ia32 EXT=so RES_EXT=so **make[1]: Entering directory `/home/sat/Documents/IntelFortran/mkl_poisson_solver' **mkdir -p ./_results/intel_parallel_ia32_so **ifort -mia32 -w -c /opt/intel/composer_xe_2013.1.117/mkl/include/mkl_dfti.f90 **mkdir -p ./_results/intel_parallel_ia32_so **ifort -mia32 -w -c /opt/intel/composer_xe_2013.1.117/mkl/include/mkl_trig_transforms.f90 **mkdir -p ./_results/intel_parallel_ia32_so **ifort -mia32 -w -c /opt/intel/composer_xe_2013.1.117/mkl/include/mkl_poisson.f90 **mkdir -p ./_results/intel_parallel_ia32_so **ifort -mia32 -w source/d_Helmholtz_3D_f.f90 -L"/opt/intel/composer_xe_2013.1.117/mkl/lib/ia32" -Wl,--start-group "/opt/intel/composer_xe_2013.1.117/mkl/lib/ia32"/libmkl_intel.so "/opt/intel/composer_xe_2013.1.117/mkl/lib/ia32"/libmkl_intel_thread.so "/opt/intel/composer_xe_2013.1.117/mkl/lib/ia32"/libmkl_core.so -Wl,--end-group -L"/opt/intel/composer_xe_2013.1.117/mkl/../compiler/lib/ia32" -liomp5 -lpthread -ldl -o _results/intel_parallel_ia32_so/d_Helmholtz_3D_f.out **export LD_LIBRARY_PATH="/opt/intel/composer_xe_2013.1.117/mkl/lib/ia32":/opt/intel/composer_xe_2013.1.117/compiler/lib/ia32:/opt/intel/mic/coi/host-linux-release/lib:/opt/intel/mic/myo/lib:/opt/intel/composer_xe_2013.1.117/mpirt/lib/ia32:/opt/intel/composer_xe_2013.1.117/compiler/lib/ia32:/opt/intel/composer_xe_2013.1.117/mkl/lib/ia32:"/opt/intel/composer_xe_2013.1.117/mkl/../compiler/lib/ia32"; _results/intel_parallel_ia32_so/d_Helmholtz_3D_f.out >_results/intel_parallel_ia32_so/d_Helmholtz_3D_f.res **1 **make[1]: *** [d_Helmholtz_3D_f.res] Error 1 **make[1]: Leaving directory `/home/user1/Documents/IntelFortran/mkl_poisson_solver' **make: *** [soia32] Error 2*

-----------------------------------------------------------------------------------------------------------------

and if i try to execute, i get the following message:

*MKL POISSON LIBRARY WARNING: **The problem is degenerate due to rounding errors. The approximate solution **that provides the minimal Euclidean norm of the solution will be computed. ** Double precision 3D Helmholtz example FAILED to compute the solution...*

I have set the boundaries to zero:

bd_ax(iy,iz) = 0.0D0

bd_bx(iy,iz) = 0.0D0

bd_ay(ix,iz) = 0.0D0

bd_by(ix,iz) = 0.0D0

bd_az(ix,iy) = 0.0D0

bd_bz(ix,iy) = 0.0D0

and the q coefficient to zero, in order to create a poisson equation.

thank you in advance

Alexander_K_Intel2

Employee

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

08-05-2013
07:24 PM

98 Views

Hi,

The example check that error have to be 0 after each Helmholtz call. In your case error became equal to 1 that corresponded to warning about degenerate problem. To make your Helmholtz example passed correct change line

if (stat!=0) goto FAILURE;

on

if (stat<0) goto FAILURE;

Thank you,

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.