ENH: flowRateInletVelocity: different keywords for volumetric and mass

This commit is contained in:
mattijs
2012-09-20 14:21:40 +01:00
parent dcca9323d1
commit dfa74d978c
43 changed files with 446 additions and 288 deletions

View File

@ -37,7 +37,7 @@ boundaryField
burner
{
type flowRateInletVelocity;
flowRate constant 0.001294; //60kW C3H8
massFlowRate constant 0.001294; //60kW C3H8
value uniform (0 0 0);
}

View File

@ -43,7 +43,7 @@ boundaryField
inlet
{
type flowRateInletVelocity;
flowRate constant 0.1;
massFlowRate constant 0.1;
value uniform (0 0 0);
}
outlet

View File

@ -43,8 +43,8 @@ boundaryField
inlet
{
type flowRateInletVelocity;
flowRate constant 0.1;
value uniform (0 0 0);
massFlowRate constant 0.1;
rhoInlet 1; // estimate for initial rho
}
outlet
{

View File

@ -17,7 +17,7 @@ FoamFile
application rhoPimplecFoam;
startFrom startTime;
startFrom latestTime; //startTime;
startTime 0;

View File

@ -43,7 +43,7 @@ boundaryField
inlet
{
type flowRateInletVelocity;
flowRate constant 0.1;
massFlowRate constant 0.1;
value uniform (0 0 0);
}
outlet

View File

@ -43,7 +43,7 @@ boundaryField
inlet
{
type flowRateInletVelocity;
flowRate constant 0.1;
massFlowRate constant 0.1;
value uniform (0 0 0);
}
outlet

View File

@ -28,8 +28,8 @@ boundaryField
inlet
{
type flowRateInletVelocity;
flowRate constant 0.5;
value uniform (0 0 0);
massFlowRate constant 0.5;
rhoInlet 0.5; // Guess for rho
}
outlet
{

View File

@ -17,7 +17,7 @@ FoamFile
application rhoSimplecFoam;
startFrom startTime;
startFrom latestTime; //startTime;
startTime 0;

View File

@ -42,7 +42,7 @@ boundary
(
maxY
{
type empty;
type symmetryPlane;
faces
(
(3 7 6 2)
@ -51,7 +51,7 @@ boundary
minX
{
type empty;
type symmetryPlane;
faces
(
(0 4 7 3)
@ -60,7 +60,7 @@ boundary
maxX
{
type empty;
type symmetryPlane;
faces
(
(2 6 5 1)
@ -69,7 +69,7 @@ boundary
minY
{
type empty;
type symmetryPlane;
faces
(
(1 5 4 0)
@ -87,7 +87,7 @@ boundary
maxZ
{
type empty;
type symmetryPlane;
faces
(
(4 5 6 7)

View File

@ -19,25 +19,29 @@ FoamFile
(
maxY
{
type empty;
type symmetryPlane;
inGroups 1(symmetryPlane);
nFaces 400;
startFace 22800;
}
minX
{
type empty;
type symmetryPlane;
inGroups 1(symmetryPlane);
nFaces 400;
startFace 23200;
}
maxX
{
type empty;
type symmetryPlane;
inGroups 1(symmetryPlane);
nFaces 400;
startFace 23600;
}
minY
{
type empty;
type symmetryPlane;
inGroups 1(symmetryPlane);
nFaces 400;
startFace 24000;
}
@ -49,7 +53,8 @@ FoamFile
}
maxZ
{
type empty;
type symmetryPlane;
inGroups 1(symmetryPlane);
nFaces 400;
startFace 24800;
}

View File

@ -35,6 +35,18 @@ geometry
radius 4;
}
// // Define floor just so we have feature edges behave correctly
// floor
// {
// type searchablePlane;
// planeType pointAndNormal;
// pointAndNormalDict
// {
// basePoint (0 0 0);
// normalVector (0 0 1);
// }
// }
box1
{
type searchableBox;
@ -187,6 +199,11 @@ castellatedMeshControls
// Surface-wise min and max refinement level
level (1 1);
}
// floor
// {
// // Surface-wise min and max refinement level
// level (1 1);
// }
}
// Resolve sharp angles on fridges
@ -235,12 +252,15 @@ snapControls
{
//- Number of patch smoothing iterations before finding correspondence
// to surface
nSmoothPatch 3;
// nSmoothPatch 3;
//nSmoothPatch 0; //! Only since blockMesh aligned with surfaces it is
// actually beneficial to run with 0 smoothing.
nSmoothPatch 1;
//- Relative distance for points to be attracted by surface feature point
// or edge. True distance is this factor times local
// maximum edge length.
tolerance 4.0;
tolerance 2.0;
//- Number of mesh displacement relaxation iterations.
nSolveIter 30;
@ -248,6 +268,19 @@ snapControls
//- Maximum number of snapping relaxation iterations. Should stop
// before upon reaching a correct mesh.
nRelaxIter 5;
// Feature snapping
//- Number of feature edge snapping iterations.
// Leave out altogether to disable.
nFeatureSnapIter 10;
//- Detect (geometric) features by sampling the surface (default=false)
implicitFeatureSnap true;
//- Use castellatedMeshControls::features (default = true)
explicitFeatureSnap false;
}
@ -281,7 +314,7 @@ addLayersControls
// Relative to undistorted size of cell outside layer.
// is the thickness of the layer furthest away from the wall.
// See relativeSizes parameter.
finalLayerThickness 0.5;
finalLayerThickness 1;
//- Minimum thickness of cell layer. If for any reason layer
// cannot be above minThickness do not add layer.
@ -342,52 +375,7 @@ addLayersControls
// where to undo.
meshQualityControls
{
//- Maximum non-orthogonality allowed. Set to 180 to disable.
maxNonOrtho 65;
//- Max skewness allowed. Set to <0 to disable.
maxBoundarySkewness 20;
maxInternalSkewness 4;
//- Max concaveness allowed. Is angle (in degrees) below which concavity
// is allowed. 0 is straight face, <0 would be convex face.
// Set to 180 to disable.
maxConcave 80;
//- Minimum pyramid volume. Is absolute volume of cell pyramid.
// Set to a sensible fraction of the smallest cell volume expected.
// Set to very negative number (e.g. -1E30) to disable.
minVol 1e-13;
//- Minimum quality of the tet formed by the face-centre
// and variable base point minimum decomposition triangles and
// the cell centre. Set to very negative number (e.g. -1E30) to
// disable.
// <0 = inside out tet,
// 0 = flat tet
// 1 = regular tet
minTetQuality 1e-30;
//- Minimum face area. Set to <0 to disable.
minArea -1;
//- Minimum face twist. Set to <-1 to disable. dot product of face normal
//- and face centre triangles normal
minTwist 0.05;
//- minimum normalised cell determinant
//- 1 = hex, <= 0 = folded or flattened illegal cell
minDeterminant 0.001;
//- minFaceWeight (0 -> 0.5)
minFaceWeight 0.05;
//- minVolRatio (0 -> 1)
minVolRatio 0.01;
//must be >0 for Fluent compatibility
minTriangleTwist -1;
#include "meshQualityDict"
// Advanced
@ -405,7 +393,7 @@ meshQualityControls
// 1 : write intermediate meshes
// 2 : write volScalarField with cellLevel for postprocessing
// 4 : write current intersections as .obj files
debug 0;
debug 7;
// Merge tolerance. Is fraction of overall bounding box of initial mesh.

View File

@ -32,12 +32,14 @@ FoamFile
front
{
type empty;
inGroups 1(empty);
nFaces 3072;
startFace 6336;
}
back
{
type empty;
inGroups 1(empty);
nFaces 3072;
startFace 9408;
}

View File

@ -46,6 +46,7 @@ boundary
(
(3 7 6 2)
);
inGroups (groupWall);
}
fixedWalls
{
@ -56,6 +57,7 @@ boundary
(2 6 5 1)
(1 5 4 0)
);
inGroups (groupWall);
}
frontAndBack
{

View File

@ -39,7 +39,7 @@ divSchemes
laplacianSchemes
{
default Gauss linear corrected;
default Gauss linear limited 0.33;
}
interpolationSchemes
@ -49,7 +49,7 @@ interpolationSchemes
snGradSchemes
{
default corrected;
default limited 0.33;
}
fluxRequired

View File

@ -17,7 +17,7 @@ FoamFile
numberOfSubdomains 8;
method hierarchical;
method hierarchical; //ptscotch;
simpleCoeffs
{

View File

@ -43,8 +43,7 @@ boundaryField
inlet
{
type flowRateInletVelocity;
flowRate constant 0.1;
value uniform (0 0 0);
volumetricFlowRate constant 0.1;
}
outlet
{

View File

@ -17,7 +17,7 @@ FoamFile
application porousSimpleFoam;
startFrom startTime;
startFrom latestTime; //startTime;
startTime 0;

View File

@ -58,7 +58,6 @@ functions
type forces;
functionObjectLibs ("libforces.so");
outputControl outputTime;
outputInterval 1;
patches (floatingObject);
pName p;
UName U;
@ -74,7 +73,7 @@ functions
functionObjectLibs ("libfieldFunctionObjects.so");
enabled true;
outputControl timeStep;
timeInteval 1;
outputInterval 1;
log true;
valueOutput false;
source faceZone;

View File

@ -14,6 +14,8 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
libs ("libincompressibleRASModels.so");
application simpleFoam;
startFrom latestTime;

View File

@ -32,13 +32,13 @@ boundaryField
inletCentral
{
type flowRateInletVelocity;
flowRate constant 0.00379;
massFlowRate constant 0.00379;
value uniform (0 14.68 0);
}
inletSides
{
type flowRateInletVelocity;
flowRate constant 0.00832;
massFlowRate constant 0.00832;
value uniform (0 17.79 0);
}
outlet

View File

@ -32,13 +32,13 @@ boundaryField
inletCentral
{
type flowRateInletVelocity;
flowRate constant 0.00379;
massFlowRate constant 0.00379;
value uniform (0 14.68 0);
}
inletSides
{
type flowRateInletVelocity;
flowRate constant 0.00832;
massFlowRate constant 0.00832;
value uniform (0 17.79 0);
}
outlet

View File

@ -32,13 +32,13 @@ boundaryField
inletCentral
{
type flowRateInletVelocity;
flowRate constant 0.00379;
massFlowRate constant 0.00379;
value uniform (0 14.68 0);
}
inletSides
{
type flowRateInletVelocity;
flowRate constant 0.00832;
massFlowRate constant 0.00832;
value uniform (0 17.79 0);
}
outlet

View File

@ -32,13 +32,13 @@ boundaryField
inletCentral
{
type flowRateInletVelocity;
flowRate constant 0.00379;
massFlowRate constant 0.00379;
value uniform (0 14.68 0);
}
inletSides
{
type flowRateInletVelocity;
flowRate constant 0.00832;
massFlowRate constant 0.00832;
value uniform (0 17.79 0);
}
outlet

View File

@ -83,4 +83,4 @@ solid ascii
vertex 1.3 -0.9 1
endloop
endfacet
endsolid
end solid

View File

@ -25,6 +25,7 @@ solver displacementSBRStress; //displacementLaplacian;
displacementSBRStressCoeffs
{
solveOnPoints0 true;
// diffusivity uniform;
// diffusivity directional (1 200 0);
// diffusivity motionDirectional (1 1000 0);

View File

@ -31,7 +31,8 @@ vertices
blocks
(
hex (0 1 2 3 4 5 6 7) (20 60 60) simpleGrading (10.0 1 1)
// hex (0 1 2 3 4 5 6 7) (20 60 60) simpleGrading (10.0 1 1)
hex (0 1 2 3 4 5 6 7) (6 6 6) simpleGrading (10.0 1 1)
);
edges

View File

@ -8,7 +8,7 @@
FoamFile
{
version 2.0;
format binary;
format ascii;
class polyBoundaryMesh;
location "constant/polyMesh";
object boundary;
@ -20,38 +20,38 @@ FoamFile
maxX
{
type patch;
nFaces 1200;
startFace 210000;
nFaces 36;
startFace 540;
}
minZ
{
type patch;
nFaces 3600;
startFace 211200;
nFaces 36;
startFace 576;
}
maxZ
{
type patch;
nFaces 3600;
startFace 214800;
nFaces 36;
startFace 612;
}
minX
{
type patch;
nFaces 1200;
startFace 218400;
nFaces 36;
startFace 648;
}
minY
{
type patch;
nFaces 1200;
startFace 219600;
nFaces 36;
startFace 684;
}
maxY
{
type patch;
nFaces 1200;
startFace 220800;
nFaces 36;
startFace 720;
}
)

View File

@ -17,23 +17,23 @@ FoamFile
application moveDynamicMesh;
startFrom startTime;
startFrom latestTime; //startTime;
startTime 0;
stopAt endTime;
endTime 25;
endTime 30;
deltaT 1;
writeControl timeStep;
writeInterval 5;
writeInterval 1;
purgeWrite 0;
writeFormat binary;
writeFormat ascii;//binary;
writePrecision 6;

View File

@ -17,7 +17,7 @@ FoamFile
application icoFoam;
startFrom startTime;
startFrom latestTime;
startTime 0;

View File

@ -16,7 +16,7 @@ FoamFile
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// Which of the steps to run
castellatedMesh true;
castellatedMesh false;
snap true;
addLayers false;
@ -85,10 +85,10 @@ castellatedMeshControls
// This is a featureEdgeMesh, read from constant/triSurface for now.
features
(
{
file "flange.eMesh";
level 0;
}
// {
// file "flange.eMesh";
// level 0;
// }
);
@ -175,9 +175,17 @@ snapControls
// before upon reaching a correct mesh.
nRelaxIter 5;
//- Highly experimental and wip: number of feature edge snapping
// iterations. Leave out altogether to disable.
nFeatureSnapIter 10;
// Feature snapping
//- Number of feature edge snapping iterations.
// Leave out altogether to disable.
nFeatureSnapIter 10;
//- Detect (geometric) features by sampling the surface
implicitFeatureSnap true;
//- Use castellatedMeshControls::features
explicitFeatureSnap false;
}

View File

@ -59,7 +59,6 @@ functions
type probes;
functionObjectLibs ("libsampling.so");
outputControl outputTime;
outputInterval 1;
probeLocations
(
( 0 9.95 19.77 )
@ -76,9 +75,7 @@ functions
type surfaces;
functionObjectLibs ("libsampling.so");
outputControl outputTime;
outputInterval 10;
surfaceFormat raw;
interpolationScheme isThisNeeded;
fields
(
p

View File

@ -58,7 +58,6 @@ functions
type probes;
functionObjectLibs ("libsampling.so");
outputControl outputTime;
outputInterval 1;
probeLocations
(
( 0 9.95 19.77 )
@ -75,9 +74,7 @@ functions
type surfaces;
functionObjectLibs ("libsampling.so");
outputControl outputTime;
outputInterval 10;
surfaceFormat raw;
interpolationScheme isThisNeeded;
fields
(
p

View File

@ -23,8 +23,7 @@ boundaryField
inlet
{
type flowRateInletVelocity;
flowRate constant 50;
value uniform (0 0 0);
volumetricFlowRate constant 50;
}
walls