CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Programming & Development

Heat transfer in a channel: solving for T; questions about Pe and solving

Register Blogs Members List Search Today's Posts Mark Forums Read

Reply
 
LinkBack Thread Tools Display Modes
Old   July 11, 2013, 09:27
Default Heat transfer in a channel: solving for T; questions about Pe and solving
  #1
Member
 
Join Date: Jan 2011
Posts: 31
Rep Power: 5
buffi is on a distinguished road
Hi,

I'm doing CFD for a wavy channel, using simpleFoam and the k-omega-SST model to solve the velocity field. I'd now like to solve for T, and did some intermediate processing (post-U, pre-T):

For my first attempt at solving T (scalarTransportFoam) I used

Code:
div(phi,T) Gauss upwind;
which worked well and converged quickly. However, when switching to Gauss linear, the solution diverged. A colleague suggested to check the Peclet number first, which I calculated with the following code snippet:

Code:
    // characteristic length of each cell: cbrt(V)
    volScalarField CLen
    (
      IOobject (
        "CLen",
        runTime.timeName(),
        mesh,
        IOobject::NO_READ,
        IOobject::AUTO_WRITE
      ),
      mesh,
      dimensionedScalar(
        "CLen",
        dimLength,
        0.
      )
    );
    forAll (CLen, i)
    {
      CLen.internalField()[i] = Foam::cbrt(mesh.V()[i]);
    }
    
    // Pe number
    volScalarField Pe
    (
      IOobject (
        "Pe",
        runTime.timeName(),
        mesh,
        IOobject::NO_READ,
        IOobject::AUTO_WRITE
      ),
      mesh,
      dimensionedScalar(
        "Pe",
        dimless,
        0.
      )
    );
    Pe = CLen*mag(U)/(alpha + turbulence->nut()/Prt);
The results are somewhere between 6e-5 and 300. The books say that I'd need Pe < 2 for more accurate schemes.

My main question now is: what can I do to get a usable temperature field? While Pe > 2 does not necessarily mean that the solution will be wrong, I could increase alpha and nu (in order to maintain Pr = 7), but that would mean that I have to increase U or the domain size as well to adjust Re. Wouldn't that just lead to the same problem, but on a different scale?

Another possibility is of course that my code for Pe is just plain wrong. Maybe someone could comment on this; OF's Pe tool just calculates Pe at the boundary, using a different equation.

I can not refine the mesh by a factor of 150, as I already have about 2 million cells.

Regards
buffi is offline   Reply With Quote

Old   July 22, 2013, 06:01
Default
  #2
Member
 
Artem Shaklein
Join Date: Feb 2010
Location: Russia, Izhevsk
Posts: 32
Rep Power: 6
ARTem is on a distinguished road
Hello, buffi.

Try to use "limitedLinear 1" for convective fluxes. It will use linear and switch to upwind in areas with big variable value gradients.
ARTem is offline   Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT -4. The time now is 18:21.