Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -151,6 +151,9 @@ moose/include/base/Precompiled.h.gch
# OpenFOAM mesh object files
test/**/*.obj

# downloaded mesh tarballs
test/tests/**/*.tar.gz

framework/contrib/exodiff/exodiff

# Mac garbage
Expand Down
11 changes: 11 additions & 0 deletions test/tests/multiapps/shell_tube_heat_exchanger/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Shell and tube heat exchanger

Here we solve the preCICE [shell and tube heat exchanger](https://precice.org/tutorials-heat-exchanger.html) problem using Hippo.

![Shell and tube heat exchanger](https://precice.org/images/tutorials-heat-exchanger-visualization.png)

The fluid and solid meshes are copied from the tutorial with the solid mesh already converted to the Exodus II format for MOOSE. The case is run using FFTB (heat flux from fluid to solid, wall temperature from solid to fluid) coupling, meaning the solid is run transient. To speed up convergence, the $c_p$ is decreased initially.

`prep.sh` cleans the case, downloads and decompresses the meshes, and partitions the case.

The regression test runs for 10 seconds, but to get a mostly converged solution, it is recommended that simulation the end time is changed to 500 by modifying `solid.i` and the `controlDict` files in `fluid_inner` and `fluid_outer`.
33 changes: 33 additions & 0 deletions test/tests/multiapps/shell_tube_heat_exchanger/fluid_inner/0/T
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object T;
}

dimensions [0 0 0 1 0 0 0];

internalField uniform 300;

boundaryField
{
outlet
{
type zeroGradient;
}
inlet
{
type fixedValue;
value uniform 283;
}
interface
{
type fixedValue;
value uniform 283;
}
adiabatic
{
type zeroGradient;
}
}
34 changes: 34 additions & 0 deletions test/tests/multiapps/shell_tube_heat_exchanger/fluid_inner/0/U
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
FoamFile
{
version 2.0;
format ascii;
class volVectorField;
object U;
}

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

internalField uniform (0 0 0);

boundaryField
{
outlet
{
type zeroGradient;
}
inlet
{
type fixedValue;
value uniform (0 0 -0.002);
}
interface
{
type fixedValue;
value uniform (0 0 0);
}
adiabatic
{
type fixedValue;
value uniform (0 0 0);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object alphat;
}

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

internalField uniform 0;

boundaryField
{
".*"
{
type fixedValue;
value uniform 0;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object epsilon;
}

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

internalField uniform 1e-6;

boundaryField
{
".*"
{
type fixedValue;
value uniform 1e-6;
}
}
20 changes: 20 additions & 0 deletions test/tests/multiapps/shell_tube_heat_exchanger/fluid_inner/0/k
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object k;
}

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

internalField uniform 0;

boundaryField
{
".*"
{
type fixedValue;
value uniform 0;
}
}
20 changes: 20 additions & 0 deletions test/tests/multiapps/shell_tube_heat_exchanger/fluid_inner/0/nut
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object nut;
}

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

internalField uniform 0;

boundaryField
{
".*"
{
type fixedValue;
value uniform 0;
}
}
35 changes: 35 additions & 0 deletions test/tests/multiapps/shell_tube_heat_exchanger/fluid_inner/0/p
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object p;
}

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

internalField uniform 101325;

boundaryField
{
outlet
{
type calculated;
value uniform 101325;
}
inlet
{
type calculated;
value uniform 101325;
}
interface
{
type calculated;
value uniform 101325;
}
adiabatic
{
type calculated;
value uniform 101325;
}
}
36 changes: 36 additions & 0 deletions test/tests/multiapps/shell_tube_heat_exchanger/fluid_inner/0/p_rgh
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object p_rgh;
}

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

internalField uniform 101325;

boundaryField
{
outlet
{
type fixedValue;
value uniform 101325;
}
inlet
{
type zeroGradient;
}
interface
{
type fixedFluxPressure;
gradient uniform 0;
value uniform 101325;
}
adiabatic
{
type fixedFluxPressure;
gradient uniform 0;
value uniform 101325;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#!/bin/sh
cd ${0%/*} || exit 1 # Run from this directory

# Source tutorial run functions
. $WM_PROJECT_DIR/bin/tools/CleanFunctions

cleanCase
#------------------------------------------------------------------------------
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
FoamFile
{
version 2.0;
format ascii;
class uniformDimensionedVectorField;
object g;
}

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

value (0.0 0.0 0.0);
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object thermophysicalProperties;
}

dpdt no;

thermoType
{
type heRhoThermo;
mixture pureMixture;
transport const;
thermo hConst;
equationOfState perfectFluid;
specie specie;
energy sensibleEnthalpy;
}

mixture
{
specie
{
nMoles 1;
molWeight 18;
}
equationOfState
{
R 3000;
rho0 1027;
}
thermodynamics
{
Cp 4195;
Hf 0;
}
transport
{
mu 3.645e-4;
Pr 2.289;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
FoamFile {
version 2.0;
format ascii;
class dictionary;
object turbulenceProperties;
}

simulationType laminar;
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
FoamFile {
version 2.0;
format ascii;
class dictionary;
object controlDict;
}

solver fluid;

startFrom startTime;

stopAt endTime;

writeFormat ascii;

writePrecision 12;

// writeCompression on;

timeFormat general;

timePrecision 12;

deltaT 1.;

startTime 0.0;

writeInterval 10;

endTime 10;

writeControl timeStep;
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
FoamFile {
version 2.0;
class dictionary;
object decomposeParDict;
format ascii;
}

numberOfSubdomains 2;

method scotch;
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
FoamFile {
version 2.0;
class dictionary;
object fvOptions;
format ascii;
}
Loading