CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM (http://www.cfd-online.com/Forums/openfoam/)
-   -   Air Conditioned room groovyBC (http://www.cfd-online.com/Forums/openfoam/103597-air-conditioned-room-groovybc.html)

Sebaj June 21, 2012 06:20

Air Conditioned room groovyBC
 
Dear All,

I have a problem with temperature in my simulation. in first step [0] it's ok 323K but in 1 step [1] it's 300K..
I use buoyantBoussinesqSimpleFoam with groovyBC
My start files

T
Code:

dimensions      [0 0 0 1 0 0 0];

internalField  uniform 300;

boundaryField
{
   
    RAK2
    {
    type groovyBC;
    value uniform 323;
    gradientExpression "gradT";
    fractionExpression "0";
    variables "heatFlux= 0.00005;gradT=heatFlux/kappaEff;";
       
   
    }
    RAK1
    {
        type groovyBC;
        value uniform 323;
        gradientExpression "gradT";
        fractionExpression "0";
        variables "heatFlux= 0.00005;gradT=heatFlux/kappaEff;";
       
     
    }
    FAN1
    {
        type            fixedValue;
        value          uniform 287;
       
     
    }
    FAN2
    {
        type            fixedValue;
    value          uniform 287;
   
    RAK1IN3
    {
    type        fixedValue;
    vale        uniform 323;
    }
    RAK1IN4
    {
    type        fixedValue;
    value        uniform 323;
    }
   
    RAK2IN3
    {
    type        fixedValue;
    value        uniform 323;
    }
    RAK2IN4
    {
    type        fixedValue;
    value        uniform 323;
    }
       
     
    }
    ".*"
    {
        type            zeroGradient;
    }
   
   
}

here a have also problem with variables "heatFlux= 0.00005;gradT=heatFlux/kappaEff;"; where i have define in my case kappaEff? i read that kappaEff is
"kappaEff = turbulence->nu()/Pr + turbulence->nut()/Prt

Prt has no units-> kappaEff = m^2/s"

U
Code:

dimensions      [0 1 -1 0 0 0 0];

internalField  uniform (0 0 0);

boundaryField
{
    WALL
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
    FLOOR
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
    BOX1
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
    BOX2
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
    RAK2
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
    RAK1
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
    FAN1
    {
        type            fixedValue;
        value          uniform (0 0 1);
    }
    FAN2
    {
        type            fixedValue;
        value          uniform (0 0 1);
    }
    RAK1IN1
    {
        type            fixedValue;
        value          uniform (1 0 0);
    }
    RAK1IN2
    {
        type            fixedValue;
        value          uniform (1 0 0);
    }
    RAK1IN3
    {
        type            fixedValue;
        value          uniform (1 0 0);
    }
    RAK1IN4
    {
        type            fixedValue;
        value          uniform (1 0 0);
    }
    RAK2IN1
    {
        type            fixedValue;
        value          uniform (-1 0 0);
    }
    RAK2IN2
    {
        type            fixedValue;
        value          uniform (-1 0 0);
    }
    RAK2IN3
    {
        type            fixedValue;
        value          uniform (-1 0 0);
    }
    RAK2IN4
    {
        type            fixedValue;
        value          uniform (-1 0 0);
    }
    FAN1_WALL
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
    FAN2_WALL
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
    CLIM1
    {
        type            pressureInletOutletVelocity;
                value          uniform (0 0 0);
    }
    CLIM2
    {
        type            pressureInletOutletVelocity;
                value          uniform (0 0 0);
    }
    CLIM3
    {
        type            pressureInletOutletVelocity;
                value          uniform (0 0 0);
    }
    CLIM4
    {
        type            pressureInletOutletVelocity;
                value          uniform (0 0 0);
    }
    CLIM5
    {
        type            pressureInletOutletVelocity;
                value          uniform (0 0 0);
    }
    CLIM6
    {
        type            pressureInletOutletVelocity;
                value          uniform (0 0 0);
    }
    CLIM6_WALL
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
    CLIM5_WALL
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
    CLIM4_WALL
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
    CLIM3_WALL
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
    CLIM2_WALL
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
    CLIM1_WALL
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
    ".*"
    {
        type            fixedValue;
        value          uniform (0 0 0);
    }
}

epsilon
Code:

dimensions      [0 2 -3 0 0 0 0];

internalField  uniform 0.01;

boundaryField
{
   
    FAN1
    {
        type            turbulentMixingLengthDissipationRateInlet;
        mixingLength    0.325;
        value          uniform 0.01;
    }
    FAN2
    {
        type            turbulentMixingLengthDissipationRateInlet;
        mixingLength    0.325;
        value          uniform 0.01;
 
    }
   
    RAK1IN1
    {
        type            turbulentMixingLengthDissipationRateInlet;
        mixingLength    0.325;
        value          uniform 0.01;
    }
    RAK1IN2
    {
        type            turbulentMixingLengthDissipationRateInlet;
        mixingLength    0.325;
        value          uniform 0.01;
    }
    RAK1IN3
    {
        type            turbulentMixingLengthDissipationRateInlet;
        mixingLength    0.325;
        value          uniform 0.01;
    }
    RAK1IN4
    {
        type            turbulentMixingLengthDissipationRateInlet;
        mixingLength    0.325;
        value          uniform 0.01;
    }
    RAK2IN1
    {
        type            turbulentMixingLengthDissipationRateInlet;
        mixingLength    0.325;
        value          uniform 0.01;
    }
    RAK2IN2
    {
        type            turbulentMixingLengthDissipationRateInlet;
        mixingLength    0.325;
        value          uniform 0.01;
    }
    RAK2IN3
    {
        type            turbulentMixingLengthDissipationRateInlet;
        mixingLength    0.325;
        value          uniform 0.01;
    }
    RAK2IN4
    {
        type            turbulentMixingLengthDissipationRateInlet;
        mixingLength    0.325;
        value          uniform 0.01;
    }
   
   
   
    CLIM1
    {
      type        inletOutlet;
        inletValue    uniform 0.01;
        /*type            epsilonWallFunction;
                value          uniform 0.01; */

    }
    CLIM2
    {
        type        zeroGradient;
       
           
    }
    CLIM3
    {
      type        zeroGradient;
       
    }
    CLIM4
    {
      type        zeroGradient;
       
    }
    CLIM5
    {
        type        zeroGradient;
         
    }
    CLIM6
    {
      type        zeroGradient;
       
    }
    ".*"
    {
        type            epsilonWallFunction;
        value          uniform 0.01;
    }
   
 
}

k
Code:

dimensions      [0 2 -2 0 0 0 0];

internalField  uniform 0.1;

boundaryField
{
   
    FAN1
    {
    type            fixedValue;
    value        uniform 0.1;
                 
    }
    RAK1IN1
    {
    type            fixedValue;
    value        uniform 0.1;             
    }
    RAK1IN2
    {
    type            fixedValue;
    value        uniform 0.1;             
    }
    RAK1IN3
    {
    type            fixedValue;
    value        uniform 0.1;             
    }
    RAK1IN4
    {
    type            fixedValue;
    value        uniform 0.1;             
    }
    RAK2IN1
    {
    type            fixedValue;
    value        uniform 0.1;             
    }
    RAK2IN2
    {
    type            fixedValue;
    value        uniform 0.1;             
    }
    RAK2IN3
    {
    type            fixedValue;
    value        uniform 0.1;             
    }
    RAK2IN4
    {
    type            fixedValue;
    value        uniform 0.1;             
    }
   
    FAN2
    {
       
    type            fixedValue;
    value        uniform 0.1;
   
    }
   
    CLIM1
    {
      type            zeroGradient;
                     
    }
    CLIM2
    {
        type            zeroGradient;
                       
    }
    CLIM3
    {
        type            zeroGradient;
                       
    }
    CLIM4
    {
      type            zeroGradient;
                     
    }
    CLIM5
    {
        type            zeroGradient;
                     
    }
    CLIM6
    {
      type            zeroGradient;
                     
    }
    ".*"
    {
        type            kqRWallFunction;
        value          uniform 0.1;
    }
   
 
}

kappat
Code:

dimensions      [0 2 -1 0 0 0 0];

internalField  uniform 0;

boundaryField
{
   
    FAN1
    {
        type            calculated;
    }
    FAN2
    {
        type            calculated;
    }
    RAK1IN1
    {
        type            calculated;
    }
    RAK1IN2
    {
        type            calculated;
    }
    RAK1IN3
    {
        type            calculated;
    }
    RAK1IN4
    {
        type            calculated;
    }
    RAK2IN1
    {
        type            calculated;
    }
    RAK2IN2
    {
        type            calculated;
    }
    RAK2IN3
    {
        type            calculated;
    }
    RAK2IN4
    {
        type            calculated;
    }
    CLIM1
    {
        type            zeroGradient;
    }
    CLIM2
    {
        type            zeroGradient;
    }
    CLIM3
    {
        type            zeroGradient;
    }
    CLIM4
    {
        type            zeroGradient;
    }
    CLIM5
    {
        type            zeroGradient;
    }
    CLIM6
    {
        type            zeroGradient;
    }
    ".*"
    {
        type            kappatJayatillekeWallFunction;
        Prt            1.0;
        value          uniform 0;
    }
   
   
}

nut

Code:

dimensions      [0 2 -1 0 0 0 0];

internalField  uniform 0;

boundaryField
{
   
    FAN1
    {
        type            zeroGradient;
    }
    FAN2
    {
        type            zeroGradient;
    }
    RAK1IN1
    {
        type            zeroGradient;
    }
    RAK1IN2
    {
        type            zeroGradient;
    }
    RAK1IN3
    {
        type            zeroGradient;
    }
    RAK1IN4
    {
        type            zeroGradient;
    }
    RAK2IN1
    {
        type            zeroGradient;
    }
    RAK2IN2
    {
        type            zeroGradient;
    }
    RAK2IN3
    {
        type            zeroGradient;
    }
    RAK2IN4
    {
        type            zeroGradient;
    }
   
    CLIM1
    {
        type            zeroGradient;
    }
    CLIM2
    {
        type            zeroGradient;
    }
    CLIM3
    {
        type            zeroGradient;
    }
    CLIM4
    {
      type            zeroGradient;
    }
    CLIM5
    {
        type            zeroGradient;
    }
    CLIM6
    {
        type            zeroGradient;
    }
    ".*"
    {
        type            nutWallFunction;
        value          uniform 0;
    }
 
   
}

p_rgh
Code:

dimensions      [0 2 -2 0 0 0 0];

internalField  uniform 0;

boundaryField
{
   
    FAN1
    {
        type            zeroGradient;
    }
    FAN2
    {
        type            zeroGradient;
    }
    RAK1IN1
    {
        type            zeroGradient;
    }
    RAK1IN2
    {
        type            zeroGradient;
    }
    RAK1IN3
    {
        type            zeroGradient;
    }
    RAK1IN4
    {
        type            zeroGradient;
    }
    RAK2IN1
    {
        type            zeroGradient;
    }
    RAK2IN2
    {
        type            zeroGradient;
    }
    RAK2IN3
    {
        type            zeroGradient;
    }
    RAK2IN4
    {
        type            zeroGradient;
    }
   
    CLIM1
    {
      type            fixedValue;
      value          uniform 0;
     
     
    }
    CLIM2
    {
      type            fixedValue;
      value          uniform 0;
     
     
    }
    CLIM3
    {
        type            fixedValue;
        value          uniform 0;
       
       
     
    }
    CLIM4
    {
      type          fixedValue;
      value          uniform 0;
     
     
    }
    CLIM5
    {
       
        type          fixedValue;
        value          uniform 0;
       
     
    }
    CLIM6
    {
      type            fixedValue;
        value          uniform 0;
     
   
    }
    ".*"
    {
        type            buoyantPressure;
        rho            rhok;
        value          uniform 0;
    }
   
   
}

all problem look like this:



https://dl.dropbox.com/u/51938631/ang.png

in 0 time step:
https://dl.dropbox.com/u/51938631/0.png

and then in 1 time step:
https://dl.dropbox.com/u/51938631/01.png


another problem is why in hot outlet "rak1in4" is stil cold air. it was defined as 323K..
https://dl.dropbox.com/u/51938631/050.png


any sugestion how i can do good symulation of this problem? :(

Thanks a lot,
Sebastian

tian June 21, 2012 07:14

Hi Sebastion,

can you share your case?

Bye
Thomas

Sebaj June 21, 2012 07:26

Hi Thomas,

of course :)

https://dl.dropbox.com/u/51938631/ACR-case.rar

Sebastian

gschaider June 21, 2012 10:14

Quote:

Originally Posted by Sebaj (Post 367615)
Dear All,

I have a problem with temperature in my simulation. in first step [0] it's ok 323K but in 1 step [1] it's 300K..
I use buoyantBoussinesqSimpleFoam with groovyBC
My start files

<snip>

any sugestion how i can do good symulation of this problem? :(

Thanks a lot,
Sebastian

Personally I don't think that in this case groovyBC is the problem. But to check replace it with a fixedGradient of the values that it calculated.

Just in general: when checking the values in paraview don't use the point interpolated but the cell values as these are the "real" values (the ones that OF calculates with). Point values are interpolated from that and can be misleading. Only use them for the pictures you show afterwards in presentations but not to track problems (as you might be tracking a paraview-problem)

Second question: what are your relaxation parameters?

Sebaj June 25, 2012 03:37

Hi,

Relaxation parameters you mean:

g

Code:

dimensions      [0 1 -2 0 0 0 0];

value          ( 0 0 -9.81 );

RASproperties

Code:

RASModel        kEpsilon;
//RASModel        kEpsilonViollet;

turbulence      on;

printCoeffs    on;

k0                  1.0e-10;
epsilon0            1.0e-10;
epsilonSmall        1.0e-10;

transportProperties

Code:

transportModel Newtonian;

// Laminar viscosity
nu              nu [0 2 -1 0 0 0 0] .00037453183520599250; // Re=2670;nu=1/Re

// Thermal expansion coefficient
beta            beta [0 0 0 -1 0 0 0] .00163098878695208970; // Ar=0.016;g=9.81;beta=Ar/g;

// Reference temperature
TRef            TRef [0 0 0 1 0 0 0] 0.75;

// Laminar Prandtl number
Pr              Pr [0 0 0 0 0 0 0] 1.0;

// Turbulent Prandtl number
Prt            Prt [0 0 0 0 0 0 0] 1.0;

controlDict

Code:

application buoyantBoussinesqSimpleFoam;

startFrom      startTime;

startTime      0;

stopAt          endTime;

endTime        100;

deltaT          0.1;

writeControl    timeStep;

writeInterval  10;

purgeWrite      0;

writeFormat    binary;

writePrecision  8;

writeCompression uncompressed;

timeFormat      general;

timePrecision  6;

runTimeModifiable yes;

libs ( "libOpenFOAM.so" "libgroovyBC.so" ) ;

fvSchemes

Code:

ddtSchemes
{
    default        steadyState;
}

gradSchemes
{
    default        Gauss linear;
}

divSchemes
{
    default        none;
    div(phi,U)      Gauss limitedLinearV 1;
    div(phi,T)      Gauss limitedLinear 1;
    div(phi,k)      Gauss limitedLinear 1;
    div(phi,epsilon) Gauss limitedLinear 1;
    div(phi,R)      Gauss limitedLinear 1;
    div(R)          Gauss linear;
    div((nuEff*dev(grad(U).T()))) Gauss linear;
}

laplacianSchemes
{
    default        none;
    laplacian(nuEff,U) Gauss linear uncorrected;
    laplacian((1|A(U)),p_rgh) Gauss linear uncorrected;
    laplacian(kappaEff,T) Gauss linear uncorrected;
    laplacian(DkEff,k) Gauss linear uncorrected;
    laplacian(DepsilonEff,epsilon) Gauss linear uncorrected;
    laplacian(DREff,R) Gauss linear uncorrected;
}

interpolationSchemes
{
    default        linear;
}

snGradSchemes
{
    default        uncorrected;
}

fluxRequired
{
    default        no;
    p_rgh          ;
}

fvSolution

Code:

solvers
{
p_rgh
{
    solver          GAMG;
    tolerance      1e-06;
    relTol          0.01;
    smoother        DIC;
    cacheAgglomeration true;
    nCellsInCoarsestLevel 10;
    agglomerator    faceAreaPair;
    mergeLevels    1;
}

"(U|k|epsilon|R|T)"
{
    solver          PBiCG;
    preconditioner  DILU;
    tolerance      1e-05;
    relTol          0.1;
}
}

SIMPLE
{
    nNonOrthogonalCorrectors 0;
    convergence  1e-3;
    pRefCell 0;
    pRefValue 0;
}

relaxationFactors
{
    p_rgh          0.7;
    U              0.5;
    T              0.5;
    "(k|epsilon|R)" 0.5;
}

bye,
Sebastian

gschaider June 25, 2012 05:31

Quote:

Originally Posted by Sebaj (Post 368118)
Hi,

Relaxation parameters you mean:

fvSolution

Code:


relaxationFactors
{
    p_rgh          0.7;
    U              0.5;
    T              0.5;
    "(k|epsilon|R)" 0.5;
}


This on. And it looks alright

Sebaj June 25, 2012 13:05

Hi, thanks gschaider for interest my case.

It's still only one problem with definition temperature. I want: temp room 300K, "rak" temp 323K on wall, inlet from floor 287K and outlet from "rak" 323K. in first step it's what i want, but then in every next step "rak" temp fall down to 300K.. :( Any one have idea how to repair my case? what is wrong?
above I gave the link to my case.

Sebastian

DineshramBalaji October 31, 2012 15:16

Hi Sebastian,

I am working on similar stuff. But I am very new to this software. I want to know how did you generate mesh without the blockmeshdict file.


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