CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   Error in turbulentHeatFluxTemperatureFvPatchScalarField v1.6 (https://www.cfd-online.com/Forums/openfoam-solving/68351-error-turbulentheatfluxtemperaturefvpatchscalarfield-v1-6-a.html)

makaveli_lcf September 16, 2009 08:06

Error in turbulentHeatFluxTemperatureFvPatchScalarField v1.6
 
I noticed an error in turbulentHeatFluxTemperatureFvPatchScalarField class for temperature gradient calculation:

Code:

00146 void turbulentHeatFluxTemperatureFvPatchScalarField::updateCoeffs()
00147 {
00148    if (updated())
00149    {
00150        return;
00151    }
00152
00153    const scalarField& alphaEffp =
00154        patch().lookupPatchField<volScalarField, scalar>(alphaEffName_);
00155
00156    const scalarField& Cpp =
00157        patch().lookupPatchField<volScalarField, scalar>(CpName_);
00158
00159    gradient() = q_/(Cpp*alphaEffp);
00160
00161    fixedGradientFvPatchScalarField::updateCoeffs();
00162 }

From my point of view and based on Fourier's law heat flux q is calculated as:

q = lambda * grad (T) = alpha * rho * Cp * grad (T)

where
lambda - thermal conductivity
alpha - thermal diffusivity
Cp - cpecific heat capacity
rho - density

Thus temperature gradient should be

grad (T) = q / (alpha * rho * Cp)

Please correct me if I'm wrong!

olesen September 17, 2009 02:36

Quote:

Originally Posted by makaveli_lcf (Post 229669)
I noticed an error in turbulentHeatFluxTemperatureFvPatchScalarField class for temperature gradient calculation:
...
Please correct me if I'm wrong!

Are you speaking of the class in the "compressible" or in the "incompressible" namespace?
They are formulated somewhat differently and the incompressible formulation will obviously not have rho in it.

makaveli_lcf September 17, 2009 03:32

Mark,
I'm speaking about incompressible namespace.
In any case, if not include density in heat flux calculations, left-hand and right-hand dimensions in that relationship will not meet! That is what I mean in details:

Code:

00053 class turbulentHeatFluxTemperatureFvPatchScalarField
00054 :
00055    public fixedGradientFvPatchScalarField
00056 {
00057 // Private data
00058
00059    //- Heat flux [W/m2]
00060    scalarField q_;
00061
00062    //- Name of effective thermal diffusivity field
00063    word alphaEffName_;
00064
00065    //- Name of specific heat capacity field
00066    word CpName_;
00067


[q]
= W / m^2 = (J / s) / m^2 = (kg m^2 / s^3) / m^2 = kg / s^3
[lambda] = W / (m K)= (kg m^2 / s^3) / (m K) = kg m / (K s^3)
[alpha = lambda / (rho Cp)] = m^2 / s
[Cp] = J / (kg K) = (kg m^2 / s^2 ) / (kg K) = m^2 / (K s^2)
[grad (T)] = K / m

Thus

q = lambda * grad (T) => [LHS] = W / m^2 equal to [RHS] = W / (m K) * K / m = W / m^2

But if we calculate grad (T) as q / (alpha Cp), then we get

grad (T) = q / (alpha Cp) => [LHS] = K / m not equal to! [RHS] = kg / s^3 / (m^2 / s * m^2 / (K s^2)) = kg K / m^4

So we see that dimensions of the left-hand side (LHS) and the right-hand side (RHS) do not meet unless other than traditional units are used for thermal conductivity, thermal diffusivity, specific heat capacity etc.

It is easy to check, that q = (alpha Cp rho ) grad (T) => grad (T) = q / (alpha Cp rho) gives correct result after dimensions analyzis.

jason_wy September 17, 2009 09:54

Not sure in incompressible solvers. But in compressible solvers, alphaEff and alpha defined in OF are not the same as the alpha [m^2/s] that we typically refer to.

They actually have already included rho in the definition. Basically in OpenFOAM: alpha = lambda/Cp ( not lambda/Cp/rho)

You might want to check the thermoPhysicalModel to find it out.

makaveli_lcf September 17, 2009 10:28

Thank you, Yi!
Following your guidance I found in basicThermo_8H_source.html:

Code:

00077            //- Laminar thermal diffusuvity [kg/m/s]
00078            volScalarField alpha_;

That is why there was ambiguity.


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