CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Post-Processing (https://www.cfd-online.com/Forums/openfoam-post-processing/)
-   -   Nusselt number over theta (https://www.cfd-online.com/Forums/openfoam-post-processing/82263-nusselt-number-over-theta.html)

snehal November 22, 2010 04:41

Nusselt number over theta
 
Hello everybody,
I have successfully simulated the case of flow around a circular cylinder with heat transfer using OpenFOAM.
For heat transfer I have calculated the nusselt number over the cylinder surface.
I just wanted to know, how can I plot Nusselt number over theta(angle 0-360).

Thanks in advance

aerothermal November 22, 2010 13:18

use paraFoam to do that

extract your cylinder boundary with extractBlock
plot on intersection and select appropriate axis (z?)
select variables...

Is your cylinder fully rough?

anijdon March 13, 2011 03:57

calculating nusselt number
 
hello ;
I added energy equation to simplefoam and simulated heat transfer around a cube but I don't know how to calculate nusselt number and plot it.all walls of the cube are under constant heat flux.
would you help me?:o
thanks.

aerothermal March 13, 2011 10:25

Quote:

Originally Posted by anijdon (Post 299158)
hello ;
I added energy equation to simplefoam and simulated heat transfer around a cube but I don't know how to calculate nusselt number and plot it.all walls of the cube are under constant heat flux.
would you help me?:o
thanks.

Hi anijdon,

See the tool,

Code:

wallHeatFlux
I might solve your problem.
Let me know if you have difficulties.

regards,

aeroThermal

anijdon March 13, 2011 15:05

thanks, do you mean wallHeatFluxLaminar utility?but it calculates wall heat flux which is my input data as boundary conditions and I don't need it.I think I need termal gradient to calculate h=q''/(Ts-T) >> Nu=hL/k. but I don't know how!!!

aerothermal March 16, 2011 13:00

yes...of course you have the heat flux!

so it is simpler! do it in paraFoam...

1) extract your cylinder boundary with extractBlock
2) use calculator to evaluate \dot{q}^" / (DeltaT)
3) plot on intersection and select appropriate axis (z?)
4) select variables...

Regards,

aerothermal

anijdon March 17, 2011 04:46

hello.
thanks a lot . but my problem is that I don't know how to calculate DeltaT.

aerothermal March 17, 2011 09:50

You can calculate that in paraFoam. Use Filter -> Calculator.
So it is possible to calculate (T-Tref) on it to generate a new field.
In order to get only T surface you will need to Filter -> ExtractBlock your patch.

anijdon March 17, 2011 15:23

I'm sorry, it was so easy.thanks a lot for your helping.:)
excuse me, can we export the result of caculating to matlab or save the data in a separate file?(I'm not well in paraview)
thanks
kind regards

aerothermal March 17, 2011 15:35

yes...just select your plot, click file -> save data.
it will save as .csv for external tools like excel, matlab or R Cran

anijdon March 18, 2011 14:23

thank a lot for your guidance.
regards.

anijdon April 9, 2011 02:26

1 Attachment(s)
hello dear aerothermal;
excuse me, I have another problem with heat transfer in openfoam.
I want to simulate an incompressible nanofluid flow with heat transfer using simpleFoam (i.e. solver includes an energy equation).The conductivity of the fluid is temperature dependent . I don't know haw can modify the solver and case directories to these properties become temperature dependent :confused:;I took down this threat in this site but I have not received any answer so far,
would you help me:o?
I attach special formula of nonofluids:

Attachment 7190

kind regards

aerothermal November 10, 2011 08:57

Dear Maryam,

your zip file is empty.

Regards,

aerothermal

Goutam February 19, 2012 08:34

dear friends,

I have calculated the local Nusselt number. Please see the code.
How I will calculate the average Nusselt Number?

#include "fvCFD.H"
#include "hCombustionThermo.H"
#include "basicThermo.H"
#include "RASModel.H"
#include "wallFvPatch.H"

int main(int argc, char *argv[])
{
timeSelector::addOptions();
#include "setRootCase.H"
#include "createTime.H"
instantList timeDirs = timeSelector::select0(runTime, args);
#include "createMesh.H"


forAll(timeDirs, timeI)
{
runTime.setTime(timeDirs[timeI], timeI);
Info<< "Time = " << runTime.timeName() << endl;
mesh.readUpdate();

#include "createFields.H"
#include "readRefValues.H"

surfaceScalarField heatFlux
(
fvc::interpolate(RASModel->alphaEff())*fvc::snGrad(h)
);

const surfaceScalarField::GeometricBoundaryField& patchHeatFlux =
heatFlux.boundaryField();

Info<< "\nWall heat fluxes [W]" << endl;
forAll(patchHeatFlux, patchi)
{
if (typeid(mesh.boundary()[patchi]) == typeid(wallFvPatch))
{
Info<< mesh.boundary()[patchi].name()
<< " "
<< sum
(
mesh.magSf().boundaryField()[patchi]
*patchHeatFlux[patchi]
)
<< endl;
}
}
Info<< endl;

volScalarField wallHeatFlux
(
IOobject
(
"wallHeatFlux",
runTime.timeName(),
mesh
),
mesh,
dimensionedScalar("wallHeatFlux", heatFlux.dimensions(), 0.0)
);

forAll(wallHeatFlux.boundaryField(), patchi)
{
wallHeatFlux.boundaryField()[patchi] = patchHeatFlux[patchi];
}

wallHeatFlux.write();

Info << "\nNusselt Number:" << endl;

volScalarField localNusselt
(
IOobject
(
"localNusselt",
runTime.timeName(),
mesh,
IOobject::NO_READ,
IOobject::AUTO_WRITE
),
mesh,
dimensionedScalar("localNusselt",dimless,0.0)
);

forAll(localNusselt.boundaryField(),patchi)
{
localNusselt.boundaryField()[patchi] = length*patchHeatFlux[patchi]/((T_hot-T_ini)*k);
}

localNusselt.write();
}

Info<< "End" << endl;
return 0;
}

aerothermal March 22, 2012 07:58

Average Nusselt
 
Two ways:

1) in your code, sum all your Nusselt number values for one patch (not all patches) times de area of each element; sum all areas of elements/cells of the same patch; divide the nusselt values sum by the area sum

2) in paraFoam, use filter "extractBlock" to extract the patch you want the average, use filter "integrate variables", it will open an spreadsheet, look for Area value in Cells or Points, look for Nusselt value in Cells or Points, divide Nusselt integrated value by the Area integrated value.

Regards,

aerothermal

Bana December 3, 2015 06:14

Hi friends
I have a question, I want to calculate Nusselt number in a heated pipe at each cross section but for the temperature difference it needs to calculate the bulk temperature which requires computation of integral of U*T over each section (since my simulation is axisymmetric I need to calculate integration along radius instead). Do you have any idea on how to compute the integral in openfoam?:(
thanks in advance

Scram_1 June 6, 2016 11:49

Hey Bana,
Have you managed to figure out how to calculate the bulk temperature in openFOAM? I'm trying to calculate the Nusselt Number for which I need the bulk temperature.

Thanks!!
Ram

govind_IITD December 31, 2023 04:26

Hi,


I am using openfoam v10, trying to find Nusselt number. As far I explore it, I found that its now momentumTranportModel class which encompasses laminar and turbulent models.


I am trying to figure out how do I setup my calculation, but finding difficult.


surfaceScalarField heatFlux
(
fvc::interpolate
(
(
turbulence.valid()
? turbulence->alphaEff()()
: thermo->alpha()
)

) * fvc::snGrad(h)
);




Can someone tell, how do I modify this code for openfoam v 10?


Regards,
Govind

govind_IITD December 31, 2023 04:30

Hello Gautam,


can you please explain me:


fvc::interpolate(RASModel->alphaEff())*fvc::snGrad(h).


My understanding is "h" stands for heat-flux.


But from heat transfer calculation,



q (heat-flux) = -k_eff * grad(T)


Its somewhat confusing me, can you please clear me?






Regards,
Govind

dlahaye December 31, 2023 05:56

h is enthalpy, see e.g. https://en.wikipedia.org/wiki/Enthalpy

k_eff īs the sum of laminar and turbulent (therefore total) thermal conductivity, see e.g. https://www.cfd-online.com/Forums/op...ductivity.html


All times are GMT -4. The time now is 23:58.