[petsc-users] BVNormColumn

Jose E. Roman jroman at dsic.upv.es
Wed Oct 19 02:54:19 CDT 2016


> El 19 oct 2016, a las 0:26, Bikash Kanungo <bikash at umich.edu> escribió:
> 
> Hi Jose,
> 
> Thanks for the pointers. Here's what I observed on probing it further:
> 
> 	• The ||B - B^H|| norm was 1e-18. So I explicitly made it Hermitian by setting B = 0.5(B+B^H). However, this didn't help.
> 	• Next, I checked for the conditioning of B by computing the ratio of the highest and lowest eigenvalues. The conditioning of the order 1e-9. 
> 	• I monitored the imaginary the imaginary part of VecDot(y,x, dotXY) where y = B*x and noted that only when the imaginary part is more than 1e-16 in magnitude, the error of "The inner product is not well defined" is flagged. For the first few iterations of orhtogonalization (i.e., the one where orthogonization is successful), the values of VecDot(y,x, dotXY) are all found to be lower than 1e-16. I guess this small imaginary part might be the cause of the error. 
> Let me know if there is a way to bypass the abort by changing the tolerance for imaginary part.
> 
> 
> 
> Regards,
> Bikash
> 

There is something wrong: the condition number is greater than 1 by definition, so it cannot be 1e-9. Anyway, maybe what happens is that your matrix has a very small norm. The SLEPc code needs a fix for the case when the norm of B or the norm of the vector x is very small. Please send the matrix to my personal email and I will make some tests.

Jose



More information about the petsc-users mailing list