KADAL


Kriging for Analysis, Design optimization, And expLoration (KADAL) is our in-house Python code that contains collections of Bayesian Optimization tools including various surrogate modeling methods, sampling techniques, and optimization methods. Some surrogate models that included in our program are Ordinary Kriging, Regression Kriging, Polynomial Kriging, Composite Kernel Kriging, and Kriging with Partial Least Square. In Bayesian optimization module, we have Single Objective Bayesian Optimization (SOBO) algorithm using Expected Improvement (EI) and Multi-Objective Bayesian Optimization (MOBO) using Pareto efficient global optimization (ParEGO) and Expected Hypervolume Improvement (EHVI) algorithm. Currently, we are also developing a reliability analysis module based on Active Kriging – Monte Carlo Simulation (AK-MCS). Our code is under active development and we aim to incorporate more sophisticated methods. If you are interested to use our code, to collaborate with us or have any other inquiries, please do not hesitate to contact us!

PIV Processing

As the foundation of our particle image velocimetry (PIV) experimental setup, we developed our own PIV solver using Python programming language. The current solver is based on the famous PIV window deformation iterative method (WIDIM) using a fast-fourier transform (FFT) cross-correlation. However, the emergence of deep learning as state-of-the-art technology has attracted our attention to its development as well. Inspired by the recent research on optical flow with neural network, we’re striving to harness both of their advantages. Optical flow is capable in measuring per pixel displacement, while neural network on handling complex task within small amount of time. We aim to explore broad possibilities, that offered by deep learning to further improve the performance of our PIV solver, as we believe that the sky is the limit.

Vortex Element Method Solver

Our vortex element methods solver is a direct numerical simulation (DNS) solver for transient incompressible flows problem. Including bounded and unbounded flows. Basically, our solver uses C + + and Fortran90 programming language. For unbounded flows problem, some acceleration methods and more accurate methods have been well implemented. For example, isotropic multi-resolution scheme, discretization correction (DC) PSE scheme, and DC Poisson solver. For bounded flows, Brinkman penalization and iterative Brinkman penalization methods have been used for immersed boundary methods treatment. 2D and 3D flow problems have been successfully simulated and tested. Started from impulsively started object to deforming moving bodies problem and its turbulent analysis. This current method is also started to be used for several engineering problems (e.g. flow around a bridge, flow-induced vibration). Currently, we are developing parallel processing using CUDA. For who are interested in speeding up our codes, let’s join our journey!

Vortex In Cell Solver

Vortex In Cell (VIC) is a Direct Numerical Method, hybrid method, known as state-of-the-art in CFD, which combines between mesh-based and mesh-free method and holds the advantage of both methods. While the mesh-based method solves flow equation on mesh known as Eulerian method, mesh free method moves particle freely known as a Lagrangian method. VIC connects these methods using an interpolation scheme in order to interpolate the quantity of flow from particle location to grid location. The solver had been tested on several cases such as immersed body problem, and the deforming body problem such as a simulating anguilliform swimmer.

Solid SPH Solver