Fill out the form to download

Required field
Required field
Not a valid email address
Required field
Required field

Documentation

How do I Model a Fan Curve in SimScale?

This Knowledge Base article describes the steps to implement a fan curve in SimScale.

A fan is a mechanical machine used to generate fluid flow. As the flow rate increases, the pressure drop in the system also increases, which affects the performance of the fan. Fan manufacturers provide a fan curve that describes the relationship between static pressure, power demand, speed, and efficiency values per-flow rate. This information is very important for cooling purposes, which is why we need to model the fan curve when possible.

Fan Curve Implement SimScale Fan outlet Pressure
Figure 1: Pressure distribution inside an electronics box for a fan outlet condition

Approach

On the SimScale platform, two methods are used to implement a fan curve in the simulation. To simulate an external fan, which is located outside the fluid region, the fan curve can be assigned as a boundary condition. This can be done either as an inlet for an intake fan or as an outlet for an extraction fan. If the fan is located within the fluid region and therefore no boundary condition can be used, a momentum source can be assigned to a representative volume to induce the pressure jump created by the fan onto the flow field.

Fan Curve Implement SimScale Fan Concepts SimScale
Figure 2: Visualization of the different fan curve implementation methods

1. Analysis Types

The fan boundary condition and fan momentum sources advanced concept can be assigned to these analysis types:

2. External Fan Boundary Condition

When a fan is attached to the fluid region the fan curve can be defined as a boundary condition. This can either push air into the fluid domain or create suction to extract air from the fluid region. To create a fan boundary condition please follow the steps below.

  1. Create a ‘Fan’ boundary condition by hitting the ‘+’ button next to Boundary conditions.
  2. Define the values according to the following figure:
Fan Curve Implement SimScale Fan BC Setup
Figure 3: Fan boundary condition implementation in SimScale
  • Fan Type: ‘Inlet‘ or ‘Outlet’. Assign the flow direction of the fan. Use ‘Inlet’ for flow into the fluid domain and ‘Outlet’ for flow out of the fluid domain.
  • \( (P_{Fan}) \) Fan pressure: Setup the fan curve or upload a .csv file.
  • \( (P_{t}) \) Ambient total pressure: Assign the ambient pressure of the environment.
  • Temperature type: ‘Inlet’. When defined in a heat transfer analysis the inlet temperature has to be set for the inlet flow.
  • Assigned Faces: Assign all faces to which the boundary condition should be applied to. Each face will be treated as an individual fan.

3. Internal Fan Momentum Source

When a fan is inside the fluid domain a fan momentum source can be used to induce the pressure jump created by the fan onto the flow field. For this, a separate geometry has to be created to assign the mesh to the representative fan volume. The volume used for this assignment can either be a geometry primitive or directly generated in the CAD mode. To create a fan momentum source please follow the steps below:

  1. Create a ‘Fan Model’ boundary condition by hitting the ‘+’ button next to Momentum Sources under Advanced Concepts.
  2. Define the values according to Figure 4:
Fan Curve Implement SimScale Fan Momentum Source
Figure 4: Fan implementation setting for momentum sources of a fan model
  • Fan Direction: Create the vector to specify the direction of the fan.
  • \( (P_{Fan}) \) Fan pressure: Setup the fan curve or upload a file.
  • Assigned Volumes: Assign the volume which represents the fan geometry.

Fan Model Volume

In order to accurately represent a fan with a housing, it is suggested that the volume of the fan be such that the cylinder includes only the fan blades.

4. Fan Curve

On the SimScale platform, a fan curve can either be created by filling in the table with the volumetric flow rate and pressure, or by uploading a .csv file, containing this information.

Fan Implementation SimScale Fan Curve Creation
Figure 5: Example of a fan curve table. The user needs to input a flow-rate variation in regards to the fan pressure.
  1. Set the assignment of the volumetric flow rate and the fan pressure to the corresponding line of your data set.
  2. Enter custom values to the fan curve list.
  3. Save the fan curve by selecting ‘Apply’ or abort any changes by selecting ‘Cancel’.
  4. Upload a .csv or drag and drop a .csv into the dark grey area. You can also download the generated table as a .csv file, by clicking the download icon next to the Browse Files section.
  5. Expand the Advanced settings to change the unit format for the fan pressure.

Exchange .csv file

Uploading a new .csv file will automaticly replace all of the generated data. Please ensure that all changes to the current fan curve have been saved in a downloaded .csv file, to upload them again to the platform.

Figure 6 shows an example of the structure of a .csv file:

a screenshot of acsv file representing a fan curve with column a as the flow rate and column b as fan pressure
Figure 6: Input requirements for fan curve in a .csv file. Column A is flow rate and column B is fan pressure.

Make sure to have two columns: One representing the volumetric flow rate, and the other one the fan pressure. Assign the flow rate and pressure headers as well as the correct units to the corresponding columns. In the picture above, column A is the flow rate and column B is the fan pressure.

Expected Outcome

The following figures show the different effects of the fan pressure applied to an electronic box for the different methods of implementing a fan curve in SimScale.

Figure 7 shows the flow direction and velocity distribution on a plane cut through the fluid domain for the fan inlet situation:

Fan Curve Implement SimScale Fan Inlet BC Cutting Plane
Figure 7: Velocity contour and velocity vectors on a cutting plane, inlet fan. Flow enters the domain from the right and leaves at the left.

Figure 8 shows the flow direction and velocity distribution on a plane cut through the fluid domain for the fan outlet situation:

Fan Outlet BC Cutting Plane
Figure 8: Velocity contour on a cutting plane, outlet fan. Flow enters the domain from the left and leaves at the right.

Figure 9 shows the flow direction and velocity distribution on a plane cut through the fluid domain for the fan momentum source condition situation:

SimScale Fan Momentum Source Cutting Plane
Figure 9: Velocity contour on a cutting plane, internal fan. Flow enters the domain from the left and leaves at the right, but is accelerated by the fan.

5. Reference Project

A reference project showing all different implementations is linked below:

Custom Boundary Condition Method

In addition to the predefined boundary conditions, SimScale also offers the option to create a custom boundary condition which brings more options to implement a fan curve. To create a custom boundary condition please follow the steps below.

  1. Create a custom boundary condition by hitting the ‘+’ button next to Boundary conditions (BC).
  2. Select ‘Custom’.
  3. Define the values according to the following figure:
Fan Implementation SimScale Fan BC Setup Custom
Figure 10: Customized boundary condition to define an intake fan
  • Velocity type: ‘Pressure inlet-outlet velocity‘. This means that the velocity on the fan BC is dependent on the pressure difference. If the pressure difference between the inlet and the outlet is negative, the flow will leave the system (the reverse direction).
  • Pressure Type: ‘(P<fan>) Fan pressure’. Using this setting, the user can upload a fan curve.
  • Fan type‘Inlet’ is an intake fan, therefore flow should come into the system. ‘Outlet’ is an exhaust fan, therefore flow should come out of the system
  • \( (P_{Fan}) \) Fan pressure: Upload a fan curve or create a new fan curve.
  • \( (P_{t}) \) Ambient total pressure: If the ‘Compressible‘ toggle is on, assign the absolute pressure. Else, assign the gauge pressure.
  • Turb. kinetic energy type: ‘Inlet-outlet’. If the fluid leaves the system, the turbulent kinetic energy value at the inlet will be calculated by the solver. If the fluid enters the system, the user-defined Inlet value will be considered instead.
  • Specific dissipation rate type: ‘Inlet-outlet’. If the fluid leaves the system, the specific dissipation rate value at the inlet will be calculated by the solver. If the fluid enters the system, the user-defined Inlet value will be considered instead.
  • Temperature type: ‘Inlet-outlet’. If the fluid leaves the system, the temperature value at the inlet will be calculated by the solver. If the fluid enters the system, the user-defined Inlet value will be considered instead.

Did you know?

The following settings will vary, depending on the selected global solver settings (compressible, laminar, turbulent, etc.)

  • Turb. kinetic energy type: Inlet-outlet. You use the default value if you don’t know the turbulence kinetic energy value.
  • Specific dissipation rate type: Inlet-outlet. You use the default value if you don’t know the specific dissipation rate value.
  • t) Turb. thermal diffusivity: Calculated.
  • t) Turb. dynamic viscosity: Calculated.

Important Information

If none of the above suggestions solved your problem, then please post the issue on our forum or contact us.

Last updated: July 15th, 2022

Contents