SOLIDWORKS Simulation: Boundary Conditions and Linear Thermal Expansion (Part 2)
In Part 1 of this SOLIDWORKS Simulation blog, I demonstrated how improper boundary conditions led to incorrect analysis results with Linear Thermal Expansion – “garbage in, garbage out”. Now let’s look at what was happening under the hood with my analysis when applying temperature boundary conditions to a linear static study.
Recall that I initially identified an issue with my results when reviewing the resultant displacement plot (Figure 6 in the Part 1 blog). I’m going to use a Thermal FEA study to see if I can determine what temperature is applied to the body that caused the faulty results. I created a thermal study with the 1/8th symmetric cube, using the same custom material, and applied a temperature boundary condition to the exposed faces of the cube (Figure 1).
The assigned initial temperature is 125°C, matching the temperature used in blog Part 1. Representing symmetry in a thermal study can be accomplished via two methods. You can apply a zero-value heat flux to the cut faces of the symmetric model. Alternately, you can save yourself a little time by not assigning any boundary condition to the cut faces, which also represents thermal symmetry. I then solved this thermal study as a Transient analysis with a total solution time of one second and a Time increment size of 0.05 seconds (Figure 2).
One side note here regarding solver selection. In my testing, I have found that the Intel Direct Sparse solver is the best choice for solving Thermal FEA studies in SOLIDWORKS Simulation as it can be significantly faster than either FFEPlus or Direct Sparse.
Once the thermal study is solved, I created a temperature plot at the first solved time step, 0.05 seconds. To better visualize the temperature distribution, I used Mesh Sectioning to see inside the part (Figure 3).
Notice that the minimum temperature at the beginning of the solution is -273.15°C – absolute zero! This indicates that for a thermal study, any node that does not have a temperature assigned from a boundary condition is assumed to be at 0 Kelvin! (Confirmed by SOLIDWORKS Knowledge Base article S-034900.)
With the temperature distribution in the 1/8th symmetric cube solved, I needed to revisit the Linear Static study and re-purpose the thermal study results at 0.05 seconds. To accomplish this, I modified the static study properties, changed to the Flow/Thermal Effects tab, and pointed to the Thermal study and specific Time step to use as the temperature boundary condition. I kept Reference Temperature at zero strain equal to 25°C, matching the blog Part 1 analysis (Figure 4).
After solving this linear static study, I reviewed the resultant displacement plot and compared that to what I obtained in blog Part 1 (Figure 5).
This comparison is very interesting! The shape the two deformed bodies are quite dissimilar. Also, the magnitude of the displacements are an order of magnitude apart, both for resultant displacement and Z-displacement. Based upon these results, I learned a couple of things! I had assumed that the temperature assigned to the internal nodes in blog Part 1 was absolute zero for a linear static study. That assumption was incorrect. Also, if I revisit the hand calculation in blog Part 1, the plot on the bottom, left-hand side of Figure 5 above (Z-displacement result) would be generated from a temperature difference of approximately 14°C! Not 100°C from the hand calculation or even 400°C when I incorrectly assumed the nodal temperatures were set to absolute zero.
This begs the question “what is the temperature of a node in a Linear Static study when a temperature boundary condition is not properly assigned”? For this, I had to do some digging in the SOLIDWORKS Knowledge Base to find article S-063863. This article states that any node with an unassigned temperature boundary condition is set equal to the Reference Temperature at zero strain in the SOLIDWORKS Simulation study properties.
To verify this newly won informational tidbit, I had to go back to the the Thermal FEA study. I modified the 125°C initial temperature to be a temperature boundary condition. I also added a temperature of 25°C to the entire body. I then solved this as a steady-state thermal, not transient thermal, study. The temperature distribution, shown in Figure 6, was then utilized in a linear static study as a temperature boundary condition.
The resultant displacement plot from the updated linear static study is shown in Figure 7. This more closely matches the original resultant displacement from blog Part 1’s Figure 6.
I originally started this two-part blog by showing how incorrect application of a boundary condition could lead to flawed results. The incorrect results piqued my curiosity enough to research what was happening under the hood of SOLIDWORKS Simulation. After a bit of testing and SOLIDWORKS Knowledge Base searching, I found that the automatically assigned nodal temperatures are different, depending upon the study type. I was correct that automatically assigned nodal temperatures are set to absolute zero, but only for Thermal studies. My assumption that unassigned nodal temperatures for Linear Static studies were also set to absolute zero was incorrect. I believed this because that scenario would lead to large temperature differences, thus generating “interesting” linear thermal expansion results, which would hopefully lead to a rigorous inspection of the temperature boundary conditions. As it turns out, the high temperature gradient between the surface nodes and the adjacent, internal nodes generates a visual result that makes me look twice! So, pay attention to your boundary conditions and scrutinize your results. Now go make your products better with SOLIDWORKS Simulation!
Product Specialist, Simulation
Father, golf junkie, coffee connoisseur, computer nerd
Computer Aided Technology, LLC