

December 6, 2018 at 3:49 pmLisDebSubscriber
Hi everyone,
In the framework of my Masters Thesis at TU Munich, my goal is to extract a physical mass matrix,stiffness matrix and mode shapes of my model (made up of beam188 elements) from Ansys Mechanical APDL. I am new to Ansys workbench as well as APDL and therefore want to be sure not to make any rough mistakes.
I built the model (geometry and mesh) in ANSYS workbench, then exported the input file and extracted the lumped mass and stiffness matrices using the following commands in Mechanical APDL:
/solu
antype,substr
seopt,file,2,1
lumping,yes
m,all,all
/output,StiffnessFile
solve
/output
I do get an output for both, however I am not sure how to interpret the resulting mass matrix. What I want is a physical mass matrix for the whole model which has on its diagonal the individual mass matrices of each node, with the latter each being made up of a unit matrix multiplied by the respective lumped mass, the inertia tensor and mixed terms, as can be seen in the attached file.
The mass matrix which I get with the lumped output option is however not of the desired form when I assemble the rows in the output file, and I am not quite sure how to interpret the terms off the diagonal.
As far as the mode shape calculation is concerned, I was wondering what the option to normalize the mode shapes to the mass matrix means. Am I right to assume that if I want extract the mode shapes in order to formulate the absolute displacements of all nodes as a superposition of the mode shapes, it would be wrong to choose this option?
Thanks a lot in advance!

December 6, 2018 at 4:50 pmSandeep MedikondaAnsys Employee
Hi,
I see that you have lumping on, aren't you seeing a diagonal matrix being written out? Try using lumpm, on, this should allow the consistent mass matrix to be reduced to a diagonal matrix. See here.
You might also find these 2 discussions relevant:
I also want to add that the matrix output is done in an order that is designed for speed. We document the order so if a user needs it in a different order or format then they need to do the reordering or conversion. We also recommend doing tests with very small models to start with then go to larger models.
Regards,
Sandeep
Guidelines on the Student Community 
December 6, 2018 at 5:30 pmLisDebSubscriber
Hi Sandeep,
Right, I do have lumping on, and if i extract the mass matrix this way for a solid model whose nodes only have 3 DOF each, I do get a diagonal matrix. However not for the beam models, where every node has 6 DOF. Do you know what could be the reason for that?
Can you tell me where I can find the documentation on the matrix output format you were referring to?
In the output format I get, I assumed that every block below the respective header represents a row in the actual output matrix. It looks like this:
ROW 1 NODE 1 DEG. OF. FR. = UX
1 0.94666278E02 2 0.00000000E+00 3 0.00000000E+00 4 0.00000000E+00
5 0.13888826E19 60.59228999E04 7 0.00000000E+00 8 0.00000000E+00
9 0.00000000E+00 10 0.00000000E+00 11 0.00000000E+00 12 0.00000000E+00
13 0.46633722E02 14 0.00000000E+00 15 0.00000000E+00 16 0.00000000E+00
17 0.13888826E19 18 0.58521001E04 19 0.00000000E+00 20 0.00000000E+00
21 0.00000000E+00 22 0.00000000E+00 23 0.00000000E+00 24 0.00000000E+00
25 0.00000000E+00 26 0.00000000E+00 27 0.00000000E+00 28 0.00000000E+00
29 0.00000000E+00 30 0.00000000E+00 31 0.00000000E+00 32 0.00000000E+00
33 0.00000000E+00 34 0.00000000E+00 35 0.00000000E+00 36 0.00000000E+00
37 0.00000000E+00 38 0.00000000E+00 39 0.00000000E+00 40 0.00000000E+00
41 0.00000000E+00 42 0.00000000E+00 43 0.00000000E+00 44 0.00000000E+00
45 0.00000000E+00 46 0.00000000E+00 47 0.00000000E+00 48 0.00000000E+00
49 0.00000000E+00 50 0.00000000E+00 51 0.00000000E+00 52 0.00000000E+00
53 0.00000000E+00 54 0.00000000E+00
ROW 2 NODE 1 DEG. OF. FR. = UY
1 0.00000000E+00 2 0.94200000E02 3 0.00000000E+00 4 0.00000000E+00
5 0.00000000E+00 6 0.00000000E+00 7 0.00000000E+00 8 0.00000000E+00
9 0.00000000E+00 10 0.00000000E+00 11 0.00000000E+00 12 0.00000000E+00
13 0.00000000E+00 14 0.47100000E02 15 0.00000000E+00 16 0.00000000E+00
17 0.00000000E+00 18 0.00000000E+00 19 0.00000000E+00 20 0.00000000E+00
21 0.00000000E+00 22 0.00000000E+00 23 0.00000000E+00 24 0.00000000E+00
25 0.00000000E+00 26 0.00000000E+00 27 0.00000000E+00 28 0.00000000E+00
29 0.00000000E+00 30 0.00000000E+00 31 0.00000000E+00 32 0.00000000E+00
33 0.00000000E+00 34 0.00000000E+00 35 0.00000000E+00 36 0.00000000E+00
37 0.00000000E+00 38 0.00000000E+00 39 0.00000000E+00 40 0.00000000E+00
41 0.00000000E+00 42 0.00000000E+00 43 0.00000000E+00 44 0.00000000E+00
45 0.00000000E+00 46 0.00000000E+00 47 0.00000000E+00 48 0.00000000E+00
49 0.00000000E+00 50 0.00000000E+00 51 0.00000000E+00 52 0.00000000E+00
53 0.00000000E+00 54 0.00000000E+00
...and so on, including rotational degrees of freedom.

December 6, 2018 at 7:08 pmSandeep MedikondaAnsys Employee
Hi LisDeb,
Please see section 1.9 in the Programmers Reference.
c Mass Matrix.
c if lumpm = 0:
c The next two records are repeated as a group neqn times.
c It will be in global form the same way as stiffness matrix if model has across CE.
c MAS i 1 varies Matrix row indices. The last item
c corresponds to the diagonal. The
c length of this record will vary (actual
c length is returned from routine BINRD8)
c  dp 1 varies Matrix terms
c if lumpm = 1:
c  dp 1 neqn Matrix diagonals.
c Record length will be GlbnVars for across CE model.
c Mass matrix diagonal vector
c DIAGM dp 1 neqn diagonal vector data for mass matrix.
c Record length will be GlbnVars for across CE model.

December 6, 2018 at 7:42 pmsk_cheahSubscriber
Try LUMPM, ON instead of lumping,yes. I've not tried it myself but it appears Ansys uses Guyan reduction when computing stiffness and mass matrix in the above commands. I'm not sure if that might affect your results.
Secondly...
As far as the mode shape calculation is concerned, I was wondering what the option to normalize the mode shapes to the mass matrix means. Am I right to assume that if I want extract the mode shapes in order to formulate the absolute displacements of all nodes as a superposition of the mode shapes, it would be wrong to choose this option?
For your purpose, perhaps APDL Math would work better as you could extract the mass and stiffness matrix, followed by computing the mode shapes normalized however you like, all within Ansys. You can Google APDL Math for additional help.
Kind regards,
Jason

 You must be logged in to reply to this topic.
Simulation World 2022
Check out more than 70 different sessions now available on demand. Get inspired as you hear from visionary companies, leading researchers and educators from around the globe on a variety of topics from lifesaving improvements in healthcare, to bold new realities of space travel. Take a leap of certainty and check out a session today here.
Earth Rescue – An Ansys Online Series
The climate crisis is here. But so is the human ingenuity to fight it. Earth Rescue reveals what visionary companies are doing today to engineer radical new ideas in the fight against climate change. Click here to watch the first episode.
Ansys Blog
Subscribe to the Ansys Blog to get great new content about the power of simulation delivered right to your email on a weekly basis. With content from Ansys experts, partners and customers you will learn about product development advances, thought leadership and trends and tips to better use Ansys tools. Sign up here.
 How to calculate the residual stress on a coating by Vickers indentation?
 Errors – Reinforced Concrete Beam
 Solver Pivot Warning in Beam Element Model
 An Unknown error occurred during solution. Check the Solver Output…..
 The solver engine was unable to converge on a solution for the nonlinear problem as constrained.
 whether have the difference between using contact and target bodies
 Massive amount of memory (RAM) required for solve
 Cannot apply load on node
 Large deflection
 Colors and Mesh Display

1083

1008

475

398

202
© 2022 Copyright ANSYS, Inc. All rights reserved.