combination of mrfsimplefoam and conjugateheatfoam cfd
play

Combination of MRFsimpleFoam and conjugateHeatFoam CFD with - PowerPoint PPT Presentation

conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Combination of MRFsimpleFoam and conjugateHeatFoam CFD with OpenSource Software Hamed Jamshidi Fluid Dynamics Devision, Applied Mechanics Department, Chalmers


  1. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Combination of MRFsimpleFoam and conjugateHeatFoam CFD with OpenSource Software Hamed Jamshidi Fluid Dynamics Devision, Applied Mechanics Department, Chalmers University of Technology, Gothenburg, Sweden 2012-10-19 Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 1 / 28

  2. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Introduction Introduction to conjugateHeatFoam The solver is included in OpenFoam-1.5-dev Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 2 / 28

  3. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Introduction Introduction to conjugateHeatFoam The solver is included in OpenFoam-1.5-dev Heat transfer problems where multiple regions (Solid & Fluid) exist Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 2 / 28

  4. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Introduction Introduction to conjugateHeatFoam The solver is included in OpenFoam-1.5-dev Heat transfer problems where multiple regions (Solid & Fluid) exist The Fluid part of the solver is based on the icoFoam solver Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 2 / 28

  5. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Introduction Introduction to conjugateHeatFoam The solver is included in OpenFoam-1.5-dev Heat transfer problems where multiple regions (Solid & Fluid) exist The Fluid part of the solver is based on the icoFoam solver The flow equations is only solved for the fluid part of the domain Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 2 / 28

  6. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Introduction Introduction to conjugateHeatFoam The solver is included in OpenFoam-1.5-dev Heat transfer problems where multiple regions (Solid & Fluid) exist The Fluid part of the solver is based on the icoFoam solver The flow equations is only solved for the fluid part of the domain The energy equation is solved for both the fluid and solid part in a coupled manner Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 2 / 28

  7. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Tutorial Solving an example problem with conjugateHeatFoam • The geometry of this case consists of a two blocks. • The fluid blocks is a cavity filled with air. • The solid block contains the solid part of the domain. • The case is a 2D-case. Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 3 / 28

  8. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run conjugateCavity conjugateCavity Tutorial • Copy the conjugateHeatFoam tutorial folder to your $FOAM RUN folder: cp -r $FOAM_TUTORIALS/coupled/conjugateHeatFoam/ $FOAM_RUN • Go into the case folder: cd $FOAM_RUN/conjugateHeatFoam • Run the case by: cd conjugateCavity ./Allrun Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 4 / 28

  9. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Results Results of conjugateCavity Case As seen in the following figures in this case the velocity field is simulated for fluid block and the temprature field is simulated for both blocks. Velocity Field Temprature Field Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 5 / 28

  10. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Solver A look at conjugateHeatFoam solver source code The solver could be found in: $FOAM_SOLVERS/coupled/conjugateHeatFoam The conjugateHeatFoam includes: #include "fvCFD.H" #include "coupledFvMatrices.H" #include "regionCouplePolyPatch.H" int main(int argc, char *argv[]) { # include "setRootCase.H" # include "createTime.H" # include "createFluidMesh.H" # include "createSolidMesh.H" # include "createFields.H" # include "createSolidFields.H" Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 6 / 28

  11. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run conjugateHeatFoam.C Inside the time-loop Info<< "\nStarting time loop\n" << endl; for (runTime++; !runTime.end(); runTime++) { Info<< "Time = " << runTime.timeName() << nl << endl; # include "solveFluid.H" // Simplified Navier stokes # include "solveEnergy.H" // Energy equation runTime.write(); Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s\n\n" << endl; } Info<< "End\n" << endl; return(0); } Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 7 / 28

  12. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run solveFluid.H & solveEnergy.H Energy and Fluid Flow Equations Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 8 / 28

  13. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Review Quick Review of MRFSimpleFoam • Multiple frames of reference is a development of the SRF equation. • Compute the absolute Cartesian velocity components, using the flux relative to the rotation of the local frame of reference • The MRFSimpleFoam solver is derived from the simpleFoam solver by some changes. Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 9 / 28

  14. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Review of Tutorial Quick Review of mixerVessel2D Tutorial Compile solver : • cd $FOAM_RUN/../applications cp -r $FOAM_TUTORIALS/incompressible/MRFSimpleFoam/MRFSimpleFoam wmake MRFSimpleFoam Run tutorial: • cp -r $FOAM_TUTORIALS/incompressible/MRFSimpleFoam\ /mixerVessel2D $FOAM_RUN cd $FOAM_RUN/mixerVessel2D ./Allrun >& log_Allrun & Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 10 / 28

  15. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Results of Tutorial Results of mixerVessel2D Tutorial Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 11 / 28

  16. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Introduction Combination of MRFSimpleFoam & conjugateHeatFoam Motivation: To simulate heat transfer (at least for especial cases) in Turbomachinery Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 12 / 28

  17. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Introduction Combination of MRFSimpleFoam & conjugateHeatFoam Motivation: To simulate heat transfer (at least for especial cases) in Turbomachinery How to do this? Implement the MRFSimpleFoam solver into the conjugateHeatFoam Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 12 / 28

  18. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Introduction Combination of MRFSimpleFoam & conjugateHeatFoam Motivation: To simulate heat transfer (at least for especial cases) in Turbomachinery How to do this? Implement the MRFSimpleFoam solver into the conjugateHeatFoam Steady-state solver for incompressible, turbulent flow of non-Newtonian fluids with MRF regions in fluid block and heat transfer in both solid & fluid block Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 12 / 28

  19. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Introduction Combination of MRFSimpleFoam & conjugateHeatFoam Motivation: To simulate heat transfer (at least for especial cases) in Turbomachinery How to do this? Implement the MRFSimpleFoam solver into the conjugateHeatFoam Steady-state solver for incompressible, turbulent flow of non-Newtonian fluids with MRF regions in fluid block and heat transfer in both solid & fluid block Copy the MRFconjugateHeatFoam folder to your $FOAM RUN folder and get into it: cd $FOAM_RUN/MRFconjugateHeatFoam Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 12 / 28

  20. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run Source Code Look into MRFconjugateHeatFoam.C The MRFconjugateHeatFoam includes: #include "fvCFD.H" #include "coupledFvMatrices.H" #include "regionCouplePolyPatch.H" #include "singlePhaseTransportModel.H" #include "incompressible/RASModel/RASModel.H" #include "MRFZones.H" int main(int argc, char *argv[]) { # include "setRootCase.H" # include "createTime.H" # include "createFluidMesh.H" # include "createSolidMesh.H" # include "createFields.H" # include "createSolidFields.H" Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 13 / 28

  21. conjugateHeatFoam MRFSimpleFoam MRFconjugateHeatFoam Case Setup Case Run MRFconjugateHeatFoam.C Inside the time-loop Info<< "\nStarting time loop\n" << endl; for (runTime++; !runTime.end(); runTime++) { Info<< "Time = " << runTime.timeName() << nl << endl; # include "solveFluid.H" # include "solveEnergy.H" runTime.write(); Info<< "ExecutionTime = " << runTime.elapsedCpuTime() << " s" << " ClockTime = " << runTime.elapsedClockTime() << " s" << nl << endl; } Info<< "End\n" << endl; return(0); } Hamed Jamshidi MRFconjugateHeatFoam 2012-10-19 14 / 28

Recommend


More recommend