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

chtMultiregionFoam

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   January 18, 2010, 07:08
Default chtMultiregionFoam
  #1
Member
 
MSarkar
Join Date: Dec 2009
Posts: 99
Rep Power: 16
msarkar is on a distinguished road
Hello,

I am trying to simulate natural convection inside a cavity with conjugate heat transfer using OpenFOAM-1.5. I am new in OpenFoam but not in CFD. I think chtMultiregionFoam solver can be used for my problem but there is no tutorial available for chtMultiregionFoam in OF1.5. Could you please guide me how to start? I found this solver within Application/solvers folder but I don't have any idea how to use it. what are the files (within constant, intial (0) & system folder) I need to have to use this solver. Please help me......

Details of my Simulation:
2D square cavity, top and bottom walls are considered as adiabatic.
The right wall is heated by a solid heater maintained at 350K and left side is maintained at 300K.

Last edited by msarkar; January 19, 2010 at 00:02.
msarkar is offline   Reply With Quote

Old   January 20, 2010, 13:13
Default
  #2
Senior Member
 
Francesco Del Citto
Join Date: Mar 2009
Location: Zürich Area, Switzerland
Posts: 237
Rep Power: 18
fra76 is on a distinguished road
If I'm not wrong, there is a tutorial for it in 1.6. You can try to have a look to it.
Moreover, if you have constant temperatures on the walls, do you really need this solver? Maybe buoyantFoam is enough for your case. Try to have a look to its tutorial as well.

Hope this helps,
Francesco
fra76 is offline   Reply With Quote

Old   January 22, 2010, 01:55
Default
  #3
Member
 
MSarkar
Join Date: Dec 2009
Posts: 99
Rep Power: 16
msarkar is on a distinguished road
Thank you Francesco for your help!
Actually our interest is to look at the temperature distribution within the solid wall and how the wall thickness affects heat transfer. I think buyantSimpleFoam solver is applicable only for fluid region. that's the reason to choose chtMultiRegionFoam. I found a tutorial for conjugate heat transfer in OF 1.6. Can you please help me to create multi-region and define solid and fluid? I ran the blockMesh as it was with tutorial chtMultiRegionFoam/multiRegionHeater but it created only single region (rectangular box). guess, I need to create different blocks and patches using blockMeshDict and define some blocks as solid and some as fluid. If I am wrong, please correct me. If possible, please guide me how to run this tutorial. I ran the blockMesh then tried to run chtMultiRegionFoam solver but it did not run. My intension was to run the tutorial first without changing anything and learn how it works then implement it in my problem.
Please help me to run chtMultiRegionFoam solver. I would appreciate any help..

Last edited by msarkar; January 22, 2010 at 04:15.
msarkar is offline   Reply With Quote

Old   January 22, 2010, 13:21
Default
  #4
Senior Member
 
Francesco Del Citto
Join Date: Mar 2009
Location: Zürich Area, Switzerland
Posts: 237
Rep Power: 18
fra76 is on a distinguished road
If you are interested in what happens in the walls, then chtMultiRegion should be what you need. It wasn't clear to me from your first email, sorry...

I do not have 1.6 version installed here and I connot try what I'm thinking, but looking at multiRegionHeater the tutorial files, you have to run setSet after blockMesh in order to create the needed cellZones, then you have to run changeDictionary to set up the BC (check system/*/checkDictionaryDict).


Hope this helps,
Francesco
fra76 is offline   Reply With Quote

Old   January 25, 2010, 05:33
Default
  #5
Member
 
MSarkar
Join Date: Dec 2009
Posts: 99
Rep Power: 16
msarkar is on a distinguished road
Francesco, I very much appreciate your help! I was able to run the chtMultiRegion solver with the help of you and Allrun file that comes with this tutorial but I am not able to visualize the results like p, T, U etc. If I open paraView after completing the run, I can visualize the computational domain coloring by vtkCompositeIndex but there is nothing to visualize in Volume Fields options. If you have any suggestions, please let me know.

Thanks!
msarkar is offline   Reply With Quote

Old   January 25, 2010, 06:54
Default
  #6
kpm
New Member
 
kpm
Join Date: Jan 2010
Location: Germany
Posts: 9
Rep Power: 16
kpm is on a distinguished road
1) Try to manually open the files for each region in paraview (e.g. air, solid, whatever the names for the regions are).
and
2) increment the time in paraview if a region doesn't have a value for time 0.
kpm is offline   Reply With Quote

Old   January 25, 2010, 09:41
Default
  #7
New Member
 
J H
Join Date: Mar 2009
Location: Germany
Posts: 20
Rep Power: 17
kawuppdich is on a distinguished road
I have another question: how can I use this solver for steady problems?
kawuppdich is offline   Reply With Quote

Old   January 25, 2010, 10:16
Default
  #8
kpm
New Member
 
kpm
Join Date: Jan 2010
Location: Germany
Posts: 9
Rep Power: 16
kpm is on a distinguished road
The simplest approach would be to run it unsteady and wait until the fields reach a steady state.
kpm is offline   Reply With Quote

Old   January 26, 2010, 23:56
Default
  #9
Member
 
MSarkar
Join Date: Dec 2009
Posts: 99
Rep Power: 16
msarkar is on a distinguished road
Quote:
Originally Posted by kpm View Post
1) Try to manually open the files for each region in paraview (e.g. air, solid, whatever the names for the regions are).
and
2) increment the time in paraview if a region doesn't have a value for time 0.
Kpm,
Thanks a lot for your help!
msarkar is offline   Reply With Quote

Old   January 28, 2010, 23:30
Default
  #10
Member
 
MSarkar
Join Date: Dec 2009
Posts: 99
Rep Power: 16
msarkar is on a distinguished road
I am facing another problem with this solver - when I am trying to run it with turbulence natural flow inside the cavity, initially it is running few time steps (around 50-100) and then the calculated deltaT (time step) is very small (about 10^-7) and it is stopped working, giving error message. I tried to reduce the time step but it did not work. The error message is posted below. If anyone can give me clue how to tackle this problem,that will be very helpful.

Thanks in advance.

Solving for fluid region airfield
diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
DILUPBiCG: Solving for Ux, Initial residual = 0.6638768, Final residual = 2.307235e-09, No Iterations 13
DILUPBiCG: Solving for Uy, Initial residual = 0.6217526, Final residual = 2.354716e-09, No Iterations 13
DILUPBiCG: Solving for h, Initial residual = 0.2961225, Final residual = 3.274624e-09, No Iterations 13
Min/max T:289.1943 329.1744
GAMG: Solving for p, Initial residual = 0.01014446, Final residual = 9.33863e-11, No Iterations 3
diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
time step continuity errors (airfield): sum local = 1.581659e-12, global = 1.38025e-13, cumulative = -1.123369e-10
#0 Foam::error:rintStack(Foam::Ostream&) in "/home/msarkar/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so"
#1 Foam::sigFpe::sigFpeHandler(int) in "/home/msarkar/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so"
#2 ?? in "/lib/libc.so.6"
#3 Foam::GAMGSolver::scalingFactor(Foam::Field<double >&, Foam::Field<double> const&, Foam::Field<double> const&, Foam::Field<double> const&) const in "/home/msarkar/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so"
#4 Foam::GAMGSolver::scalingFactor(Foam::Field<double >&, Foam::lduMatrix const&, Foam::Field<double>&, Foam::FieldField<Foam::Field, double> const&, Foam::UPtrList<Foam::lduInterfaceField const> const&, Foam::Field<double> const&, unsigned char) const in "/home/msarkar/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so"
#5 Foam::GAMGSolver::Vcycle(Foam::PtrList<Foam::lduMa trix::smoother> const&, Foam::Field<double>&, Foam::Field<double> const&, Foam::Field<double>&, Foam::Field<double>&, Foam::Field<double>&, Foam::PtrList<Foam::Field<double> >&, Foam::PtrList<Foam::Field<double> >&, unsigned char) const in "/home/msarkar/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so"
#6 Foam::GAMGSolver::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const in "/home/msarkar/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libOpenFOAM.so"
#7 Foam::fvMatrix<double>::solve(Foam::dictionary const&) in "/home/msarkar/OpenFOAM/OpenFOAM-1.6/lib/linux64GccDPOpt/libfiniteVolume.so"
#8 main in "/home/msarkar/OpenFOAM/OpenFOAM-1.6/applications/bin/linux64GccDPOpt/chtMultiRegionFoam"
#9 __libc_start_main in "/lib/libc.so.6"
#10 _start at /usr/src/packages/BUILD/glibc-2.9/csu/../sysdeps/x86_64/elf/start.S:116
msarkar is offline   Reply With Quote

Old   January 29, 2010, 08:05
Default
  #11
kpm
New Member
 
kpm
Join Date: Jan 2010
Location: Germany
Posts: 9
Rep Power: 16
kpm is on a distinguished road
Your time step is quite small indeed.
Suggestions:
- Write a result immediately before the case crashes, check fields (good candidate: U) in paraview
- U is larger than expected? => Try to find out why. Check e.g. boundary conditions and/or fluid properties
- Check Your mesh. Any very very small cells?
- Does it run without turbulence model? If yes, check all settings related to turbulence model.
- If all of this doesn't help You could still try OpenFOAM 1.6 or newer.
kpm is offline   Reply With Quote

Old   February 1, 2010, 07:36
Default
  #12
Member
 
MSarkar
Join Date: Dec 2009
Posts: 99
Rep Power: 16
msarkar is on a distinguished road
Quote:
Originally Posted by kpm View Post
Your time step is quite small indeed.
Suggestions:
- Write a result immediately before the case crashes, check fields (good candidate: U) in paraview
- U is larger than expected? => Try to find out why. Check e.g. boundary conditions and/or fluid properties
- Check Your mesh. Any very very small cells?
- Does it run without turbulence model? If yes, check all settings related to turbulence model.
- If all of this doesn't help You could still try OpenFOAM 1.6 or newer.

Hi Kpm,
Thanks for your suggestions! Still it's not working with turbulence flow and I don't have any clue what is wrong. This solver is running without turbulence. I think I changed all settings related to turbulence.

Inside constant folder, in airfield the RAS properties are follows;
RASModel kEpsilon;

turbulence on;

printCoeffs on;

kEpsilonCoeffs
{
Cmu 0.09;
C1 1.44;
C2 1.92;
C3 -0.33;
sigmak 1;
sigmaEps 1.3;
Prt 1;
}

and in turbulence properties file I changed the simulationType as RASModel;

I provided all initial and boundary values for k & epsilon. Still it is not running. If anyone has any clue what's wrong there or how to tackle this problem, please let me know.
msarkar is offline   Reply With Quote

Old   February 2, 2010, 00:14
Default
  #13
Member
 
MSarkar
Join Date: Dec 2009
Posts: 99
Rep Power: 16
msarkar is on a distinguished road
Fluid Properties:

In thermophysical properties file, what are the scalars?

thermoType hPsiThermo<pureMixture<constTransport<specieThermo <hConstThermo<perfectGas>>>>>;

air 1 28.9 1000 0 1.8e-05 0.7

I guess these are: rho (density), ?(don't know), cp (specific heat), ?(don't know), mu(dynamic viscosity), Pr (Prandtl number) respectively.

If I am wrong, please correct me and help me to know other parameters.

Any help would be greatly appreciated.
msarkar is offline   Reply With Quote

Old   February 4, 2010, 11:28
Default
  #14
New Member
 
ouafa
Join Date: Jul 2009
Posts: 15
Rep Power: 16
ouafa is on a distinguished road
hi mSarkar,
are you able to run the chtMultiRegion solver with 1.5 version? because i tryed but i can't i've some error like :
Selecting thermodynamics package hThermo<pureMixture<constTransport<specieThermo<hC onstThermo<perfectGas>>>>>

Not Implemented
Trying to construct an genericFvPatchField on patch bottomAir_to_leftSolid of field h#0 Foam::error:rintStack(Foam::Ostream&) in "/home/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so"
#1 Foam::error::abort() in "/home/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so"
#2 Foam::genericFvPatchField<double>::genericFvPatchF ield(Foam::fvPatch const&, Foam:imensionedField<double, Foam::volMesh> const&) in "/home/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libfiniteVolume.so"
#3 Foam::fvPatchField<double>::addpatchConstructorToT able<Foam::genericFvPatchField<double> >::New(Foam::fvPatch const&, Foam:imensionedField<double, Foam::volMesh> const&) in "/home/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libfiniteVolume.so"
#4 Foam::fvPatchField<double>::New(Foam::word const&, Foam::fvPatch const&, Foam:imensionedField<double, Foam::volMesh> const&) in "/home/OpenFOAM/OpenFOAM-1.5/applications/bin/linux64GccDPOpt/chtMultiRegionFoam"
#5 Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::GeometricBoundaryField::GeometricB oundaryField(Foam::fvBoundaryMesh const&, Foam:imensionedField<double, Foam::volMesh> const&, Foam::List<Foam::word> const&) in "/home/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libbasicThermophysicalModels.so"
#6 Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::GeometricField(Foam::IOobject const&, Foam::fvMesh const&, Foam::dimensionSet const&, Foam::List<Foam::word> const&) in "/home/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libbasicThermophysicalModels.so"
#7 Foam::hThermo<Foam:ureMixture<Foam::constTranspo rt<Foam::specieThermo<Foam::hConstThermo<Foam:er fectGas> > > > >::hThermo(Foam::fvMesh const&) in "/home/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libbasicThermophysicalModels.so"
#8 Foam::basicThermo::addfvMeshConstructorToTable<Foa m::hThermo<Foam:ureMixture<Foam::constTransport< Foam::specieThermo<Foam::hConstThermo<Foam:erfec tGas> > > > > >::New(Foam::fvMesh const&) in "/home/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libbasicThermophysicalModels.so"
#9 Foam::basicThermo::New(Foam::fvMesh const&) in "/home/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libbasicThermophysicalModels.so"
#10 main in "/home/OpenFOAM/OpenFOAM-1.5/applications/bin/linux64GccDPOpt/chtMultiRegionFoam"
#11 __libc_start_main in "/lib64/libc.so.6"
#12 Foam::regIOobject::readIfModified() in "/home/OpenFOAM/OpenFOAM-1.5/applications/bin/linux64GccDPOpt/chtMultiRegionFoam"

From function genericFvPatchField<Type>::genericFvPatchField(con st fvPatch& p, const DimensionedField<Type, volMesh>& iF)
in file fields/fvPatchFields/basic/generic/genericFvPatchField.C at line 45.
FOAM aborting
Aborted
can you help me plz?
thank's in advance,
Ouafa
ouafa is offline   Reply With Quote

Old   February 5, 2010, 02:53
Default
  #15
Member
 
MSarkar
Join Date: Dec 2009
Posts: 99
Rep Power: 16
msarkar is on a distinguished road
hi Ouafa,

I did not try with OF-1.5 but It ran successfully in OF-1.6. I suggest you to install 1.6 and try it.

Thanks
msarkar is offline   Reply With Quote

Old   February 5, 2010, 04:14
Default
  #16
New Member
 
ouafa
Join Date: Jul 2009
Posts: 15
Rep Power: 16
ouafa is on a distinguished road
Thank you for response i'll try!
have a nice day,
ouafa
ouafa is offline   Reply With Quote

Old   February 10, 2010, 06:35
Default
  #17
Member
 
MSarkar
Join Date: Dec 2009
Posts: 99
Rep Power: 16
msarkar is on a distinguished road
Hi,

I ran the chtMultiRegionFoam solver with 1.6 version and got results. Basically I ran the model with two different kind of meshes and the results are varied a lot. I do not have any clue why I am getting this much difference!!!

In both cases, I generated mesh using blockmesh. In first case, I divided the domain in four regions to make mesh gradation and mesh gradation goes within the solid. This mesh does not capture same feature on both boundaries of the fluid domain. So I simulated case 2.

In case 2, I divided the domain in six regions, four of them are within fluid to create mesh gradation and two of them are within solid region. In this case, I have same mesh size on every boundary of the fluid domain. Basically it supposed to capture same feature on every boundaries of fluid region. I have drawn temperature variation along center of the domain. Temperature is varying 10 degrees between two results. I don't think that is reasonable. If i check mesh sensitivity for each case seperately, there is not much effects.
I have attached here the mesh details and results for both cases. If any one has any clue, please help me.
Thanks!!
msarkar is offline   Reply With Quote

Old   February 10, 2010, 07:00
Default
  #18
Member
 
MSarkar
Join Date: Dec 2009
Posts: 99
Rep Power: 16
msarkar is on a distinguished road
How to attach a word doc file here? I use attachments option and upload the file but it did not show up with my last post. Please help me to upload this file.
msarkar is offline   Reply With Quote

Old   February 10, 2010, 12:47
Default
  #19
Member
 
Join Date: Jun 2009
Location: Germany
Posts: 38
Rep Power: 16
suitup is on a distinguished road
Hm seems working.

I used this button:

Attached Files
File Type: doc test.doc (11.0 KB, 22 views)
suitup is offline   Reply With Quote

Old   February 10, 2010, 23:04
Default
  #20
Member
 
MSarkar
Join Date: Dec 2009
Posts: 99
Rep Power: 16
msarkar is on a distinguished road
This is case1, mesh details and temperature variation at the center of the domain.
Attached Images
File Type: png mesh.png (11.6 KB, 55 views)
File Type: png Tcenter.png (20.0 KB, 50 views)
msarkar is offline   Reply With Quote

Reply


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
Problem with running chtMultiRegionFoam after using setSet utility Victor OpenFOAM 12 March 24, 2023 00:01
ChtMultiRegionFoam and P1 radiation model mabinty OpenFOAM Running, Solving & CFD 18 April 8, 2011 04:41
chtMultiRegionFOAM " Heattransfert" ronaldo OpenFOAM 1 January 1, 2010 10:08
problems with probes() function in chtMultiRegionFoam Victor OpenFOAM 0 November 25, 2009 15:08
Problem setting with chtmultiregionFoam Antonin OpenFOAM Running, Solving & CFD 3 July 20, 2009 06:52


All times are GMT -4. The time now is 00:34.