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

Heat transfer Boundary Condition

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   July 6, 2015, 07:12
Default Heat transfer Boundary Condition
  #1
Member
 
Rohith
Join Date: Oct 2012
Location: Germany
Posts: 57
Rep Power: 13
RaghavendraRohith is on a distinguished road
Hi All,

I am trying to model a heat transfer problem for an adjacently placed meshes contacting through a patch. I need to define a heat transfer boundary condition on this patch to enhance the heat transfer between Mesh 1 and Mesh 2. I have also worked with chtMultiRegionFoam previously. This experience didnot help me as i am trying to solve incompressible flow and also using different meshes and volume scalar field. chtMultiRegionFoam helps in modelling heat transfer through mappedPatchBase called baffle between the meshes considered as boundaries. My geometries are complicated so i cannot use baffles.

I have searched some probabilties in interpolating or mapping volScalarField of one mesh to another. Can some body help me in modelling heat transfer using GroovyBC or by some other method by using meshToMesh etc.

Did somebody work on such complications.


Thanks in Advance.
Rohith
Attached Images
File Type: jpg coupled patch.jpg (24.1 KB, 131 views)
RaghavendraRohith is offline   Reply With Quote

Old   July 27, 2017, 05:34
Default
  #2
Senior Member
 
Alejandro
Join Date: Jan 2014
Location: Argentina
Posts: 128
Rep Power: 12
ancolli is on a distinguished road
Could u solve ur problem?
ancolli is offline   Reply With Quote

Old   July 28, 2017, 16:46
Default
  #3
Senior Member
 
Zeppo's Avatar
 
Sergei
Join Date: Dec 2009
Posts: 261
Rep Power: 21
Zeppo will become famous soon enough
What's wrong with chtMultiRegionFoam? It seems to be ok in solving that kind of problem. And yes, "coupled" meshes shouldn't even be perfectly conformal - mapped boundary conditions can care for this.
Zeppo is offline   Reply With Quote

Old   July 29, 2017, 08:49
Default
  #4
Senior Member
 
Alejandro
Join Date: Jan 2014
Location: Argentina
Posts: 128
Rep Power: 12
ancolli is on a distinguished road
Quote:
Originally Posted by Zeppo View Post
What's wrong with chtMultiRegionFoam? It seems to be ok in solving that kind of problem. And yes, "coupled" meshes shouldn't even be perfectly conformal - mapped boundary conditions can care for this.
There are not problems with chtMultiRegionFoam, but how to use GroovyBC with differents regions is my key question. Do u know how to use it?
ancolli is offline   Reply With Quote

Old   July 29, 2017, 14:04
Default
  #5
Senior Member
 
Zeppo's Avatar
 
Sergei
Join Date: Dec 2009
Posts: 261
Rep Power: 21
Zeppo will become famous soon enough
The thread starter said they want to model heat transfer between two mesh regions but they couldn't use chtMultiRegionFoam as the geometry they dealt with was very complex. I don't see how complexity of geometric model can prevent anyone from using chtMultiRegionFoam. Moreover, I can't see why bother with groovyBC, why not use turbulentTemperatureRadCoupledMixedFvPatchScalarFi eld as boundary conditions.
Zeppo is offline   Reply With Quote

Old   July 29, 2017, 16:02
Default
  #6
Senior Member
 
Alejandro
Join Date: Jan 2014
Location: Argentina
Posts: 128
Rep Power: 12
ancolli is on a distinguished road
Quote:
Originally Posted by Zeppo View Post
The thread starter said they want to model heat transfer between two mesh regions but they couldn't use chtMultiRegionFoam as the geometry they dealt with was very complex. I don't see how complexity of geometric model can prevent anyone from using chtMultiRegionFoam. Moreover, I can't see why bother with groovyBC, why not use turbulentTemperatureRadCoupledMixedFvPatchScalarFi eld as boundary conditions.
Well, in my case for several reasons.
1) I am using a simplified version of that solver, then turbulentTemperatureRadCoupledMixedFvPatchScalarFi eld is to complex and slow. If i use groovyBC with fluxa=fluxb and Ta=Tb, is converging far faster for a 1D problem.
2), I need to use another BC, Fluxa=fluxb but Ta a non linear function of Tb.
the problem with groovyBC is that i can not use it for a 2d or 3d problem, since it is taken an average flux and temperature in the complete boundary patch between 2 regions.
Do u know how to solve that?
ancolli is offline   Reply With Quote

Old   July 30, 2017, 15:46
Default
  #7
Senior Member
 
Zeppo's Avatar
 
Sergei
Join Date: Dec 2009
Posts: 261
Rep Power: 21
Zeppo will become famous soon enough
What turbulentTemperatureRadCoupledMixedFvPatchScalarFi eld basically does is equalizing the fluxes from the left and right sides of an interface between regions. Poor performance (slow convergence) is caused by the fact that equalizing the fluxes is done in a segregated way: solve equations in regions alternately, one after another with explicit coupling on boundaries. I don't think groovyBC can help you overcome it.

Maybe you can adapt the code to your needs:
https://cpp.openfoam.org/v3/a10477_source.html#l00174
Zeppo is offline   Reply With Quote

Old   July 30, 2017, 16:34
Default
  #8
Senior Member
 
Alejandro
Join Date: Jan 2014
Location: Argentina
Posts: 128
Rep Power: 12
ancolli is on a distinguished road
Quote:
Originally Posted by Zeppo View Post
What turbulentTemperatureRadCoupledMixedFvPatchScalarFi eld basically does is equalizing the fluxes from the left and right sides of an interface between regions. Poor performance (slow convergence) is caused by the fact that equalizing the fluxes is done in a segregated way: solve equations in regions alternately, one after another with explicit coupling on boundaries. I don't think groovyBC can help you overcome it.

Maybe you can adapt the code to your needs:
https://cpp.openfoam.org/v3/a10477_source.html#l00174
in fact, I tried with turbulentTemperatureCoupledBaffleMixed coming by default in the chtmultiregionfoam tutorial. if i run my simple solver (laplace eq. in two regions) in 1D, with groovy takes 6 iterations, with turbulentTemperatureCoupledMixed 700 to reach the same final solution, starting from the same initial guess.
Addapting the code to my needs will take a lot of time TO ME. Is something that I will TRY to do just if i can not do what i need in an easy and fast way (groovyBC).
But thanks for the suggestion and for the time. I will try to improve my c++ undertanding....
ancolli is offline   Reply With Quote

Old   July 30, 2017, 16:47
Default
  #9
Senior Member
 
Zeppo's Avatar
 
Sergei
Join Date: Dec 2009
Posts: 261
Rep Power: 21
Zeppo will become famous soon enough
How do you setup boundary conditions with groovyBC? What's in your 0/T file?

update: now i see your other thread where you explained the problem with groovyBC: https://www.cfd-online.com/Forums/op...r-regions.html

Unfortunatly, I have near to zero experience with groovyBC. You could probably ask Bernhard Gschaider (the core developer of groovyBC) for some help.
Zeppo is offline   Reply With Quote

Old   July 31, 2017, 03:53
Default
  #10
Senior Member
 
Alejandro
Join Date: Jan 2014
Location: Argentina
Posts: 128
Rep Power: 12
ancolli is on a distinguished road
Quote:
Originally Posted by Zeppo View Post
How do you setup boundary conditions with groovyBC? What's in your 0/T file?

update: now i see your other thread where you explained the problem with groovyBC: https://www.cfd-online.com/Forums/op...r-regions.html

Unfortunatly, I have near to zero experience with groovyBC. You could probably ask Bernhard Gschaider (the core developer of groovyBC) for some help.
yes, i am usign Dirichlet–Neumann partitioning
fluid BC in 0/Fluid/T:
Code:
  
"fluid_to_.*"
            {
        	type            groovyBC;
		gradientExpression "0";
		fractionExpression "1";
		valueExpression	"Ts";
		variables "Ts{solid_to_fluid/solid}=Tsolid;";
		value           $internalField;
            };
solid BC in 0/Solid/T:
Code:
 
"solid_to_.*"
            {
		type            groovyBC;
	
		gradientExpression "der";
		fractionExpression "0";
		valueExpression	"0";
		variables "der{fluid_to_solid/fluid}=-1/40*snGrad(Tfluid);";
		value           $internalField;
            };
about asking to Bernhard Gschaider, he already replied in other thread and I do not want to bother people (he has others things to do), he suggested replace {fluid_to_solid/fluid} (that works just in 1D since is averaging the field in the whole patch) by using mapped or neighbourField functions. (but, he is not sure whether this will work with mult-region cases). i tryed, but i groovyBC can not detect the other region without adding {fluid_to_solid/fluid} or at least i do not know where i am making a mistake.
ancolli is offline   Reply With Quote

Reply

Tags
chtmultiregionfoam, coupled meshes, coupled patches, groovybc, heat and mass transfer


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
Radiation in semi-transparent media with surface-to-surface model? mpeppels CFX 11 August 22, 2019 07:30
Radiation heat transfer boundary condition natrask OpenFOAM Programming & Development 0 February 8, 2015 09:05
CFX13 Post Periodic interface EtaEta CFX 7 December 8, 2011 17:15
natural convection mehrdadeng CFX 10 February 25, 2011 05:25
Implications for heat transfer when outlet pressure boundary condition used Blob CFX 2 March 26, 2009 06:22


All times are GMT -4. The time now is 12:36.