×
INTELLIGENT WORK FORUMS
FOR ENGINEERING PROFESSIONALS

Log In

Come Join Us!

Are you an
Engineering professional?
Join Eng-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Eng-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here

Jobs

Efficient way to extract eigenvalues/eigenvector matrices

Efficient way to extract eigenvalues/eigenvector matrices

Efficient way to extract eigenvalues/eigenvector matrices

(OP)
Greetings,

I am working with large Abaqus model and I need to extract its eigenquantities and import them into MATLAB.

Is there an efficient way to do this?

So far I have extracted the Mass and Stiffness matrices (keywords *MATRIX GENERATE and *MATRIX OUTPUT), imported them into MATLAB (via bespoke script), applied boundary conditions and use matlab's EIGS to extract the eigenquantities, but this process is slow and prone to errors.

I would like to import those quantities directly from abaqus. I am already able to print nodal outputs in the *.dat file but again, this approach generates a huge structured data file that has to be parsed. Also, I am not sure about the DOFS convention and thus I do not know if the first 6 elements of an eigenvector are the 6DOFs of the first node, the second 6 elements are the 6DOFs of the second node, etc.

Can you please advise on a method that could let me import those quantities in the least painful way?

Thank you in advance.



RE: Efficient way to extract eigenvalues/eigenvector matrices

Forgive me if this seems like a stupid question, but why are you using MatLab to perform a function that Abaqus already does?

From what I remember, Abaqus does not have the standard capabilities of QR, Householder, etc, but I find that the Lanczos solver is quite fast if you specify a reasonable frequency range and number of eigenvalues to be extracted.

RE: Efficient way to extract eigenvalues/eigenvector matrices

(OP)
Abaqus performs the calculations just fine, but I need eigenvalues and (mass scaled) eigenvectors to perform some other calculations.

I am doing this because I could not find an efficient way to export eigenvalues and eigenvectors in a readily digestible format. Thus, the question.

Thank you for the interest!

RE: Efficient way to extract eigenvalues/eigenvector matrices

I guess I never had to do this before in MatLab besides using the eig() function so I can't be of much help.

The eigenvalues should be easy to automate to extract from the standard output using python, as for the eigenvectors, I honestly have never looked where/how they are stored.

RE: Efficient way to extract eigenvalues/eigenvector matrices

After running a frequency analysis in Abaqus, you can use the Odb Python or C++ API to go in and extract the eigenvalue and eigenvectors from each frame (each frame is one mode). You could then write each mode to a text file or collect them all and write them in whatever manner you like.

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Eng-Tips Forums free from inappropriate posts.
The Eng-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Eng-Tips forums is a member-only feature.

Click Here to join Eng-Tips and talk with other members!


Resources