need help in understanding stress Eigen analysis results

Numerical methods and mathematical models of Elmer
Post Reply
uwestoehr
Posts: 38
Joined: 05 Aug 2022, 14:42
Antispam: Yes

need help in understanding stress Eigen analysis results

Post by uwestoehr »

I am a programmer of FreeCAD's Elmer support. FreeCAD supports besides Elmer also the solver CalculiX and therefore we compare the results of both to assure we don't make mistake in FreeCAD.

When I calculate the stress of a bean that is on one side fixed and has a face load on the other end.

- when performing a stability analysis the resulting displacement is exactly the same as CalculiX computes

however, when I perform a modal analysis
- the eigen frequencies are also exactly the same as CalculiX computes
- the displacements of the different mode are completely different ( also not just a factor 10 etc. smaller/larger)

I assume that I have to perform a calculation to get the displacement for a mode in meters? So what values are in the eigen mode displacement result mesh and how to I have to calculate them to get the displacement in meter?

Here is my case.sif file:
case.sif
(2 KiB) Downloaded 45 times

I have I tested with this Elmer version:

Code: Select all

Version: 9.0 (Rev: Release, Compiled: 2022-08-02)
raback
Site Admin
Posts: 4812
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: need help in understanding stress Eigen analysis results

Post by raback »

Hi

Eigenmodes are mere shapes that may be scaled by any constant. I.e. if u is en eigenvector then so is c*u where c is a complex number.

I think the scaling is chosen such that the matrix norm of the mass matrix is one.

For most purposes you could scale the eigenvector so that the maximum displacement is one. This is nice for visualization.

-Peter
uwestoehr
Posts: 38
Joined: 05 Aug 2022, 14:42
Antispam: Yes

Re: need help in understanding stress Eigen analysis results

Post by uwestoehr »

raback wrote: 05 Aug 2022, 17:51 For most purposes you could scale the eigenvector so that the maximum displacement is one. This is nice for visualization.
Thanks.
Today I had a closer look and I realized that FreeCAD lacked most of the eigen system settings. I implemented them and now I get now sensible results.

However, the results are in mm not in meters. here is for example a 300 mm long, 20 mm wide and 10 mm thick beam and its 3rd eigenmode:
FreeCAD_Qbc3VCBZsn.png
FreeCAD_Qbc3VCBZsn.png (46.77 KiB) Viewed 1000 times
One can see that the max of 5.7 is 5.7 mm.
This is bad because when I perform an analytical (no eigen system) analysis, I get the displacement in m.

I am a bit lost because as we spoke in the body heat thread, I scale the mesh and scale the result back, both times using Elmer's scaling feature.

How can I assure that I get the resulting displacement always in meters, independent if the eigen system is used or not?

thanks and regards
Uwe
uwestoehr
Posts: 38
Joined: 05 Aug 2022, 14:42
Antispam: Yes

Re: need help in understanding stress Eigen analysis results

Post by uwestoehr »

For the meantime, meaning the upcoming FreeCAD 0.20.1 release, I scale now only results of the Eigen solver.

Please keep me informed if you change something and the Eigen solver results must not be scaled.
raback
Site Admin
Posts: 4812
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: need help in understanding stress Eigen analysis results

Post by raback »

Hi

How do you know that the displacement in eigen analysis is in mm? The fact that they seem to be of certain order of magnitude is no implication of the unit. As said the amplitude of eigenmodes is arbitrary. It is numerically convenient that the amplitude is around ~1 no matter what the size of the system is.

-Peter
uwestoehr
Posts: 38
Joined: 05 Aug 2022, 14:42
Antispam: Yes

Re: need help in understanding stress Eigen analysis results

Post by uwestoehr »

raback wrote: 09 Aug 2022, 13:00 How do you know that the displacement in eigen analysis is in mm?
...
As said the amplitude of eigenmodes is arbitrary.
Yes, the amplitude is arbitrary. I am referring only to the unit. You can see in the VTU results that the amplitude's unit is mm:
https://www.elmerfem.org/forum/viewtopi ... 022#p27022

The beam is 10 mm thick and the buckling is about half of the beam height. The scale's maximum says "5.724". So these are mm.
Therefore I must scale the Eigen results down by a factor of 1000 to get for the scale's maximum "5.724e-3".

I was wondering why the Eigen solver behaves differently because when made an analytic run (force at face of beam tip), I get for the maximum z-displacement values in the range of Xe-3 and then no scaling is necessary.
kevinarden
Posts: 2237
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: need help in understanding stress Eigen analysis results

Post by kevinarden »

From the Calculix Manual

"All output of the eigenmodes is normalized by means of the mass matrix, i.e.
the generalized mass is one. "

In NASTRAN and ABAQUS you can choose what to normalize the eigenvectors to. The default is to make the maximum displacement a unit of 1, but you can choose mass, etc.

Could not find anything in the Elmer documentation that says what the default normalization is.
kevinarden
Posts: 2237
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: need help in understanding stress Eigen analysis results

Post by kevinarden »

Material 1
Density = Real 7900.0
Poisson ratio = Real 0.3
Youngs Modulus = Real 210000000000.0
End

Boundary Condition 2
Force 1 = Real -0.0
Force 1 Normalize by Area = Logical True
Force 2 = Real -0.0
Force 2 Normalize by Area = Logical True
Force 3 = Real -100.0
Force 3 Normalize by Area = Logical True
Name = String "Face2"
End

Your units depend on the units of the numbers above, your amplitude depends on how Elmer Normalizes the vectors.
uwestoehr
Posts: 38
Joined: 05 Aug 2022, 14:42
Antispam: Yes

Re: need help in understanding stress Eigen analysis results

Post by uwestoehr »

kevinarden wrote: 10 Aug 2022, 23:46 Could not find anything in the Elmer documentation that says what the default normalization is.
Thanks for your help. Yes, I also cannot find this info. It would be good if this could be added to the Elmer docs somewhere.
Post Reply