static then modal chained simulations

Numerical methods and mathematical models of Elmer
Post Reply
ronald
Posts: 3
Joined: 02 Jun 2017, 12:00
Antispam: Yes

static then modal chained simulations

Post by ronald »

Hello,
I am trying to make first a static linear elasticity simulation to obtain mechanical stress of a beam induced by a force, then I want to start a modal linear elasticity simulation including pre stress obtained in the 1st static simulation.
I am trying to do that by editing the sif-->simulation of the 1st static simulation with :Output File = "previousrun.result"
Then editing the sif-->simulation of the 2nd modal simulation with :
Restart File = "previousrun.result"
Restart Position =1

In the solver log (as shown above), it seems that the restart file is taken into account, but there is no change in eigen frequencies as there should be!
Has anyone succeded in such chained simulation ?

LoadRestartFile:
LoadRestartFile: --------------------------------------------
LoadRestartFile: Reading data from file: ./previousrun2.result
LoadRestartFile: ASCII 3
LoadRestartFile:
LoadRestartFile: Total number of dofs to load: 13
LoadRestartFile: Reading time sequence: 1.000E+00
LoadRestartFile: Reading timestep: 1

LoadRestartFile: Time spent for restart (s): 4.5700E-01
LoadRestartFile: All done
LoadRestartFile: --------------------------------------------
mconrad1186
Posts: 3
Joined: 02 Feb 2018, 16:32
Antispam: Yes

Re: static then modal chained simulations

Post by mconrad1186 »

Hi Ronald,

I am trying to do a similar calculation. Have you had any success?

Matt
raback
Site Admin
Posts: 4812
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: static then modal chained simulations

Post by raback »

Hi

I had to look at the code a bit... It seems that the keyword "Geometric Stiffness = Logical True" could do the trick. If this is used then the StressSolver will take two iterations. First to resolve the prestressed state and then to compute the eigen analysis.

Basically the same procedure could of course be done in two sweeps but this seems to be the supported method. The code needs to know that it should compute harmonic solution around the given state. Otherwise it will just forget about the initial guess.

-Peter
mconrad1186
Posts: 3
Joined: 02 Feb 2018, 16:32
Antispam: Yes

Re: static then modal chained simulations

Post by mconrad1186 »

Hi Peter,

Thank you for the reply! I tried setting making the geometric stiffness true but this doesn't seem to have an effect. Newby question: How would you go about completing the simulation in two separate iterations? Here's my .sif file. I used the mesh provided in the linear elasticity tutorial of a rectangular beam.

Header
CHECK KEYWORDS Warn
Mesh DB "." "."
Include Path ""
Results Directory ""
End

Simulation
Max Output Level = 5
Coordinate System = Cartesian
Coordinate Mapping(3) = 1 2 3
Simulation Type = Steady state
Steady State Max Iterations = 1
Output Intervals = 1
Timestepping Method = BDF
BDF Order = 1
Solver Input File = case.sif
Post File = case.vtu
End

Constants
Gravity(4) = 0 -1 0 9.82
Stefan Boltzmann = 5.67e-08
Permittivity of Vacuum = 8.8542e-12
Boltzmann Constant = 1.3807e-23
Unit Charge = 1.602e-19
End

Body 1
Target Bodies(1) = 1
Name = "Body 1"
Equation = 1
Material = 1
Body Force = 1
End

Solver 1
Equation = Linear elasticity
Eigen System Values = 10
Procedure = "StressSolve" "StressSolver"
Variable = -dofs 3 Displacement
Eigen System Compute Residuals = True
Geometric Stiffness = True
Calculate Loads = True
Eigen System Select = Smallest magnitude
Eigen Analysis = True
Exec Solver = Always
Stabilize = True
Bubbles = False
Lumped Mass Matrix = False
Optimize Bandwidth = True
Steady State Convergence Tolerance = 1.0e-5
Nonlinear System Convergence Tolerance = 1.0e-7
Nonlinear System Max Iterations = 1
Nonlinear System Newton After Iterations = 3
Nonlinear System Newton After Tolerance = 1.0e-3
Nonlinear System Relaxation Factor = 1
Linear System Solver = Iterative
Linear System Iterative Method = GCR
Linear System Max Iterations = 500
Linear System Convergence Tolerance = 1.0e-10
BiCGstabl polynomial degree = 2
Linear System Preconditioning = ILU3
Linear System ILUT Tolerance = 1.0e-3
Linear System Abort Not Converged = False
Linear System Residual Output = 1
Linear System Precondition Recompute = 1
End

Equation 1
Name = "Elasticity"
Calculate Stresses = True
Active Solvers(1) = 1
End

Material 1
Name = "Aluminium (generic)"
Heat expansion Coefficient = 23.1e-6
Heat Conductivity = 237.0
Sound speed = 5000.0
Heat Capacity = 897.0
Mesh Poisson ratio = 0.35
Density = 2700.0
Poisson ratio = 0.35
Youngs modulus = 70.0e9
End

Body Force 1
Name = "Gravity"
Stress Bodyforce 2 = -5395.5
End

Boundary Condition 1
Target Boundaries(1) = 6
Name = "Wall"
Displacement 3 = 0
Displacement 2 = 0
Displacement 1 = 0
End

Boundary Condition 2
Target Boundaries(1) = 5
Name = "Mass"
Force 2 = -4.0e5
End
raback
Site Admin
Posts: 4812
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: static then modal chained simulations

Post by raback »

Hi

The "geometric stiffness" is coded such that when its active the 1st iteration of StressSolver computes the prestressed state. On the 2nd iteration the modal analysis is carried out adding the geometric stiffness as in (5.14) of Models Manual.

Given this I don't see any supported way of doing this in two steps. We need to modify the modal equation

Mu''+(K+K0)u = 0

This cannot do by having an initial guess u0, for example, or some r.h.s. term. We need to modify the stiffness matrix and the above is the only way to do it.

The test cases "geometric_stiffness" worked, and modifying "ThermalBiMetal" such that eigenmodes are solved for shows an effect (very small one) of the thermal stresses. So maybe the effect is just very small...

-Peter
Post Reply