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.5700E01
LoadRestartFile: All done
LoadRestartFile: 
static then modal chained simulations

 Posts: 3
 Joined: 02 Feb 2018, 16:32
 Antispam: Yes
Re: static then modal chained simulations
Hi Ronald,
I am trying to do a similar calculation. Have you had any success?
Matt
I am trying to do a similar calculation. Have you had any success?
Matt

 Site Admin
 Posts: 3230
 Joined: 22 Aug 2009, 11:57
 Antispam: Yes
 Location: Espoo, Finland
 Contact:
Re: static then modal chained simulations
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
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

 Posts: 3
 Joined: 02 Feb 2018, 16:32
 Antispam: Yes
Re: static then modal chained simulations
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.67e08
Permittivity of Vacuum = 8.8542e12
Boltzmann Constant = 1.3807e23
Unit Charge = 1.602e19
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.0e5
Nonlinear System Convergence Tolerance = 1.0e7
Nonlinear System Max Iterations = 1
Nonlinear System Newton After Iterations = 3
Nonlinear System Newton After Tolerance = 1.0e3
Nonlinear System Relaxation Factor = 1
Linear System Solver = Iterative
Linear System Iterative Method = GCR
Linear System Max Iterations = 500
Linear System Convergence Tolerance = 1.0e10
BiCGstabl polynomial degree = 2
Linear System Preconditioning = ILU3
Linear System ILUT Tolerance = 1.0e3
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.1e6
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
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.67e08
Permittivity of Vacuum = 8.8542e12
Boltzmann Constant = 1.3807e23
Unit Charge = 1.602e19
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.0e5
Nonlinear System Convergence Tolerance = 1.0e7
Nonlinear System Max Iterations = 1
Nonlinear System Newton After Iterations = 3
Nonlinear System Newton After Tolerance = 1.0e3
Nonlinear System Relaxation Factor = 1
Linear System Solver = Iterative
Linear System Iterative Method = GCR
Linear System Max Iterations = 500
Linear System Convergence Tolerance = 1.0e10
BiCGstabl polynomial degree = 2
Linear System Preconditioning = ILU3
Linear System ILUT Tolerance = 1.0e3
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.1e6
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

 Site Admin
 Posts: 3230
 Joined: 22 Aug 2009, 11:57
 Antispam: Yes
 Location: Espoo, Finland
 Contact:
Re: static then modal chained simulations
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
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