Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations GregLocock on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Which Solver can do eigenvalues with Lagrande multipliers 1

Status
Not open for further replies.

jabla71

Mechanical
Aug 27, 2007
5
I am trying to figure out which solver (in Fortran) will be able to calculate eigenvalues for a matrix that has been augmented with Lagrange multipliers.

Basically I have a FEM model with 20node solids and 4node plates that are coupled with Lagrange multies in a inhouse FE program. I have been using the Lapack DSPGVX subroutine in Fortran 90 with my other models but now with this coupling I am not able because of singular matrix.

Anyone with some words if advice would be of great help...


 
Replies continue below

Recommended for you

If i understand well your matrix is singular.
This means some zero value eignevalues
This means rigid body motion in structures or ill conditioning.
Am i right?


Dr. Costas J. Tsaprounis
 
Nastran has the option to use Lagrange rigid elements (they have stiffness matrices instead of MPS's which are linear rigid elements), if thats any help.

Your singualarity is caused by a degree of freedom without any structural stiffness (or very low), and as such cannot be inverted.
Typical usual examples of this are 1) forgetting to eliminate rigid body modes, 2) connecting dissimilar element types, 3) cross connecting wrong degrees of freedom.
 
Hi,
due to the mixed-elem type formulation, I'd guess that 40818's point 2) is the responsible. You wouldn't like to solve a singular system, I presume.

Regards
 
Well, Costas... you are right with the rigidbody mode. I am looking at the structures behavior in water so I need the free state.

Ansys, Hypermesh and other programs are able to come about eigen results even if the matrix is sigular or closed to it.

But my in house program with can not compute a structure that should have the first 6 eigenvalues =0 . I read about some solvers that can handle these situations but the Fortran Lapack DSPGVX subroutine can't.

So HOW do Ansys, Abaqus and ther FE programs deal with this sort of matrix?

Thank you for your time


J.Blair M.Sc.A,ing.
 
I you run a free normal modes analysis, you should have 6 rigid body modes at 0Hz, and zero strain energy associated with it. It is a standard FE model check to ensuer you dont have any rogue elements flying of into infinity.
I will have to delve back into some theory guides to tell you how the FE solves a singular matrix.
 
"I will have to delve back into some theory guides to tell you how the FE solves a singular matrix."

This is done by applying an "eigen shift" , that is a factored amount of the mass matrix is added to the stiffness matrix to make the stiffness matrix non-singular, solution is then possible, the mode shapes are not affected by this procedure but all the eigen values are "shifted" to become greater than zero, the solver will then automatically remove this shift from the eigen values before presenting results to the user.
 
You can use dggev although it won't be as efficient as a solver which is coded specifically for symmetric semi-definite problems like yours. Many of the sparse solvers (MUMPS for example) so you may be able to massage an eigenvalue computation out of them....
 
I think that Jonhors an pja are correct.
If you want to see how eigne shift is done see
the "Numerical Recipies".
Good luck


Dr. Costas J. Tsaprounis
 
Thank you all, I will be looking in to the eigen shift method.

Kind regards
J Blair
 
jabla71, did you manage to implement an eigen shift into your model ?
 
Well finally after getting back to this problem.

The DGGEVX routine did the job quite well.

Thank you all for your input

Cheers
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor