solving for pd; new parallel b.c.

This commit is contained in:
mattijs
2009-06-02 14:59:07 +01:00
parent dcc957147b
commit d3bcca840d
23 changed files with 769 additions and 273 deletions

View File

@ -16,40 +16,40 @@ FoamFile
dimensions [1 -1 -2 0 0 0 0]; dimensions [1 -1 -2 0 0 0 0];
internalField uniform 0; internalField uniform 1e5;
boundaryField boundaryField
{ {
minX minX
{ {
type calculated; type fixedFluxBuoyantPressure;
value uniform 0; value 1e5;
} }
maxX maxX
{ {
type calculated; type fixedFluxBuoyantPressure;
value uniform 0; value 1e5;
} }
minY minY
{ {
type calculated; type fixedFluxBuoyantPressure;
value uniform 0; value 1e5;
} }
maxY maxY
{ {
type calculated; type fixedFluxBuoyantPressure;
value uniform 0; value 1e5;
} }
minZ minZ
{ {
type calculated; type fixedFluxBuoyantPressure;
value uniform 0; value 1e5;
} }
maxZ maxZ
{ {
type calculated; type fixedFluxBuoyantPressure;
value uniform 0; value 1e5;
} }
} }

View File

@ -1,56 +0,0 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.5 |
| \\ / A nd | Web: http://www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object p;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [1 -1 -2 0 0 0 0];
internalField uniform 0;
boundaryField
{
minX
{
type zeroGradient;
value uniform 0;
}
maxX
{
type fixedValue;
value uniform 0;
}
minY
{
type zeroGradient;
value uniform 0;
}
maxY
{
type zeroGradient;
value uniform 0;
}
minZ
{
type zeroGradient;
value uniform 0;
}
maxZ
{
type zeroGradient;
value uniform 0;
}
}
// ************************************************************************* //

View File

@ -30,7 +30,26 @@ do
rm -f 0*/$i/{cp,K} rm -f 0*/$i/{cp,K}
done done
runApplication chtMultiRegionFoam
#-- Run on single processor
#runApplication chtMultiRegionFoam
# Decompose
for i in bottomAir topAir heater leftSolid rightSolid
do
decomposePar -region $i
done
# Run
hostname > system/machines
runParallel chtMultiRegionFoam 4 system/machines
# Reconstruct
for i in bottomAir topAir heater leftSolid rightSolid
do
reconstructPar -region $i
done
echo echo
echo "creating files for paraview post-processing" echo "creating files for paraview post-processing"

View File

@ -14,6 +14,6 @@ FoamFile
} }
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
simulationType RASModel; simulationType laminar;
// ************************************************************************* // // ************************************************************************* //

View File

@ -1,8 +1,8 @@
/*--------------------------------*- C++ -*----------------------------------*\ /*--------------------------------*- C++ -*----------------------------------*\
| ========= | | | ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.5 | | \\ / O peration | Version: dev |
| \\ / A nd | Web: http://www.OpenFOAM.org | | \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | | | \\/ M anipulation | |
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/
FoamFile FoamFile

View File

@ -19,7 +19,4 @@ fluidRegionNames ( bottomAir topAir );
solidRegionNames ( heater leftSolid rightSolid ); solidRegionNames ( heater leftSolid rightSolid );
pRef 100000;
// ************************************************************************* // // ************************************************************************* //

View File

@ -1,3 +1,3 @@
fvSchemes and fvSolution are not used here fvSolution is used for outer correctors specification.
- added so that pre-processing activities can proceed fvSchemes is only so that pre-processing activities can proceed

View File

@ -16,6 +16,31 @@ FoamFile
dictionaryReplacement dictionaryReplacement
{ {
boundary
{
bottomAir_to_leftSolid
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion leftSolid;
samplePatch leftSolid_to_bottomAir;
}
bottomAir_to_rightSolid
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion rightSolid;
samplePatch rightSolid_to_bottomAir;
}
bottomAir_to_heater
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion heater;
samplePatch heater_to_bottomAir;
}
}
U U
{ {
internalField uniform (0 0 0); internalField uniform (0 0 0);
@ -62,8 +87,6 @@ dictionaryReplacement
bottomAir_to_leftSolid bottomAir_to_leftSolid
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName leftSolid;
neighbourPatchName leftSolid_to_bottomAir;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;
@ -72,8 +95,6 @@ dictionaryReplacement
bottomAir_to_heater bottomAir_to_heater
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName heater;
neighbourPatchName heater_to_bottomAir;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;
@ -81,8 +102,6 @@ dictionaryReplacement
bottomAir_to_rightSolid bottomAir_to_rightSolid
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName rightSolid;
neighbourPatchName rightSolid_to_bottomAir;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;
@ -205,101 +224,55 @@ dictionaryReplacement
} }
} }
pd
{
boundaryField
{
minX
{
type fixedFluxBuoyantPressure;
value 0;
}
maxX
{
type fixedFluxBuoyantPressure;
value 0;
}
minY
{
type fixedFluxBuoyantPressure;
value 0;
}
minZ
{
type fixedFluxBuoyantPressure;
value 0;
}
maxZ
{
type fixedFluxBuoyantPressure;
value 0;
}
bottomAir_to_leftSolid
{
type fixedFluxBuoyantPressure;
value 0;
}
bottomAir_to_heater
{
type fixedFluxBuoyantPressure;
value 0;
}
bottomAir_to_rightSolid
{
type fixedFluxBuoyantPressure;
value 0;
}
}
}
p p
{ {
internalField uniform 100000; internalField uniform 1E5;
boundaryField boundaryField
{ {
minX minX
{ {
type calculated; type fixedFluxBuoyantPressure;
value uniform 100000; value 1e5;
} }
maxX maxX
{ {
type calculated; type fixedFluxBuoyantPressure;
value uniform 100000; value 1e5;
} }
minY minY
{ {
type calculated; type fixedFluxBuoyantPressure;
value uniform 100000; value 1e5;
} }
minZ minZ
{ {
type calculated; type fixedFluxBuoyantPressure;
value uniform 100000; value 1e5;
} }
maxZ maxZ
{ {
type calculated; type fixedFluxBuoyantPressure;
value uniform 100000; value 1e5;
} }
bottomAir_to_leftSolid bottomAir_to_leftSolid
{ {
type calculated; type fixedFluxBuoyantPressure;
value uniform 100000; value 1e5;
} }
bottomAir_to_heater bottomAir_to_heater
{ {
type calculated; type fixedFluxBuoyantPressure;
value uniform 100000; value 1e5;
} }
bottomAir_to_rightSolid bottomAir_to_rightSolid
{ {
type calculated; type fixedFluxBuoyantPressure;
value uniform 100000; value 1e5;
} }
} }
} }
} }
// ************************************************************************* // // ************************************************************************* //

View File

@ -0,0 +1,86 @@
/*-------------------------------*- C++ -*---------------------------------*\
| ========= |
| \\ / OpenFOAM |
| \\ / |
| \\ / The Open Source CFD Toolbox |
| \\/ http://www.OpenFOAM.org |
\*-------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
note "mesh decomposition control dictionary";
location "system";
object decomposeParDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
numberOfSubdomains 4;
//- Keep owner and neighbour on same processor for faces in zones:
// preserveFaceZones (heater solid1 solid3);
method scotch;
// method hierarchical;
// method simple;
// method metis;
// method manual;
simpleCoeffs
{
n (2 2 1);
delta 0.001;
}
hierarchicalCoeffs
{
n (2 2 1);
delta 0.001;
order xyz;
}
metisCoeffs
{
/*
processorWeights
(
1
1
1
1
);
*/
}
scotchCoeffs
{
//processorWeights
//(
// 1
// 1
// 1
// 1
//);
//writeGraph true;
//strategy "b";
}
manualCoeffs
{
dataFile "decompositionData";
}
//// Is the case distributed
//distributed yes;
//// Per slave (so nProcs-1 entries) the directory above the case.
//roots
//(
// "/tmp"
// "/tmp"
//);
// ************************************************************************* //

View File

@ -30,7 +30,7 @@ divSchemes
{ {
default none; default none;
div(phi,U) Gauss upwind; div(phi,U) Gauss upwind;
div(phiU,p) Gauss upwind; div(phiU,p) Gauss linear;
div(phi,h) Gauss upwind; div(phi,h) Gauss upwind;
div(phi,k) Gauss upwind; div(phi,k) Gauss upwind;
div(phi,epsilon) Gauss upwind; div(phi,epsilon) Gauss upwind;
@ -43,7 +43,7 @@ laplacianSchemes
{ {
default none; default none;
laplacian(muEff,U) Gauss linear limited 0.333; laplacian(muEff,U) Gauss linear limited 0.333;
laplacian((rho*(1|A(U))),pd) Gauss linear limited 0.333; laplacian((rho*(1|A(U))),p) Gauss linear limited 0.333;
laplacian(alphaEff,h) Gauss linear limited 0.333; laplacian(alphaEff,h) Gauss linear limited 0.333;
laplacian(DkEff,k) Gauss linear limited 0.333; laplacian(DkEff,k) Gauss linear limited 0.333;
laplacian(DepsilonEff,epsilon) Gauss linear limited 0.333; laplacian(DepsilonEff,epsilon) Gauss linear limited 0.333;
@ -63,7 +63,7 @@ snGradSchemes
fluxRequired fluxRequired
{ {
default no; default no;
pd; p;
} }
// ************************************************************************* // // ************************************************************************* //

View File

@ -20,28 +20,14 @@ solvers
{ {
solver PCG solver PCG
preconditioner DIC; preconditioner DIC;
tolerance 1e-6; tolerance 1e-8;
relTol 0; relTol 0;
}; };
// pd p
// {
// solver PCG
// preconditioner DIC;
// tolerance 1e-6;
// relTol 0.1;
// };
// pdFinal
// {
// solver PCG;
// preconditioner DIC;
// tolerance 1e-08;
// relTol 0;
// };
pd
{ {
solver GAMG; solver GAMG;
tolerance 1e-6; tolerance 1e-8;
relTol 0.1; relTol 0.01;
smoother GaussSeidel; smoother GaussSeidel;
@ -50,10 +36,10 @@ solvers
agglomerator faceAreaPair; agglomerator faceAreaPair;
mergeLevels 1; mergeLevels 1;
}; };
pdFinal pFinal
{ {
solver GAMG; solver GAMG;
tolerance 1e-6; tolerance 1e-8;
relTol 0; relTol 0;
smoother GaussSeidel; smoother GaussSeidel;
@ -70,32 +56,41 @@ solvers
tolerance 1e-08; tolerance 1e-08;
relTol 0; relTol 0;
}; };
h h
{ {
solver PBiCG; solver PBiCG;
preconditioner DILU; preconditioner DILU;
tolerance 1e-06; tolerance 1e-08;
relTol 0.1;
};
hFinal
{
solver PBiCG;
preconditioner DILU;
tolerance 1e-08;
relTol 0; relTol 0;
}; };
k k
{ {
solver PBiCG; solver PBiCG;
preconditioner DILU; preconditioner DILU;
tolerance 1e-06; tolerance 1e-08;
relTol 0; relTol 0;
}; };
epsilon epsilon
{ {
solver PBiCG; solver PBiCG;
preconditioner DILU; preconditioner DILU;
tolerance 1e-06; tolerance 1e-08;
relTol 0; relTol 0;
}; };
R R
{ {
solver PBiCG; solver PBiCG;
preconditioner DILU; preconditioner DILU;
tolerance 1e-06; tolerance 1e-08;
relTol 0; relTol 0;
}; };
} }
@ -106,14 +101,23 @@ PISO
nOuterCorrectors 1; nOuterCorrectors 1;
nCorrectors 2; nCorrectors 2;
nNonOrthogonalCorrectors 1; nNonOrthogonalCorrectors 1;
pdRefCell 0; pRefPoint (-0.081 -0.0257 8.01);
pdRefValue 0; pRefValue 1e5;
} }
//relaxationFactors
//{ PIMPLE
//// h 0.9; {
momentumPredictor on;
nCorrectors 2;
nNonOrthogonalCorrectors 0;
}
relaxationFactors
{
// h 0.9;
// U 0.9; // U 0.9;
//} }
// ************************************************************************* // // ************************************************************************* //

View File

@ -15,19 +15,19 @@ FoamFile
} }
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
startFrom latestTime; startFrom startTime;
startTime 0; startTime 0.001;
stopAt endTime; stopAt endTime;
endTime 180; endTime 200;
deltaT 0.001; deltaT 0.001;
writeControl adjustableRunTime; writeControl adjustableRunTime;
writeInterval 5; writeInterval 50;
purgeWrite 0; purgeWrite 0;

View File

@ -0,0 +1,86 @@
/*-------------------------------*- C++ -*---------------------------------*\
| ========= |
| \\ / OpenFOAM |
| \\ / |
| \\ / The Open Source CFD Toolbox |
| \\/ http://www.OpenFOAM.org |
\*-------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
note "mesh decomposition control dictionary";
location "system";
object decomposeParDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
numberOfSubdomains 4;
//- Keep owner and neighbour on same processor for faces in zones:
// preserveFaceZones (heater solid1 solid3);
method scotch;
// method hierarchical;
// method simple;
// method metis;
// method manual;
simpleCoeffs
{
n (2 2 1);
delta 0.001;
}
hierarchicalCoeffs
{
n (2 2 1);
delta 0.001;
order xyz;
}
metisCoeffs
{
/*
processorWeights
(
1
1
1
1
);
*/
}
scotchCoeffs
{
//processorWeights
//(
// 1
// 1
// 1
// 1
//);
//writeGraph true;
//strategy "b";
}
manualCoeffs
{
dataFile "decompositionData";
}
//// Is the case distributed
//distributed yes;
//// Per slave (so nProcs-1 entries) the directory above the case.
//roots
//(
// "/tmp"
// "/tmp"
//);
// ************************************************************************* //

View File

@ -14,4 +14,9 @@ FoamFile
} }
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
PIMPLE
{
nOuterCorrectors 1;
}
// ************************************************************************* // // ************************************************************************* //

View File

@ -16,6 +16,38 @@ FoamFile
dictionaryReplacement dictionaryReplacement
{ {
boundary
{
heater_to_bottomAir
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion bottomAir;
samplePatch bottomAir_to_heater;
}
heater_to_leftSolid
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion leftSolid;
samplePatch leftSolid_to_heater;
}
heater_to_rightSolid
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion rightSolid;
samplePatch rightSolid_to_heater;
}
heater_to_topAir
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion topAir;
samplePatch topAir_to_heater;
}
}
T T
{ {
internalField uniform 300; internalField uniform 300;
@ -40,8 +72,6 @@ dictionaryReplacement
heater_to_bottomAir heater_to_bottomAir
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName bottomAir;
neighbourPatchName bottomAir_to_heater;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;
@ -50,8 +80,6 @@ dictionaryReplacement
heater_to_leftSolid heater_to_leftSolid
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName leftSolid;
neighbourPatchName leftSolid_to_heater;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;
@ -59,8 +87,6 @@ dictionaryReplacement
heater_to_rightSolid heater_to_rightSolid
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName rightSolid;
neighbourPatchName rightSolid_to_heater;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;
@ -68,8 +94,6 @@ dictionaryReplacement
heater_to_topAir heater_to_topAir
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName topAir;
neighbourPatchName topAir_to_heater;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;

View File

@ -0,0 +1,86 @@
/*-------------------------------*- C++ -*---------------------------------*\
| ========= |
| \\ / OpenFOAM |
| \\ / |
| \\ / The Open Source CFD Toolbox |
| \\/ http://www.OpenFOAM.org |
\*-------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
note "mesh decomposition control dictionary";
location "system";
object decomposeParDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
numberOfSubdomains 4;
//- Keep owner and neighbour on same processor for faces in zones:
// preserveFaceZones (heater solid1 solid3);
method scotch;
// method hierarchical;
// method simple;
// method metis;
// method manual;
simpleCoeffs
{
n (2 2 1);
delta 0.001;
}
hierarchicalCoeffs
{
n (2 2 1);
delta 0.001;
order xyz;
}
metisCoeffs
{
/*
processorWeights
(
1
1
1
1
);
*/
}
scotchCoeffs
{
//processorWeights
//(
// 1
// 1
// 1
// 1
//);
//writeGraph true;
//strategy "b";
}
manualCoeffs
{
dataFile "decompositionData";
}
//// Is the case distributed
//distributed yes;
//// Per slave (so nProcs-1 entries) the directory above the case.
//roots
//(
// "/tmp"
// "/tmp"
//);
// ************************************************************************* //

View File

@ -30,4 +30,9 @@ PISO
nNonOrthogonalCorrectors 1; nNonOrthogonalCorrectors 1;
} }
PIMPLE
{
nNonOrthogonalCorrectors 1;
}
// ************************************************************************* // // ************************************************************************* //

View File

@ -16,6 +16,31 @@ FoamFile
dictionaryReplacement dictionaryReplacement
{ {
boundary
{
leftSolid_to_bottomAir
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion bottomAir;
samplePatch bottomAir_to_leftSolid;
}
leftSolid_to_heater
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion heater;
samplePatch heater_to_leftSolid;;
}
leftSolid_to_topAir
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion topAir;
samplePatch topAir_to_leftSolid;;
}
}
T T
{ {
internalField uniform 300; internalField uniform 300;
@ -37,8 +62,6 @@ dictionaryReplacement
leftSolid_to_bottomAir leftSolid_to_bottomAir
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName bottomAir;
neighbourPatchName bottomAir_to_leftSolid;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;
@ -47,8 +70,6 @@ dictionaryReplacement
leftSolid_to_heater leftSolid_to_heater
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName heater;
neighbourPatchName heater_to_leftSolid;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;
@ -56,8 +77,6 @@ dictionaryReplacement
leftSolid_to_topAir leftSolid_to_topAir
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName topAir;
neighbourPatchName topAir_to_leftSolid;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;

View File

@ -0,0 +1,86 @@
/*-------------------------------*- C++ -*---------------------------------*\
| ========= |
| \\ / OpenFOAM |
| \\ / |
| \\ / The Open Source CFD Toolbox |
| \\/ http://www.OpenFOAM.org |
\*-------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
note "mesh decomposition control dictionary";
location "system";
object decomposeParDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
numberOfSubdomains 4;
//- Keep owner and neighbour on same processor for faces in zones:
// preserveFaceZones (heater solid1 solid3);
method scotch;
// method hierarchical;
// method simple;
// method metis;
// method manual;
simpleCoeffs
{
n (2 2 1);
delta 0.001;
}
hierarchicalCoeffs
{
n (2 2 1);
delta 0.001;
order xyz;
}
metisCoeffs
{
/*
processorWeights
(
1
1
1
1
);
*/
}
scotchCoeffs
{
//processorWeights
//(
// 1
// 1
// 1
// 1
//);
//writeGraph true;
//strategy "b";
}
manualCoeffs
{
dataFile "decompositionData";
}
//// Is the case distributed
//distributed yes;
//// Per slave (so nProcs-1 entries) the directory above the case.
//roots
//(
// "/tmp"
// "/tmp"
//);
// ************************************************************************* //

View File

@ -16,6 +16,31 @@ FoamFile
dictionaryReplacement dictionaryReplacement
{ {
boundary
{
rightSolid_to_heater
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion heater;
samplePatch heater_to_rightSolid;
}
rightSolid_to_bottomAir
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion bottomAir;
samplePatch bottomAir_to_rightSolid;
}
rightSolid_to_topAir
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion topAir;
samplePatch topAir_to_rightSolid;
}
}
T T
{ {
internalField uniform 300; internalField uniform 300;
@ -37,8 +62,6 @@ dictionaryReplacement
rightSolid_to_heater rightSolid_to_heater
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName heater;
neighbourPatchName heater_to_rightSolid;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;
@ -46,8 +69,6 @@ dictionaryReplacement
rightSolid_to_bottomAir rightSolid_to_bottomAir
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName bottomAir;
neighbourPatchName bottomAir_to_rightSolid;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;
@ -55,8 +76,6 @@ dictionaryReplacement
rightSolid_to_topAir rightSolid_to_topAir
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName topAir;
neighbourPatchName topAir_to_rightSolid;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;

View File

@ -0,0 +1,86 @@
/*-------------------------------*- C++ -*---------------------------------*\
| ========= |
| \\ / OpenFOAM |
| \\ / |
| \\ / The Open Source CFD Toolbox |
| \\/ http://www.OpenFOAM.org |
\*-------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
note "mesh decomposition control dictionary";
location "system";
object decomposeParDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
numberOfSubdomains 4;
//- Keep owner and neighbour on same processor for faces in zones:
// preserveFaceZones (heater solid1 solid3);
method scotch;
// method hierarchical;
// method simple;
// method metis;
// method manual;
simpleCoeffs
{
n (2 2 1);
delta 0.001;
}
hierarchicalCoeffs
{
n (2 2 1);
delta 0.001;
order xyz;
}
metisCoeffs
{
/*
processorWeights
(
1
1
1
1
);
*/
}
scotchCoeffs
{
//processorWeights
//(
// 1
// 1
// 1
// 1
//);
//writeGraph true;
//strategy "b";
}
manualCoeffs
{
dataFile "decompositionData";
}
//// Is the case distributed
//distributed yes;
//// Per slave (so nProcs-1 entries) the directory above the case.
//roots
//(
// "/tmp"
// "/tmp"
//);
// ************************************************************************* //

View File

@ -16,6 +16,31 @@ FoamFile
dictionaryReplacement dictionaryReplacement
{ {
boundary
{
topAir_to_leftSolid
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion leftSolid;
samplePatch leftSolid_to_topAir;
}
topAir_to_heater
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion heater;
samplePatch heater_to_topAir;
}
topAir_to_rightSolid
{
offset ( 0 0 0 );
sampleMode nearestPatchFace;
sampleRegion rightSolid;
samplePatch rightSolid_to_topAir;
}
}
U U
{ {
internalField uniform ( 0.01 0 0 ); internalField uniform ( 0.01 0 0 );
@ -63,8 +88,6 @@ dictionaryReplacement
topAir_to_leftSolid topAir_to_leftSolid
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName leftSolid;
neighbourPatchName leftSolid_to_topAir;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;
@ -73,8 +96,6 @@ dictionaryReplacement
topAir_to_heater topAir_to_heater
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName heater;
neighbourPatchName heater_to_topAir;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;
@ -82,8 +103,6 @@ dictionaryReplacement
topAir_to_rightSolid topAir_to_rightSolid
{ {
type solidWallMixedTemperatureCoupled; type solidWallMixedTemperatureCoupled;
neighbourRegionName rightSolid;
neighbourPatchName rightSolid_to_topAir;
neighbourFieldName T; neighbourFieldName T;
K K; K K;
value uniform 300; value uniform 300;
@ -204,109 +223,61 @@ dictionaryReplacement
} }
} }
pd p
{ {
internalField uniform 1E5;
boundaryField boundaryField
{ {
minX minX
{ {
type fixedFluxBuoyantPressure; type fixedFluxBuoyantPressure;
value 0; value 1e5;
} }
maxX maxX
{ {
type waveTransmissive; type waveTransmissive;
field pd; //field p;
phi phi; phi phi;
rho rho; rho rho;
psi psi; psi psi;
gamma 1.4; // cp/cv gamma 1.4; // cp/cv
fieldInf 0; fieldInf 1e5;
lInf 0.40; // double length of domain lInf 0.40; // double length of domain
value uniform 0; value uniform 1e5;
} }
minY minY
{ {
type fixedFluxBuoyantPressure; type fixedFluxBuoyantPressure;
value 0; value 1e5;
} }
minZ minZ
{ {
type fixedFluxBuoyantPressure; type fixedFluxBuoyantPressure;
value 0; value 1e5;
} }
maxZ maxZ
{ {
type fixedFluxBuoyantPressure; type fixedFluxBuoyantPressure;
value 0; value 1e5;
} }
topAir_to_leftSolid topAir_to_leftSolid
{ {
type fixedFluxBuoyantPressure; type fixedFluxBuoyantPressure;
value 0; value 1e5;
} }
topAir_to_heater topAir_to_heater
{ {
type fixedFluxBuoyantPressure; type fixedFluxBuoyantPressure;
value 0; value 1e5;
} }
topAir_to_rightSolid topAir_to_rightSolid
{ {
type fixedFluxBuoyantPressure; type fixedFluxBuoyantPressure;
value 0; value 1e5;
}
}
}
p
{
internalField uniform 100000;
boundaryField
{
minX
{
type calculated;
value uniform 100000;
}
maxX
{
type calculated;
value uniform 100000;
}
maxY
{
type calculated;
value uniform 100000;
}
minZ
{
type calculated;
value uniform 100000;
}
maxZ
{
type calculated;
value uniform 100000;
}
topAir_to_leftSolid
{
type calculated;
value uniform 100000;
}
topAir_to_heater
{
type calculated;
value uniform 100000;
}
topAir_to_rightSolid
{
type calculated;
value uniform 100000;
} }
} }
} }

View File

@ -0,0 +1,86 @@
/*-------------------------------*- C++ -*---------------------------------*\
| ========= |
| \\ / OpenFOAM |
| \\ / |
| \\ / The Open Source CFD Toolbox |
| \\/ http://www.OpenFOAM.org |
\*-------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
note "mesh decomposition control dictionary";
location "system";
object decomposeParDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
numberOfSubdomains 4;
//- Keep owner and neighbour on same processor for faces in zones:
// preserveFaceZones (heater solid1 solid3);
method scotch;
// method hierarchical;
// method simple;
// method metis;
// method manual;
simpleCoeffs
{
n (2 2 1);
delta 0.001;
}
hierarchicalCoeffs
{
n (2 2 1);
delta 0.001;
order xyz;
}
metisCoeffs
{
/*
processorWeights
(
1
1
1
1
);
*/
}
scotchCoeffs
{
//processorWeights
//(
// 1
// 1
// 1
// 1
//);
//writeGraph true;
//strategy "b";
}
manualCoeffs
{
dataFile "decompositionData";
}
//// Is the case distributed
//distributed yes;
//// Per slave (so nProcs-1 entries) the directory above the case.
//roots
//(
// "/tmp"
// "/tmp"
//);
// ************************************************************************* //