GithubHelp home page GithubHelp logo

lyushiyu / rheotool Goto Github PK

View Code? Open in Web Editor NEW

This project forked from fppimenta/rheotool

0.0 0.0 0.0 33.58 MB

Toolbox to simulate GNF and viscoelastic fluid flows in OpenFOAM®

License: GNU General Public License v3.0

Shell 2.05% C++ 66.83% C 31.12%

rheotool's Introduction

About

RheoTool is an open-source toolbox based on OpenFOAM® to simulate Generalized Newtonian Fluids (GNF) and viscoelastic fluids under pressure-driven and/or electrically-driven flows. In addition to continuum mechanics solvers, RheoTool also has a Brownian dynamics solver to simulate polymer molecules individually.

The theory behind the single-phase flow solvers used in RheoTool can be found in Pimenta F. and Alves M.A., 2017, J. Non-Newtonian Fluid Mech. for pressure-driven flows, in Pimenta F. and Alves M.A., 2018, arXiv:1802.02843 for electrically-driven flows, in Pimenta F. and Alves M.A., 2020, arXiv:2004.14235 for non-isothermal flows with conjugate heat transfer and in TBA for film-casting simulations. The Brownian dynamics solver was presented in Pimenta F. et al., 2018, Biomicrofluidics.

Since version 4.0, RheoTool includes interfaces to the sparse matrix solvers of three external libraries: Eigen, Hypre and PETSc. Both coupled and segregated solution methods have been implemented, as described in Pimenta F. and Alves M.A., 2019, Computer & Fluids.

The library containing the viscoelastic fluid models has been developed based on the library used by viscoelasticFluidFoam (Favero et al., 2010, J. Non-Newtonian Fluid Mech.), already present in foam-extend 4.0.

Features

  • all the features are available for 2D/3D problems and generic grids;
  • the code for continuum mechanics is fully-parallelized with MPI;
  • all solvers support either moving or static meshes;
  • non-isothermal flows, including conjugate heat transfer in multi-regions;
  • wide range of electrically-driven flow models;
  • wide range of rheological models (viscoelastic, thixotropic elasto-viscoplastic and GNF);
  • the log-conformation tensor approach is available for all viscoelastic models;
  • the transient flow solvers (rheoFoam and rheoEFoam) are highly stable regarding pressure-stress-velocity coupling;
  • the material functions of any rheological model can be obtained numerically (rheoTestFoam);
  • wide range of (direct/iterative) sparse matrix solvers available through the interfaces to external libraries;
  • segregated and coupled solvers;
  • Brownian dynamics solver implementing bead-spring models;
  • solver based on a 2.5D model to simulate film-casting (rheoFilmFoam);
  • a set of tutorials is included to illustrate the application of the solvers to different problems;
  • the theory and the tutorials are described in a user-guide;
  • a solver for two-phase flows is available (rheoInterFoam), where any GNF or viscoelastic model can be used for each phase (under-development);
  • the tool is available for both OpenFOAM® and foam-extend versions.

Installation

RheoTool can be either cloned using git via: git clone https://github.com/fppimenta/rheoTool or simply downloaded from the GitHub page at https://github.com/fppimenta/rheoTool.

The repository includes versions of RheoTool for: OpenFOAM® v9, OpenFOAM® v7.0, and foam-extend v4.0.

Note: the RheoTool version for foam-extend is not updated since version 4.1.

To install RheoTool, please follow the instructions in Chapter 2 of the user-guide.

Docs

See the user-guide.

ChangeLog

Follow the version updates of rheoTool in the ChangeLog. They can also be found in the user-guide.

Third-Party

RheoTool is using the following third-party packages:

Screenshots

Here are some images from the tutorials included in RheoTool.

This offering is not approved or endorsed by OpenCFD Limited, producer and distributor of the OpenFOAM software via www.openfoam.com, and owner of the OPENFOAM® and OpenCFD® trade marks

OPENFOAM® is a registered trade mark of OpenCFD Limited, producer and distributor of the OpenFOAM software via www.openfoam.com

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.