I am trying to write a MATLAb code for determining the natural frequencies of a first-order shear deformation plate using Ritz method. I am using Legendre polynomials as trial functions in Ritz method, and my code works well for static analysis of plate. I have solved few structural problems with my code and compared the results with MSC NASTRAN. The results are accurate with maximum error of 5%.

However, when I try to find eigenvalues, at least one eigenvalue comes out to be negative. Also, the eigenvalues do not match with eigenvalues obtained from MSC NASTRAN (Modal Analysis).

Is it possible for a plate to have negative eigenvalues?


1 Answer 1


The only way you can get negative eigenvalues is by including stress stiffness effects (sometimes called "geometric stiffness"), if there are compressive stresses which would cause the plate to buckle.

There can be zero eigenvalues if the plate can move as a rigid body, of course, and they might be calculated as small negative numbers, but those should be a few orders of magnitude smaller that the first positive eigenvalue.

FWIW "accurate to within 5%" probably means "wrong". Try to find a load case where the exact solution is known.

Plotting the deformed shape for your negative eigenvalues might help to find the error - or at least convince you they really are wrong, if the shapes look crazy.

  • $\begingroup$ +1 for the 5% remark, the OPs result "agrees with NASTRAN within 5%", an important distinction. $\endgroup$ Nov 22, 2019 at 12:53
  • 1
    $\begingroup$ @AEheresupportsMonica I use Nastran and I have developed FE software (for things that Nastran can't model at all!). If you model a simple problem like this (e.g. rectangular geometry) correctly, the results should converge to the "exact" analytic solution as you refine the mesh, not to a value 5% off. On the other hand, if you pull some basis functions and numerical integration rules "out of the air" to write your own code, there are plenty of reasons why your formulation might be wrong! $\endgroup$
    – alephzero
    Nov 22, 2019 at 15:12
  • $\begingroup$ @alephzero The verification problems I have solved have no analytical solution available as far as I know. The 5% error is when I use 6 Legendre polynomials in each direction, x and y. I can use more than 6 polynomials, however, my code will take lot of time because there are some matrices which I am integrating symbolically. Having said that, I will try to solve a problem with known analytical solution and check my results. $\endgroup$
    – Ali Baig
    Nov 22, 2019 at 19:50
  • $\begingroup$ @alephzero To clamp the plate at one edge, I am using springs of large stiffness. The details are given in ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20000011598.pdf I think there is no rigid-body motion in my code. Also, I don't know about stress stiffness effects or how to plot mode shapes. I will look in to these two. Thank you for your comment. $\endgroup$
    – Ali Baig
    Nov 22, 2019 at 19:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.