Tao:
Yes, this is cumbersome indeed. I looked into this file, and it contains a
number of places where deal.II outputs to std::cerr. This is not the style we
favor today. I looked it up, and these lines were written in 2005, probably
with the very first version of that file.
I have opened an issue about this:
https://github.com/dealii/dealii/issues/15363
As with all things deal.II, we would gladly help any kind of help we can get
-- so if the error message bothers you, perhaps this is your project: Fix this
particular issue, and get it merged into deal.II!
Underlying your question is the issue that dependent on the value of the
scaling, you either do or do not get an error. I believe that that is because
you need to also scale the upper/lower bounds and the tolerance with which you
call the LAPACK function. When you multiply the 2x2 matrix by a scalar factor,
all of the eigenvalues also scale and consequently the tolerance should also
scale.
Best
W.
On 6/14/23 09:47, Tao Jin wrote:
*** Caution: EXTERNAL Sender ***
Dear all,
I received the message "LAPACK error in syevx" when using the
/*compute_eigenvalues_symmetric*/ of */lapack_full_matrix/* (the interface to
LAPACK in dealii) to compute the eigenvalues of a symmetric matrix with
relatively small matrix entries. I have attached a test file (main.cc) in the
end.
To provide more information, I construct the following 2x2 symmetric matrix
const double *scalar = 1.0;*
for (unsigned int i = 0; i < dim; i++)
for (unsigned int j = 0; j <= i; j++)
{
symmetric_tensor[i][j] = (i + j + 1) * *scalar*;
if (j != i)
symmetric_tensor[j][i] = symmetric_tensor[i][j];
}
*In this case, the eigenvalue decomposition runs without error message:*
Spectrum decomposition of a symmetric 2nd order tensor
Eigenvalues: -0.236068 4.23607
Spectrum decomposition succeeded!
However, if I set
const double *scalar = 1.0e-3; // to make the matrix entries relatively
small*
The eigenvalue decomposition is still successful. However, here is the output
message:
Spectrum decomposition of a symmetric 2nd order tensor
*LAPACK error in syevx
*Eigenvalues: -0.000236068 0.00423607
Spectrum decomposition succeeded!
This error message is from "lapack_full_matrix.cc"
// Negative return value implies a wrong argument. This should be internal.
2049 Assert
<https://www.dealii.org/current/doxygen/deal.II/group__Exceptions.html#ga70a0bb353656e704acf927945277bbc6>(info >= 0, ExcInternalError <https://www.dealii.org/current/doxygen/deal.II/group__Exceptions.html#gab7a0d88175320d08084b2f40f5e3380b>());
2050 if (info != 0)
2051 std::cerr << "*LAPACK error in syevx*" << std::endl;
**
Since I need to run the spectrum decomposition at each Gauss point, it is
annoying to receive tons of this error message, even though the simulation
still finishes with no issue.
Any insights to avoid this issue?
Best,
Tao
--
The deal.II project is located at http://www.dealii.org/
<http://www.dealii.org/>
For mailing list/forum options, see
https://groups.google.com/d/forum/dealii?hl=en
<https://groups.google.com/d/forum/dealii?hl=en>
---
You received this message because you are subscribed to the Google Groups
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to dealii+unsubscr...@googlegroups.com
<mailto:dealii+unsubscr...@googlegroups.com>.
To view this discussion on the web visit
https://groups.google.com/d/msgid/dealii/8adfe7d5-220c-4c4a-b3e5-60c2c9c6b278n%40googlegroups.com <https://groups.google.com/d/msgid/dealii/8adfe7d5-220c-4c4a-b3e5-60c2c9c6b278n%40googlegroups.com?utm_medium=email&utm_source=footer>.
--
------------------------------------------------------------------------
Wolfgang Bangerth email: bange...@colostate.edu
www: http://www.math.colostate.edu/~bangerth/
--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see
https://groups.google.com/d/forum/dealii?hl=en
---
You received this message because you are subscribed to the Google Groups "deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to dealii+unsubscr...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/dealii/83b4bdd5-0990-6ce9-00a1-ef6d77ed3c84%40colostate.edu.