Productive CFD
CFD Direct is delighted to announce Productive CFD, the new CFD Training course with OpenFOAM. The course was created by Chris Greenshields and Aidan Wimshurst, drawing Chris’s 16 years experience of OpenFOAM training and Aidan‘s experience from his Fluid Mechanics 101 channel on YouTube. The course teaches how to do high quality CFD with OpenFOAM — getting better, relevant results in fewer attempts, and identifying and fixing mistakes quickly and with confidence.
The course is split into 2 parts, each of 2 days duration, and is delivered in person. Each part includes a ~200 page manual which references topics for further reading from Notes on Computational Fluid Dynamics: General Principles by Chris and Henry Weller (the creator of OpenFOAM). Courses are scheduled for the following locations in the first half of 2025.
- 17-20 March 2025: OpenFOAM Training, Cologne, Germany
- 28 April – 1st May 2025: OpenFOAM Training, Houston, USA
Course Aims | Course Topics | Who Should Attend | Schedule and Booking
High Quality CFD
CFD involves people — practitioners — using CFD software, e.g. OpenFOAM, to simulates fluid flow, heat transfer, etc. At one level, CFD practitioners must know how to operate the software, which is the focus of our Essential and Applied CFD courses. At another level, they may want to program OpenFOAM to extend its capability, which we teach on our Programming CFD course. Productive CFD instead teaches how to perfom high quality CFD with OpenFOAM, rather than merely operating the CFD software. It explains how to get better, relevant results in fewer attempts, identifying and fixing issues quickly and with confidence.
The CFD Process
To be productive, you need to follow an effective process of doing CFD. Such a process begins with the practitioner defining a CFD problem that represents the “real world” problem of interest. The next step is to estimate flow patterns/features (e.g. boundary layers, vortices) and identify flow regimes (e.g. sub-critical, critical, super-critical) that are expected in the problem. The practitioner should then configure the CFD simulation with: a suitable mesh structure to match their estimated flow patterns; and, CFD solver, options, physical models and boundary conditions suitable for the relevant flow regime(s). Where necessary they should verify the solvers, physical models and boundary conditions they are using.
Once the simulation runs, it should be validated by monitoring diagnostic data, performing control volume analysis (e.g. thermal energy balance) and visualizing the flow to compare expected and calculated flow patterns. Where the simulation produces something unexpected, the initial assessment and/or configuration should be revisited, correcting any mistakes in the CFD, the understanding of the flow, etc. When all discrepancies are resolved and the CFD solution matches the expected behaviour, the CFD is likely to be “correct”, albeit within the limitations of the numerical methods, mesh and time resolution, and physical models.
Finally, the aim of any simulation is to extract objective data and characteristic parameters, i.e. the information we want from our problem of interest. The overall CFD process mimics a design cycle that iterates around phases of: planning (defining the CFD problem); building (configuring the simulation); testing (validating the simulation) and evaluation (extracting useful data).
Hands-on Training
In the Productive CFD course, participants are guided through a set of CFD cases. Part 1 covers cases which investigate: flow, momentum and conservation; pressure, friction and forces; unsteady flow and turbulence. The cases involve characterization of a flow measurement device, aerodynamics, unsteady and turbulence flows, and an assessment of turbulence wall functions. Part 2 covers cases which investigate: heat, thermal physics, thermodynamics, heat transfer/CHT; buoyancy, dispersion and particles; waves, discontinuities and boundedness. The cases involve characterization of heat transfer (cooling) from a solid, heating a room, plume dispersion, characterization of flow measurement in an open channel and efficiency of a supersonic diffuser.
Learning the CFD Process
For each case, we follow a set of processes: define the CFD problem, estimate flow patterns, identify flow regimes, design meshes, select and verify solvers and models, monitor and extract data, perform control volume analyses, calculate characteristic parameters. Revisiting these processes for multiple cases reinforces the learning so it can be applied to new problems. The course extensively teaches OpenFOAM’s coded frameworks in input files (e.g. coded function objects, fvModels, etc) to extract relevant data, both to deliver what we want to know and in order to verify the calculations, and the selected models and solver.
The Need for Training in Person
Productive CFD asks questions like “I want to simulate flow and heat transfer for a room containing a 1kW radiator. Estimate the flow speed by natural convection. Estimate whether the flow is turbulent or laminar flow, or both. Are turbulent wall functions be suitable for this case? From thise responses, estimate the cell heights needed along the walls of the room.” Then it moves on to configuring and running the case before validating the initial assessment, verifying results by control volume analysis of heat transfer, and extracting objective data, e.g. mean temperature of the room.
A course like this poses questions much more than our other courses which focus more on the operation of software. We have therefore chosen to deliver this course in person to enable far better levels of discourse and exchange of ideas, both in the classroom and in breaks. The courses delivered so far have produced engaging, fruitful discussions throughout, with participants (mostly experienced professionals) leaving with new skills for doing better CFD, as indicated by feedback from a few participants.