
[Sponsors] 
October 9, 2009, 12:56 
chtMultiRegionFoam laminar heat exchanger non converging

#1 
New Member
Join Date: Apr 2009
Posts: 10
Rep Power: 10 
Hi all,
I have a problem with a plane heat exchanger (HE) whose performances I would like to evaluate. The convergence is never reached and I get the error reported at the end of this post. I see that the Courant number kind of explodes but I own up to it that despite the efforts in rummaging through the configurations files and changing several different values of the timestep, grid coarsenes and BC, I am not able to find a way out without the help of someone more experienced. Attached is the case dir and all needed is to type in: Allrun 0.0001 Thanks for any help and suggestion. The HE is composed of 4 layers (dx=1mm;dy=180mm;dz=10.2mm): 1 topFluid (hot air incoming at 340K) 1 topSolid 1 bottomFluid (cold air incoming at 300K) 1 bottomSolid Bottom face of the bottom solid has cyclic bc with top face of the top fluid. Error:  snip  Solving for fluid region bottomFluid diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 DILUPBiCG: Solving for Uy, Initial residual = 0.03538927, Final residual = 1.971183e11, No Iterations 3 DILUPBiCG: Solving for Uz, Initial residual = 0.00460497, Final residual = 9.836213e09, No Iterations 2 DILUPBiCG: Solving for h, Initial residual = 0.004765986, Final residual = 9.041913e12, No Iterations 3 Min/max T:299.7815 340.039 GAMG: Solving for p, Initial residual = 0.05313307, Final residual = 0.0004813086, No Iterations 27 diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 time step continuity errors (bottomFluid): sum local = 2.280073e06, global = 1.180403e07, cumulative = 4.329433e06 GAMG: Solving for p, Initial residual = 0.000516105, Final residual = 9.573149e09, No Iterations 129 diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 time step continuity errors (bottomFluid): sum local = 4.981507e11, global = 3.992155e12, cumulative = 4.329437e06 Solving for fluid region topFluid diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 DILUPBiCG: Solving for Uy, Initial residual = 0.02129376, Final residual = 5.564677e+08, No Iterations 1001 DILUPBiCG: Solving for Uz, Initial residual = 0.02065763, Final residual = 5.061882e09, No Iterations 5 DILUPBiCG: Solving for h, Initial residual = 0.004138133, Final residual = 7.869983e09, No Iterations 3 Min/max T:299.9864 380 GAMG: Solving for p, Initial residual = 1, Final residual = 0.009861178, No Iterations 55 diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 time step continuity errors (topFluid): sum local = 0.1170467, global = 0.007092308, cumulative = 0.00708989 GAMG: Solving for p, Initial residual = 0.8161496, Final residual = 0.263601, No Iterations 1000 diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 time step continuity errors (topFluid): sum local = 43.27072, global = 0.9988777, cumulative = 0.9917878 Solving for solid region bottomSolid DICPCG: Solving for T, Initial residual = 0.002423304, Final residual = 7.526829e09, No Iterations 1 DICPCG: Solving for T, Initial residual = 7.488132e09, Final residual = 7.488132e09, No Iterations 0 Min/max T:min(T) [0 0 0 1 0 0 0] 339.9409 max(T) [0 0 0 1 0 0 0] 340 Solving for solid region topSolid DICPCG: Solving for T, Initial residual = 0.005851229, Final residual = 4.241606e07, No Iterations 1 DICPCG: Solving for T, Initial residual = 4.215058e07, Final residual = 4.215058e07, No Iterations 0 Min/max T:min(T) [0 0 0 1 0 0 0] 339.9823 max(T) [0 0 0 1 0 0 0] 340 ExecutionTime = 56.08 s ClockTime = 56 s Region: bottomFluid Courant Number mean: 0.004116788 max: 0.1663119 Region: topFluid Courant Number mean: 318763 max: 7.685058e+08 #0 Foam::error:rintStack(Foam::Ostream&) in "/home/pier/OpenFOAM/OpenFOAM1.6.x/lib/linuxGccDPOpt/libOpenFOAM.so" #1 Foam::sigFpe::sigFpeHandler(int) in "/home/pier/OpenFOAM/OpenFOAM1.6.x/lib/linuxGccDPOpt/libOpenFOAM.so" #2 Uninterpreted: #3 Foam::Time::adjustDeltaT() in "/home/pier/OpenFOAM/OpenFOAM1.6.x/lib/linuxGccDPOpt/libOpenFOAM.so" #4 Foam::Time::setDeltaT(double) in "/home/pier/OpenFOAM/OpenFOAM1.6.x/lib/linuxGccDPOpt/libOpenFOAM.so" #5 main in "/home/pier/OpenFOAM/OpenFOAM1.6.x/applications/bin/linuxGccDPOpt/chtMultiRegionFoam" #6 __libc_start_main in "/lib/libc.so.6" #7 Foam::regIOobject::writeObject(Foam::IOstream::str eamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/home/pier/Op M/OpenFOAM1.6.x/applications/bin/linuxGccDPOpt/chtMultiRegionFoam"  Last edited by Pierpaolo; October 12, 2009 at 11:50. 

October 16, 2009, 17:27 

#2  
Member
toto
Join Date: Jun 2009
Posts: 71
Rep Power: 9 
Quote:
I would try to silmulate an Heat exchanger! Thank you in advance 

October 17, 2009, 12:50 

#3  
New Member
Join Date: Apr 2009
Posts: 10
Rep Power: 10 
Quote:
http://pier.unirc.eu/cestino/scambia...ano_cyclic.tgz to download the 4 layers not converging one with cyclic bc, and http://pier.unirc.eu/cestino/scambia..._1sol_prof.tgz to a 3 layers seemingly converging one. The latter being a solid layer and two halves fluid layers with symmetry bc. I have not been able to run parallel both of them. 

October 21, 2009, 03:12 

#4 
Member
toto
Join Date: Jun 2009
Posts: 71
Rep Power: 9 
Hi Pierpaolo,
could you please explain me how to configure the makeCellSets file and tell me what i would like to do step by step (not all ...)? What about the changeDictionaryDict? Thanks in advance! 

October 21, 2009, 05:07 

#5  
New Member
Join Date: Apr 2009
Posts: 10
Rep Power: 10 
Quote:
If you have a look, for example at the makeCellSets in the tutorial case chtMultiRegionHeater, you will see that the syntax is quite self explanatory:  cellSet heater new boxToCell (0.01 0 100 )(0.01 0.01 100) cellSet heater add boxToCell (0.01 100 0.01)(0.01 0.01 0.01) cellSet leftSolid new boxToCell (100 0 100 )(0.01 0.01 100) cellSet rightSolid new boxToCell (0.01 0 100 )(100 0.01 100) cellSet topAir new boxToCell (100 0.01 100 )(100 100 100) cellSet bottomAir clear cellSet bottomAir add cellToCell heater cellSet bottomAir add cellToCell leftSolid cellSet bottomAir add cellToCell rightSolid cellSet bottomAir add cellToCell topAir cellSet bottomAir invert  In the first three lines you define three new solids (you can tell it by their names which reasonably contain the word "solid") by giving the coordinates of two opposite corners. In the fourth line you do the same but with a fluid region (you name it in a convenient way by including the word "air", in this case). In the sixth line you make sure the zone you are about to build is cleared an then you proceed in a reverse way first building the bottomAir zone (or region ... the difference is not clear to me) as thought it were a solid region, adding all the solid pieces you have just declared. Finally in the last line you invert the selection taking the complement of the zone you have just set from the domain you have in blockMeshDict. The command setToZones and splitMeshRegions do the rest. About changeDictionaryDict: they are files of boundary conditions in which you have to set the proper bcs for each zone (region). Once the regions have been prepared (giving in order the above mentioned commands (being blockMesh the first not being cited)) you have a $dircase/firstTimeStep dir in which you will find the dirs with the names of the zones you have just defined. In these dirs you find the polyMesh dirs in which the boundary files report the new created patches (e.g. bottomAir_to_heater in $casedir/firststepdir/bottomAir/polyMesh/boundary and heater_to_bottomAir in $casedir/firststepdir/heater/polyMesh/boundary) of separation between the regions. In changeDictionary you have to set the boundary conditions for each patch of each zone. Hope this helps 

October 21, 2009, 05:40 
Thank you so much Pierpaolo

#6  
Member
toto
Join Date: Jun 2009
Posts: 71
Rep Power: 9 
Quote:
Please Pierpaolo make an example relevant for this case thereby i understand it perfect! I would like to simulate an Heat exchanger and it is very very important for fin, air and so on.. Thank you in advance! 

October 26, 2009, 04:26 

#7  
Member
toto
Join Date: Jun 2009
Posts: 71
Rep Power: 9 
Quote:
Hi Pierpaolo, could you tell me please what this error message means? (I have tried to run chtMultiRegionFoam) Could i send you my case to Mail? just to check out why it doesnīt work. I made all steps! Itīs very important. Thank you in advance! Thank you in advance 

October 26, 2009, 10:06 

#8 
New Member
Join Date: Apr 2009
Posts: 10
Rep Power: 10 
Send your case to:
pier@unirc.eu I am just at the beginning with OF and I doubt I will be of any help with the error you reported in the attached pdf file. 

Thread Tools  
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
Concentric tube heat exchanger (AirWater)  Young  CFX  5  October 6, 2008 23:17 
Pressure drop in a heat exchanger  Diana  FLUENT  5  December 13, 2007 10:33 
Heat Exchanger Model  urgent  JSM  FLUENT  6  September 22, 2007 04:25 
Heat Exchanger...TWO  Walid  CFX  2  July 11, 2005 19:04 
Convective Heat Transfer  Heat Exchanger  Mark  CFX  6  November 15, 2004 16:55 