Git Product home page Git Product logo

laminarsmoke's Introduction

laminarSMOKE

CFD solver for laminar reacting flows with detailed kinetic mechanisms based on OpenFOAM and OpenSMOKE++ Library

Compulsory libraries

Optional libraries

Compilation

Three different options are available to compile the code, according to the level of support for the solution of ODE systems. The ISATLib is needed only if you want to apply the In Situ Adaptive Tabulation (ISAT) technique.

  1. Minimalist: no external, optional libraries are required. Only the native OpenSMOKE++ ODE solver can be used.

  2. Minimalist + Intel MKL: only the native OpenSMOKE++ ODE solver can be used, but linear algebra operations are managed by the Intel MKL libraries

  3. Complete: all the optional libraries are linked to the code, in order to have the possibility to work with different ODE solvers

  4. Instructions to compile the Minimalist version


  1. Open the mybashrc.minimalist, choose the version of OpenFOAM you are using (2.2, 2.3, 2.4, 3.0) and adjust the paths to the compulsory external libraries

  2. Type: source mybashrc.minimalist

  3. Go to Section 4

  4. Instructions to compile the Minimalist+MKL version


  1. Open the mybashrc.minimalist.mkl, choose the version of OpenFOAM you are using (2.2, 2.3, 2.4, 3.0) and adjust the paths to the compulsory external libraries and the paths to the Intel MKL library

  2. Type: source mybashrc.minimalist.mkl

  3. Go to Section 4

  4. Instructions to compile the Complete version


  1. Open the mybashrc.complete, choose the version of OpenFOAM you are using (2.2, 2.3, 2.4, 3.0) and adjust the paths to the compulsory external libraries and the Intel MKL library. You can choose the additional external libraries you want to add to laminarSMOKE, by modifying the EXTERNAL_ODE_SOLVERS variable: in particular 1 means that the support is requested, while 0 means that no support is requested. Obviously, for each requested library, you need to provide the correct path.

  2. Type: source mybashrc.complete

  3. Go to Section 4

  4. Compile the solvers


  1. Compile the user-defined boundary condition library: from the libs/boundaryConditionsOpenSMOKE++ folder type wmake

  2. Compile the customized radiation library: from the libs/radiationOpenSMOKE++ folder type wmake

  3. Go to Section 5

  4. Compile the solvers


  1. Compile the steady-state (accounting for buoyancy) solver: from the solver/laminarBuoyantSimpleSMOKE folder type wmake
  2. Compile the steady-state solver: from the solver/laminarSimpleSMOKE folder type wmake
  3. Compile the unsteady (accounting for buoyancy) solver: from the solver/laminarBuoyantPimpleSMOKE folder type wmake
  4. Compile the unsteady solver: from the solver/laminarPimpleSMOKE folder type wmake
  5. Compile the post-processor: from the solver/laminarSMOKEpostProcessor folder type wmake

Run your first case

The folder run/tutorials/ToroFlames/F3/ contains a simple test case (laminar coflow diffusion flame fed with hydrogen).

  1. Unsteady simulation: Open the laminarBuoyantPimpleSMOKE-Global folder, build the mesh using the blockMesh utility, and run the case using the laminarBuoyantPimpleSMOKE solver. Even if you are interested in steady state conditions, we strongly suggest to always start with unsteady calculations to create a reasonable first-guess solution for the application of the steady state solver. In this case, you can stop the unsteady simulation after 50 ms of physical time.

  2. Steady state simuation: you can now move to the laminarBuoyantSimpleSMOKE-Global folder. Copy the last time folder calculated by the unsteady solver (point 1 above), build the mesh using the blockMesh utility, and run the case using the laminarBuoyantSimpleSMOKE solver. In order to reach the steady state conditions, 5000-6000 iterations are enough.

laminarsmoke's People

Contributors

acuoci avatar

Watchers

James Cloos 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.