CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Pre-Processing (https://www.cfd-online.com/Forums/openfoam-pre-processing/)
-   -   How to setup a proper "heatFlux" boundary for fireFoam? (https://www.cfd-online.com/Forums/openfoam-pre-processing/115280-how-setup-proper-heatflux-boundary-firefoam.html)

Jumping March 27, 2013 10:27

How to setup a proper "heatFlux" boundary for fireFoam?
 
Hello everyone!
I am a new user of fireFoam(openFoam). Recently I followed the tutorial example of oppositeBurningPanels. And I'm puzzled with the boundary implement problem. Can anybody give me some hints? Thanks! The problem is decribed as following.

For the tutorial of oppositeBurningPanels, the two panels are heated by the burning process of inflow C3H8 gas. Based on the origianl tutorial, I wanted to modify the inflow boundary condition(BC) to a fix-value heat-flux one. I searched the source code of openFoam, and found one type of BC might fit my requirement: externalWallHeatFluxTemperature, which is specified in the file of externalWallHeatFluxTemperatureFvPatchScalarField. C. Thus I modified the burner] section in the 0/U file as following, while keeped all other as the original tutorial.
Code:

burner
 {
          type              externalWallHeatFluxTemperature;
          K                basicThermo;
          KName            H2O;
          q                uniform 64000.0;
          value            uniform 300.0;
 }

According to the description of the source code externalWallHeatFluxTemperatureFvPatchScalarField. C, either "q" or "h" with "Ta" should be speicified. So here I gave "q" in this BC. Also, "K" and "KName" were given, because fireFoam will complain (I don't know why. Acutally I think "K" and "KName" are not necessary in phyical description for a heat flux BC) if they were absent.

BUT,,the case failed to run properly, fireFoam compalined in the logfile log.fireFoam as following:
Code:

1:  GAMG:  Solving for ILambda_66_0, Initial residual = 0.000741797, Final residual = 0.000740348, No Iterations 1000
 2:  GAMG:  Solving for ILambda_67_0, Initial residual = 0.000587315, Final residual = 0.000588372, No Iterations 1000
 3:  GAMG:  Solving for ILambda_68_0, Initial residual = 0.000439612, Final residual = 0.000439567, No Iterations 1000
 4:  GAMG:  Solving for ILambda_69_0, Initial residual = 5.80472e-05, Final residual = 5.80472e-05, No Iterations 0
 5:  GAMG:  Solving for ILambda_70_0, Initial residual = 1.3428e-05, Final residual = 1.3428e-05, No Iterations 0
 6:  GAMG:  Solving for ILambda_71_0, Initial residual = 3.71128e-05, Final residual = 3.71128e-05, No Iterations 0
 7:  Radiation solver iter: 3
 8:  DILUPBiCG:  Solving for O2, Initial residual = 1, Final residual = 1.18965e-09, No Iterations 2
 9:  DILUPBiCG:  Solving for H2O, Initial residual = 0, Final residual = 0, No Iterations 0
10:  DILUPBiCG:  Solving for C3H8, Initial residual = 1, Final residual = 8.17584e-10, No Iterations 2
11:  DILUPBiCG:  Solving for CO2, Initial residual = 0, Final residual = 0, No Iterations 0
12:  DILUPBiCG:  Solving for hs, Initial residual = 1, Final residual = 1.24924e-09, No Iterations 2
13:  --> FOAM Warning :
14:      From function janafThermo<EquationOfState>::limit(const scalar T) const
15:      in file /home/fr/OpenFOAM/OpenFOAM-2.1.x/src/thermophysicalModels/specie/lnInclude/janafThermoI.H at line 108
16:      attempt to use janafThermo<EquationOfState> out of temperature range 200 -> 5000;  T = -3708.69
17:  --> FOAM Warning :
18:      From function janafThermo<EquationOfState>::limit(const scalar T) const
19:      in file /home/fr/OpenFOAM/OpenFOAM-2.1.x/src/thermophysicalModels/specie/lnInclude/janafThermoI.H at line 108

Can anyone give some hints for me about how to apply a heat-flux BC for fireFoam?
Actually, I did some other tests, but all failed:(,such as:
  • Without keyword K,KName for burner in T, log.fireFoam will complains with error.
  • with "K:solidThermo, KName:K",it also failed.


And, I also tested with the source code, trying to figure out if this is due to the absence of such BC in fireFoam. But I was also puzzled, as following:
I tried to modifiy(simply type in some blanck lines) the files of src/turbulenceModels/compressible/turbulenceModel/lnInclude/externalWallHeatFluxTemperatureFvPatchScalarField. C, and src/turbulenceModels/compressible/turbulenceModel/lnInclude/externalWallHeatFluxTemperatureFvPatchScalarField. H,and then used wmake to rebuild fireFoam. But wmake told that all files were up-to-date, and wouldn't re-compile. From this, it was tempting to believe that fireFoam doesn't contain such BC.

Well, I tried another BC totalFlowRateAdvectiveDiffusive, which was also used in the original oppositeBurningPanels example(in file 0/C3H8). I also modified the corresponding source file, but wmake also did NOT re-compile. So, it seems that currently in openFoam 2.1.x, the BC share libraires are dynamic-linked? If it is, how a solver can identify various BC types speicifed in the BC files?

Sorry that it was quite long for the problem and maybe this is due to my absence of comprensive understanding about openFoam. Can anyone give me some hints or links about:1)how to apply heat-flux boundary condition in fireFoam, and 2)how solvers identify various BC types in the BC files? Thank you so much!


All times are GMT -4. The time now is 17:07.