27 Replies Latest reply on Dec 16, 2015 5:31 AM by Neil Glasson

    Thermal load in static analysis - confusing results when ALPHX is T dependant

    Stefan Rutzinger

      Hello folks,

       

      I'm using static analysis with external thermal load and want to calculate thermal expansion dl/l. The point is that T_load goes to cryogenic temperatures where ALPHX(T) is strictly not constant and not linear with T and I get confusing results. Example:

       

      A cube with 1mm edges

       

      Material with ALPHX(T)=

      T[K]     ALPHX(T)[1e-6]

      300     10

      250     9.5

      200     9

      150     7.5

      100     5

        65     0

        50    -3

       

      Study -> Reference Temperature T_ref = 300K

      External load -> Temperature - applied to the whole body - T_load = 65K

       

      What I expect by physics is dl/l = SUM_i (T_ref -> T_load) [ 0.5*(ALPHX(T_i)+ALPHX(T_(i+1))) * (T_i - T_(i+1)) ] = ~0,0018 - should be UX=1.8micron

       

      What I get is exactly dl/l = 0 / UX=0 !?

       

      Is it possible SIMULATION does not integrate ALPHX(T) dT in order to calculate dl/l but instead uses something like dl/l = APLHX(T_load) * (T_load - T_ref)

      which physicaly is not very useful.

       

      Could somebody please verify and explain what's my mistake?

      Stefan

        • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
          Shaun Densberger

          I'm using static analysis.....

           

          Linear or non-linear static analysis?

          • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
            Jared Conway

            What I get is exactly dl/l = 0 / UX=0 !?

             

            > post a screenshot of your result. are you saying there is 0 deformation?

             

            what type of restraint did you use?

            • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
              Justin Strempke

              Stefan,

               

              If I recall correctly, the thermal load just in Static Analysis can be applied only to external surfaces, neglecting any interior body elements.  This would greatly reduce any expected thermal response as you deviate from your reference temperature.  If you want the entire body to be at a steady-state temp you must run a thermal study first, then import those results as a temperature load in the study properties.  Pardon me if you have, I just didn't see a thermal study in the screenshot you posted.

               

              Justin S.

                • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
                  Stefan Rutzinger

                  Hello Justin,

                   

                  you're right if you do the study on a SW part. In a SW assembly you can open the assembly tree in the main window and select a part (actually you have to click twice...). The selected parts are highlighted in blue. This applies the thermal load to the whole volume of these parts. For the sample above I created a SW assembly with only one part, the cube. Sorry I didn't mention before.

                   

                  Stefan.

                    • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
                      Justin Strempke

                      Stefan,

                       

                      No my apologies, yes you're right in that - I see it now looking back at your screenshot.  I run 2014 SP2.0 currently, have run the model and get the same as you:

                       

                      temp 1.JPG

                       

                      Doing a quick iteration spreadsheet I came up with -1.762 µm at 65° to compare to the model.

                       

                      I tried a thermal transient study as well and tied to a NL study to see if that made a difference, and it did not - same results.

                       

                      UPDATE:  When I stopped an analysis to modifiy some parameters I was playing with, the ALPHA vs TEMP table had reset itself to include only the 65/0 and 300/10e-6 rows...

                      • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
                        Jared Conway

                        wait, justin just jogged my memory

                         

                        you're expecting the software to actually change the E during the static analysis from zero strain to the temperature?

                         

                        thats probably it

                         

                        the software is just looking at the temperature you applied and applying the discrete property at that temperture and calculating the delta T and the displacements from zero strain

                         

                        for what you want, you're talking a nonlinear problem (time effects).

                          • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
                            Stefan Rutzinger

                            >>the software is just looking at the temperature you applied and applying the discrete property at that temperture

                             

                            You're right, that's also my understanding of the software. The point is about selecting the correct property.

                             

                            For example for thermal conductivity KX or specific heat C or modulus of elasticity EX, these are really the discrete property at that temperature T_load which are applied, and that's correct in terms of physics.

                             

                            With CTE there's one difference. Actually the property that should be applied is not APLX itself but the "linear expansion dl/l". This dl/l  needs to be computed (at T_load, from ALPX(T), considering zero strain at T_ref) just before starting the solver. Then this is the valid discrete proterty at the temperature T_load and there's nothing nonlinear about it.

                                • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
                                  Stefan Rutzinger

                                  I admit it's harder to find references than I expected. Looks like the topic is too trivial to be mentioned in text books. I only found paragraphs as short as 3 sentences in all of my physics books. Seems there's more to tell about thermal transportation processes than about thermal expansion.

                                   

                                  Even Paul A. Tipler, "Physics for scientists and engineers" (german translation 1994) just summarises that the definition of CTE is the differential equation  "alpha = 1 / L * (dL / dT)" and concludes that averaging alpha is sufficient in most cases.

                                   

                                  http://en.wikipedia.org/wiki/Thermal_expansion just says that the differential equation may need to be integrated if alpha varies with temperature.

                                   

                                  The german wikipedia http://de.wikipedia.org/wiki/Ausdehnungskoeffizient actually is the only reference I found for the moment which mentions the integral of the above differential equation. Actually I also missed the exponential term and only used tayor developed simplifications in my explanations above.

                                    • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
                                      Justin Strempke

                                      What I found/remember was that the dl=alpha*dT equation is valid mainly for small temperature increments (could not find a definitive 'small' value), or for alpha's which are mostly constant vs. temperature and can be defined by an approximate averaged alpha value.  Otherwise the equation would require integration (as you mentioned).

                                       

                                      Pretty interesting topic/idea/issue so far, just odd the NL steps in SW don't handle it by default...

                                        • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
                                          Jared Conway

                                          "NL steps in SW don't handle it by default..."

                                           

                                          we're talking about a static analysis in this case. there is no time stepping/history regarding the temperature. the property is pulled directly from the curve via linear interpolation between the 2 closest points on the curve as far as I am aware.

                                           

                                          It sounds like stefan is looking for something beyond that.

                                          • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
                                            Stefan Rutzinger

                                            >> What I found/remember was that the dl=alpha*dT equation is valid mainly for small temperature increments

                                             

                                            Small temperature increments means that the variation of alpha(T) with temperature is small in the temperature intervall. There are two approximations within this commonly known but simpified equations.

                                             

                                            The one is about the exponential function being approximated to be exp(x)~x (by taylor development) at x~0. The error in doing so is less than 5% if the overall delta-L is less than 10% of L_0 - which is even the case for metals (alpha~1e-5 1/K) with large delta-T up to far above 1000K and for polymers (alpha~1e-4 1/K) with a delta-T of several 100K - but show me a polymer which won't disintegrate at such temperatures. So this is true for any practical case.

                                            The other approximation is that the variation of alpha(T) within the named temperature intervall is small in the sense that the integral S alpha(T) dT is approximated by alpha * delta-T. A variation of 10% of alpha(T) could lead to an error of 10%, a variation of a factor of 2 (say from 1e-5 to 5e-6 1/K) in alpha(T) could lead to an error of 50% already!

                                             

                                            The Assumption that the variation of alpha(T) is small within the temperature interval is true only for materials such as metals far from their melting point or polymers far from their glas transition temperature.

                                            But alpha(T) may vary strongly with temperatue for example at very low temperature, when coming close to the melting point of metals, at the glas transition temperature of polymers (e.g. glue, silicones), or for ice between -4°C...0°C. See or example the alpha(T) for silicon, germanium, Alloy 36 etc.

                                             

                                            So my understanding now is that the software uses the simplified equation but doesn't comment on that. So when entering a temperature dependant curve for ALPX(T) large errors may arise. I dont' believe it would be much work to implement the full integral solution of the differential equation alpha = 1/L dT/dL instead. At least there should be a clear statement in the documentation/helpfiles about this limitation of the software.

                                • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
                                  Jared Conway

                                  justin, if you select body/parts you can apply temperature to the whole body

                                  going to a thermal analysis gives more "accuracy" because you will have a temperature gradient

                                    • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
                                      Peter Van Der Linden

                                      Is anyone working on the issue?

                                      Over the last year I learned that my simulations did not correctly predict displacements at cryogenic temperatures. Having found the above topic I've read it ten times and did similar simulations. The bottom line is that a part cooled down to close to zero temperature will show zero thermal expansion.

                                       

                                      Is there any chance to have the thermal expansion implemented correctly (meaning by integration)? In simulations at cryogenic temperatures this is crucial. Depending on the alpha vs T curve things now go wrong somewhere between 200 Kelvin and 100 Kelvin, errors explode as the temperature gets closer to zero. For the moment the results are not reliable.

                                       

                                      Thanks for any feedback

                                      Peter van der Linden

                                        • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
                                          Stefan Rutzinger

                                          Hello Peter,

                                          Scientists and Mechanical Enginees use different definitions of thermal expansion. Scientists use strict differential definition:

                                                    CTE = 1/L*dL/dT

                                          Mechanical Engineers use integrated definition:

                                                    Thermal Expansion = Delta-L / L @ T_0 -> T_1

                                          which regularly is used in material data sheets like "Thermal Expansion 20°C -> 500°C"...

                                           

                                          SW Simulation uses Mechanical Engineers' definition. For the time being, you need to integrate CTE values from a starting temperature (e.g 20°C laboratory environment) to T_x in order to obtain correct results from you simulation.

                                           

                                          I heard that in future versions it shall be possible to select which kind of data to enter for thermal expansion but I don't know if this is true.

                                            • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
                                              Peter Van Der Linden

                                              Hello Stefan,

                                               

                                              Thanks a lot, now we're getting there!

                                              As thermal expansion is important in cryogenics both expressions are used.

                                              On the other hand in most cryo textbooks it is only treated with the same formulae you give.

                                              For example: uspas.fnal.gov/materials/10MIT/Lecture_1.2.pdf

                                              Historically data were mostly given as delta L / L but the NIST cryogenic database gives the CTE.

                                               

                                              On the practical side of implementing this:

                                              There is a problem of units in the integrated CTE, it will be dimensionless.

                                              SW wants to have a unit 1/K.

                                              It works if alpha(T_x) = (integral T=0 to T_x of CTE) / (T_0 - T_x)

                                               

                                              I've just tested this on a copper bar and got correct values.

                                              Now I' ll have to create the curves for my favorite materials...

                                               

                                              Thanks a lot

                                              Peter

                                                • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
                                                  Neil Glasson

                                                  I too have recently been grappling with this and have settled on this simple work-around:

                                                   

                                                  Instead of entering a proper CTE data table into Solidworks, I first process the data table so that each temperature has a corresponding mean of all the CTE data points between that specific temperature and the zero strain temperature of interest (in my case 293K).  I am modelling for cryogenics and am interested in the thermal response to temperatures down to 65K relative to 293K.  My Solidworks output now agrees well with hand calculation - it did not before. 

                                                   

                                                  I hope this helps.

                                                   

                                                  Neil

                                        • Re: Thermal load in static analysis - confusing results when ALPHX is T dependant
                                          Christopher McKenzie

                                          Solidworks Simulation does not integrate the temperature dependent CTE values as a function of temperature.  It simply takes the final temperature, looks up the CTE from the table and then multiplies by the delta temperature to calculate the expansion.   This generally works just fine when the reference temperature for zero strain matches the reference temperature for the CTE data.  The CTE data is assumed be be calculated as alpha_bar =  (L-Lo)/Lo/(T-To) where To is the reference temperature for zero strain.  However, this fails when the desired temperature for zero strain is not the same as the CTE data's reference temperature.

                                           

                                          For example, calculate the expansion of a long rod with temperature dependent CTE values from 25 C up to some high temperature.  Then re-defined the zero stress temperature to the high temperature in the simulation and calculated the shrinkage back to 25 C.  You don't get the same value!

                                           

                                          To fix this problem you have to re-normalize the CTE data for the new zero strain temperature:

                                          Calculate deltaL/Lo for each CTE as CTE(Ti)*(Ti-To).  Fit a curve to this deltaL/Lo data.  Calculate the re-normalized CTE values as CTE(Tref) = (deltaL/Lo(Ti)-deltaL(Lo(Tref))/(Ti-Tref), where Tref is the new zero strain reference temperature.  Then copy and paste this new table into the CTE table for the material.  You have to do this for each new zero strain reference temperature.  So if you are running a simulation for 500 C zero strain and 1000 C zero strain, you have to enter new CTE data each time!  I did this for a 1 meter long Kovar Bar from 25 to 900 C.  The change in length from hot to cold was 9.86 mm, but when I went the other way I only got a shrinkage of 8.3 mm which is wrong.  So when I re-normalized the CTE data I got back the same 9.86 mm of shrinkage.