CFD workflow in a team

This page is meant to give an overview of the general CFD workflow when in a large team, such as ARIS Space.

Preparation

Before jumping in to simulating random stuff, make sure you are doing the right things! In CFD the golden rule is: garbage in, garbage out.

  1. “Client” definition: figure out who needs what from the CFD simulations by talking to members of your subteam, system engineers and team leads of other teams.
    Research: make sure you fully understand the physics of your project. Read books, read papers, attend lectures – and if you’re ever at a loss, ask an expert! Most people will gladly help you out if you ask politely.
  2. Task and timeline definition: define what kind of simulations you will need to run (turbulent/laminar, transient/steady-state, 2D/3D, sub-/supersonic, …), and what the purpose of each is (determining the optimal shape of nose cone/fins/airbrakes, drag, corrective moments…). Understanding the physics is crucial to identifying critical points in the project, and so is communicating with your “clients”!
  3. Establish contact with you team’s CAD engineer: they will be supplying you with CAD models of everything you will be simulating. Get to know what software they use and let them know what you need.
  4. Software definition: decide what software best fits your tasks. Think of pre-processing (e.g. FreeCAD, Blender, …), meshing (e.g. SnappyHexMesh, gmsh, …), actual CFD (software package and solvers, e.g. OpenFOAM, ANSYS Fluent, …) and post-processing (e.g. ParaView, …). Don’t forget to take into account the hardware your simulations will run on – if you will be using an HPC cluster, you may not have complete control over what software or versions are available.
  5. Practice: get used to the software by running some simulations similar to the ones you will be doing later. CAD designs for your project will not be available right away, but you may be able to get your hands on files from previous projects.

Simulations

Now that you have gotten your bearings within the team and you have enough background knowledge to ensure quality work, you can get started on the actual CFD simulations. Of course, each simulation will involve several steps, too.

  1. Communicate with your CAD engineer to obtain designs for the simulation in question.
  2. If necessary, convert the designs to the format required for your simulations (e.g., STL).
  3. Geometry pre-processing: you may need to simplify the geometry, and most importantly define the simulation domain. It is extremely useful to properly label regions of your geometry at this point (e.g. inlet, solid walls, etc).
  4. Meshing: use your software of choice to generate a mesh for your simulation. This is a crucial step, so make sure you do it well and check your mesh for quality afterwards.
  5. Define boundary conditions: this will of course depend on the CFD software you will use. Defining the correct boundary conditions is crucial to getting sensible results, so check your work and make sure you know what you’re doing!
  6. Run solver: press enter, sit back and have a cup of tea, or two. Or five. Then go to bed and check again in the morning.
  7. Scrutinize your results: if the solver didn’t crash overnight, you should now have results. Assume they’re wrong. Then study them and convince yourself they’re correct. Remember: garbage in, garbage out. Make this your mantra, and never assume the results are correct. This will save you a lot – a lot – of time and potentially embarrassment.
  8. Post-processing: now you will want to compute whatever it is your simulation was for – drag forces, drag coefficient, lift, etc. Now is also the time to make colourful pictures 🙂
  9. Deliver results: get in touch with your “client” again, and give them your report!

Documentation and knowledge transfer

Yes, that’s what I’m doing now 😉

Document every simulation you run, and keep your work organized. Seriously! This is a very easy step to overlook, but it can save you huge amounts of time, and will be invaluable to those coming after you.