CFD and Opensource!
OpenFOAM is free both for personal and commercial use […]
CFD stands for Computational Fluid Dynamics  the branch of mechanical engineering dealing with Fluid Flow and Heat Transfer. Whether you are a fresh graduate with engineering degree or a seasoned professional with industry and design background, you will find plenty of technical stuffs on CFD analyses and CFD software (both commercial such as FLUENT, CFX, STARCCM+ and COMSOL as well as opensource Gmsh, OpenFOAM, Salome and ParaView) online. This page is an attempt to provide all relevant information in one place and organized into logical steps. However, one must note that the term CFD is also used in commodity trading where it stands for Contract for Differences.
How many of these names have you heard of? Click on the names to know more about them!
Online Forum on CFD simulations, Service Providers, Freelancing Websites...
Stepbystep guide to CFD, Mesh Generation and OpenFOAM!
CFD simulations methods are explained with features of OpenFOAM and ANSYS CFX / FLUENT, STARCCM+ and COMSOL. Applications related to turbomachines, multiphase flows, aeroacoustics ... have been described along with turbulence modeling and verification of results.
Werner Heisenberg: When I meet God, I am going to ask him two questions: why relativity? And why turbulence? I really believe he will have answer for the first! […]
OpenFOAM is free both for personal and commercial use […]
Modeling of the eddies where kinetic energy is lost through viscous dissipation […]
Boundary layers govern CFD simulation results. Know more about y^{+}[…]
Logistic Regression, Decision Tree, SVM, Naive Bayes, KNN, Python, scikitlearn […]
Topics in CFD and Structural Analyses
A step by step approach to explain FEA methodology […]
Meshing for CFD is 50% capability and 50% art! […]
Flow through turbomachines: MRF, SMM, DMM […]
Steps, Methods and Examples […]
FORTRAN programs for Gauss Elimination & TDMA […]
Theory and options in FLUENT / OpenFOAM […]
Tips and Tricks! […]
Guidelines on checking correctness of result! […]
Basic settings in FLUENT and OpenFOAM […]
How do we approach flow and thermal simulations? What steps one need to follow to make first time right (FTR) solution? These are some of the questions which have been answered in following sections with references to multiple pages covering each topic such as Mesh Generation, Boundary Conditions and Turbulence Modeling. For beginners to experienced users, the checklists are needed to ensure correct results and few sample checklists have been created.
It is imperative to have good understanding of mathematical methods adopted to solve linear system of equations, role of relaxation factors in iterative methods and rate of convergence. This has been explained clearly for a simple equation which is valid of any complex set of equations.
The table below summarize few key pointers to define a sound and quantifiable scope of CFD simulations. These are some of the topics which will lead the concerned stakeholders towards a wellthought scope. However, it may look a bit intimidating and intent is not to insist on all the information right at the beginning of the simulations.
Topic  Description of requirement  Examples  Response 
Objective  What is the primary aim?  Performance evaluation, Capacity upgrade, Design validation, Field failure, Safety, Emission  ? 
Problem statement  What is expected output from CFD simulation?  Δp, Temperature, Flow uniformity, Heat flux, Volume fraction, Airborne noise, Stagnant zone  ? 
Prior investigation  What information is available from past or ongoing study?  Test report, Performance values, Field data, Hand calculations  ? 
Geometrical details  What geometrical data is available for area of interest?  2D drawing, 3D CAD data, Site images, Concept sketches  ? 
Working fluid  Water, Air, NonNewtonian, Mixture (LiquidSolid, LiquidGas, GasGas)  Homogeneous mixture, Twophase flow, Emulsification, Stirred tank  ? 
Time Domain  Steady (not dependent on time) or Transient (p, v, T vary with time)  Warmup, cooldown, moving walls, varying flow rate  ? 
System or Component  Is this a component level or system level simulation?  [Comp. level]: pump, fan in ducts, PCB [Sys. level]: Engine cooling system, Data centre  ? 
As mentioned earlier, it may look like a daunting task for a person not familiar with finer details of numerical simulations. Hence, a generic list of ingredients needed for CFD simulations can be used to start the discussion. This is summarized below.
A typical division of a CFD simulation or as a matter of fact any numerical simulation is in 3 categories namely PreProcessing, Solution and PostProcessing. However, for beginners into this field, it does not convey much insight. The complete simulation process is explained here in a stepbystep sequence to make it easy to understand.
This requires asking questions like
The program may not result in a solution (known as divergence of solution process) or may lead to a solution but the residuals may not reach to low level recommended by the developers of the program. There might be sharp fluctuations in the calculated values and one will need to adjust the solver parameters to eliminate abnormality. This may be achieved by changing relaxation factors, discretization scheme to first order or even refining and improving the mesh quality. Recommended approach for STEADY STATE simulations is:
All these steps have been explained through an example simulation for "Flow Over a BackStep" and can be found here! If you have access to ANSYS FLUENT, a stepbystep guide with GUI screenshots can be found in this PDF file. Similarly, if you have experience in using any commercial tool say CFX and want to try opensource product such as OpenFOAM, a comparison of methods is summarized in this page.
In addition to the steps, as a thermal and fluid flow analyst, you may need to make many other considerations as summarized below.
How do I know well in advance what should be the first layer height to resolve boundary layer properly? While no unique method exist, most of the flow conditions can be approximated to either of the 3 conditions  flow inside a duct, flow over a bluff body and flow over a flat plate. This page provides an initial estimate of first layer height for required Y^{+} requirements.
Which methods are available to model rotating components and turbomachines? A short summary on simulation methods of rotating walls and turbomachines has been summarized here.
This is one of the most talked about (and sometimes dreaded) term used in numerical simulation field. The term 'convergence' refers to the process where the iterative method moves towards "expected final result". It is best explained using a problem from algebra where we need find out value of x in equation y = 5x^{2} + 25 when y = 1000. We all know a direct method:
x = [(y  25)/5]^{0.5}
Let's try an iterative method using algorithm x_{i+1} = x_{i} × (1  Δy_{i}). Here, i refers to the iteration number and Δy refers to deviation of the calculated value of y from desired value of y = 1000, ResNorm1 refers to the absolute value where the residual % is normalized (divided) by the residual % obtained in 0^{th} iteration based on guess value, ResNorm3 refers to the absolute value when the residual % is normalized (divided) by the residual % obtained in 0^{th} ~ 2^{nd} iterations.
Iteration, i  x_{i}  y_{i}  Δy_{i}  ResNorm1  ResNorm3  
Initial Guess  10.00  525.0  +475.0  +47.5%     
1  14.75  1112.8  112.8  11.3%  0.2375   
2  13.09  881.2  +118.8  +11.9%  0.2501   
3  14.64  1096.7  96.70  9.67%  0.2036  0.6032 
4  13.22  899.45  +100.6  +10.1%  0.2117  0.6272 
5  14.55  1084.1  84.14  8.41%  0.1771  0.5248 
6  13.33  913.40  +86.60  +8.66%  0.1823  0.5401 
7  14.48  1073.9  73.93  7.39%  0.1556  0.4611 
8  13.41  924.57  +75.43  +7.54%  0.1588  0.4705 
9  14.42  1065.4  65.40  6.54%  0.1377  0.4079 
10  13.48  933.77  +66.23  +6.62%  0.1394  0.4131 
11  14.37  1058.1  58.14  5.81%  0.1224  0.3626 
12  13.54  941.50  +58.50  +5.85%  0.1232  0.3649 
13  14.33  1051.9  51.86  5.19%  0.1092  0.3235 
14  13.59  948.11  +51.89  +5.19%  0.1092  0.3236 
15  14.29  1046.4  46.39  4.64%  0.0977  0.2894 
16  13.63  953.82  +46.18  +4.62%  0.0972  0.2881 
17  14.26  1041.6  41.59  4.16%  0.0876  0.2594 
18  13.67  958.79  +41.21  +4.12%  0.0868  0.2570 
19  14.23  1037.3  37.34  3.73%  0.0786  0.2329 
20  13.70  963.15  +36.85  +3.68%  0.0776  0.2298 
21  14.20  1033.6  33.56  3.36%  0.0707  0.2094 
22  13.73  967.00  +33.00  +3.30%  0.0695  0.2059 
23  14.18  1030.2  30.20  3.02%  0.0636  0.1884 
24  13.75  970.40  +29.60  +2.96%  0.0623  0.1846 
25  14.16  1027.2  27.19  2.72%  0.0572  0.1696 
Look how the calculated value of x still makes y off the final value by 2.72% even after 25 iterations. What are the ways to speedup this process  that is how can we reach to the correct value with lesser number of iterations? One option is to change the way the value of x_{i+1} is calculated from x_{i}. This method is known as use of "Relaxation Factors" in numerical simulation technology. Let's try the approach: 0.8 in the following equation is the relaxation factor (also called underrelaxation factor as the value is < 1.0).
x_{i+1} = [x_{i} × (1  Δy_{i})] * 0.8 + x_{i} * 0.2
Iteration, i  x_{i}  y_{i}  Δy_{i}  ResNorm1  ResNorm3  
Initial Guess  10.00  525.0  475.0  47.5%     
1  14.75  1112.8  112.8  11.3%  0.2375   
2  13.42  925.30  +74.70  +7.50%  0.1572   
3  14.22  1036.1  36.11  3.61%  0.0760  0.2480 
4  13.81  978.54  +21.50  +2.10%  0.0452  0.1474 
5  14.05  1011.6  11.56  1.16%  0.0243  0.0794 
6  13.92  993.39  +6.61  +0.66%  0.0139  0.0454 
7  13.99  1003.7  3.66  0.37%  0.0077  0.0251 
8  13.95  997.94  +2.06  +0.21%  0.0043  0.0141 
9  13.97  1001.1  1.15  0.11%  0.0024  0.0079 
10  13.96  999.35  +0.65  +0.06%  0.0014  0.0044 
11  13.97  1000.4  0.36  0.04%  0.0008  0.0025 
12  13.96  999.80  +0.20  +0.02%  0.0004  0.0014 
13  13.97  1000.1  0.11  0.01%  0.0002  0.0008 
14  13.96  999.94  +0.06  +0.01%  0.0001  0.0004 
15  13.96  1000.0  0.04  +0.00%  0.0001  0.0002 
16  13.96  999.98  +0.02  +0.00%  0.0000  0.0001 
17  13.96  1000.0  0.01  +0.00%  0.0000  0.0001 
This is an excellent example of relaxation factor improving the speed of convergence. Readers are advised to try out the calculation with different values of initial guess (say 12, 15 instead of 10) and relaxation factor (say 0.2, 0.5 instead of 0.8) to see the effect on rate of convergence (number of iterations required to find result x = 13.96).
A*x_{P} + B*x_{N} + C*x_{S} + D*x_{E} + E*x_{W} = F_{P} where P denotes the calculation node and N, S, E, W denotes the north, south, east and west nodes respectively. Here, absolute residual is
ε^{n} = [A*x_{P}^{n} + B*x_{N}^{n} + C*x_{S}^{n} + D*x_{E}^{n} + E*x_{W}^{n}  F_{P}^{n}] where n is the iteration number.
A checklist and comparison sheet should be used when a new design is worked out or major upgrades in designs are under considerations.
S. No.  Performance Indicator  Baseline  Upgrade 
1  Pressure drop  ≤ 2.0 [kPa]  ≤ 1.5 [kPa] 
2  Temperature rise  ≤ 15 [K]  ≤ 12 [K] 
3  Wetted surface area  ≥ 1.0 [m^{2}]  ≥ 1.5 [m^{2}] 
4  Capacity or volumetric size  ≤ 5.0 [cm^{3}]  ≥ 7.5 [cm^{3}] 
5  Power consumption  ≤ 50 [W]  ≤ 40 [W] 
Application of CFD in terms of physics, application and industry: sophisticated computerbased analysis technique to evaluate various design alternatives, identify flow and temperature problems, develop solutions and formulate physical validation strategies. Troubleshoot existing design, generate smarter solutions and more optimized design with shorter development cycle to meet everincreasing demands of working performance and environmental concerns.
S. No.  Simulation Category  Physics  Application  Industry 
01  Basic 

 Automotive, FMCG, Aerospace, Recreational Vehicles, Data Centres, Valves 
02  Rotating Devices 

 Automotive, Home Appliances, Whitegoods, Pharmaceuticals, FMCG, Dairy Industry 
03  Multiphase Flows 

 FMCG, Buildings and RealEstate, Oil and Gas Industry, Medical Devices, Pharmaceuticals 
04  Advanced Methods 

 Aerospace, Combustion Engines, Turbines, Automotive, OffHighway Vehicles, Recreational Vehicles, Heat Recovery Devices, Car Parkings, Road Tunnels 
05  Multiphysics 

 Medical Devices, Elevators, Aerospace, Automotive, Burners / Combustors 
06  Electronic Cooling 

 Home Appliances, Whitegoods, ICEPAK, FloTHERM, Sigma Technologies 
ROM stands for Reduced Ordered Modeling is an attempt to expedite the simulation speed with some compromise in accuracy. This is also known as MOR (Model Order Reduction). At the very basic level, ROMs can be the simplification of full 3D simulations to smaller equivalent domains such as 2D section, symmetric and periodic domains. One of the high fidelity ROM is simulation of flow through pipe as a rectangular plane than can be rotated about one of its longer sides to create the full cylinder. Though not all industrial applications can be simplified to this extent!
Reduced order modeling is a fairly generic term and the semantics changes from field to field (e.g. computer science, mechanical engineering, testing...) and includes all methodologies and algorithms that aim to reduce the complexity of a problem.Excerpt from web.stanford.edu/group/frg/active_research_themes/reducedmodel.html: "Reducedorder models (ROMs) are usually thought of as computationally inexpensive mathematical representations that offer the potential for near realtime analysis. While most ROMs can operate in near realtime, their construction can however be computationally expensive as it requires accumulating a large number of system responses to input excitations."
As per mathworks.com/discovery/reducedordermodeling.htm: Many techniques such as singular value decomposition (SVD), eigenvalue decomposition (EVD), principal component analysis (PCA), lookup tables, interpolation and curve fitting are also useful as part of model order reduction.
Excerpts from "An Overview of Reduced Order Modeling Techniques for Safety Applications" by D. Mandelli et. al. The safety modeling of a nuclear system is not only a thermalhydraulic problem but several other models are required: neutron transport, thermomechanics, chemistry, fracture propagation... Note how the overall problem is not only multiphysics but also multiscale both in the spatial scale but also in the temporal scale. The concept of Reduced Order Modeling can be categorised into three main categories:
Excerpts from FluidStructure Interaction (FSI) case study of a cantilever using OpenFOAM and DEAL.II with application to VIV, Johan Lorentzon, June 17, 2009: The FluidStructure Interaction (FSI) appears as a physical phenomenon in engineering such as static load, drag, and FlowInduced Vibrations (FIV) or FlowInduced Pulsations (FIP). FIV is further classified into flutter, galloping and vortexinduced vibrations (VIV). The static load on the structure originates mainly from the total pressure difference between front and wake side of the structure. The dynamic pressure can, due to instability in the structure where the damping is less than the energy transfered by the vortexinduced wake, create a resonance with the structure with a negative damping known as flutter. Typical examples of applications in which flutter is considered are aircraft wings, tall buildings, rotating blades and longspan bridges. The VIV concerns bridges, chimneys, heat exchanger tubes, power lines and undersea constructions such as sea cables/risers or biomechanical applications as blood vessels.
Reference: Flow Induced Pulsations Caused By Split Flow In A TBranch Connection by Stefan P.C. Belfroid et al. ASME 93884  "By using a vortex blob method it has been demonstrated that cross flows even up to 25% of the main flow lead to significant FIP source strength. With increasing cross flow merging from the side branch into the main flow, the maximum source strength shifts to slightly lower Strouhal number due to the increased convective velocity of the vortex structures. The source strength decreases rapidly for increasing cross flow. As a rule of thumb, the source strength becomes negligible for cross flows larger than 25% of the total flow."
When the mean flow is diverted completely into the side branch (case 'b') no pulsating flow is encountered. However, for cases 'a' and 'c', strong pulsations have been measured. For calculating acoustic resonances of a piping system, one dimensional simulation tools are quick and reasonable accurate. A full acoustic solution including travelling and standing waves can be carried out in the flow system.
Computational AeroAcoustics  this is another multiphysics application of CFD methods to predict the noise sources and solve noise propagation using other solvers such as ACTRAN. In CFD simulation environment, acoustics is just a postprocessing activity where the fluctuating component of pressure is converted into noise using densitybased analogies like (Lighthill’s analogy, Powell’s analogy, the Ffowcs Williams–Hawkings [FWH] analogy and Curle’s analogy) or few other analogies like Phillips’ analogy and Lilley’s analogy, Howe’s analogy and Doak’s analogy. The noise source can be calculated both for steady and transient turbulent flows, however the option available will vary for steady state and transient cases.
Boundary Element Method  also known as the "boundary integral equation method" or "boundary integral method": As the name suggest, this method discretizes only the boundaries of the computational domain. Widely used in field problems with unbounded exterior domain but bounded boundaries such as magnetic field calculation and acoustics  this method does not need to model the entire domain required in FEM/CFD.
MagnetoHydroDynamics (MHD) or HydroMagnetics is the physicalmathematical macroscopic theory that deals with dynamics of magnetic fields in electrically conducting fluids [ plasmas, liquid metals, salt water and electrolytes]. It does not apply to effect of magentic field on fluids containing magnetic particles. The presence of magnetic fields leads to forces that in turn act on the fluid thereby potentially altering the topology and strength of the magnetic fields themselves.
The set of equations that describe MHD are a combination of the Navier–Stokes equations of fluid dynamics and Maxwell’s equations of electromagnetism. These differential equations have to be solved simultaneously, either analytically or numerically.
The study of ferromagnetic particle suspensions is relevant for better understanding of wetstate separation processes in mineral processing and recycling. Stokesian dynamics is a particlebased, meshfree method developed for nm to mm size particles in static or flowing liquid suspensions. LBLESDEM approach (LatticeBoltzmannLarge Eddy SimulationDiscrete Element Method) has been investigated to evaluate the combined effect of liquid phase flow and magnetic effects though limited number of particles can be used due to the high computational cost.
Lattice Boltzmann Method  a discrete computational method based on Boltzmann's equation. This is an alternate method to make fluid dynamics simulations based on lattice gas methods. The method allows particles to move on a discrete lattice (analogous to mesh) and collide such that local collisions conserve mass (continuity) and momentum (NavierStokes equation).
Excerpts: "High fidelity transient Lattice Boltzmann based solution, accurate across most flow regimes (laminar to transonic) to solve the most complex CFD design problems in Transportation & Mobility and Aerospace & Defense."
Fluid Network Method  a flow and pressure drop calculation approach based on analogy with electric resistances and circuits. 3D flow paths are condensed into equivalent flow resistance 'R' defined as Δp = ρ × R × Q^{2} where Q is flow rate. A network is created with nodes and branches where nodes represent the connection of two or more branches (the flow resistances). Similar to Kirchhoff's law for electrical networks, the flow and pressure drop across each hydraulic resistance can be calculated using mass balance at each node and zero pressure drops across all the flow loops. HardyCross method is one of the widely used method to solve flow network models. 1D model for a single cylinder engine in GTPower described below is an example of FNM.
Excerpts  "The Modelica Language is a nonproprietary, objectoriented, equation based language to conveniently model complex physical systems containing, e.g. mechanical, electrical, electronic, hydraulic, thermal, control, electric power or processoriented subcomponents."
DYMOLA (DYnamic MOdelling LAboratory) is a user interface and Modelica language compiler owned and developed solely by Dassault Systemes. DYMOLA enables the user to write, compile and simulate Modelica based models. There are other Commercial Modelica Simulation Environments such as ANSYS Simplorer, SimulationX from ESI ITI GmbH and Simcenter Amesim from Siemens. There is an opensource and free simulation environment tool for Modelica named OpenModelica.
SU2 stands for Stanford University Unstructured. This is an opensource solver having its own mesh format. The other way to interact with SU2 is to use of CGNS for mesh and ParaView / Tecplot for postprocessing. The workflow of SU2 is as follows. It is a textbased solver similar to OpenFOAM where a single configuration file is equivalent to the 0, controlDict, transportProperties and fvSolution dictionaries. A converter from CGNS to the SU2 format has been built into SU2 and hence the mesh does not need to be explicitly converted into SU2 format.
Simulation Activity  Method 
Mesh Generation  SU2 can be used to generate for simple shapes. For most practical operations,mesh has to be generated in other preprocessors such as OpenFOAM, GMSH, Pointwise, ICEM CFD... 
Convert mesh into SU2 format  GMSH and CENTAUR can save the mesh directly in SU2 format. The Python script written by Laurent Berdoulat can be found here to convert OpenFOAM mesh into SU2 format. The input file template for 2D meshes is here and the input file template for 3D meshes is here. 
Convert mesh into SU2 format  For commercial programs, name boundaries (used as marker tags in SU2) appropriately before exporting the mesh into CGNS format. Use MESH_FORMAT= CGNS* in configuration file. 
Solver Setting  Define material, apply boundary conditions, select solver type, set iteration controls and relaxation factors... as per predefined format in a configuration file. 
Postprocessing settings  Set the output format for results: OUTPUT_FORMAT= TECPLOT or OUTPUT_FORMAT= PARAVIEW, OUTPUT_FILES = PARAVIEW_ASCII 
Make the simulation run  F:\SU2\SU2_CFD.exe wedgeShock.cfg, for parallel computing: mpirun n 8 SU2_CFD.exe wedgeShock.cfg or use Parallel Computation Script  parallel_computation.py 
Result Files  flow.dat or flow.vtk  full volume flow solution 
surface_flow.dat or surface_flow.vtk  flow solution along the wall surfaces  
surface_flow.csv  file containing values along the wall surfaces  
restart_flow.dat  restart** file in an internal format for restarting this simulation in SU2  
history.dat or history.csv  file containing the convergence history information  
SU2_CFD (Computational Fluid Dynamics Code): Solves direct, adjoint and linearized problems for the Euler, NavierStokes, and ReynoldsAveraged NavierStokes (RANS) equation sets, among many others.  
SU2_DOT (Gradient Projection Code): Uses the surface sensitivity, the flow solution and the definition of the geometrical variable to evaluate the derivative of a particular functional (e.g. drag, lift...).  
SU2_DEF (Mesh Deformation Code): Computes the geometrical deformation of an aerodynamic surface and the surrounding volumetric grid. Once the type of deformation is defined, SU2_DEF performs the grid deformation by solving the linear elasticity equations on the volume grid.  
SU2_MSH (Mesh Adaptation Code): Performs grid adaptation using various techniques based on an analysis of a converged flow solution, adjoint solution and linearized problem to strategically refine the mesh about key flow features.  
SU2_SOL (Solution Export Code): Generates the volumetric and surface solution files from SU2 restart files.  
SU2_GEO (Geometry Definition Code): Geometry preprocessing and definition code. In particular, this module performs the calculation of geometric constraints for shape optimization. 
*SU2 will not use any specific boundary conditions that are embedded within the CGNS mesh. However, it will use the names given to each boundary as the marker tags.
**The restart files can be used as input to generate the visualization files using SU2_SOL module. This will be done automatically if the parallel_computation.py script is used, but it can also be done manually at any time by calling SU2_SOL.
This is a special type of transient phenomena which calculates pressure generated due to sudden change in flow velocity and subsequent calculation of pressure wave propagation. Hence, computations related to water hammer involves both CFD and wave speed calculation techniques. Suppose water is flowing into a straight long pipe at constant flow rate and suddenly a control valve is use to reduce the flow rate by 50% or even stopped the flow completely, a pressure wave will get generated which will travel upstream at a speed closer to speed to sound in water. These phenomena is governed by Joukowsky equation: Δp = [± ρ c Δv] where ρ is the density of fluid, c is (waterhammer) wave speed and δv is change in velocity. Similarly, a pump tripping or shutdown is equivalent to valve closure which also causes water hammer  which is equivalent to opening of a control valve to increase the flow rate in the pipe. Note:
This is known as fundamental equation of water hammer. Thus, head developed due to water hammer, Δh = [c Δv / g] where g is acceleration due to gravity. This is inherently a transient phenomena and CFD methods require simulation for steady state condition and then implementation of a transient phenomena over a converged steady state flow field. In industry, there are many 1D tools which are based on Methods of Characteristics (MOC) to solve water hammer phenomena. Some of the tools are WANDA, HAMMER, AFT Impulse ...
[Image Reference: Springer] Loss of material due to impact of solid particles. For example, sand particles hitting at high velocity of a solid wall causing loss of material by "cutting or chipping mechanism" and/or by "deformation mechanism". Erosion may also occur by abrasive process where particle slip along the wall causing rubbing action between particles and the wall. Erosion can also occur due to cavitation and liquid particle drop falling over a wall. The erosion rate is function of impact velocity, impact angle, particle properties (sharpness ratio), hardness of the wall and hardness of the solid particle. Experiments have shown that there is exponential correlation between particle impact velocity and rate of erosion.
The erosion process is not a mathematically welldefined problem and the estimation of erosion location as well as erosion rate relies heavily on empirical correlations such as erosion rate E = C × F_{S} × V^{n} × F(θ) where C and n are constants, F_{S} is a particle shape factor (~1.0 for particles with sharp corners say diamond, cone and square shapes, ~0.5 for semi rounded shapes such as cylinders, disks and ellipsoids and ~0.2 for fully rounded shapes such as spheres). V is impact velocity and F(θ) is impact angle function. The "paint erosion test" is a quick and reliable approach to find "erosion pattern". It is analogous to measurement of contact area for bolted joints.
Erosion modeling using CFD: This is a 3step process described below.
CFD for Pneumatic Conveying Process: The viscous and pressure forces cause the particles to move against friction and gravity. The minimum velocity required to make the particles move is called "particle pickup velocity". Saltation velocity is the value at which majority of the solids become entrained in the airstream. Air volume flow rate optimization is the critical process to achieve smooth conveying without slugging and plugging of the conduits. The conveying process also has to deal with "dilute phase" (air velocity > saltation velocity, suspension flows) and "dense phase" (air velocity < saltation velocity) conveying. The dilute and dense phases are also distinguished by solid loading (volume or mass fraction of the solids). The assessment of conveying capacity is similar to multiphase flow simulation where the solid phase is treated as continuum. Applications includes conveying of coffee beans, grains, granular sugar, cement powder, lime, spices...
Choking Velocity  This equals the actual gas velocity in a vertical pipeline at which particles in a homogeneous mixture with the conveying gas settles out of the gas stream. Bulk Density (Fluidized)  it is the apparent (equivalent) density of a material in its fluidized or suspension state. It is generally lower than either the packed or loose bulk density due to the air absorbed into the voids. Angle of Repose  The angle of repose of a material is the angle formed between the horizontal and sloping surface of a piled material, which has been allowed to form naturally without any conditioning. This helps estimate the slope of the channel for gravity assisted conveying. Terminal Gas Velocity  The terminal gas velocity in a pneumatic conveying system is the velocity of the gas as it exits the system. It is also known as the ending gas velocity and conveying line exit velocity. Floodability  describs the tendency of a material to aerate and act as a fluid, squeeze material quickly in your fist  if it squirts through fingers, then it is floodable. Floodable materials are difficult to restrain in controlled feeding applications.
Pneumatic Conveying Design Guide by David Mills is another good reference to start with.The near and farfield breakup and atomization of a liquid jet (aerodynamic breakup of liquids) in multiphase fluid systems fits in the broader category of multiphase fluid flow. Jet and spray formation has many applications such as inhalers in medical applications, fireextinguishers, Diesel engines, water chillers...
Primary atomization of the liquid jet occurs near the outlet of the nozzle. Turbulent fluctuations of the liquid jet induce perturbations on the jet surface, which grow and break the jet into droplets. The length scale of turbulence is the dominant length scale of atomization, which also determines the resulting droplet size (Chryssakis et al.)^{1}.
^{2}In the plainorifice atomizer model, the operation mode of the nozzle is determined based on the Reynolds number, the cavitation number and the critical values for the inception of cavitation and flipping (ANSYS, 2016). The Reynolds number based on hydraulic head is defined as Re_{H} = (D ρ_{L} / μ) [2(p_{1} − p_{2})/ρ_{L}]^{0.5} where D is the nozzle diameter, ρ_{L} is the liquid density and μ is the liquid viscosity. The upstream and downstream pressures are denoted by p_{1} and p_{2}, respectively. The cavitation number is defined as K = (p_{1} − p_{v})/(p_{1} − p_{v}) where p_{v} is the vapour pressure of liquid at operating temperature. For short, sharpedged nozzles, the inception of cavitation occurs approximately at cavitation number K ~ 1.9.^{1}Chryssakis, C.A., Assanis, D.N. and Tanner, F.X., 2011. Atomization Models, in Handbook of Atomization and Sprays, Ed. N. Ashgriz, Springer, New York, USA.
^{2}ANSYS Fluent Theory Guide, section Atomizer Model Theory
Additional information on Jet Breakup can be found here.
DOE in CFD: When CFD simulations are used to check impact of various parameters such as mesh size, turbulence model / wall function, inlet boundary condition, discretization scheme and PV coupling, a DesignofExperiments can be used to make the evaluation more scientific and robust. Here k = number of factors = 5. If each of these parameters considered are at two levels (two types or values), there are total 2^{5} = 32 runs to be completed. It have been observed that the interactions involving > 3 factors are insignificant and a fractional factorial can be used.
One of the key concept in both CFD and DOE is DOF (Degreesoffreedom). In order to understand a classroom with capacity N. The first student has N choices to take a seat, the second student has N1 options and so on. The last student will have no choice. Thus, in case of N dataset, the DOF is N1.
A full quadratic model contains all main effects, all quadratic effects and all possible twoway interactions. For a set of kfactors, the number of terms in a full quadratic model is N = (k+1)(k+2)/2. Thus, for k = 4, N = 15 ad for k = 5, N = 21. Central Composite Design (CCD) and BoxBehnken Design (BBD) are used to reduce the number of terms. This is part of the family known as Response Surface Model (RSM) which looks for quadratic and/or higher order trends as well as assumes that all variables are significant.
The interactions are designated as main effects, 2way interactions, 3way interactions and so on. The number of runs for main effect = ^{k}C_{1} = k, number of runs for 2way interactions = ^{k}C_{2} = k/2 × (k1), number of runs for 3way interactions = ^{k}C_{3} = k/6 × (k1) × (k2) ... This is also known as degreesoffreedom where each main effect will have two degrees of freedom when each factor has three levels. Each twofactor interaction has (3−1) × (3−1) = 4 degrees of freedom. The ABC interaction has (3−1) ×(3−1)×(3−1) = 8 degrees of freedom.
When there is a curvilinear (nonlinear) relation between the response and a quantitative factor, it is not possible to detect such a curvature effect with two levels. A mixlevel design refers to experiments where factors have unequal levels. For example, factor A has two levels, factor B has 3 levels and factor C has 4 levels.
This table is rich in information and following explanation help decode them.
Run  FactorA  FactorB  FactorC  FactorD 
1  1  1  1  1 
2  1  2  2  2 
3  1  3  3  3 
4  2  1  2  3 
5  2  2  3  1 
6  2  3  1  2 
7  3  1  3  2 
8  3  2  1  3 
9  3  3  2  1 
Adjoint: In linear algebra, Adjoint or Adjugate refers to conjugate transpose of a matrix. For a square matrix where inverse exists, A^{H} ≡ adj[A] := Inverse[A] Det[A] An analogous concept applied to an operator instead of a matrix is also known as the Hermitian conjugate.The adjoint operator is widely used in both SturmLiouville theory and quantum mechanics.
Optimization of shape and size in CFD simulations require incremental change in geometry and remeshing. The CFD programs are now incroporating adjoint solvers which runs in addition to the fluid solver to find an optimum geometry to minimize (e.g. pressure drop) or maximize (e.g. flow uniformity) specified field variables. Both the Single Object Optimization (SOO) and Multiple Objectives Optimization (MOO) are possible.
Similar concepts Full Order Modeling (FOM) and Reduced Order Modeling (ROM) which are based on mathematical concepts such as MDO (Multidisciplinary Design Optimization), Higher Dimension Model (HDM), Proper Orthogonal Decomposition (POD) or Singular Value Decomposition (SVD).
There are 4 types of optimization techniques:
Optimization Method  Salient Features 
0D  Empirical 

1D  Parameter optimization 

2D  Surface or Shape Optimization 

3D  Topology optimization 

Excerpts from "Topology Optimisation of Fluids Through the Continuous Adjoint Approach in OpenFOAM" by Prof. Hakan Nilsson  "The Topology Optimization Method (TOM) consists in determine the material distribution in a design domain to maximize or minimize an objective function subject to certain constraints. To maximize/minimize the objective function at flow devices is done by adding the velocity field u multiplied by a scalar field α to the momentum equations, so regions with a high value of α determine a low permeability area (solid portion) and regions with a low value of α determine a high permeability area (fluid portion)." This paper AIAA20073947 describes the implementation of topology optimization in OpenFOAM.
For incompressible steady state NavierStokes equations, the problem can be written as:minimize cost function J = J(U, p, α).
such that R ≡ (U . ∇)U + ∇p − ∇.[2μD(U)] + αU = 0, strain rate tensor D(ν) = ∇U + (∇U)^{T}
∇.U = 0
Note:Here, α is the porosity. In OpenFOAM, adjointShapeOptimizationFoam solves both the primal flow (U) and the adjoint flow (Ua) and at the same time optimizes the geometry for minimized cost function say pressure loss. The solver is built around a case of optimization of a duct shape by applying blockage in regions causing pressure loss which are estimated using the adjoint method. The solver is also programmed for shape optimization with respect to pressure loss. The redundant material is shown by high value of α (closer to alphaMax specified in transportProperties dictionary). A detailed description of adjointShapeOptimizationFoam solver can be found here. The pitzDaily case (flow over a back step with pinched outlet) gives following output:
Initial Velocity
Optimized Porosity
Optimized Velocity
Excerpts from blogs.sw.siemens.com/simcenter/topologyoptimizationcfdcreatingdesignslikenature: The topology optimization method is based on a level set approach. Unlike the traditional porosity method this approach is not just blocking the flow from the cells with source terms. It is rather defining a moving interface around the predicted flow path. And, this has various advantages! Getting a cleaner interface between solid and fluid which results in designs with less kinks and folds. Eliminating the spare pockets of flow that the porosity method creates. This significantly reduces the cleanup and CAD reproduction time and ultimately reducing the cost of production.
Excerpts from NAFEMS paper "Adjointbased Topology Optimization  Maximizing Heat Transfer of a Brake Cooling Duct"  Additive manufacturing has made it possible to push the limits of designs beyond the skills and imagination of traditional design engineers. Topology optimization closes the gap between the possibilities and the automation in obtaining those organic optimized shapes. A key class of engineering problems, fluid and thermal applications, are benefiting from the advances on those two design and manufacturing technologies.
Shape Optimzation using Mesh Deformation
The shape optimization process uses the morphing procedure to deform the geometry of interest. Specified control points are displaced by amounts calculated using mesh sensitivities that the adjoint solver provides. The displaced positions of the specified control points are set to maximize/minimize the cost function of interest. At each boundary of computational domain, the conditions of how should be morphed needs to be specified. E.g. the simulation of an airfoil within a wind tunnel, only the airfoil is subject to adjoint shape optimization with the vertices at the boundary being morphed. The surrounding wind tunnel boundaries remain fixed.Advantage of Adjoint Methods
The adjoint method is an efficient means to predict the influence of many design parameters (inputs) on sensitivity of the objective (output). The advantages of the adjoint method are:SIMULIA Tosca Fluid: Shape Optimization for Fluid Flow
Isight: Parametric Optimization  Tosca: Nonparametric Optimization 
Size, shape and location of the cutout is unknown and it is constrained by parameters  Size, shape and location of the cutout is unknown and thus is nonparametric optimization 
Excerpts from "CFD Topology and Shape Optimization of Ford Applications using Tosca Fluid" by Dr. Anselm Hopf, Ford Motor Company, Aachen, Germany: "The roots of Tosca Fluid have been developed at Daimler research in the early 2000s under the name AutoDuct (Klimetzek, 2006), (Moos, 2004)". One of its inventors, Dr. Klimetzek, explains the methodology of CFD topology optimization by looking to the nature of a river delta. Zones of backflow and recirculation have been eliminated by accumulation of sand, called sedimentation. Tosca Fluid is using the same bionic idea and thus called bionic optimization method. CFD topology optimization has been also implemented using mathematical adjoint methods (Othmer, 2006). Tosca Fluid has been implemented for STARCCM+ and ANSYS Fluent."
Morphing: In morphing technique, a new design variant is created as a complex combination of two or more objects which are geometrically different but topologically similar. Mesh morphing can be used for various purposes such as move onto a new known shape by just updating nodal positions, move onto a shape predicted by the CAE solution (shape optimization using adjoint solver) or move CFD wall boundry according to erosion/deposition.
Fire modeling is partly modeling of a combustion phenomena. However, in contrast to a welldesigned combustor, fire is random in nature. Still CFD simulations can be used to an accurate prediction for the spread of smoke and other toxic substances in the course of a fire.
Fire modeling using CFD methods (where the compartment or fireroom is split into many small cells or control volumes, within which conservation of mass, energy and momentum are enforced by applying the NavierStokes equations) is also called field modeling. One of the well known and thoroughly investigated phenomena in fire modeling is the "trench effect". It describes now a well established mechanism for fire propagation on enclosed slopes such as escalators or stairwells in building structures.
As observed during Kings Cross (London) Underground fire disaster in the 1987, studies into structural fires have revealed that the trench effect can produce extreme fire behaviour and rapid fire spread. Similarly, a wildfire will spread more rapidly up a slope than it will on flat terrain. The slope of the terrain brings the ground and hence the fuel upon it into closer proximity with the flames downstream the fire. This in turn extends the preheating range and allows for faster rates of spread.
Reference: Modelling Smoke Flow Using Computational Fluid Dynamics by TN Kardos, Fire Engineering Research Report 96/4, December 1996: "The phenomenon arises from a sudden entry of fresh air via a gravity current, into a closed space in which a fire has been burning. This space has accumulated an excess amount of fuel vapour, and with an ignition source results in a deflagration. the fuel can not be burned and will start to accumulate in the gaseous layer. This unburned fuel is known as excess pyrolyzates. If a new ventilation source is introduced, such as a fire fighter opening a door or a window breaks due to thermal stress, the hot gases within the room flow out of the top of the vent and the cooler ambient air would flow in at the bottom.
The flow of cold ambient air into the room is known as the gravity current. The gravity current travels towards the ignition source through the bottom of the vent while hot gases containing excess pyrolyzates exit at the top. In the interface between the gravity current and the layer of hot gases from the leading edge or nose of the gravity current, and the region immediately behind the nose, mixing of the ambient air and excess pyrolyzates occurs.
As a result of mixing oxygen and the unburnt fuel, this region will tend to be within the flammable limits. When the gravity current reaches an ignition source the flammable mixture ignites and travels out along the interface of the gravity current and the layer of hot gases. The flow of gases behind the flame front is sufficiently turbulent to increase mixing in this area, this results in combustion in which the flame front travels below the speed of sound, termed turbulent deflagration, within the compartment. This combination of events helps to drive the excess pyrolyzates out of the compartment in an external fireball."
CGNS = CFD General Notation System which provides a general, portable and extensible standard for the storage and retrieval of computational fluid dynamics (CFD) analysis data. In other words, it is a standard for recording and recovering computer data associated with the numerical solution of the equations of fluid dynamics. CGNS facilitates the exchange of CFD data between sites, applications codes (software vendors) and across computing platforms and to stabilize the archiving of CFD data.
CGNS database comprise of:CFD Simulations for FE Engineers
Most of the numerical simulations such as Finite Element Analysis (FEA) and Fluid Mechanics simulations such as CFD and CAA have lot of things in common. It is easy to participate in crossapplication simulations activities if not to become a practicing analyst in both these disciplines. Following sections try to summarize the similarities and differences in FEA vs. CFD) approaches and activities.
Can you describe what are the differences between two representations of the same 3D space?
Differences between FEA and CFD simulations
S. No.  FEA  CFD 
01  We model what we see! Let's call this as concept of modeling the "positive volume".  We usually model what we do NOT see. Let's call this approach as modeling the "negative volume". Note that there is nothing called a 'negative' volume. 
02  Geometry Examples: CHT Domain:
Q: what would be the simulation domain to model flow over this motorbike with a rider?
 FEA Domain: CFD Domain:

03  There is no concept of 'walls', 'inlet' and 'outlet' boundry conditions  The 'walls', 'inlet' and 'outlet' are the most basic ingredients of CFD simulations, there is no fluid without a 'wall' 
04  FEA works on force and moment balance, calculation of displacement field which translates into strain and stress  CFD works on mass and energy balance, calculation of velocity and pressure fields which translate into pressure drops, viscous/shear forces and pressure forces on the walls 
05  FEA cannot use hanging elements, it implies crack  CFD uses and even recommended sometimes to use hanging elements 
06  FEA requires fine mesh near high stress gradient such as bends  CFD requires fine mesh near high velocity gradient such as walls 
02  Mesh Examples: the activity involves creating a closed volume  both for FEA and CFD mesh. Mesh of the FEA Domain:
 CAD geometry works on concept of edge, surface and volume. FEA / CFD preprocessor works on concept of topology and material points. Mesh of the CFD Domain:

07  FEA puts limit on mesh aspect ratio < 10 in most of the cases  CFD accepts aspect ratio up to 50 in cells or elements near the walls (called boundary layer or prism layer) 
Input: the 3D geometry of buildings
Computational domain  the space around the buildings
Computational domain  the solid model of buildings subtracted from the cuboid
Similarities between FEA and CFD simulations
S. No.  Description  Remark 
01  Both applications uses all types of elements: tri, quad, tetra, wedge / prism, hexahedrons  There is no concept of higher order elements in CFD 
02  Same preprocessor can be used to generate mesh for FEA and CFD.  Boundary layer mesh generation is nothing but a finer mesh near the walls. Why wedge (prism) and hexahendron elements are used in boundary layer and not tetrahedrons? The answer lies in definition of aspect ratio and tetracollapse? 
03  Both conformal and nonconformal contacts can be used in FEA and CFD.  In CFD, it is known as 'interfaces'. Since the number of interfaces can be very high in CFD, it is normally recommended to keep less number of interfaces or avoid altogether. 
04  Periodicity and symmetry / antisymmetry  FEA uses symmetry but does not use concept of periodicity. CFD simulations do not use concept of antisymmetry.

06  Most FEA and CFD programs can solve thermal conduction phenomena without modeling the fluid flow if temperature and other heat transfer boundary conditions are known.  In FEA, it is used to find thermal stress. In CFD, it is used to make a quick calculation of hot spot temperatures. 
The exchange of information between FEA and CFD engineers can be in terms of topology checks and mesh quality parameters required for FLUENT Mesher and STARCCM+
S. No.  Description  Checkpoint  Actual value in the mesh 
01  Mesh Type  Surface mesh, all trielements   
02  Minimum size  2.0 [mm]   
03  Maximum size  16 [mm]   
04  Total 2D cell count  2,00,000   
05  Topology: number of free edges  0   
06  Topology: number of selfintersections  0   
07  Topology: number of penetrating elements  0   
08  Topology: number of duplicate elements  0   
09  Topology: number of overlapping elements  0   
10  Quality: skewness [0 is ideal, 1 is degenerate]  ≤ 0.60   
11  Quality: aspect ratio  ≤ 5.0   
12  Quality: surface deviation*  ≤ 0.1 [mm]   
13  PID / Zone naming  as per naming convention agreed upon   
The engineering services has grown to the extent that a new categories of companies ESP (Engineer Service Providers) has come into vogue. These companies supplement the resources (workforces, hardware, software) of product and brand owners known as OEM (Original Equipment Manufacturers).
Why companies outsource the simulation tasks?Evaluation and Comparison of CFD Simulation Tools
The pricing structure of modern CFD tools are getting modular. There are two distinct category of licenses: PrePost and Solver. However, one thing which is often missed is the tool required to cleanup and defeature the simulation geometry. The comparison of two CFD codes needs to be done on mainly 5 factors:
Geometry Cleanup  PreProcessing (Meshing)  PreProcessing (Solve Setup)  Separate HPC?  PostProcessing 
ANSA  ANSA  FLUENT  Y  FLUENT 
ANSA  FLUENT  FLUENT  Y  Tecplot 
STARCCM+  STARCCM+  STARCCM+  N  STARCCM+ 
SpaceClaim  ANSA  FLUENT  Y  FLUENT 
SpaceClaim  HyperMesh  STARCCM+  N  STARCCM+ 
Similar way, the features of software also need to be compared such as:
Effect: Water started boiling, Cause: Water was heated and the molecules started moving quickly.
Effect: The ocean have tides, Cause: The moon creates gravitational pull.
Effect: Sales is in downtrend, Cause: There is no new order and/or delay in ongoing projects.
The causeandeffect discussion can be organized in one of these two primary ways:
CFD Simulations in Various Phases of Product Development Cycle
Preliminary Design Review (PDR) is performed during the Design and Engineering Phase when the System Developers create a baseline highlevel system architecture with a reasonable expectation of satisfying the requirements. This phase of development does not require any simulations activities and are mostly based on past experiences and domain knowledge. A PDR is conducted before the start of detailed design work.
Preliminary Design Review (PDR) is conducted to ensure new technologies are mature enough to be integrated into a product subsystem to form its allocated baseline. A Critical Design Review (CDR) is focused on determining if a system can meet its stated performance requirements within cost, schedule, and risk. CDR is the phase when numerical simulations may need to be performed to get some baseline insight into the hydraulic and thermal performances.
Stepbystep approach to CFD simulations using commercial tool ANSYS CFX / FLUENT or opensource product like OpenFOAM, textbook solutions to Fluid Mechanics problem, quiz on CFD and FEA are covered on this site. Various physics like simulations of multiphase flows, rotating machines are covered with examples. The content on CFDyna.com is being constantly refined and improvised with onthejob experience, testing and training. Examples might be simplified to improve insight into the physics and basic understanding. Linked pages, articles, references, and examples are constantly reviewed to reduce errors, but we cannot warrant full correctness of all content.
Template by OS Templates