mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Merge branch 'master' of ssh://dm/home/dm4/OpenFOAM/OpenFOAM-dev
This commit is contained in:
@ -31,7 +31,7 @@ vertices
|
||||
|
||||
blocks
|
||||
(
|
||||
hex (0 1 2 3 4 5 6 7) (20 20 20) simpleGrading (1 1 1)
|
||||
hex (0 1 2 3 4 5 6 7) (20 20 10) simpleGrading (1 1 1)
|
||||
);
|
||||
|
||||
edges
|
||||
|
||||
@ -42,38 +42,6 @@ geometry
|
||||
max (1 1 1);
|
||||
}
|
||||
|
||||
fridgeFreezer
|
||||
{
|
||||
type searchableSurfaceCollection;
|
||||
|
||||
mergeSubRegions true;
|
||||
|
||||
freezer
|
||||
{
|
||||
surface box1;
|
||||
scale (1 1 1);
|
||||
transform
|
||||
{
|
||||
type cartesian;
|
||||
origin (0 0 0);
|
||||
e1 (1 0 0);
|
||||
e3 (0 0 1);
|
||||
}
|
||||
}
|
||||
fridge
|
||||
{
|
||||
surface box1;
|
||||
scale (1 1 1.1);
|
||||
transform
|
||||
{
|
||||
type cartesian;
|
||||
origin (0 0 1);
|
||||
e1 (1 0 0);
|
||||
e3 (0 0 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
twoFridgeFreezers
|
||||
{
|
||||
type searchableSurfaceCollection;
|
||||
@ -150,7 +118,7 @@ castellatedMeshControls
|
||||
(
|
||||
{
|
||||
file "fridgeA.eMesh";
|
||||
level 3;
|
||||
levels ((0.01 3));
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
@ -8,7 +8,15 @@ cd ${0%/*} || exit 1 # run from this directory
|
||||
application=`getApplication`
|
||||
|
||||
runApplication blockMesh
|
||||
runApplication $application
|
||||
|
||||
#- Run serial
|
||||
#runApplication $application
|
||||
|
||||
#- Run parallel
|
||||
runApplication decomposePar -cellDist
|
||||
runParallel $application 5
|
||||
runApplication reconstructPar
|
||||
|
||||
runApplication postChannel
|
||||
|
||||
# ----------------------------------------------------------------- end-of-file
|
||||
|
||||
@ -32,6 +32,7 @@ FoamFile
|
||||
sides1_half0
|
||||
{
|
||||
type cyclic;
|
||||
inGroups 1(cyclic);
|
||||
nFaces 1000;
|
||||
startFace 177700;
|
||||
matchTolerance 0.0001;
|
||||
@ -40,6 +41,7 @@ FoamFile
|
||||
sides1_half1
|
||||
{
|
||||
type cyclic;
|
||||
inGroups 1(cyclic);
|
||||
nFaces 1000;
|
||||
startFace 178700;
|
||||
matchTolerance 0.0001;
|
||||
@ -48,6 +50,7 @@ FoamFile
|
||||
sides2_half0
|
||||
{
|
||||
type cyclic;
|
||||
inGroups 1(cyclic);
|
||||
nFaces 1000;
|
||||
startFace 179700;
|
||||
matchTolerance 0.0001;
|
||||
@ -56,6 +59,7 @@ FoamFile
|
||||
sides2_half1
|
||||
{
|
||||
type cyclic;
|
||||
inGroups 1(cyclic);
|
||||
nFaces 1000;
|
||||
startFace 180700;
|
||||
matchTolerance 0.0001;
|
||||
@ -64,6 +68,7 @@ FoamFile
|
||||
inout1_half0
|
||||
{
|
||||
type cyclic;
|
||||
inGroups 1(cyclic);
|
||||
nFaces 750;
|
||||
startFace 181700;
|
||||
matchTolerance 0.0001;
|
||||
@ -72,6 +77,7 @@ FoamFile
|
||||
inout1_half1
|
||||
{
|
||||
type cyclic;
|
||||
inGroups 1(cyclic);
|
||||
nFaces 750;
|
||||
startFace 182450;
|
||||
matchTolerance 0.0001;
|
||||
@ -80,6 +86,7 @@ FoamFile
|
||||
inout2_half0
|
||||
{
|
||||
type cyclic;
|
||||
inGroups 1(cyclic);
|
||||
nFaces 750;
|
||||
startFace 183200;
|
||||
matchTolerance 0.0001;
|
||||
@ -88,6 +95,7 @@ FoamFile
|
||||
inout2_half1
|
||||
{
|
||||
type cyclic;
|
||||
inGroups 1(cyclic);
|
||||
nFaces 750;
|
||||
startFace 183950;
|
||||
matchTolerance 0.0001;
|
||||
|
||||
@ -0,0 +1,135 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
note "mesh decomposition control dictionary";
|
||||
object decomposeParDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
numberOfSubdomains 5;
|
||||
|
||||
//- Keep owner and neighbour on same processor for faces in zones:
|
||||
// preserveFaceZones (heater solid1 solid3);
|
||||
|
||||
//- Keep owner and neighbour on same processor for faces in patches:
|
||||
// (makes sense only for cyclic patches)
|
||||
//preservePatches (cyclic_half0 cyclic_half1);
|
||||
|
||||
//- Keep all of faceSet on a single processor. This puts all cells
|
||||
// connected with a point, edge or face on the same processor.
|
||||
// (just having face connected cells might not guarantee a balanced
|
||||
// decomposition)
|
||||
// The processor can be -1 (the decompositionMethod chooses the processor
|
||||
// for a good load balance) or explicitly provided (upsets balance).
|
||||
//singleProcessorFaceSets ((f0 -1));
|
||||
|
||||
|
||||
//- Use the volScalarField named here as a weight for each cell in the
|
||||
// decomposition. For example, use a particle population field to decompose
|
||||
// for a balanced number of particles in a lagrangian simulation.
|
||||
// weightField dsmcRhoNMean;
|
||||
|
||||
method scotch;
|
||||
//method hierarchical;
|
||||
// method simple;
|
||||
// method metis;
|
||||
// method manual;
|
||||
// method multiLevel;
|
||||
// method structured; // does 2D decomposition of structured mesh
|
||||
|
||||
multiLevelCoeffs
|
||||
{
|
||||
// Decomposition methods to apply in turn. This is like hierarchical but
|
||||
// fully general - every method can be used at every level.
|
||||
|
||||
level0
|
||||
{
|
||||
numberOfSubdomains 64;
|
||||
//method simple;
|
||||
//simpleCoeffs
|
||||
//{
|
||||
// n (2 1 1);
|
||||
// delta 0.001;
|
||||
//}
|
||||
method scotch;
|
||||
}
|
||||
level1
|
||||
{
|
||||
numberOfSubdomains 4;
|
||||
method scotch;
|
||||
}
|
||||
}
|
||||
|
||||
// Desired output
|
||||
|
||||
simpleCoeffs
|
||||
{
|
||||
n (2 1 1);
|
||||
delta 0.001;
|
||||
}
|
||||
|
||||
hierarchicalCoeffs
|
||||
{
|
||||
n (1 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";
|
||||
}
|
||||
|
||||
structuredCoeffs
|
||||
{
|
||||
// Patches to do 2D decomposition on. Structured mesh only; cells have
|
||||
// to be in 'columns' on top of patches.
|
||||
patches (bottomPatch);
|
||||
}
|
||||
|
||||
//// Is the case distributed? Note: command-line argument -roots takes
|
||||
//// precedence
|
||||
//distributed yes;
|
||||
//// Per slave (so nProcs-1 entries) the directory above the case.
|
||||
//roots
|
||||
//(
|
||||
// "/tmp"
|
||||
// "/tmp"
|
||||
//);
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -6,6 +6,7 @@ cd ${0%/*} || exit 1 # run from this directory
|
||||
|
||||
# copy motorbike surface from resources folder
|
||||
cp $FOAM_TUTORIALS/resources/geometry/motorBike.obj.gz constant/triSurface/
|
||||
runApplication surfaceFeatureExtract
|
||||
|
||||
runApplication blockMesh
|
||||
|
||||
@ -19,6 +20,7 @@ runParallel snappyHexMesh 6 -overwrite
|
||||
ls -d processor* | xargs -i rm -rf ./{}/0 $1
|
||||
ls -d processor* | xargs -i cp -r 0.org ./{}/0 $1
|
||||
|
||||
runParallel patchSummary 6
|
||||
runParallel potentialFoam 6 -noFunctionObjects -writep
|
||||
runParallel `getApplication` 6
|
||||
|
||||
|
||||
@ -90,10 +90,10 @@ castellatedMeshControls
|
||||
// This is a featureEdgeMesh, read from constant/triSurface for now.
|
||||
features
|
||||
(
|
||||
//{
|
||||
// file "someLine.eMesh";
|
||||
// level 2;
|
||||
//}
|
||||
{
|
||||
file "motorBike.eMesh";
|
||||
level 0;
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
@ -189,10 +189,21 @@ snapControls
|
||||
// before upon reaching a correct mesh.
|
||||
nRelaxIter 5;
|
||||
|
||||
//- Highly experimental and wip: number of feature edge snapping
|
||||
// iterations. Leave out altogether to disable.
|
||||
// Do not use here since mesh resolution too low and baffles present
|
||||
//nFeatureSnapIter 10;
|
||||
// Feature snapping
|
||||
|
||||
//- Number of feature edge snapping iterations.
|
||||
// Leave out altogether to disable.
|
||||
nFeatureSnapIter 10;
|
||||
|
||||
//- Detect (geometric only) features by sampling the surface
|
||||
// (default=false).
|
||||
implicitFeatureSnap false;
|
||||
|
||||
//- Use castellatedMeshControls::features (default = true)
|
||||
explicitFeatureSnap true;
|
||||
|
||||
//- Detect points on multiple surfaces (only for explicitFeatureSnap)
|
||||
multiRegionFeatureSnap true;
|
||||
}
|
||||
|
||||
|
||||
@ -239,7 +250,11 @@ addLayersControls
|
||||
|
||||
//- When not to extrude surface. 0 is flat surface, 90 is when two faces
|
||||
// make straight angle.
|
||||
featureAngle 30;
|
||||
featureAngle 60;
|
||||
|
||||
//- At non-patched sides allow mesh to slip if extrusion direction makes
|
||||
// angle larger than slipFeatureAngle.
|
||||
slipFeatureAngle 30;
|
||||
|
||||
//- Maximum number of snapping relaxation iterations. Should stop
|
||||
// before upon reaching a correct mesh.
|
||||
|
||||
@ -13,9 +13,6 @@ runApplication blockMesh
|
||||
#setSet -batch system/sets.setSet > log.setSet1 2>&1
|
||||
runApplication topoSet
|
||||
|
||||
# convert sets to zones
|
||||
setsToZones -noFlipMap > log.setsToZones 2>&1
|
||||
|
||||
# create the first cyclic - lhs of porous zone
|
||||
# Note that we don't know what value to give these patches-out-of-nothing so
|
||||
# - use binary writing to avoid 'nan'
|
||||
|
||||
@ -28,6 +28,17 @@ actions
|
||||
box (1.5 -10 -10) (2 10 10);
|
||||
}
|
||||
}
|
||||
{
|
||||
name filter;
|
||||
type cellZoneSet;
|
||||
action new;
|
||||
source setToCellZone;
|
||||
sourceInfo
|
||||
{
|
||||
set filter;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
{
|
||||
name leftFluid;
|
||||
@ -39,6 +50,16 @@ actions
|
||||
box (-10 -10 -10) (1.5 10 10);
|
||||
}
|
||||
}
|
||||
{
|
||||
name leftFluid;
|
||||
type cellZoneSet;
|
||||
action new;
|
||||
source setToCellZone;
|
||||
sourceInfo
|
||||
{
|
||||
set leftFluid;
|
||||
}
|
||||
}
|
||||
{
|
||||
name rightFluid;
|
||||
type cellSet;
|
||||
@ -49,6 +70,16 @@ actions
|
||||
box (2 -1 -1) (10 10 10);
|
||||
}
|
||||
}
|
||||
{
|
||||
name rightFluid;
|
||||
type cellZoneSet;
|
||||
action new;
|
||||
source setToCellZone;
|
||||
sourceInfo
|
||||
{
|
||||
set rightFluid;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// cycLeft
|
||||
@ -74,6 +105,17 @@ actions
|
||||
option all;
|
||||
}
|
||||
}
|
||||
// Create faceZone from cycLeft
|
||||
{
|
||||
name cycLeft;
|
||||
type faceZoneSet;
|
||||
action new;
|
||||
source setToFaceZone;
|
||||
sourceInfo
|
||||
{
|
||||
faceSet cycLeft; // name of faceSet
|
||||
}
|
||||
}
|
||||
|
||||
// cycRight
|
||||
{
|
||||
@ -98,6 +140,18 @@ actions
|
||||
option all;
|
||||
}
|
||||
}
|
||||
// Create faceZone from cycRight
|
||||
{
|
||||
name cycRight;
|
||||
type faceZoneSet;
|
||||
action new;
|
||||
source setToFaceZone;
|
||||
sourceInfo
|
||||
{
|
||||
faceSet cycRight; // name of faceSet
|
||||
}
|
||||
}
|
||||
|
||||
);
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
Reference in New Issue
Block a user