fvOptions: Separate options for all cells, cellSets and inter-region coupling

by introducing rational base-classes rather than using the hideous
'switch' statement.  Further rationalization of the cell-selection
mechanism will be implemented via an appropriate class hierarchy to
replace the remaining 'switch' statement.

Mesh-motion is currently handled very inefficiently for cellSets and not
at all for inter-region coupling.  The former will be improved when the
cell-selection classes are written and the latter by making the
meshToMesh class a MeshObject after it has been corrected for mapFields.
This commit is contained in:
Henry
2015-05-31 16:38:01 +01:00
parent 2b9a2adf8c
commit b8d15ba459
75 changed files with 1647 additions and 1068 deletions

View File

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

View File

@ -18,12 +18,13 @@ FoamFile
filter1
{
type explicitPorositySource;
selectionMode cellZone;
cellZone filter;
active true;
active yes;
explicitPorositySourceCoeffs
{
selectionMode cellZone;
cellZone filter;
type DarcyForchheimer;
DarcyForchheimerCoeffs
@ -50,17 +51,18 @@ filter1
massSource1
{
type scalarSemiImplicitSource;
active true;
timeStart 0.2;
duration 2.0;
selectionMode points;
points
(
(2.75 0.5 0)
);
active yes;
scalarSemiImplicitSourceCoeffs
{
timeStart 0.2;
duration 2.0;
selectionMode points;
points
(
(2.75 0.5 0)
);
volumeMode absolute;
injectionRateSuSp
{
@ -74,17 +76,18 @@ massSource1
momentumSource1
{
type vectorSemiImplicitSource;
active true;
timeStart 0.2;
duration 2.0;
selectionMode points;
points
(
(2.75 0.5 0)
);
active yes;
vectorSemiImplicitSourceCoeffs
{
timeStart 0.2;
duration 2.0;
selectionMode points;
points
(
(2.75 0.5 0)
);
volumeMode absolute;
injectionRateSuSp
{
@ -97,17 +100,18 @@ momentumSource1
energySource1
{
type scalarSemiImplicitSource;
active true;
timeStart 0.2;
duration 2.0;
selectionMode points;
points
(
(2.75 0.5 0)
);
active yes;
scalarSemiImplicitSourceCoeffs
{
timeStart 0.2;
duration 2.0;
selectionMode points;
points
(
(2.75 0.5 0)
);
volumeMode absolute;
injectionRateSuSp
{