Documentation

The Subsonic analysis type offers an automated robust meshing strategy producing hexahedral cells suitable for the underlying solver, thereby reducing mesh generation times by huge margins. Because the mesh has a high quality, it requires fewer cells to achieve the same level of accuracy. It offers faster convergence at the cost of a reduced feature set. Some highlights of the mesher are:

- Body fitted Cartesian meshing
- Cells suitable for finite volume discretization
- Highly parallelized meshing algorithm (i.e. very fast)

Subsonic is a Finite Volume-based CFD solver with segregated pressure-velocity coupling using a proprietary variant of the SIMPLE\(^1\) algorithm. It provides the possibility to simulate both **incompressible** and **compressible** flow, either **laminar** or **turbulent** in a single framework. Turbulence is modeled using the RANS equations with the k-epsilon turbulence model for closure and proprietary wall functions for near wall treatment.

Subsonic supports **steady-state** as well as **full transient** analysis. In full transient analysis, the fluid flow is modeled in a time-accurate manner and any rotating component in the domain is solved using the sliding mesh approach.

Within SimScale, one can effortlessly set up a Subsonic simulation that involves the following steps:

To create a Subsonic analysis, first, select the desired geometry and click on **‘Create Simulation’**:

Next, a window with a list of several analysis types supported in SimScale will be displayed:

Choose *Subsonic* analysis type and click on **‘Create Simulation’**. This will lead to the SimScale Workbench with the following simulation tree and the respective settings:

To access the global settings, click on **‘Subsonic’** in the simulation tree. The following parameters are available to define the fluid flow simulation:

**Compressible**: Toggle on if a compressible flow simulation is desired with heat transfer.**Cavitation model:**Toggle on to include the cavitation phenomenon using the constant gas mass fraction model.**Turbulence model**: Besides the laminar model the solver supports the k-epsilon turbulence model.**Time dependency**: Both*Transient*(time-dependent) and*Steady-state*options are available

The *Geometry *section allows you to view and select the CAD model required for the simulation. In general, having a clean CAD model always helps to avoid any meshing or simulation-related errors. However, the mesher is pretty robust and if the CAD is genuinely dirty then a message of mesh failure and further instructions on CAD cleaning or mesh refinement should appear.

Find more details about CAD preparation here.

If the simulation has a rotating component, then rotating zones need to be created for each rotating part. You can find a detailed approach to CAD preparation in the following article:

Under *Model*, gravity can be defined via a vector. The global coordinate system, represented by the orientation cube, applies for the gravity direction. The vector coordinates \(g_x\), \(g_y\), and \(g_z\) represent the x, y, and z directions.

Under *Materials,* the appropriate fluid for the simulation can be chosen from the materials library. The user has the option to change certain fluid properties*. *For compressible simulations, since the temperature is involved the user needs to specify the corresponding thermophysical properties for the fluid in consideration.

Along with perfect gas behavior, it is possible to model real gas behavior also by specifying material properties as a function of pressure and temperature.

Real gas modelling

Fluids operating at very high pressure or low temperatures do not follow ideal gas behavior. For such ‘real’ fluids, more complex relations specifying the physical and thermodynamic properties are required, known as the **real gas model**.

For example, flow of refrigerant in compressors, flow of steam in a steam turbine, flow of gas mixture in a piping system etc.

To simulate real fluids the compressible flow toggle needs to be on under global settings as discused earlier.

For more information, please visit the relevant documentation page for materials.

Boundary conditions help to add a closure to the problem at hand by defining how a system interacts with the environment. In an incompressible simulation, the computational domain will be solved for two fields: pressure \((P)\), velocity \((U)\), while for a compressible simulation the temperature \((T)\) field is also involved. Additional turbulent transport quantities may be included based on the turbulence model selected.

The following boundary conditions are available for a subsonic simulation:

- Velocity inlet
- Velocity outlet
- Pressure inlet
- Pressure outlet
- Wall, supporting no-slip, slip, and rotating wall conditions
- Symmetry

Important

In case no boundary conditions are assigned to a face, by default it will receive a no-slip wall boundary condition with wall function for turbulence resolution along with a zero-gradient condition for temperature.

The total temperature can be specified under the pressure-inlet boundary condition settings

Parametric Studies

Subsonic analysis type allows parametric studies with the velocity boundary condition. When you select *Flow rate* as the velocity type while assigning velocity to an inlet or outlet face then you can input multiple flowrates at once either directly or by uploading a file.

This will initiate multiple runs with different flow rates assigned at once in parallel giving the user a huge time advantage.

Results become available for individual flow rates as separate runs (*Run 1, Run 2,……*) and also for the complete parametric study where the whole parametric curve is plotted. Figure 8 shows the pressure difference curve for all 8 flow rates assigned under the simulation run named *Test run* by the user.

Under *Advanced concepts*, you will find additional setup options for rotating zones. *Rotating zones* can be used to model rotating systems such as turbines, fans, ventilators, and similar systems. Currently, the MRF (Multiple Reference Frame) type is supported.

We recommend you to visit this dedicated page on how to set up rotating zones for more details.

The *Simulation control* settings define the general controls over the simulation. There are differences in the setup parameters, depending on the *Time dependency* of the analysis. Find below the differences between transient and steady-state analyses:

In the simulation control settings, there are only two parameters exclusive to the subsonic analysis type:

*Number of iterations*:**Steady state:**It represents the number of iterations beyond which the simulation terminates, i.e., no more iterations will be performed.**Transient:**For transient, number of iterations means sub-iterations within each timestep. We recommend 25 iterations. For stability purposes iterations should vary proportionally with*Delta t*.

*Convergence criteria*: The relative residual is the ratio of the current iteration residual to the initial residual.**Steady-state:**Once the relative residuals fall below the convergence criteria for all equations, the simulation is assumed to be converged and will stop. Lower values like 0.001 are recommeded.**Transient:**A given timestep is assumed to be converged if the relative residuals for all the equations fall below the convergence criteria regardless of the number of iterations. 0.1 is the recommended value.

For a complete overview of the other simulation control parameters and their meaning, please check out this page.

The* Result Control* section allows users to define additional simulation result outputs. It controls how the results will be written meaning the write frequency, location, statistics of the output data, etc. The following control items are supported:

**Forces and moments**: Calculates the forces and moments on a specific surface or set of surfaces. This is useful, for example, when one wants to find pressure and viscous forces on turbine blades in a hydrodynamic analysis.**Surface data**: Calculates average or an integral sum of the simulation results on a specified surface area.

For the Subsonic analysis type, the mesh generated is a Cartesian mesh which means that each cell represents a cube with edges parallel to the XYZ Cartesian axes making the mesh highly orthogonal.

The meshing algorithm is automated and follows a top-down approach which works by creating a binary tree structure. The bounding box (an imaginary box encompassing the dimensions of the flow domain) is refined anisotropically by cutting cells in the first layer (x-direction), in the second layer (y-direction), and the third layer (z-direction).

For the mesh in Subsonic analysis, the settings can be set to automatic or manual. The parameters under each mode are described below:

The user gets to define a fineness level for the mesh cells varying from *Coarse (1)* to *Fine (10)*.

The user gets to define the following parameters:

*Cell size specification*: It controls if the following parameters are entered as**Absolute**values, in corresponding length units, or they are rather**Relative to CAD**, in which case the parameters represent a fraction of the representative length of the model.*Minimum cell size*: This parameter specifies the minimum size for all cells of the resulting mesh.*Maximum cell size*: It specifies the maximum size for all cells of the resulting mesh.*Cell size on surfaces*: This parameter specifies the size for all cells on and close to the surfaces.*Specify growth rate*: It specifies the cell size ratio between the adjacent cells. It needs to be a whole number greater than 1 such that the cell size increases towards the interior of the mesh domain. For example, a value of 2 would mean that the inner cell is twice as big as its adjacent cell closer to the surface.

For additional mesh refinements on specific volume regions within the simulation domain, the choice of region refinement is available.

These volume regions or refinement zones can be created using geometry primitives.

**Target cell size:*** *This parameter specifies the length scale of all the cartesian cells lying within the defined refinement zone. The resulting cell size might be smaller than the target specified to accommodate for the binary-tree mesh algorithm.

Smaller cell sizes mean larger mesh size and consequently longer simulation runtimes.

Note

The meshing log and the mesh are only visible once the simulation is finished. However, the time per iteration and the time to convergence are a lot lower compared to other solvers.

Your core hours will be consumed only after a successful
simulation run.

Did you know?

An advantage of using Subsonic analysis involving rotating flows is that power about the axis of rotation is directly output.

Once all the settings are defined, click on **‘Simulation Runs’** to begin the simulation.

Last updated: September 26th, 2022

We appreciate and value your feedback.