CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM

Heat transfer in a FSI simulation by OpenFoam

Register Blogs Community New Posts Updated Threads Search

Like Tree4Likes
  • 1 Post By peyman.havaej
  • 3 Post By Daniel_Khazaei

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   July 15, 2019, 05:30
Post Heat transfer in a FSI simulation by OpenFoam
  #1
New Member
 
peyman havaej
Join Date: Jan 2016
Posts: 16
Rep Power: 10
peyman.havaej is on a distinguished road
Dear Formers
I want to simulate fluid flow and heat transfer in a FSI case. I use Foam-extend 4.0 and FSI - package provided in openfoamwiki.
An appropriate form of Energy equation was added to the fluid solver, and it works correctly. Also, for the solid region, Energy equation for solving Temperature was implemented in the main solver, named fsiFoam.
Now, my problem is related to boundary condition between the fluid/solid interface for Temperature. After I searched a lot, I found that I can use ggi method for interpolating data between solid and fluid interface, especially in the non-conformal mesh. However, it did not work for me, since when I set ggi condition in /constant/polyMesh/boundary, the shadowPatch for the fluid interface, located in the solid folders, and the code can not access the boundary and faceZone which was in the solid part.
Could someone give me a suggestion, please?
I appreciate that. Thank you.


Here is the boundaries for fluid:

6
(
inlet
{
type patch;
nFaces 40;
startFace 23570;
}
outlet
{
type patch;
nFaces 40;
startFace 23610;
}
bottumWalls
{
type wall;
nFaces 360;
startFace 23650;
}
topWalls
{
type wall;
nFaces 280;
startFace 24010;
}
interface_fluid
{
type ggi;
nFaces 140;
startFace 24290;
shadowPatch interface_solid;
zone interface-zone;
bridgeOverlap false;
}
frontAndBack
{
type empty;
nFaces 24000;
startFace 24430;
}
)



And here for solid


3
(
topWalls
{
type wall;
nFaces 75;
startFace 4925;
}
interface_solid
{
type ggi;
nFaces 75;
startFace 5000;
shadowPatch interface_fluid;
zone interface-zone;
bridgeOverlap false;
}
frontAndBack
{
type empty;
nFaces 5000;
startFace 5075;
}




After running program, this error was appeared:


Create time

Create dynamic mesh for time = 0

Selecting dynamicFvMesh dynamicMotionSolverFvMesh
Selecting motion solver: velocityLaplacian
Selecting motion diffusion: quadratic
Selecting motion diffusion: inverseDistance


--> FOAM FATAL ERROR:
Shadow patch name interface_solid not found. Please check your GGI interface definition.

From function label ggiPolyPatch::shadowIndex() const
in file meshes/polyMesh/polyPatches/constraint/ggi/ggiPolyPatch.C at line 774.

FOAM aborting

Aborted (core dumped)







constant.zip
thonix likes this.

Last edited by peyman.havaej; July 15, 2019 at 06:52.
peyman.havaej is offline   Reply With Quote

Old   July 16, 2019, 10:09
Default
  #2
Senior Member
 
Daniel
Join Date: Mar 2013
Location: Noshahr, Iran
Posts: 348
Rep Power: 21
Daniel_Khazaei will become famous soon enough
Dear Peyman,

I have done exactly what you are trying to do before!
You are right about using GGI interpolation, but it's not that easy.

I have implemented everything needed in solids4Foam toolkit with a simple tutorial. But it's not yet validated nor completed. For now it is limited to the one of the fluid models but extending it to the other models should be easy and straightforward:

1- fluidModel: buoyantBoussinesqPimpleFluid
2- solidModel: thermalLinGeomSolid (fsi) and thermalSolid (no-fsi)

Meanwhile I would suggest you contact Dr. Philip Cardiff (@bigphil) and request for access to the toolkit. There you can check "feature-coupledTemperatureField" branch for more information.


Regards,
D. Khazaei
bigphil, peyman.havaej and thonix like this.
Daniel_Khazaei is offline   Reply With Quote

Old   October 25, 2019, 02:01
Default
  #3
Senior Member
 
Hojatollah Gholami
Join Date: Jan 2019
Posts: 171
Rep Power: 7
Hgholami is on a distinguished road
Dear All
I wanna to add a fixed solid region into fluid region of fsi problem to study heat transfer. For coupling heat transfer from fixed solid to fluid and invert, the chtMultiRegionFoam solver algorithm uses a loop and set fluidField, solve fluid region, set solidField and solve solid region for nOuterCorr times without calculating interface residual. As
Quote:
for (int oCorr=0; oCorr<nOuterCorr; oCorr++)
{
forAll(fluidRegions, i)
{
Info<< "\nSolving for fluid region "
<< fluidRegions[i].name() << endl;
#include "setRegionFluidFields.H"
#include "readFluidMultiRegionPIMPLEControls.H"
#include "solveFluid.H"
}

forAll(solidRegions, i)
{
Info<< "\nSolving for solid region "
<< solidRegions[i].name() << endl;
#include "setRegionSolidFields.H"
#include "readSolidMultiRegionPIMPLEControls.H"
#include "solveSolid.H"
}
}
I think, this solver can work with conformal interface mesh.
In fsiFoam solver, we have elastic solid region and fluid region. the fluid region mesh in runTime will changes and the fixed solid region will have fixed mesh. So the mesh of two conjugate regions will be different.
my opinion is to modify fluid solver of fsiFoam, as after solving UEqn and PEqn, start a loop with 3 times and calculate energy equation of fixed solid region, save T boundary, calculate energy equation in fluid region and save T boundary. But as the interface of fluid and solid regions will be different, we should use ggi mapping.
My questions are, is it better suggestion? or if I want to use this algorithm, how can I implement ggi class?
Hgholami is offline   Reply With Quote

Old   November 27, 2019, 02:26
Default
  #4
Senior Member
 
Hojatollah Gholami
Join Date: Jan 2019
Posts: 171
Rep Power: 7
Hgholami is on a distinguished road
Dear Khazaei
for your recommend solvers, as there aren't any tutorial. I wanna to use coupled condition for solid and fluid regions. For example, for HronTurek benchmark which condition is suitable for plate of solid region and plate of fluid region?
I think fixedValue, zeroGradient is not suitable. chtRcTemperature is not work. Thanks.

Quote:
Originally Posted by Daniel_Khazaei View Post
Dear Peyman,

I have done exactly what you are trying to do before!
You are right about using GGI interpolation, but it's not that easy.

I have implemented everything needed in solids4Foam toolkit with a simple tutorial. But it's not yet validated nor completed. For now it is limited to the one of the fluid models but extending it to the other models should be easy and straightforward:

1- fluidModel: buoyantBoussinesqPimpleFluid
2- solidModel: thermalLinGeomSolid (fsi) and thermalSolid (no-fsi)

Meanwhile I would suggest you contact Dr. Philip Cardiff (@bigphil) and request for access to the toolkit. There you can check "feature-coupledTemperatureField" branch for more information.


Regards,
D. Khazaei
Hgholami is offline   Reply With Quote

Old   December 8, 2019, 03:56
Default
  #5
Senior Member
 
Hojatollah Gholami
Join Date: Jan 2019
Posts: 171
Rep Power: 7
Hgholami is on a distinguished road
Dear peyman
Do you solve this problem?
Hgholami is offline   Reply With Quote

Reply

Tags
foam-extend 4.0, fsi, heat transfer, multi zones, openfoam


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Evaporation-Condensation in a porous zone (Heat transfer problem) maximilian-1 Fluent Multiphase 1 August 22, 2018 10:42
conjugate heat transfer in OpenFOAM skuznet OpenFOAM Running, Solving & CFD 99 March 16, 2017 06:07
OpenFOAM v3.0+ ?? SBusch OpenFOAM 22 December 26, 2016 15:24
Heat transfer in an unsteady-state simulation Raed141 FLUENT 11 August 7, 2009 18:17
Natural convection - Inlet boundary condition max91 CFX 1 July 29, 2008 21:28


All times are GMT -4. The time now is 01:42.