ENH: Support AMI for multi-world operation. Fixes #2099

Multi-world operation now supports AMI:

    // What to sample:
    sampleMode      nearestPatchFaceAMI;
This commit is contained in:
Mattijs Janssens
2021-05-26 08:27:30 +00:00
committed by Andrew Heather
parent 9a3d27e3df
commit f44dbbc200
28 changed files with 1124 additions and 106 deletions

View File

@ -0,0 +1,79 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: v2012 |
| \\ / A nd | Website: www.openfoam.com |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object T;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 0 0 1 0 0 0];
internalField uniform 0;
boundaryField
{
coupled
{
//type mappedField;
type mappedMixedField;
// What to sample:
sampleMode nearestPatchFaceAMI;
// Simulation world to sample
sampleWorld LEFT;
// Region to sample
sampleRegion region0;
// If sampleMode is nearestPatchFace : patch to find faces of
samplePatch coupled;
// Use database to get data from (one-way or loose coupling in
// combination with functionObject)
//sampleDatabase true;
// According to offsetMode (see above) supply one of
// offset, offsets or distance
offset (0 0 0);
value uniform 1.1;
// For mappedMixed
//weightField DTV;
refValue $value;
refGradient uniform 0.0;
valueFraction uniform 1.0;
}
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
right
{
type fixedValue;
value uniform 0;
}
frontAndBack
{
type empty;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,80 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: v2012 |
| \\ / A nd | Website: www.openfoam.com |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object T;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 0 0 1 0 0 0];
internalField uniform 0;
boundaryField
{
coupled
{
//type mappedField;
type mappedMixedField;
// What to sample:
sampleMode nearestPatchFaceAMI;
//sampleMode nearestPatchFace;
// Simulation world to sample
sampleWorld LEFT;
// Region to sample
sampleRegion region0;
// If sampleMode is nearestPatchFace : patch to find faces of
samplePatch coupled;
// Use database to get data from (one-way or loose coupling in
// combination with functionObject)
sampleDatabase true;
// According to offsetMode (see above) supply one of
// offset, offsets or distance
offset (0 0 0);
value uniform 1.1;
// For mappedMixed
//weightField DTV;
refValue $value;
refGradient uniform 0.0;
valueFraction uniform 1.0;
}
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
right
{
type fixedValue;
value uniform 0;
}
frontAndBack
{
type empty;
}
}
// ************************************************************************* //

View File

@ -0,0 +1 @@
../../left/constant/transportProperties

View File

@ -0,0 +1,89 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: v2012 |
| \\ / A nd | Website: www.openfoam.com |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
scale 0.1;
vertices
(
(0.5 0 0)
(1 0 0)
(1 1 0)
(0.5 1 0)
(0.5 0 0.1)
(1 0 0.1)
(1 1 0.1)
(0.5 1 0.1)
);
blocks
(
hex (0 1 2 3 4 5 6 7) (2 2 1) simpleGrading (1 1 1)
);
edges
(
);
boundary
(
coupled
{
type wall;
faces
(
(0 4 7 3)
);
}
top
{
type wall;
faces
(
(3 7 6 2)
);
}
bottom
{
type wall;
faces
(
(1 5 4 0)
);
}
right
{
type wall;
faces
(
(2 6 5 1)
);
}
frontAndBack
{
type empty;
faces
(
(0 3 2 1)
(4 5 6 7)
);
}
);
mergePatchPairs
(
);
// ************************************************************************* //

View File

@ -0,0 +1 @@
../../left/system/controlDict

View File

@ -0,0 +1 @@
../../left/system/decomposeParDict

View File

@ -0,0 +1 @@
../../left/system/fvSchemes

View File

@ -0,0 +1 @@
../../left/system/fvSolution