getting warning while using eigs on the matrices obtained from freefem++
이전 댓글 표시
I am trying to solve for the temporal stability of the incompressible viscous plane poiseuille flow using freefem++.
When i import the matrices and solve for eigen value using eigs , i get this warning:
Warning: The first input matrix, shifted by sigma, is close to singular or badly scaled (RCOND = 7.026665e-305) and results may be inaccurate. Consider specifying a perturbed numeric sigma value to improve the condition of the matrix.
Do i have to do some preconditioning in the matrices in freefem or is there some option in the MATLAB to do the same.
채택된 답변
추가 답변 (1개)
Bruno Luong
2024년 2월 13일
0 개 추천
Try to follow the suggestion you get " Consider specifying a perturbed numeric sigma value to improve the condition of the matrix."
댓글 수: 5
AMIT
2024년 2월 13일
AMIT
2024년 2월 13일
Bruno Luong
2024년 2월 13일
편집: Bruno Luong
2024년 2월 13일
You didn't tell us what sigma you use to call eigs, but it looks like to fall right on the eigenvalue. I would to perturb your sigma by
norm(M,2) * epsilon
with epsilon in 1e-12 to 1e-10 or something like that, M being your matrix.
AMIT
2024년 2월 13일
Bruno Luong
2024년 2월 13일
편집: Bruno Luong
2024년 2월 13일
"i do know that real part of eigen values will lie between 0 to 0.8 and i used 5 for sigma. "
Why you chose 5 if you know the realpart is in between 0 and 0.8? How exactly do you call eigs?
If the matrices is from FEM simulation, the chance that the eigen value is exactly 5 is zero.
I suspect the call eigs command is incorrect, sounds like you mix up k and sigma arguments and your matrix M is singular.
카테고리
도움말 센터 및 File Exchange에서 Linear Algebra에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!