Skip to content

chtMultiRegionFoam log files fluid regions incorrect

Summary

When running chtMultiRegionFoam the line solving for fluid region <REGION> appears only after the solvers for rho, the momentumPredicton and h for the region are called.

Steps to reproduce

run chtMultiRegionFoam with a fluid region

Example case

any of the tutorial cases for chtMultiRegionFoam e.g. $FOAM_TUTORIALS/heatTransfer/chtMultiRegionFoam/multiRegionHeater/

What is the current bug behaviour?

When running chtMultiRegionFoam the line solving for fluid region <REGION> appears only after the solvers for rho, the momentumPredicton and h for the region are called. This makes parsing the logfiles (when information about the region is needed way harder. The logs for an iteration begin with the deltaT and Time lines. Then the solver starts with the solver for rho the momentumPredictor and the solver for h for the first fluid region. Only then it messages for which fluid region it solves. Here is a snippet from the log produced by running chtMultiRegionFoam case with 2 fluid and 1 solid region.

deltaT = 0.025688136
Time = 99.8202

diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 
DILUPBiCGStab: Solving for Ux, Initial residual = 4.6979226e-06, Final residual = 2.7012339e-09, No Iterations 1 
DILUPBiCGStab: Solving for Uy, Initial residual = 8.234292e-06, Final residual = 4.7161133e-09, No Iterations 1 
DILUPBiCGStab: Solving for Uz, Initial residual = 6.9417542e-06, Final residual = 5.7346116e-09, No Iterations 1 
DILUPBiCGStab: Solving for h, Initial residual = 0.00010765677, Final residual = 5.2701057e-08, No Iterations 1 
Min/max T:299.99999 483.48761

Solving for fluid region bottomWater 
GAMG: Solving for p_rgh, Initial residual = 1.2317329e-06, Final residual = 7.6503088e-08, No Iterations 1 
diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 
time step continuity errors (bottomWater): sum local = 3.3811182e-13, global = -3.0455458e-14, cumulative = -8.0373665e-07 
GAMG: Solving for p_rgh, Initial residual = 7.6752019e-08, Final residual = 7.6752019e-08, No Iterations 0 
diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 
time step continuity errors (bottomWater): sum local = 3.3921443e-13, global = -2.9292893e-14, cumulative = -8.0373668e-07 
diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 
DILUPBiCGStab: Solving for Ux, Initial residual = 1.9057288e-05, Final residual = 7.0911141e-09, No Iterations 1 
DILUPBiCGStab: Solving for Uy, Initial residual = 0.00010171719, Final residual = 1.8216675e-08, No Iterations 1 
DILUPBiCGStab: Solving for Uz, Initial residual = 5.8083583e-05, Final residual = 1.3251995e-08, No Iterations 1 
DILUPBiCGStab: Solving for h, Initial residual = 6.8565381e-05, Final residual = 5.0231883e-08, No Iterations 1 
Min/max T:300 376.80786

Solving for fluid region topAir 
GAMG: Solving for p_rgh, Initial residual = 8.1275063e-05, Final residual = 3.255789e-07, No Iterations 3 
diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 
time step continuity errors (topAir): sum local = 6.7345697e-09, global = 4.143179e-09, cumulative = 3.5786046e-05 
GAMG: Solving for p_rgh, Initial residual = 9.9059285e-06, Final residual = 7.9263165e-08, No Iterations 2 
diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 
time step continuity errors (topAir): sum local = 1.6587116e-09, global = -4.2689999e-10, cumulative = 3.5785619e-05

Solving for solid region heater 
DICPCG: Solving for h, Initial residual = 5.3645433e-05, Final residual = 4.2895873e-09, No Iterations 1 
Min/max T:328.15659 500

Region: bottomWater Courant Number mean: 0.0041808019 max: 0.007760704 
Region: topAir Courant Number mean: 0.3968489 max: 0.60459634 
Region: heater Diffusion Number mean: 0.0092762714 max: 0.051376277 

What is the expected correct behavior?

The expected behaviur would be that the message Solving for fluid region <REGION> appears before any equation for the region is solved e.g.:

deltaT = 0.025688136
Time = 99.8202

Solving for fluid region bottomWater 
diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 
DILUPBiCGStab: Solving for Ux, Initial residual = 4.6979226e-06, Final residual = 2.7012339e-09, No Iterations 1 
DILUPBiCGStab: Solving for Uy, Initial residual = 8.234292e-06, Final residual = 4.7161133e-09, No Iterations 1 
DILUPBiCGStab: Solving for Uz, Initial residual = 6.9417542e-06, Final residual = 5.7346116e-09, No Iterations 1 
DILUPBiCGStab: Solving for h, Initial residual = 0.00010765677, Final residual = 5.2701057e-08, No Iterations 1 
Min/max T:299.99999 483.48761
GAMG: Solving for p_rgh, Initial residual = 1.2317329e-06, Final residual = 7.6503088e-08, No Iterations 1 
diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 
time step continuity errors (bottomWater): sum local = 3.3811182e-13, global = -3.0455458e-14, cumulative = -8.0373665e-07 
GAMG: Solving for p_rgh, Initial residual = 7.6752019e-08, Final residual = 7.6752019e-08, No Iterations 0 
diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 
time step continuity errors (bottomWater): sum local = 3.3921443e-13, global = -2.9292893e-14, cumulative = -8.0373668e-07 

Solving for fluid region topAir 
diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 
DILUPBiCGStab: Solving for Ux, Initial residual = 1.9057288e-05, Final residual = 7.0911141e-09, No Iterations 1 
DILUPBiCGStab: Solving for Uy, Initial residual = 0.00010171719, Final residual = 1.8216675e-08, No Iterations 1 
DILUPBiCGStab: Solving for Uz, Initial residual = 5.8083583e-05, Final residual = 1.3251995e-08, No Iterations 1 
DILUPBiCGStab: Solving for h, Initial residual = 6.8565381e-05, Final residual = 5.0231883e-08, No Iterations 1 
Min/max T:300 376.80786
GAMG: Solving for p_rgh, Initial residual = 8.1275063e-05, Final residual = 3.255789e-07, No Iterations 3 
diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 
time step continuity errors (topAir): sum local = 6.7345697e-09, global = 4.143179e-09, cumulative = 3.5786046e-05 
GAMG: Solving for p_rgh, Initial residual = 9.9059285e-06, Final residual = 7.9263165e-08, No Iterations 2 
diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 
time step continuity errors (topAir): sum local = 1.6587116e-09, global = -4.2689999e-10, cumulative = 3.5785619e-05

Solving for solid region heater 
DICPCG: Solving for h, Initial residual = 5.3645433e-05, Final residual = 4.2895873e-09, No Iterations 1 
Min/max T:328.15659 500

Region: bottomWater Courant Number mean: 0.0041808019 max: 0.007760704 
Region: topAir Courant Number mean: 0.3968489 max: 0.60459634 
Region: heater Diffusion Number mean: 0.0092762714 max: 0.051376277 

Environment information

  • OpenFOAM version : v2406
  • Operating system : Ubuntu 22.04
  • Hardware info : tested on different machines (intel Xeon and AMD Threadripper)
  • Compiler : gcc

Possible fixes

In file applications/solvers/heatTransfer/chtMultiRegionFoam/fluid/solveFluid.H move the Info<< "\nSolving for fluid region " << fluidRegions[i].name() << endl; from line 23 to line 5 (before the if (frozen Flow) statement).

Edited by Alexander Reinhold