We are pleased to announce the release of our open source library geometrical GBS.
ssg-aero/gbs: gbs is a c++ header library to build and manage NURBS, some optional module are used for visualization and export. This library is compatible with OpenCASACADE and has a python biding. (github.com)
In a nutshell GBS is a powerful C++ header library to manage BSpline geometries.
For now its capabilities range from basic geometry creation in a rational o irrational fashion:
To more advanced geometrical creation algorithms:
Surface creations from profiles:
More technical show case coming.
Keywords: structured mesh, hexahydron, CFD, pipes, volutes, fast convergence, numerical dissipation
It is common to hear engineers pretend they do not bother with meshing, and used this or that automatic mesh filling software in order to quickly simulate the latest evolution of their design.
It is true that meshing is a quite complex science (may we call it craftsmanship) where numerous types of skills are involved.
Yet in the end the quality of the mesh is one of the key parameters in the quality of the solutions your favorite Computational Fluid Dynamics (CFD) package shall provide…
Among the meshing techniques, one is famous for all its qualities, and all the difficulties to play with it: the structured multi-blocks meshes.
This article focuses on their key advantages, how structured multi-blocks meshes can provide lightning fast high quality simulation results, and how some new tools in development at SSG-AERO will soon allow many designers to rethink their use of the meshing tools on the market.
What is a structured mesh
Most of the tools providing simulation packages to predict flow behavior are based on a mesh that fills the volumes on which the computations have to be run. What happens is that the fluid dynamics equations called Navier-Stokes Equations are so complex they require to discretize the volumes into very small elements where differences can be estimated, and feed the solvers to reach the solutions for a given set of external / boundary conditions.
There are numerous techniques used to fill these volumes, and they use in most cases the following elementary volumes to do so:
These elements can be used at the same time or not, and meshes are thus classified in two categories:
All the meshes discretize the same domain with two walls where the cells sizes have to be small in order to properly take into account the strong variations of speed from zero at the wall to any potential value farther from it - this refinement is called meshing the boundary layer.
What makes structured meshes better
It is always good to keep in mind the purpose of a mesh in CFD, which is to discretize a complex volume into small parts on which a flow simulation shall be run. This means that a very complex and heavy algorithm will use this discretization and travel through it hundreds of times to evaluate differences and solve Navier-Stokes equations using numerical schemes.
As for the meshes, the most common CFD solvers using meshes are organized in 2 families:
Most of these solvers use the same type of resolution schemes and stabilization schemes which means that for a given type of flow (subsonic, supersonic, incompressible, …), the two solvers are comparable apart from how they manage the grid.
Thinking about what makes a good mesh a really good mesh requires to understand the challenges put together in a CFD simulation. A good simulation needs to :
Looking at the mesh through this prism, the advantages of the structured meshes are straightforward :
Put all together, it means that using a structured mesh on a unstructured solver can be very efficient. SSG-AERO has experienced a factor 2 to 5 acceleration factor between an unstructured mesh and a structured mesh on the exact same configuration. This has been confirmed on other solvers, see https://www.linkedin.com/pulse/why-structured-cfd-grids-still-style-rachael-hopwood-jarvis for instance.
On top of this, using structured meshes allows the use of structured solvers, which are intrinsically faster as they use the power of the structured mesh to quickly reach information. As the mesh are organized as big 3D tables, all the data can be organized so and going though these elements and computing differences is as fast as reaching the next or previous element in a table, something powerful programs in fortran or C++ do in no time.
To perform the same operation, unstructured meshed use what is called a connectivity table to move from one element to its neighbors, losing time in the process and using additional memory.
The usual speed up factor between structured and unstructured solvers is around 3.
Structured meshes are hence the best discretization technique to run a CFD simulation, as long as precision and prediction are involved. Aerospace and aeronautic companies make no mystery that most of their aero and hydro simulations are run using this type of meshes as their reference : quote from http://blog.gridpro.com/grid-generation-an-art-or-science/
"Long term CFD engineers in certain specialized fields like hypersonic assure structured multi-block is the only way for them to get accurate reliable numbers."
So why don't engineers use them more often ?
The time usually required to generate a structured mesh stops most users from investing in such a performant technology, pumping most of the engineering time faster than a black hole.
One has to think about:
In the meantime unstructured meshes can automatically fill any type of volume, meaning that the design process can be very fast, at the potential cost of precision, CPU time and memory needs.
Structured meshes at the service of your design
So if you are not a big moustache experienced CFD aerodynamicist, is there any chance to use these meshes which provide hyper fast high quality results ?
Some automatic solutions exist nowadays for wings and blades, but just considering a simple radial pump with a volute and a pipe which is a rather common industrial product, no solution seems to exist so far.
At SSG-AERO, we believe that there are numerous new areas where structured meshes can be used on a daily automatic basis. To do so we have developed a new powerful software based on a very powerful geometrical framework, that shall soon enable the generation of structured meshes on the following geometries:
This software is called GaMesh, the remover of obstacles that makes meshing easier.
It is now in the final step of its prototyping and shall be ready early 2018 for volutes, and will then be deployed on all the complex piping systems found in turbomachines. The estimated meshing time for a volute using this technique is lower than 15 minutes.
Using GaMesh along with the already existing structured meshing tools for blades, engineers will be able to optimize their geometries using reliable grids inducing limited bias in the simulation and providing faster convergence.
For the team and the project, it will means a better use of the team force and time, and predicable results in lower time…
One illustration of the power of structured meshes in the design process of a radial turbomachine is the comparison between such simulations with experimental results.
The compressor behavior is for instance clearly well simulated for very different types of machines:
In the meantime many research institutes running complex unsteady analysis on complex machines insist on using such meshes as they request less memory and do offer faster convergence time.
One more thing…
Now that high quality meshing is possible, high quality meshing is not the weakest link of the design process anymore…
Engineers now have to be able to generate high quality geometries faster - by hand or using an optimizer - to reach the performance targets.
For this challenge as well, SSG-AERO is developing another software: Shiva, a new environment that transforms your workflow and assists designers to create optimal geometries
Shiva shall soon enable designers to produce amazingly smooth surfaces in no time and optimize them…
A good contender… for a new entry in this young blog.