The keyword 'select' is now used to specify the cell, face or point set
selection method consistently across all classes requiring this functionality.
'select' replaces the inconsistently named 'regionType' and 'selectionMode'
keywords used previously but backwards-compatibility is provided for user
convenience. All configuration files and tutorials have been updated.
Examples of 'select' from the tutorial cases:
functionObjects:
cellZoneAverage
{
type volFieldValue;
libs ("libfieldFunctionObjects.so");
writeControl writeTime;
writeInterval 1;
fields (p);
select cellZone;
cellZone injection;
operation volAverage;
writeFields false;
}
#includeFunc populationBalanceSizeDistribution
(
name=numberDensity,
populationBalance=aggregates,
select=cellZone,
cellZone=outlet,
functionType=numberDensity,
coordinateType=projectedAreaDiameter,
allCoordinates=yes,
normalise=yes,
logTransform=yes
)
fvModel:
cylinderHeat
{
type heatSource;
select all;
q 5e7;
}
fvConstraint:
momentumForce
{
type meanVelocityForce;
select all;
Ubar (0.1335 0 0);
}
102 lines
2.2 KiB
C++
102 lines
2.2 KiB
C++
/*--------------------------------*- C++ -*----------------------------------*\
|
|
========= |
|
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
\\ / O peration | Website: https://openfoam.org
|
|
\\ / A nd | Version: dev
|
|
\\/ M anipulation |
|
|
\*---------------------------------------------------------------------------*/
|
|
FoamFile
|
|
{
|
|
format ascii;
|
|
class dictionary;
|
|
object controlDict;
|
|
}
|
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
|
|
application foamRun;
|
|
|
|
solver multiphaseEuler;
|
|
|
|
startFrom startTime;
|
|
|
|
startTime 0;
|
|
|
|
stopAt endTime;
|
|
|
|
endTime 4;
|
|
|
|
deltaT 1e-4;
|
|
|
|
writeControl adjustableRunTime;
|
|
|
|
writeInterval 0.5;
|
|
|
|
purgeWrite 0;
|
|
|
|
writeFormat ascii;
|
|
|
|
writePrecision 6;
|
|
|
|
writeCompression uncompressed;
|
|
|
|
timeFormat general;
|
|
|
|
timePrecision 6;
|
|
|
|
runTimeModifiable yes;
|
|
|
|
adjustTimeStep yes;
|
|
|
|
maxCo 0.8;
|
|
|
|
maxDeltaT 1;
|
|
|
|
functions
|
|
{
|
|
#includeFunc residuals(p_rgh, k.water, omega.water)
|
|
#includeFunc timeStep
|
|
#includeFunc writeObjects(d.air1)
|
|
#includeFunc writeObjects(d.air2)
|
|
#includeFunc phaseForces(phase=water)
|
|
#includeFunc graphUniform
|
|
(
|
|
name=graph,
|
|
start=(0 0 0.89),
|
|
end=(0.025 0 0.89),
|
|
nPoints=100,
|
|
fields=
|
|
(
|
|
alpha.air1
|
|
alpha.air2
|
|
alpha.bubbles
|
|
liftForce.water
|
|
wallLubricationForce.water
|
|
turbulentDispersionForce.water
|
|
)
|
|
)
|
|
|
|
#includeFunc populationBalanceSizeDistribution
|
|
(
|
|
name=probabilityDensity.injection,
|
|
populationBalance=bubbles,
|
|
select=cellZone,
|
|
cellZone=injection,
|
|
functionType=volumeDensity,
|
|
coordinateType=diameter,
|
|
normalise=yes
|
|
)
|
|
|
|
#includeFunc populationBalanceSizeDistribution
|
|
(
|
|
name=probabilityDensity.outlet,
|
|
populationBalance=bubbles,
|
|
select=cellZone,
|
|
cellZone=outlet,
|
|
functionType=volumeDensity,
|
|
coordinateType=diameter,
|
|
normalise=yes
|
|
)
|
|
}
|
|
|
|
// ************************************************************************* //
|