SimScale recently released transient capabilities for CHT v2. I decided to try out the new feature. I recently worked on a customer project that involved passing ambient air through a solid grid structure that was initialized at a very cold temperature. I decided to build my own version of this; you can check it out here.
The air domain has an inlet velocity BC which has air entering the domain at 2 m/s, 20 degrees C. The outlet of the domain is a 0 pressure gauge outlet, and the solid grid structure has material properties similar to a plastic, and is initialized at -40 degrees C at time=0. The simulation was run for 60 seconds and the goal of the analysis was to understand average outlet temperature as a function of time.
In order to have the simulation run in a reasonable amount of time, the Simulation control settings had to be optimized to allow the largest time step available while avoiding divergence and/or bad results. I decided to try a Delta T of 0.1. This is the initial time step size, and from there the time step can be increased/decreased if Adjustable time step is set to True. The Maximal Courant number is the maximum Courant number in the domain that will be tolerated. By increasing the Maximal Courant number, a larger time step can be tolerated and therefore the simulation can complete in fewer total time steps. I started by starting 3 simulations with Courant numbers of 100, 1000, and 10,000. From there, I looked at the solver log and monitored the progress. In the first few iterations it’s easy to understand whether the run time of your simulation will be reasonable or not. Every global iteration the data below is shown:
Region: region2 Courant Number mean: 103.100280467 max: 1004.62081814
deltaT = 0.0449438202247
Time = 60
I generally try to aim for a transient simulation which will finish in <10,000 iterations, and ideally closer to 1000. We can quickly see that if my time step is 0.0449 s, then it will take about 1300 iteration for the simulation to finish, which is probably reasonable. We can also see that while the max Courant number is 1000, the average of all the cells is closer to 100.
Ultimately I experienced solver instabilities when the CO was limited to 10,000, and the simulation took too long when the CO was limited to 100. A CO limit of 1000 seemed like a good fit for my project and
my 60 s transient analysis only took 4.15 hours/66 core hours (1.7M cells).