How can I obtain stress calculations of an elastic body using the time history of temperature distribution in the body as an input file?
Best,
Faith
Thermal-Stress Analysis in Elmer
-
- Posts: 4
- Joined: 01 May 2024, 19:31
- Antispam: Yes
-
- Posts: 2366
- Joined: 25 Jan 2019, 01:28
- Antispam: Yes
Re: Thermal-Stress Analysis in Elmer
Taking this case of steady state stress due to heat
viewtopic.php?t=8128
and then modifying it to read a time history from a file and do transient.
viewtopic.php?t=8128
and then modifying it to read a time history from a file and do transient.
Re: Thermal-Stress Analysis in Elmer
Dear Faith,
kevinarden has already provided the example for thermal stress analysis in elastic solids.
For elastic region, you can use the StressSolver and HeatSolver together.
When the reference temperature (T) and Heat Expansion Coefficient (alpha) are defined in the Material block the two solvers will be coupled numerically.
thermal stress = alpha*E*(T-T_reference)
The thermal elastic stress analysis can be utilized for "transient" mode of simulation. The postprocessed values of stress, and strain are linked to the StressSolver.
If plastic deformations are to be considered, it is recommended to use "ElasticSolver" instead of "StressSolver". The ElasticSolver can then allow the use of "UMAT" style user defined subroutine accessed or called from the Material block. However, the deformation modeling with ElasticSolver coupled with UMAT-style subroutine is limited to "scanning" mode of simulation at present. Moreover, the postprocessing of 3D stress and strain is not straightforward when using the ElasticSolver.
More information about the use of ElasticSolver and UMAT-type subroutine can be obtained at https://github.com/ElmerCSC/elmerfem/tr ... tVenant_2D
and https://www.elmerfem.org/forum/viewtopic.php?t=354
Best Regards,
Anil
kevinarden has already provided the example for thermal stress analysis in elastic solids.
For elastic region, you can use the StressSolver and HeatSolver together.
Code: Select all
Solver 1
Equation = Heat Equation
Procedure = "HeatSolve" "HeatSolver"
Calculate Loads = True
Variable = Temperature
Exec Solver = Always
Stabilize = True
Bubbles = True !False
Lumped Mass Matrix = False
Optimize Bandwidth = True
Steady State Convergence Tolerance = 1.0e-6 !1.0e-5
Nonlinear System Convergence Tolerance = 1.0e-7 !1.0e-10 !1.0e-7
Nonlinear System Max Iterations = 10 !20
Nonlinear System Newton After Iterations = 3 !3 !3
Nonlinear System Newton After Tolerance = 1.0e-3 !1.0e-5 !1.0e-3
Nonlinear System Relaxation Factor = 0.6 !1 !0.6 !1
Linear System Solver = Iterative
Linear System Iterative Method = BiCGStab !BiCGStabl
!!BiCGstabl polynomial degree = 10
Linear System Max Iterations = 500
Linear System Convergence Tolerance = 1.0e-10 !1.0e-10
Linear System Preconditioning = ILU0
Linear System ILUT Tolerance = 1.0e-3
Linear System Abort Not Converged = False
Linear System Residual Output = 1
Linear System Precondition Recompute = 1
!Linear System Solver = Direct
!Linear System Direct Method = UMFPack
!Steady State Convergence Tolerance = 1.0e-4
End
Solver 3
Equation = "LinearDisp"
Procedure = "StressSolve" "StressSolver"
Variable = "Displacement"
Variable DOFs = Integer 3
Calculate Stresses = TRUE
Calculate Strains = TRUE
Calculate Principal = Logical TRUE
Linear System Solver = Direct
Linear System Symmetric = Logical True
Linear System Scaling = Logical False
Linear System Iterative Method = BiCGStab
Linear System Direct Method = UMFPACK
Linear System Convergence Tolerance = 1.0e-8
Linear System Max Iterations = 200
Linear System Preconditioning = ILU2
Nonlinear System Convergence Tolerance = Real 1.0e-7
Nonlinear System Max Iterations = Integer 1
Nonlinear System Relaxation Factor = Real 1
Steady State Convergence Tolerance= 1.0e-6
Optimize Bandwidth = True
End
...
Material 1
...
Youngs Modulus = 1.2345e9 ! E
Poisson Ratio = Real 0.3 ! mu
Reference Temperature = 298.0
Heat Expansion Coefficient = 1.2345e-5
...
End
thermal stress = alpha*E*(T-T_reference)
The thermal elastic stress analysis can be utilized for "transient" mode of simulation. The postprocessed values of stress, and strain are linked to the StressSolver.
If plastic deformations are to be considered, it is recommended to use "ElasticSolver" instead of "StressSolver". The ElasticSolver can then allow the use of "UMAT" style user defined subroutine accessed or called from the Material block. However, the deformation modeling with ElasticSolver coupled with UMAT-style subroutine is limited to "scanning" mode of simulation at present. Moreover, the postprocessing of 3D stress and strain is not straightforward when using the ElasticSolver.
More information about the use of ElasticSolver and UMAT-type subroutine can be obtained at https://github.com/ElmerCSC/elmerfem/tr ... tVenant_2D
and https://www.elmerfem.org/forum/viewtopic.php?t=354
Best Regards,
Anil
Anil Kunwar
Faculty of Mechanical Engineering, Silesian University of Technology, Gliwice
Faculty of Mechanical Engineering, Silesian University of Technology, Gliwice