I looked through your nonlinear setup and there are a couple things that need to get cleared up before any real hard changes are made to your setup. They are:
- You have selected the outer faces of your models in each of the temperature definitions. This applies the temperature to those outer faces but no temperature values to the inside volume of the models. Simulation cannot deal with null values for temperature so a value gets automatically set to these inner nodes. That value is 0 Kelvin. You can probably see how that might be a problem. So, for each temperature definition you set you will need to select the Part itself from the feature tree (or body in the case of multi-body parts). This applies the temperature definition to the inner volume nodes then all is well.
- The coefficient for thermal expansion set in your material definition is off by a factor of 1,000,000. You have applied a value of 11.7 /K (or /C) where the actual value is probably 0.0000113 /K (as noted here: https://www.sandmeyersteel.com/images/17-4ph-spec-sheet.pdf). It is 1,000,000 times too larger which means even the slightest temperature changes causes an unrealistic change in the model's size.
Both of these issues cause pretty large problems to the solver causing it to fail in step 1 of the solver. Once those are fixed there are some other minor things to change to help the solver run. They are:
- The two bodies are positioned in an initial interference leading to a warnings from the mesher about there being an initial interference. This can be fixed just be switching the "No Penetration" contact to a "Shrink Fit" contact.
- The "Fixed-1" fixture is inhibiting the "Main Body" model from expanding due to the raised temperature. This should probably be switched over to a "Roller/Slider" fixture so the body is still stable in the X direction but can expand in the Y and Z directions.
- The solver is having a tough time starting with such a large initial time step. I had to bump it down to 0.00001 from 0.01 to get it to get that first time step to go more readily. From there the time was allowed to increase back to normal size time steps but that first step seems to need to be very small on this.
- Your prescribed displacement fixture has its time curve set to start in the fully inserted position and pull itself off. I don't know if that is your intention but your description would indicate that it is starting off and being pressed on so this curve may need to be reversed.
- Both temperature definitions have the temperature being applied at their maximum/minimum values at t=0. This is problematic for the solver as it tends to need to calculate thermal expansion over a non-zero amount of time. It would be beneficial to change the time curves for the temperatures so that they both begin at 0 degrees Fahrenheit then ramp up to their respective maximum/minimum temperatures over 25% of the time curve, plateau in the middle 50% of the time curve while the "End Cap" is then be pressed on by the prescribed displacement, then ramped back up/down to 0 degrees Fahrenheit over the last 25% of the time curve.
- Set your prescribed displacement time curve so that it is not moving the "End Cap" while the temperature of the models are changing. Make it so only one change is happening at a time. If the temperatures are changing on the models don't have the End Cap moving. If the End Cap is moving keep the temperature values static until it stops moving.
Here are the new Temperature and Prescribed Displacement time curves for reference:
Prescribed Displacement (Displacement set to 0.785")
End Cap Cooling (Temperature set to -109.3 F)
Main Body Heating (Temperature set to 300 F)
This was all done in 2018 or I would attach the file set too for reference.
Stress Animation.mp4 412.9 KB
Wow! First of all, thank you for the extensive review of my question, extensive suggestions and accompanying visuals. I greatly appreciate the time you put into to help me debug my analysis setup. Making the suggested changes above, I was able to get the analysis to run, but my results were significantly different from your posted results. Below is a snip of my VM Stress plot result.
After posting my original request for help, I stumbled across the #1 Mistake with Thermal Loads video on goengineer.com, and I realized my error in selecting faces vs. solid bodies. I have also corrected the improper CTE value, which you pointed out as well. Everything else above made sense, and I was able to flip my curves for the heating, cooling and displacement curves to match your curves. However, I still can't match, or even get close, to your final results for the stress plot, and I suspect it has to do with how I am setting up the Roller fixture on the Main Body (Right most edge). I tried both the Standard and Advance Roller Fixture, but it seems as though neither made a different in my results.
That being said, I have few follow-up questions in regards to your "Minor Points #1 & #2" above:
1. How did you set up your Roller fixture? Did you use the Standard fixture on the far right end surface or did you use the Adv Roller Fixture allowing for (0) displacement in the x-direction only?
2. What does your Shrink Fit Contact Set setup look like compared to mine below? Do I need to include the filleted edges too or just the flat surfaces from each solid body?
3. It is my understanding that the two bodies need to be touching, e.g. mated with the MainBody interior edge tangent to EndCap fillet, in order for the interference fit to run properly. How does, if at all, that change when running a shrink fit?
Thank you again for all of your help already.
I would not assume results are any more correct than your own. I purposely made the mesh on the study overly coarse so it would run quickly and let me iterate through changes in settings. Since it is overly coarse it is also, probably, overly inaccurate. The setup would still require a round of convergence testing (duplicating the study, maintaining the boundaries, reducing the mesh element sizes, rerunning the solver, then reducing the mesh element size again, etc) until the results stop changing with reduced mesh element sizes.
Besides, our results are kinda in the same ballpark (order of magnitude) so this is all headed the right direction.
To answer your other questions:
- I edited your "Fixed-1" definition and changed it over to a "Roller/Slider". So, the same face is selected but a different fixture definition.
- The "Shrink Fit" contact was made just by editing the existing "No Penetration" contact and switching it to "Shrink Fit". No changes in faces selections were made.
- You have a unique situation where your model is placed into initial interference but as the initial temperatures are applied they separate. So, technically having shrink fit is required because there is an initial interference. If the model were made to just be touching and not interfering you could likely run the same exact setup with a No Penetration contact. Ultimately, Shrink Fit is just an augmented No Penetration contact. It isn't hurting you to use it here in this way.