GithubHelp home page GithubHelp logo

m-badri / dynamicoversetzonefvmesh Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ahmedahamada/dynamicoversetzonefvmesh

0.0 0.0 0.0 695.88 MB

OpenFOAM Overset module has been enhanced to handle combined motion and deformation.

License: GNU General Public License v3.0

Shell 0.02% C++ 84.55% C 15.43%

dynamicoversetzonefvmesh's Introduction

dynamicOversetZoneFvMesh

The overset module has been enhanced to handle combined rigid-body motion and deformation.

The process of numerically studying the motion of some biological systems in fluid flows starts with having an adequate numerical tool to solve these complex FSI problems. This numerical tool can be divided into mesh motion utility, fluid solver, and structure solver. In the presented work, the Overset technique was selected to be the mesh motion utility, addressing the dynamic mesh motion. Although OpenFOAM's Overset method was widely used, there are still some types of motion that it cannot address. The conventional Overset method allowed for solid body motion for the front mesh or the background mesh. In addition, it allowed the displacement of any of the patches in the front mesh. However, to have a combined motion, that consists of displacement for a given patch in the front mesh while having a solid body motion at the same time, was not possible. A new mesh deformation solver was introduced for this purpose. A 2D airfoil problem was solved with fixed boundary conditions to validate the functionality of the new feature. The objective of this study was to demonstrate the capability of the dynamicOversetZoneFvMesh to apply both rigid body motion and deformation at specified patches within certain zones. Additionally, it aimed to conduct a numerical investigation of a leading-edge flexible flapping foil, aligning the foil's camber with the flapping direction. Verification, parallelization, validation, and mesh convergence studies were conducted prior to the numerical investigation, verifying the modified Overset solver. Two cases were meticulously simulated, allowing for a comparative analysis between the original and modified versions of the dynamicOverset libraries. The first case was a rigid body flapping foil with no deformation, while the second case featured shape flexibility during the flapping cycle characterized by leading-edge deformation. The results obtained with the modified dynamicOversetZoneFvMesh solver stood as compelling evidence of the proficiency of the adapted solver, as it adeptly managed complex fluid dynamics while effectively accommodating the requisite motion and deformations within the front mesh and keeping the background stationary as intended. Moreover, the numerical investigation showed that leading-edge flexibility boosts the power extraction efficiency of the flapping foil, aligning with the conclusions of Li et al. (2021) and Hamada and Furth (2024). The presented work can be a cornerstone for many problems in the field of fluid-structure interaction which may have been impossible to simulate so far.

image

image

T000M

Parallel

T000F

Heave_U

Cp

Authors

The modification of the solver was developed by Karim Ahmed, of the University of Poitiers, France, and Ahmed A. Hamada, of the Texas A&M University, Texas, USA, who contributed equally to this work as first authors.

License

dynamicOversetZoneFvMesh is published under the GNU GPL Version 3 license, which can be found in the LICENSE file.

Prerequisites

  • OpenFOAM v2006/v2212/2306. While it may compile against other versions, this has not been tested and is currently not supported.

Usage

  • Make sure that OpenFOAM v2006/v2212/v2306 is loaded into your environment
  • Copy the dynamicMesh/motionSolvers and dynamicMesh/Make folders to the OpenFOAM $SRC directory
  • Copy the Overset Source folder to the OpenFOAM $SRC directory
  • Compile all libraries and apps
  • Follow these commands:
cp -r dynamicMesh/motionSolvers $(SRC)/dynamicMesh/
cp -r dynamicMesh/Make $(SRC)/dynamicMesh/
cp -r ./overset $(SRC)
cd $(SRC)/dynamicMesh
wmake
cd $(SRC)/overset
wmake

Test cases

  • All test cases can be found in the "Tutorial" directory. The deformation code for the test cases is compiled, so the user runs the solver directly.
  • The user is encouraged to experiment with different settings after getting familiar with the structure of the code.
  • The user is encouraged to add their deformation code in backGround/system/codeDict file.

Paper Citation

Ahmed, K., Hamada, A. A. ., Chatellier, L., & Furth, M. . (2024). A Modified Overset Method in OpenFOAM for Simultaneous Motion and Deformation: A Case Study of a Flexible Flapping Foil. OpenFOAM® Journal, 4, 41–61. https://doi.org/10.51560/ofj.v4.96 Corresponding authors, Karim Ahmed and Ahmed A. Hamada contributed equally to this work as first authors.

Contact & support

For bug reports or support, feel free to contact Karim Ahmed at [email protected] or Ahmed A. Hamada at [email protected]. Please note that this code is not maintained nor regularly updated, and is only tested with OpenFOAM v2212/2306. Questions related to other versions will thus not be answered.

Disclaimer

dynamicOversetZoneFvMesh is provided by the copyright holders and contributors "as-is" and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall the copyright owner or contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.

dynamicoversetzonefvmesh's People

Contributors

ahmedahamada avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.