The starting project contains a heat sink, a chip, and the flow region. The following picture demonstrates what should be visible after importing the project.
1.1 Getting Started
Since we have a flow domain and solid parts in the geometry, there will be interfaces between these phases. Before creating a simulation, run an ‘imprint‘ operation to detect these contacts automatically. Follow the steps below:
Right-click on the geometry name;
Select and ‘start‘ the ‘imprint‘ operation.
1.2 Create the Simulation
To create a simulation, click on the ‘imprint‘:
Hitting the ‘Create Simulation’ button leads to the following options:
Choose ‘conjugate heat transfer‘ as the analysis type and ‘create the simulation’.
2. Simulation Setup
We set up a simple simulation to make use of the physics based meshing option.
If you do not care about it, you can directly jump to section 3 Meshing.
Specify gravity under ‘model‘. It will be -9.81 m/s² in the y-direction:
Click on the ‘+ button’ next to ‘fluids‘. From the materials library, choose ‘air‘.
Afterward, assign it to the ‘air domain‘.
Now repeat the process for the two ‘solids‘. Assign ‘aluminium‘ to the ‘heat sink‘ and ‘silicon‘ to the ‘chip‘:
Similarly, for the chip:
2.3 Boundary Conditions
Click on the ‘+ button’ next to ‘boundary conditions‘. Select ‘natural convection inlet/outlet‘. Assign it to the 6 outer faces of the ‘air domain‘.
3. Standard Mesh
The standard meshing tool will be used to mesh the heat sink. A total of six different meshes will be created, to show how configuration parameters affect the resulting mesh.
To create a mesh, the first step is to click on ‘mesh‘ in the simulation tree. A tab with options will open.
Let’s give a brief overview of the basic settings:
Cell ‘sizing‘ can be either manual or automatic. With ‘manual sizing‘, it’s possible to specify a maximum edge length for cells in the entire domain;
In the ‘fineness‘ sliding bar, users can specify global levels of fineness to their meshes;
‘Automatic boundary layers‘ generate layers automatically, based on the boundary conditions set by the user;
With ‘physics-based meshing‘, the regions near inlets and outlets are automatically refined. This option is useful to capture high gradients in these regions. To use this option, users have to fully set up their simulation before creating a mesh.
When the ‘hex element core‘ is enabled, the standard mesh becomes hybrid, with tetrahedral cells close to the walls and hexahedral cells distant from walls.
3.1 Mesh One: Default Settings
Now it’s possible to use the default settings. Please head back to ‘mesh‘ and hit ‘generate‘.
The standard mesh takes about 5 minutes to complete. When it finishes running, hide the ‘air domain‘ to inspect the solid parts:
This 1.2M cell mesh is too coarse. For heat sinks, it’s recommended to generate a minimum of 2 or 3 elements across the fin thickness. Let’s generate a new mesh with a fineness level of 7.
3.2 Mesh Two: Changing Global Fineness
The settings for the second mesh will be the same, except for ‘fineness‘.
Follow the steps below to create a new mesh:
Simply adjust the ‘fineness‘ slide bar to 7 and ‘generate‘ the second mesh.
The second mesh takes about 8 minutes to run and consists of 1.8M cells. Let’s now compare the heat sink discretization using the first and second meshes:
The fineness level changes the mesh size globally. Comparing the new and previous meshes, there is almost no obvious change in the element size on the heat sink. This shows that a large portion of refinement is performed in the air domain. Local refinement on heat sink and chip would be a more cost-effective way to generate a mesh.
3.3 Mesh Three: Local Element Size Refinement
Create another mesh. To enhance the capture of the fins, we will use a local element size refinement. The other settings remain default.
To create a refinement, click on the ‘+ button’ next to ‘refinements‘. Select local element size.
With local element size, you can specify a maximum element size for selected entities. It’s particularly useful to increase the resolution on small faces.
For the heat sink model, each fin is 0.002 meters thick. A ‘maximum element size‘ of 0.001 meters will ensure at least 2 elements across the thickness.
Set up the refinement as below. To save time, assign it to a pre-saved topological entity set named ‘local element size refinement‘.
Now go back to ‘mesh‘ and ‘generate‘ it.
Now, with the limited cell size, it’s possible to see a big difference in the fins. The number of cells is now at 2.8M.
So far, we learned how to visualize the mesh on surfaces. This does not give any information regarding the interior elements. A ‘mesh clip‘ is recommended to see the interior cells. Follow these steps:
Click on the ‘mesh clip‘ icon;
Rotate or translate the cutting plane using the sliding bars;
‘Generate’ the mesh clip.
Now the interior is visible. We can see the hexahedral cells in the middle of the domain. By zooming in to the fins, the boundary layers can be seen:
3.4 Mesh Four: Region Refinement
From the image above, we can see that mesh size suddenly increases when it transitions from tetrahedral to hexahedral cells.
While this is not a big deal in thermal conductivity, it may cause inaccuracy or even create instability in flow simulations. Additionally, due to the natural convection, hot air is expected to rise along the vertical axis of the heat sink. Therefore, a region refinement is recommended.
For the fourth mesh, let’s copy the third mesh and add a refinement.
To copy a mesh, follow the steps below:
Click on the arrow access the mesh menu;
Click on ‘copy mesh settings from…‘;
Select the third mesh.
After these steps, the fourth mesh can be set up. Click on the ‘+ button’ next to ‘refinements‘ and create a ‘region refinement‘. The maximum edge length defines the maximum element size within a region. Please input 0.004 meters.
Afterward, click on the ‘+ button’ next to ‘geometry primitives‘. Select a ‘cartesian box‘.
Next, define the coordinates of the cartesian box. It should fully cover the heat sink and chip. Consider the possible flow motion while deciding where the refinement region.
Go ahead and ‘generate‘ the mesh. This one consists of 3.5M elements and takes roughly 13 minutes to finish. Create a ‘mesh clip‘ for it:
3.5 Standard Mesh Five: Inflate Boundary Layers
By default, the ‘automatic boundary layers‘ option creates 3 layers. You can also specify boundary layers manually, giving you full control over its generation.
Copy the settings from the previous mesh and follow the steps below:
Click on the ‘+ button’ and create an ‘inflate boundary layer‘ refinement;
Change the number of layers to 5;
To quickly assign all heat sink and chip walls, hide the ‘air domain‘ by clicking on the eye next to it;
Right-click in the viewer and ‘assign all visible‘ parts.
It’s easy to control the boundary layer thickness by either specifying the growth rate or the ‘first layer thickness‘.
Before generating the mesh, remember to disable ‘automatic boundary layers‘.
The extra layers can be seen with a mesh clip. With this configuration, the near-wall profiles are captured more accurately.
3.6 Mesh Six: Advanced Settings
By expanding ‘advanced settings‘, you will find two additional parameters:
‘Small feature suppression‘ represents a threshold to ignore small entities. Only entities larger than the input value are meshed.
The ‘gap refinement factor‘ represents the number of cells in small gaps. It doesn’t necessarily have to be an integer.
On one of the sides of the heat sink, a lot of small features are present. Their smallest edge has about 0.2 mm of length. Naturally, gaps are also present, between the fins.
To see how both advanced settings work, please copy the settings of the very first mesh from this tutorial. Change ‘small feature suppression‘ to 0.0005 meters and the ‘gap refinement factor‘ to 2.
Comparing the first mesh to the advanced settings mesh, differences can be seen clearly:
The small features are no longer captured. As a result, the cell count dropped from 1.2M cells to 743k.
Congratulations! You have finished the standard meshing tutorial!
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.