fvOptions: The "<type>Coeffs" sub-dictionary is now optional

For example the actuationDiskSource fvOption may now be specified

disk1
{
    type            actuationDiskSource;

    fields      (U);

    selectionMode   cellSet;
    cellSet         actuationDisk1;
    diskDir         (1 0 0);    // Orientation of the disk
    Cp              0.386;
    Ct              0.58;
    diskArea        40;
    upstreamPoint   (581849 4785810 1065);
}

rather than

disk1
{
    type            actuationDiskSource;
    active          on;

    actuationDiskSourceCoeffs
    {
        fields      (U);

        selectionMode   cellSet;
        cellSet         actuationDisk1;
        diskDir         (1 0 0);    // Orientation of the disk
        Cp              0.386;
        Ct              0.58;
        diskArea        40;
        upstreamPoint   (581849 4785810 1065);
    }
}

but this form is supported for backward compatibility.
This commit is contained in:
Henry Weller
2017-04-13 13:30:17 +01:00
parent 24b7901d09
commit e3c67dc111
39 changed files with 383 additions and 529 deletions

View File

@ -18,7 +18,6 @@ FoamFile
porosity1
{
type explicitPorositySource;
active yes;
explicitPorositySourceCoeffs
{
@ -27,21 +26,18 @@ porosity1
type DarcyForchheimer;
DarcyForchheimerCoeffs
{
d (7e5 -1000 -1000);
f (0 0 0);
d (7e5 -1000 -1000);
f (0 0 0);
coordinateSystem
coordinateSystem
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type axesRotation;
e1 (0.70710678 0.70710678 0);
e3 (0 0 1);
}
type axesRotation;
e1 (0.70710678 0.70710678 0);
e3 (0 0 1);
}
}
}

View File

@ -18,7 +18,6 @@ FoamFile
porosity1
{
type explicitPorositySource;
active yes;
explicitPorositySourceCoeffs
{
@ -27,21 +26,18 @@ porosity1
type DarcyForchheimer;
DarcyForchheimerCoeffs
{
d (5e7 -1000 -1000);
f (0 0 0);
d (5e7 -1000 -1000);
f (0 0 0);
coordinateSystem
coordinateSystem
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type axesRotation;
e1 (0.70710678 0.70710678 0);
e2 (0 0 1);
}
type axesRotation;
e1 (0.70710678 0.70710678 0);
e2 (0 0 1);
}
}
}

View File

@ -18,7 +18,6 @@ FoamFile
porosity1
{
type explicitPorositySource;
active yes;
explicitPorositySourceCoeffs
{
@ -27,21 +26,18 @@ porosity1
type DarcyForchheimer;
DarcyForchheimerCoeffs
{
d (1e5 -1000 -1000);
f (0 0 0);
d (1e5 -1000 -1000);
f (0 0 0);
coordinateSystem
coordinateSystem
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type axesRotation;
e1 (1 0 0);
e2 (0 1 0);
}
type axesRotation;
e1 (1 0 0);
e2 (0 1 0);
}
}
}

View File

@ -18,16 +18,12 @@ FoamFile
source1
{
type fixedTemperatureConstraint;
active yes;
fixedTemperatureConstraintCoeffs
{
selectionMode cellZone;
cellZone porosity;
selectionMode cellZone;
cellZone porosity;
mode uniform;
temperature 350;
}
mode uniform;
temperature 350;
}

View File

@ -18,7 +18,6 @@ FoamFile
porosity
{
type explicitPorositySource;
active yes;
explicitPorositySourceCoeffs
{
@ -53,32 +52,24 @@ porosity
fixedTemperature
{
type fixedTemperatureConstraint;
active yes;
fixedTemperatureConstraintCoeffs
{
selectionMode cellZone;
cellZone porosity;
mode uniform;
temperature 350;
}
selectionMode cellZone;
cellZone porosity;
mode uniform;
temperature 350;
}
porosityTurbulence
{
type scalarFixedValueConstraint;
active yes;
scalarFixedValueConstraintCoeffs
selectionMode cellZone;
cellZone porosity;
fieldValues
{
selectionMode cellZone;
cellZone porosity;
fieldValues
{
k 1;
epsilon 150;
}
k 1;
epsilon 150;
}
}

View File

@ -18,24 +18,19 @@ FoamFile
airToporous
{
type constantHeatTransfer;
active yes;
constantHeatTransferCoeffs
{
interpolationMethod cellVolumeWeight;
nbrRegionName porous;
master false;
interpolationMethod cellVolumeWeight;
nbrRegionName porous;
master false;
nbrModel porousToair;
fields (h);
semiImplicit no;
}
nbrModel porousToair;
fields (h);
semiImplicit no;
}
porosityBlockage
{
type interRegionExplicitPorositySource;
active yes;
interRegionExplicitPorositySourceCoeffs
{
@ -44,21 +39,18 @@ porosityBlockage
type DarcyForchheimer;
DarcyForchheimerCoeffs
{
d (-1000 -1000 1e4);
f (0 0 0);
d (-1000 -1000 1e4);
f (0 0 0);
coordinateSystem
coordinateSystem
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type axesRotation;
e1 (0 1 0);
e2 (0 0 1);
}
type axesRotation;
e1 (0 1 0);
e2 (0 0 1);
}
}
}

View File

@ -18,18 +18,14 @@ FoamFile
porousToair
{
type constantHeatTransfer;
active yes;
constantHeatTransferCoeffs
{
interpolationMethod cellVolumeWeight;
nbrRegionName air;
master true;
interpolationMethod cellVolumeWeight;
nbrRegionName air;
master true;
nbrModel airToporous;
fields (h);
semiImplicit no;
}
nbrModel airToporous;
fields (h);
semiImplicit no;
}

View File

@ -18,15 +18,11 @@ FoamFile
momentumSource
{
type meanVelocityForce;
active yes;
meanVelocityForceCoeffs
{
selectionMode all;
selectionMode all;
fields (U);
Ubar (0.1335 0 0);
}
fields (U);
Ubar (0.1335 0 0);
}

View File

@ -18,19 +18,15 @@ FoamFile
momentumSource
{
type vectorSemiImplicitSource;
active yes;
vectorSemiImplicitSourceCoeffs
timeStart 0.0;
duration 1000;
selectionMode all;
volumeMode specific;
injectionRateSuSp
{
timeStart 0.0;
duration 1000;
selectionMode all;
volumeMode specific;
injectionRateSuSp
{
U ((5 0 0) 0);
}
U ((5 0 0) 0);
}
}

View File

@ -50,13 +50,7 @@ IOdictionary fvOptions
)
);
const dictionary& gradPDict =
fvOptions.subDict("momentumSource").subDict
(
"vectorSemiImplicitSourceCoeffs"
).subDict
(
"injectionRateSuSp"
);
fvOptions.subDict("momentumSource").subDict("injectionRateSuSp");
const scalar K =
Tuple2<vector, scalar>(gradPDict.lookup("U")).first().x();

View File

@ -18,7 +18,6 @@ FoamFile
porosity1
{
type explicitPorositySource;
active yes;
explicitPorositySourceCoeffs
{
@ -32,21 +31,18 @@ porosity1
// D 500; // Slight waviness in the far wake
D 1000; // Fully shedding behavior
DarcyForchheimerCoeffs
{
d ($D $D $D);
f (0 0 0);
d ($D $D $D);
f (0 0 0);
coordinateSystem
coordinateSystem
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type axesRotation;
e1 (1 0 0);
e2 (0 1 0);
}
type axesRotation;
e1 (1 0 0);
e2 (0 1 0);
}
}
}

View File

@ -17,89 +17,85 @@ FoamFile
disk
{
type rotorDisk;
active on;
rotorDiskCoeffs
selectionMode cellZone;
cellZone rotatingZone;
fields (U); // Names of fields on which to apply source
nBlades 3; // Number of blades
tipEffect 0.96; // Normalised radius above which lift = 0
inletFlowType local; // Inlet flow type specification
inletVelocity (0 1 0);
geometryMode specified;
origin (0 0 0);
axis (0 1 0);
refDirection (0 0 1); // Reference direction
// - used as reference for psi angle
rpm 1000;
//pointAbove (0 0 0.25);
trimModel fixedTrim; // fixed || targetForce
rhoRef 1000;
rhoInf 1;
fixedTrimCoeffs
{
selectionMode cellZone;
cellZone rotatingZone;
theta0 0;
theta1c 0;
theta1s 0;
}
fields (U); // Names of fields on which to apply source
nBlades 3; // Number of blades
tipEffect 0.96; // Normalised radius above which lift = 0
flapCoeffs
{
beta0 0; // Coning angle [deg]
beta1c 0; // Lateral flapping coeff (cos coeff)
beta2s 0; // Longitudinal flapping coeff (sin coeff)
}
inletFlowType local; // Inlet flow type specification
inletVelocity (0 1 0);
blade
{
data
(
(profile1 (0.1 -6 0.02))
(profile1 (0.25 -6 0.02))
);
}
geometryMode specified;
origin (0 0 0);
axis (0 1 0);
refDirection (0 0 1); // Reference direction
// - used as reference for psi angle
rpm 1000;
//pointAbove (0 0 0.25);
trimModel fixedTrim; // fixed || targetForce
rhoRef 1000;
rhoInf 1;
fixedTrimCoeffs
{
theta0 0;
theta1c 0;
theta1s 0;
}
flapCoeffs
{
beta0 0; // Coning angle [deg]
beta1c 0; // Lateral flapping coeff (cos coeff)
beta2s 0; // Longitudinal flapping coeff (sin coeff)
}
blade
profiles
{
profile1
{
type lookup;
data
(
(profile1 (0.1 -6 0.02))
(profile1 (0.25 -6 0.02))
(-90 0.21 1.45)
(-18 0.21 1.45)
(-16 0.165 1.3)
(-14 0.125 1.1)
(-12 0.092 0.95)
(-10 0.07 0.8)
(-8 0.05 0.64)
(-6 0.04 0.5)
(-4 0.028 0.32)
(-2 0.022 0.18)
(0 0.02 0)
(2 0.022 0.18)
(4 0.028 0.32)
(6 0.04 0.5)
(8 0.05 0.64)
(10 0.07 0.8)
(12 0.092 0.95)
(14 0.125 1.1)
(16 0.165 1.3)
(18 0.21 1.45)
(90 0.21 1.45)
);
}
profiles
{
profile1
{
type lookup;
data
(
(-90 0.21 1.45)
(-18 0.21 1.45)
(-16 0.165 1.3)
(-14 0.125 1.1)
(-12 0.092 0.95)
(-10 0.07 0.8)
(-8 0.05 0.64)
(-6 0.04 0.5)
(-4 0.028 0.32)
(-2 0.022 0.18)
(0 0.02 0)
(2 0.022 0.18)
(4 0.028 0.32)
(6 0.04 0.5)
(8 0.05 0.64)
(10 0.07 0.8)
(12 0.092 0.95)
(14 0.125 1.1)
(16 0.165 1.3)
(18 0.21 1.45)
(90 0.21 1.45)
);
}
}
}
}

View File

@ -18,39 +18,31 @@ FoamFile
disk1
{
type actuationDiskSource;
active on;
actuationDiskSourceCoeffs
{
fields (U);
fields (U);
selectionMode cellSet;
cellSet actuationDisk1;
diskDir (1 0 0); // Orientation of the disk
Cp 0.386;
Ct 0.58;
diskArea 40;
upstreamPoint (581849 4785810 1065);
}
selectionMode cellSet;
cellSet actuationDisk1;
diskDir (1 0 0); // Orientation of the disk
Cp 0.386;
Ct 0.58;
diskArea 40;
upstreamPoint (581849 4785810 1065);
}
disk2
{
type actuationDiskSource;
active on;
actuationDiskSourceCoeffs
{
fields (U);
fields (U);
selectionMode cellSet;
cellSet actuationDisk2;
diskDir (1 0 0); // Orientation of the disk
Cp 0.53;
Ct 0.58;
diskArea 40;
upstreamPoint (581753 4785663 1070);
}
selectionMode cellSet;
cellSet actuationDisk2;
diskDir (1 0 0); // Orientation of the disk
Cp 0.53;
Ct 0.58;
diskArea 40;
upstreamPoint (581753 4785663 1070);
}

View File

@ -18,18 +18,14 @@ FoamFile
source1
{
type fixedTemperatureConstraint;
active yes;
fixedTemperatureConstraintCoeffs
{
timeStart 0.1;
duration 0.4;
selectionMode cellSet;
cellSet ignitionCells;
timeStart 0.1;
duration 0.4;
selectionMode cellSet;
cellSet ignitionCells;
mode uniform;
temperature 2000;
}
mode uniform;
temperature 2000;
}

View File

@ -18,7 +18,6 @@ FoamFile
filter1
{
type explicitPorositySource;
active yes;
explicitPorositySourceCoeffs
{
@ -27,21 +26,18 @@ filter1
type DarcyForchheimer;
DarcyForchheimerCoeffs
{
d (500000 -1000 -1000);
f (0 0 0);
d (500000 -1000 -1000);
f (0 0 0);
coordinateSystem
coordinateSystem
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type axesRotation;
e1 (1 0 0);
e2 (0 1 0);
}
type axesRotation;
e1 (1 0 0);
e2 (0 1 0);
}
}
}
@ -51,24 +47,20 @@ filter1
massSource1
{
type scalarSemiImplicitSource;
active yes;
scalarSemiImplicitSourceCoeffs
timeStart 0.2;
duration 2.0;
selectionMode points;
points
(
(2.75 0.5 0)
);
volumeMode absolute;
injectionRateSuSp
{
timeStart 0.2;
duration 2.0;
selectionMode points;
points
(
(2.75 0.5 0)
);
volumeMode absolute;
injectionRateSuSp
{
rho (1e-4 0); // kg/s
H2O (1e-4 0); // kg/s
}
rho (1e-4 0); // kg/s
H2O (1e-4 0); // kg/s
}
}
@ -76,23 +68,19 @@ massSource1
momentumSource1
{
type vectorSemiImplicitSource;
active yes;
vectorSemiImplicitSourceCoeffs
timeStart 0.2;
duration 2.0;
selectionMode points;
points
(
(2.75 0.5 0)
);
volumeMode absolute;
injectionRateSuSp
{
timeStart 0.2;
duration 2.0;
selectionMode points;
points
(
(2.75 0.5 0)
);
volumeMode absolute;
injectionRateSuSp
{
U ((0 0.005 0) 0);
}
U ((0 0.005 0) 0);
}
}
@ -100,23 +88,19 @@ momentumSource1
energySource1
{
type scalarSemiImplicitSource;
active yes;
scalarSemiImplicitSourceCoeffs
timeStart 0.2;
duration 2.0;
selectionMode points;
points
(
(2.75 0.5 0)
);
volumeMode absolute;
injectionRateSuSp
{
timeStart 0.2;
duration 2.0;
selectionMode points;
points
(
(2.75 0.5 0)
);
volumeMode absolute;
injectionRateSuSp
{
h (10 0);
}
h (10 0);
}
}

View File

@ -18,7 +18,6 @@ FoamFile
porosity1
{
type explicitPorositySource;
active yes;
explicitPorositySourceCoeffs
{
@ -27,21 +26,18 @@ porosity1
type DarcyForchheimer;
DarcyForchheimerCoeffs
{
d (2e8 -1000 -1000);
f (0 0 0);
d (2e8 -1000 -1000);
f (0 0 0);
coordinateSystem
coordinateSystem
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type cartesian;
origin (0 0 0);
coordinateRotation
{
type axesRotation;
e1 (0.70710678 0.70710678 0);
e2 (0 0 1);
}
type axesRotation;
e1 (0.70710678 0.70710678 0);
e2 (0 0 1);
}
}
}

View File

@ -32,15 +32,12 @@ options
{
type scalarSemiImplicitSource;
scalarSemiImplicitSourceCoeffs
{
$injector1;
$injector1;
volumeMode absolute;
injectionRateSuSp
{
thermo:rho.air (1e-3 0); // kg/s
}
volumeMode absolute;
injectionRateSuSp
{
thermo:rho.air (1e-3 0); // kg/s
}
}
@ -48,15 +45,12 @@ options
{
type vectorSemiImplicitSource;
vectorSemiImplicitSourceCoeffs
{
$injector1;
$injector1;
volumeMode absolute;
injectionRateSuSp
{
U.air ((0 -1e-2 0) 0); // kg*m/s^2
}
volumeMode absolute;
injectionRateSuSp
{
U.air ((0 -1e-2 0) 0); // kg*m/s^2
}
}
@ -64,15 +58,12 @@ options
{
type scalarSemiImplicitSource;
scalarSemiImplicitSourceCoeffs
{
$injector1;
$injector1;
volumeMode absolute;
injectionRateSuSp
{
e.air (500 0); // kg*m^2/s^3
}
volumeMode absolute;
injectionRateSuSp
{
e.air (500 0); // kg*m^2/s^3
}
}
}

View File

@ -32,15 +32,12 @@ options
{
type scalarSemiImplicitSource;
scalarSemiImplicitSourceCoeffs
{
$injector1;
$injector1;
volumeMode absolute;
injectionRateSuSp
{
thermo:rho.steam (1.0e-3 0); // kg/s
}
volumeMode absolute;
injectionRateSuSp
{
thermo:rho.steam (1.0e-3 0); // kg/s
}
}
@ -48,15 +45,12 @@ options
{
type vectorSemiImplicitSource;
vectorSemiImplicitSourceCoeffs
{
$injector1;
$injector1;
volumeMode absolute;
injectionRateSuSp
{
U.steam ((0 1e-1 0) 0); // kg*m/s^2
}
volumeMode absolute;
injectionRateSuSp
{
U.steam ((0 1e-1 0) 0); // kg*m/s^2
}
}
@ -64,15 +58,12 @@ options
{
type scalarSemiImplicitSource;
scalarSemiImplicitSourceCoeffs
{
$injector1;
$injector1;
volumeMode absolute;
injectionRateSuSp
{
h.steam (3700 0); // kg*m^2/s^3
}
volumeMode absolute;
injectionRateSuSp
{
h.steam (3700 0); // kg*m^2/s^3
}
}
}

View File

@ -32,15 +32,12 @@ options
{
type scalarSemiImplicitSource;
scalarSemiImplicitSourceCoeffs
{
$injector1;
$injector1;
volumeMode absolute;
injectionRateSuSp
{
thermo:rho.air (1e-3 0); // kg/s
}
volumeMode absolute;
injectionRateSuSp
{
thermo:rho.air (1e-3 0); // kg/s
}
}
@ -48,15 +45,12 @@ options
{
type vectorSemiImplicitSource;
vectorSemiImplicitSourceCoeffs
{
$injector1;
$injector1;
volumeMode absolute;
injectionRateSuSp
{
U.air ((0 -1e-2 0) 0); // kg*m/s^2
}
volumeMode absolute;
injectionRateSuSp
{
U.air ((0 -1e-2 0) 0); // kg*m/s^2
}
}
@ -64,15 +58,12 @@ options
{
type scalarSemiImplicitSource;
scalarSemiImplicitSourceCoeffs
{
$injector1;
$injector1;
volumeMode absolute;
injectionRateSuSp
{
e.air (500 0); // kg*m^2/s^3
}
volumeMode absolute;
injectionRateSuSp
{
e.air (500 0); // kg*m^2/s^3
}
}
}