Skip to content

Commit

Permalink
tutorials/modules/CHT/rivuletBox: New CHT/film/fluid tutorial case
Browse files Browse the repository at this point in the history
Demonstration case for three region coupling with film consisting of an
aluminium panel with surface film running down forming rivulets in a box of air
which moved due to buoyancy with 6-way thermal and velocity coupling between the
panel<->film<->air<->panel.  The case runs serial and parallel with arbitrary
decomposition.

Currently extrudeToRegionMesh does not directly support three region coupling so
foamDictionary is used to edit the of the boundary files of box and film regions
to add box<->film coupling.
  • Loading branch information
Henry Weller committed Mar 7, 2023
1 parent a0264c9 commit cee34fe
Show file tree
Hide file tree
Showing 33 changed files with 1,457 additions and 0 deletions.
53 changes: 53 additions & 0 deletions tutorials/modules/CHT/rivuletBox/0/box/T
@@ -0,0 +1,53 @@
/*--------------------------------*- C++ -*----------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Version: dev
\\/ M anipulation |
\*---------------------------------------------------------------------------*/
FoamFile
{
format ascii;
class volScalarField;
object T;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions [0 0 0 1 0 0 0];

internalField uniform 300;

boundaryField
{
inlet
{
type inletOutlet;
inletValue $internalField;
value $internalField;
}

outlet
{
type inletOutlet;
inletValue $internalField;
value $internalField;
}

sides
{
type zeroGradient;
}

film
{
type coupledTemperature;
value $internalField;
}

window
{
type zeroGradient;
}
}

// ************************************************************************* //
52 changes: 52 additions & 0 deletions tutorials/modules/CHT/rivuletBox/0/box/U
@@ -0,0 +1,52 @@
/*--------------------------------*- C++ -*----------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Version: dev
\\/ M anipulation |
\*---------------------------------------------------------------------------*/
FoamFile
{
format ascii;
class volVectorField;
object U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField uniform (0 0 0);

boundaryField
{
inlet
{
type pressureInletOutletVelocity;
value $internalField;
}

outlet
{
type pressureInletOutletVelocity;
value $internalField;
}

sides
{
type noSlip;
}

film
{
type mappedValue;
value $internalField;
}

window
{
type noSlip;
}
}


// ************************************************************************* //
53 changes: 53 additions & 0 deletions tutorials/modules/CHT/rivuletBox/0/box/p
@@ -0,0 +1,53 @@
/*--------------------------------*- C++ -*----------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Version: dev
\\/ M anipulation |
\*---------------------------------------------------------------------------*/
FoamFile
{
format ascii;
class volScalarField;
object p;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField uniform 100000;

boundaryField
{
inlet
{
type calculated;
value $internalField;
}

outlet
{
type calculated;
value $internalField;
}

sides
{
type calculated;
value $internalField;
}

film
{
type calculated;
value $internalField;
}

window
{
type calculated;
value $internalField;
}
}

// ************************************************************************* //
52 changes: 52 additions & 0 deletions tutorials/modules/CHT/rivuletBox/0/box/p_rgh
@@ -0,0 +1,52 @@
/*--------------------------------*- C++ -*----------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Version: dev
\\/ M anipulation |
\*---------------------------------------------------------------------------*/
FoamFile
{
format ascii;
class volScalarField;
object p_rgh;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField uniform 0;

boundaryField
{
inlet
{
type prghTotalHydrostaticPressure;
p0 $internalField;
value $internalField;
}

outlet
{
type prghTotalHydrostaticPressure;
p0 $internalField;
value $internalField;
}

sides
{
type fixedFluxPressure;
}

film
{
type fixedFluxPressure;
}

window
{
type fixedFluxPressure;
}
}

// ************************************************************************* //
51 changes: 51 additions & 0 deletions tutorials/modules/CHT/rivuletBox/0/box/ph_rgh.orig
@@ -0,0 +1,51 @@
/*--------------------------------*- C++ -*----------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Version: dev
\\/ M anipulation |
\*---------------------------------------------------------------------------*/
FoamFile
{
format ascii;
class volScalarField;
object ph_rgh;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField uniform 0;

boundaryField
{
inlet
{
type fixedFluxPressure;
value $internalField;
}

outlet
{
type fixedValue;
value $internalField;
}

sides
{
type fixedFluxPressure;
}

film
{
type fixedFluxPressure;
}

window
{
type fixedFluxPressure;
}
}


// ************************************************************************* //
52 changes: 52 additions & 0 deletions tutorials/modules/CHT/rivuletBox/0/film/T
@@ -0,0 +1,52 @@
/*--------------------------------*- C++ -*----------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Version: dev
\\/ M anipulation |
\*---------------------------------------------------------------------------*/
FoamFile
{
format ascii;
class volScalarField;
object T;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions [0 0 0 1 0 0 0];

internalField uniform 300;

boundaryField
{
inlet
{
type fixedValue;
value uniform 300;
}

outlet
{
type zeroGradient;
}

sides
{
type zeroGradient;
}

wall
{
type coupledTemperature;
value $internalField;
}

surface
{
type coupledTemperature;
value $internalField;
}
}


// ************************************************************************* //
52 changes: 52 additions & 0 deletions tutorials/modules/CHT/rivuletBox/0/film/U
@@ -0,0 +1,52 @@
/*--------------------------------*- C++ -*----------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Version: dev
\\/ M anipulation |
\*---------------------------------------------------------------------------*/
FoamFile
{
format ascii;
class volVectorField;
object U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField uniform (0 0 0);

boundaryField
{
inlet
{
type fixedValue;
value uniform (0 -0.075 0);
}

outlet
{
type zeroGradient;
}

sides
{
type noSlip;
}

wall
{
type noSlip;
}

surface
{
type filmSurfaceVelocity;
Cs 0.005;
value $internalField;
}
}


// ************************************************************************* //

1 comment on commit cee34fe

@randomwangran
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just try to understand what's the simulation case here.

film

Please sign in to comment.