Thermal Management Tutorial: CHT Analysis of an Electronics Box
This advanced thermal management tutorial describes the setup and analysis of electronics cooling on an electronics box containing different electronic components being cooled by the airflow of a fan.
All electronic devices generate heat during their operation. Components and materials, used in these devices, have individual maximum temperature limitations. Therefore, thermal management is extremely crucial for system reliability and preventing failure.
Simulation is a cost-efficient method to test different cooling strategies and optimize your solution. This is a great advantage to prevent time-consuming and expensive prototyping and physical testing procedure.
This tutorial teaches you how to:
Select suitable boundary conditions for thermal management/electronics cooling.
Assign materials for different components.
Define individual contact properties.
Judge the calculation stability.
We are following the SimScale workflow:
Preparing the CAD model for the simulation.
Setting up the simulation.
Creating the mesh.
Run the simulation and analyze the results.
1. Prepare the CAD Model and Select the Analysis Type
Import the tutorial project into your workbench, by clicking the button below:
In this simulation, we want to simulate heat being transferred from electronic components to the air. Normally CAD models contain the solid parts (casing, PCB, chips, heat sinks, etc.). The fluid region and the interfaces between the fluid and the solids need to be defined in SimScale. The following sections describe how to create Flow volume extraction and Imprints.
To learn how to prepare your model for any type of simulation, take a look at the CAD preparation section.
This box describes how to perform a flow volume extraction and an imprint, however in the tutorial project, this is already done for you.
a. Flow Volume Extraction
For this simulation, we create an open inner region, as the openings are open. If you have a case with sealed openings or no casing at all, check out this article, it describes all three operations to perform a flow volume extraction in SimScale.
Click on the geometry.
Select ‘Add geometry operation’.
Select ‘Open inner region’.
The following picture illustrates what faces to select in order to create the open inner region.
Activate Keep existing parts option. This will ensure to keep the existing solid components.
Select the boundary faces that lie between the external environment and the internal (highlighted in blue)
Select one internal seed face (pink). If you are wondering about seed faces, check out this content.
Finally hit the ‘Start’ button and after about 1 min the operation is completed.
Once the CAD fluid region is created, perform imprint operation. Therefore follow step one and two from figure 3 and select ‘Imprint’ in the third step. The following menu will pop up:
Hitting ‘Start’ will automatically detect all contact surfaces. All you need to do is wait until the operation is done.
2. Simulation Set-up
2.1 Create a Simulation
Select the CAD model and press the ‘Create Simulation’ icon as presented in the following picture.
Now the SimScale simulation library, shown in the figure below, will pop up.
Within this simulation library, all analysis types available in SimScale are listed. Selecting one of them shows a description of them. For this thermal management simulation, we select the ‘Conjugate Heat Transfer (CHT)’ option and hit the Create Simulation‘ button to confirm our selection.
Did you know?
The analysis type you choose within the simulation library depends on what results you are interested in and what given parameters you have.
In this simulation we want to see the heat transfer both within the solid parts as well as from the solids to a fluid. Hence we need to select the Conjugate Heat Transfer (CHT) analysis type. This is the most common analysis type for electronics cooling.
If you are only interested in the heat transfer within solids, you can simplify the simulation process by performing a Heat Transfer analysis.
On the other hand assuming you are only interested in the heat transfer within a fluid, you would go for Convective Heat Transfer.
2.2 Global Settings
Now you have successfully created the thermal management simulation and you should see the simulation tree, named Conjugate heat transfer on the right side of the workbench, like shown in the picture below.
You can define the global settings by clicking on the simulation, in this case, named Conjugate heat transfer. There we can decide whether we want to take into account radiation, which turbulence model we want to apply, and whether we want time-dependent or averaged results. Change the turbulence model to ‘k-omega-SST’ and keep the rest as defaults.
Did you know?
The k-omega SST turbulence model switches between the k-omega and k-epsilon model automatically, therefore it takes the advantage of both models and can be used for the majority of turbulence simulation.
Have a look at
this page to learn more about the global simulation settings.
The Geometry is being selected automatically. In case you have multiple geometries uploaded, make sure to choose the right one.
The thermal interface is a commonly used feature when it comes to electronics cooling and thermal management applications. Contactsare detected automatically, thanks to our earlier performed imprint operation. It should be 646 standard interfaces at the beginning.
If you want to specify physical quantities of a contact you can change the type of the interface, therefore you need to select the interface. In this case, it is the interface between the large chip and the heat sink. To see them we need to hide the housing, the flow region, and the heat sink.
The following picture illustrates what to do:
Activate the volume selection
Select the housing
Right-Click in the workbench and select ‘Hide selection’
Repeat this process for the flow volume and the heat sink. Now you can select the interface and define a specific interface condition, like presented in the following picture:
Select the interface highlighted in red
Right-click on the workbench and choose ‘filter contacts by selection’
Doing so leads to the menu where you can define the interface’s properties:
For this analysis, we want to simulate a 1mm thermal paste with 8W/(mK) thermal conductivity, between the large chip and heat sink. Therefore
Choose a face, where the material is in contact (upper surface of the large chip or bottom face of the heat sink).
Then right-click and choose ‘filter contacts by selection‘. This will select the corresponding contact interface
Finally, change the interface thermal to ‘contact interface material’ and assign corresponding thermal properties.
If there are any partial interfaces () detected, there is a CAD issue on the corresponding contact face. To find the problematic face, select the interface and then rightcklick anywhere on the workbench and select ‘Isolate all assignments’. This will visualize the problematic interface. Finally, go back to your CAD software and fix the corresponding face.
Avoid adding thin layered materials (thermal paste, insulator on winding, etc.). Including these materials in the model increases the mesh density and the computational expense. Instead, you can define them as a Contact interface as described earlier in this section.
In the next step we need to define the simulation model, in this case it means setting up gravity like in the picture below.
Define the gravity based on its global coordinate system. Here, it is 9.81 m/s2 in negative z-direction.
To assign all the materials in the model, we need to follow the workflow presented in the following images:
To define a new fluid, click on the ‘+’ next to the Fluid item. Doing so makes the fluid library pop up:
Choose Air and hit ‘Apply’ to confirm the selection. Accordingly the material properties pop up:
Finally, assign the volume you want to assign to the new materials. For air, you need to select the flow region.
Now you can assign whatever material you would like to the solid parts. Follow the same workflow as just described, but start with the ‘+’ next to solids.
Be careful when assigning the solid materials:
When creating and assigning materials beware of what parts of the geometry are highlighted, because this will be assigned to the new material automatically.
Also note that every part in the CAD model needs to be assigned to one and only one material.
Suggestions for material assignments, typically used for electronics cooling:
You can hide the parts once you assigned a material. This way you will avoid double assignments and it is clear what is left unassigned. Figure 9 shows how to hide parts.
c. PLA and Copper
Assign PLA material to the PCBs and copper material to heat sink. PCBs have often anisotropic thermal conductivity (means heat conduction is directionally dependent). This can be defined by selecting Transport as Const aniso.
Assign tin to the remaining parts:
Now you can assign silicon to the remaining parts.
If you use a different material for your thermal management simulation than the default materials in the library, you can create a custom material.
2.7 Initial Conditions
Initial conditions are the starting points for a thermal management simulation. Those are the values assumed at the beginning of a simulation. We will not touch the global initial values for this analysis as the defaults are sufficient, but let’s define some initial temperatures for different components:
You can predefine the temperature for different parts individually by using subdomains (as an example, we can expect solids to be around 30 ℃ higher than the fluid inlet temperature, therefore assign 50 ℃).
Did you know?
You do not have to initialize anything. SimScale’s default values work for common use-cases.
Although if you estimate the individual initial conditions applying for your specific application correctly, you can stabilize the calculation and improve the convergence behavior.
2.8 Boundary Conditions
Boundary conditions define the external influences acting on the simulation domain. The following picture shows an overview of the physical situation applied in this electronics cooling simulation:
We need to model the fan outlets, openings (inlets), and the heat transfer surface of the casing, using boundary conditions (BCs).
In this example, air movement is forced by fans sucking the air out of the domain. The casing surface helps to lose heat to the exterior domain (in this example, we did not create an exterior domain, but we assume the device to be in 20°C ambient environment by applying a wall boundary conditions)
Want to simulate the box without fans?
If there were no fans and air movement was expected to occur through natural convection, then you could assign Natural convection inlet/outlet BC to all openings.
a. Fan outlet – Custom BC
Follow the custom boundary condition setup presented in the picture below to set up the fan outlet:
Create a custom boundary condition by hitting the ‘+’ button next to boundary conditions
Define the values according to Figure 21:
(U) Velocity: ‘Pressure inlet-outlet velocity‘ This means that the velocity on the fan BC is dependent on the pressure difference.
(P) Modified pressure: ‘P<fan> Fan pressure‘ This option enables to upload a fan curve.
Flow direction: ‘Out‘. This is an exhaust fan, therefore flow should leave through the fan.
(T) Temperature: ‘Zero gradient’ Zero gradient means to take the surface value from the neighbor element. We want the solver to calculate the temperature on the outlet based on the heat it absorbed on its way through the electronics box, that’s why we do not specify an absolute value.
(k) Turb. kinetic energy: ‘Zero gradient‘ Same as the temperature.
(ω) Specific dissipation rate: ‘Zero gradient‘ Same as temperature.
Define the fan curve by creating a table:
Now you can define your own pressure curve, by typing in the values or simply uploading a CSV file. Use the following button to open the spreadsheet containing the curve data used for this simulation:
When you are on the spreadsheet, download the data to your computer in CSV format by going to File > Download > Comma-separated values. After uploading the CSV file, make sure that the values are assigned to the correct quantities. Therefore check if it looks like in figure 22.
Did you know?
You can also use a velocity outlet and specify a fixed flow rate or velocities for the outlet.
b. Inlet – Pressure inlet BC
Define a pressure inlet boundary condition as shown in the following picture:
Optional: Thermal Casing Conditions
Excluding contacts, if a surface has no assigned BC, is considered as Adiabatic wall. If you would like to neglect heat loss through the casing, skip this stage. Otherwise, you can assign a specific heat transfer coefficient. Using the same BC, you can assign an additional heat source too. Select the external faces of the casing, choose External wall heat flux option to assign convection coefficient and ambient temperature. You can also re-name the BC names.
2.9 Advanced Concepts – Defining Power Sources
Components in electronics devices receive electrical current and generate heat. Heat dissipation from any component can be defined by assigning an absolute power source [W] or a specific power source [W/m3] to the corresponding part. In this example, there is a CPU, several chips, capacitors, and a transformer.
You can assign an absolute power source as described in the picture:
Hit the ‘+’-button next to Power sources under Advanced concepts.
Select the option Absolute power source.
Define the amount of heat, in this case, we choose 60 W.
Use the box selection to assign the CPU which is located under the heat sink.
Did you know?
You can assign as many different heat sources as you like. You also have the option to assign the power sources to a geometry primitive you define during the simulation setup, in case you do not have the electronic component generating heat represented in your model.
The following pictures show the heat sources applied in this tutorial, please follow the same workflow as just described:
These advanced concepts might also be helpful for an electronics cooling application:
Rotating zones: If your CAD model contains the rotor blades, you can set up their rotational properties here
Momentum sources: This serves as a simplification for modelling the fans, in case you do not have the fan’s geometry
2.10 Numerics and Simulation Control
The default settings for numerics are usually suitable. Experienced users can use manual settings for smoother or faster convergence.
The Simulation Control settings define the general controls over the simulation. Apply the following controls:
Start time: 0 s
End time: 2000 s
Write interval: 2000 time step (in a steady-state analysis, only the final state of the system is important.)
The number of processors: Automatic (This will ensure simulation to be executed by optimum processor selection.)
Maximum runtime: 12000 s (Simulation run will be forced to stop in case defined physical time is reached.)
2.11 Result Control
As a default setting, velocity, pressure, density, temperature, and radiation variables will be saved for every cell in the fluid domain. The changes of those between the timesteps are displayed in the convergence plot.
You can use result control to observe the development of the values at any point or surface in your domain during the calculation.
Create an area average on the fan outlet faces, so the physical data for these areas such as pressure, temperature, velocity, and more will be saved in every 20 iterations and written into a plot during the calculation. Follow the steps presented in the figure below:
Hit the ‘+’-button next to Surface data under Result control.
Select the option Area Average.
Define a write interval as 20.
Select the six outlet faces and name the area average “Area-av-outlet”.
To see the flow rate generated by the fan, add an area-integral surface data result control item, and assign the outlet faces. Follow the same workflow as in the figure above.
Did you know?
Adding result control items help to see the convergence, but they also increase the computational time. Therefore it is recommended to add only the necessary items and keep the write interval high. As an example, if you perform 2000 iterations, assigning the write interval as 50 means that every selected result control item will be saved 40 times.
We recommend adding result control items to the inlets, outlets, and components with expected critical temperature. In this example, we assigned surface average result controls to the interface surfaces between the CPU and the heat sink, as well as between the transformer and the board.
Default mesh settings usually create a good mesh. For CHT, we recommend the following settings:
Keep everything as default, except the following items:
Sizing: Auto, Fineness ‘2’
Use small feature suppression of ‘1.e-5 m‘ This makes the algorithm neglect anything that is smaller than 1e-5 m.
Define the number of gap elements to ‘2‘. That ensures at least two cells in gaps between geometry entities.
Press the plus icon next to the simulation runs. Now the following warning might pop up:
This warning can be ignored, as we have created a custom inlet condition by defining the fan curve. Please press ‘ok’ and start your run.
The first mesh will be generated. Right after the mesh generation, the simulation run will start.
While the results are being calculated we can observe the calculation by checking the convergence behavior.
a. Convergence Plot
Each timestep, the solver calculates solutions for each cell in the mesh. The residuals are the differences between those results. Hence the lower the residuals, the more stable the solutions are. We also call that “convergence”. The following picture shows the convergence plot for the tutorial’s calculation.
The residuals are presented dimensionless and you can convert them into a percentage: In the tutorial, all graphs are beneath 1e-2 and some even lower than 1e-3. That means, that the internal solutions differ by less than 1, respectively 0.1%. According to the convergence plot, the simulation is converged.
b. Result Control
However, we can analyze the results at special regions of interest. Let’s have a look at the outlet velocity. The following picture shows the outlet and how it is placed with respect to the coordinate system.
The mean outlet flow is in the negative y-direction. So lets have a look at the negative y-velocity at the outlet during the simulation:
Having a look at this plot, the values stay at one point and do not change significantly. This looks good as well, so let’s have a look at the results.
However, if you want to learn more about convergence, have a look at this article.
The following image shows how to access the SimScale post-processor:
You can either select ‘Solution Fields’ in the simulation tree or hit the ‘Post-process results‘ button in the run’s global menu.
We can see that the temperature of the chips at the outlets is quite high. This makes sense, because they are not exposed to the middle of the flow. Furthermore, some heat has already been transferred to the air at the beginning of the domain, so it’s capacity to lower the temperature has decreased.
In the post-processor click on ‘Results’ and hit the globe at Temperature[node]. This will plot the temperature contours in three dimensions.
For now, almost everything looks blue, because we can only see the casing. Create a cutting plane to slide the upper casing and hide the flow region, which you can find under parts. Alternatively, you can click right into the workbench to activate the ‘select to hide parts’ mode. Now just click on the casing and the flow region and you will see all the components.
For a general overview of SimScale’s online post-processing capabilities, documentation can be used here.
Strictly Necessary Cookies
Strictly Necessary Cookie should be enabled at all times so that we can save your preferences for cookie settings.
If you disable this cookie, we will not be able to save your preferences. This means that every time you visit this website you will need to enable or disable cookies again.