ENH: Encapsulated cloud sub-models in sub-dictionary

This commit is contained in:
andy
2010-10-18 16:06:47 +01:00
parent 8962878a1c
commit e54dae6db7
18 changed files with 875 additions and 842 deletions

View File

@ -257,6 +257,7 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud
)
),
constProps_(particleProperties_),
subModelProperties_(particleProperties_.subDict("subModels")),
active_(particleProperties_.lookup("active")),
parcelTypeId_(readLabel(particleProperties_.lookup("parcelTypeId"))),
coupled_(particleProperties_.lookup("coupled")),
@ -276,7 +277,7 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud
(
DispersionModel<KinematicCloud<ParcelType> >::New
(
particleProperties_,
subModelProperties_,
*this
)
),
@ -284,7 +285,7 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud
(
DragModel<KinematicCloud<ParcelType> >::New
(
particleProperties_,
subModelProperties_,
*this
)
),
@ -292,7 +293,7 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud
(
InjectionModel<KinematicCloud<ParcelType> >::New
(
particleProperties_,
subModelProperties_,
*this
)
),
@ -300,7 +301,7 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud
(
CollisionModel<KinematicCloud<ParcelType> >::New
(
particleProperties_,
subModelProperties_,
*this
)
),
@ -308,7 +309,7 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud
(
PatchInteractionModel<KinematicCloud<ParcelType> >::New
(
particleProperties_,
subModelProperties_,
*this
)
),
@ -316,7 +317,7 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud
(
PostProcessingModel<KinematicCloud<ParcelType> >::New
(
this->particleProperties_,
subModelProperties_,
*this
)
),
@ -324,7 +325,7 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud
(
SurfaceFilmModel<KinematicCloud<ParcelType> >::New
(
this->particleProperties_,
subModelProperties_,
*this,
g
)

View File

@ -115,6 +115,9 @@ protected:
//- Dictionary of particle properties
IOdictionary particleProperties_;
//- Sub-models dictionary
const dictionary& subModelProperties_;
//- Parcel constant properties
typename ParcelType::constantProperties constProps_;
@ -275,6 +278,9 @@ public:
//- Return particle properties dictionary
inline const IOdictionary& particleProperties() const;
//- Return reference to the sub-models dictionary
inline const dictionary& subModelProperties() const;
//- Return the constant properties
inline const typename ParcelType::constantProperties&
constProps() const;

View File

@ -56,6 +56,14 @@ Foam::KinematicCloud<ParcelType>::particleProperties() const
}
template<class ParcelType>
inline const Foam::dictionary&
Foam::KinematicCloud<ParcelType>::subModelProperties() const
{
return subModelProperties_;
}
template<class ParcelType>
inline const typename ParcelType::constantProperties&
Foam::KinematicCloud<ParcelType>::constProps() const

View File

@ -183,7 +183,7 @@ Foam::ReactingCloud<ParcelType>::ReactingCloud
(
CompositionModel<ReactingCloud<ParcelType> >::New
(
this->particleProperties(),
this->subModelProperties(),
*this
)
),
@ -191,7 +191,7 @@ Foam::ReactingCloud<ParcelType>::ReactingCloud
(
PhaseChangeModel<ReactingCloud<ParcelType> >::New
(
this->particleProperties(),
this->subModelProperties(),
*this
)
),

View File

@ -156,7 +156,7 @@ Foam::ReactingMultiphaseCloud<ParcelType>::ReactingMultiphaseCloud
(
DevolatilisationModel<ReactingMultiphaseCloud<ParcelType> >::New
(
this->particleProperties(),
this->subModelProperties(),
*this
)
),
@ -164,7 +164,7 @@ Foam::ReactingMultiphaseCloud<ParcelType>::ReactingMultiphaseCloud
(
SurfaceReactionModel<ReactingMultiphaseCloud<ParcelType> >::New
(
this->particleProperties(),
this->subModelProperties(),
*this
)
),

View File

@ -158,7 +158,7 @@ Foam::ThermoCloud<ParcelType>::ThermoCloud
(
HeatTransferModel<ThermoCloud<ParcelType> >::New
(
this->particleProperties(),
this->subModelProperties(),
*this
)
),

View File

@ -17,30 +17,6 @@ FoamFile
active true;
InjectionModel ManualInjection;
DragModel SphereDrag;
DispersionModel StochasticDispersionRAS;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel RanzMarshall;
CompositionModel SingleMixtureFraction;
PhaseChangeModel LiquidEvaporation;
DevolatilisationModel ConstantRateDevolatilisation;
SurfaceReactionModel COxidationKineticDiffusionLimitedRate;
PostProcessingModel none;
CollisionModel none;
SurfaceFilmModel none;
radiation on;
coupled true;
@ -94,6 +70,32 @@ particleForces
paramagnetic off;
}
subModels
{
InjectionModel ManualInjection;
DragModel SphereDrag;
DispersionModel StochasticDispersionRAS;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel RanzMarshall;
CompositionModel SingleMixtureFraction;
PhaseChangeModel LiquidEvaporation;
DevolatilisationModel ConstantRateDevolatilisation;
SurfaceReactionModel COxidationKineticDiffusionLimitedRate;
PostProcessingModel none;
CollisionModel none;
SurfaceFilmModel none;
ManualInjectionCoeffs
{
massTotal massTotal [ 1 0 0 0 0 ] 0.0001;
@ -174,6 +176,7 @@ COxidationKineticDiffusionLimitedRateCoeffs
C2 C2 [ 0 0 0 0 0] 0.002;
E E [ 0 0 0 0 0] 7.9E+07;
}
}
// ************************************************************************* //

View File

@ -17,22 +17,6 @@ FoamFile
active true;
InjectionModel ManualInjection;
DragModel SphereDrag;
DispersionModel StochasticDispersionRAS;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel RanzMarshall;
PostProcessingModel none;
CollisionModel none;
SurfaceFilmModel none;
radiation on;
coupled true;
@ -79,6 +63,24 @@ particleForces
paramagnetic off;
}
subModels
{
InjectionModel ManualInjection;
DragModel SphereDrag;
DispersionModel StochasticDispersionRAS;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel RanzMarshall;
PostProcessingModel none;
CollisionModel none;
SurfaceFilmModel none;
ManualInjectionCoeffs
{
massTotal massTotal [ 1 0 0 0 0 ] 0.0001;
@ -110,6 +112,7 @@ RanzMarshallCoeffs
{
BirdCorrection false;
}
}
// ************************************************************************* //

View File

@ -17,31 +17,6 @@ FoamFile
active true;
InjectionModel ReactingMultiphaseLookupTableInjection;
//InjectionModel ManualInjection;
DragModel SphereDrag;
DispersionModel none;
PatchInteractionModel LocalInteraction;
HeatTransferModel RanzMarshall;
CompositionModel SingleMixtureFraction;
PhaseChangeModel LiquidEvaporation;
PostProcessingModel PatchPostProcessing;
DevolatilisationModel none;
SurfaceReactionModel none;
SurfaceFilmModel none;
CollisionModel none;
radiation off;
coupled true;
@ -95,23 +70,31 @@ particleForces
paramagnetic off;
}
ManualInjectionCoeffs
subModels
{
massTotal massTotal [ 1 0 0 0 0 ] 1e-3;
parcelBasisType mass;
SOI 0.5;
positionsFile "reactingCloud1Positions";
U0 ( 0 0 0 );
parcelPDF
{
pdfType uniform;
uniformPDF
{
minValue 1e-04;
maxValue 1e-04;
}
}
}
InjectionModel ReactingMultiphaseLookupTableInjection;
DragModel SphereDrag;
DispersionModel none;
PatchInteractionModel LocalInteraction;
HeatTransferModel RanzMarshall;
CompositionModel SingleMixtureFraction;
PhaseChangeModel LiquidEvaporation;
PostProcessingModel PatchPostProcessing;
DevolatilisationModel none;
SurfaceReactionModel none;
SurfaceFilmModel none;
CollisionModel none;
ReactingMultiphaseLookupTableInjectionCoeffs
{
@ -192,6 +175,7 @@ PatchPostProcessingCoeffs
cycLeft_half1
);
}
}
// ************************************************************************* //

View File

@ -17,30 +17,6 @@ FoamFile
active true;
InjectionModel ManualInjection;
DragModel SphereDrag;
DispersionModel none;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel RanzMarshall;
CompositionModel SingleMixtureFraction;
PhaseChangeModel LiquidEvaporation;
DevolatilisationModel none;
SurfaceReactionModel none;
PostProcessingModel none;
SurfaceFilmModel none;
CollisionModel none;
radiation off;
coupled false;
@ -96,6 +72,32 @@ particleForces
paramagnetic off;
}
subModels
{
InjectionModel ManualInjection;
DragModel SphereDrag;
DispersionModel none;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel RanzMarshall;
CompositionModel SingleMixtureFraction;
PhaseChangeModel LiquidEvaporation;
DevolatilisationModel none;
SurfaceReactionModel none;
PostProcessingModel none;
SurfaceFilmModel none;
CollisionModel none;
ManualInjectionCoeffs
{
massTotal massTotal [ 1 0 0 0 0 ] 5.23599e-10; // 1 droplet of density 1000 kg/m3
@ -162,6 +164,7 @@ PatchPostProcessingCoeffs
outlet
);
}
}
// ************************************************************************* //

View File

@ -17,30 +17,6 @@ FoamFile
active true;
InjectionModel PatchInjection;
DragModel SphereDrag;
DispersionModel StochasticDispersionRAS;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel RanzMarshall;
CompositionModel SingleMixtureFraction;
PhaseChangeModel LiquidEvaporation;
DevolatilisationModel none;
SurfaceReactionModel none;
PostProcessingModel PatchPostProcessing;
SurfaceFilmModel none;
CollisionModel none;
radiation off;
coupled true;
@ -96,6 +72,32 @@ particleForces
paramagnetic off;
}
subModels
{
InjectionModel PatchInjection;
DragModel SphereDrag;
DispersionModel StochasticDispersionRAS;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel RanzMarshall;
CompositionModel SingleMixtureFraction;
PhaseChangeModel LiquidEvaporation;
DevolatilisationModel none;
SurfaceReactionModel none;
PostProcessingModel PatchPostProcessing;
SurfaceFilmModel none;
CollisionModel none;
PatchInjectionCoeffs
{
SOI 0.01;
@ -184,6 +186,7 @@ PatchPostProcessingCoeffs
outlet
);
}
}
// ************************************************************************* //

View File

@ -1,7 +1,7 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
@ -17,26 +17,6 @@ FoamFile
active false; // true;
InjectionModel none;
DragModel SphereDrag;
DispersionModel none;
PatchInteractionModel StandardWallInteraction;
CollisionModel none;
HeatTransferModel none;
CompositionModel SinglePhaseMixture;
PhaseChangeModel none;
PostProcessingModel none;
SurfaceFilmModel ThermoSurfaceFilm;
radiation off;
coupled true;
@ -88,6 +68,28 @@ particleForces
paramagnetic off;
}
subModels
{
InjectionModel none;
DragModel SphereDrag;
DispersionModel none;
PatchInteractionModel StandardWallInteraction;
CollisionModel none;
HeatTransferModel none;
CompositionModel SinglePhaseMixture;
PhaseChangeModel none;
PostProcessingModel none;
SurfaceFilmModel ThermoSurfaceFilm;
StandardWallInteractionCoeffs
{
type rebound;
@ -106,6 +108,7 @@ SinglePhaseMixtureCoeffs
ThermoSurfaceFilmCoeffs
{}
}
// ************************************************************************* //

View File

@ -1,7 +1,7 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
@ -17,26 +17,6 @@ FoamFile
active true;
InjectionModel ConeInjectionMP;
DragModel SphereDrag;
DispersionModel none;
CollisionModel none;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel none; //RanzMarshall;
CompositionModel SinglePhaseMixture;
PhaseChangeModel none; // LiquidEvaporation;
PostProcessingModel none;
SurfaceFilmModel ThermoSurfaceFilm; // none;
radiation off;
coupled true;
@ -88,6 +68,28 @@ particleForces
paramagnetic off;
}
subModels
{
InjectionModel ConeInjectionMP;
DragModel SphereDrag;
DispersionModel none;
CollisionModel none;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel none; //RanzMarshall;
CompositionModel SinglePhaseMixture;
PhaseChangeModel none; // LiquidEvaporation;
PostProcessingModel none;
SurfaceFilmModel ThermoSurfaceFilm; // none;
ConeInjectionCoeffs
{
SOI 0.000;
@ -176,6 +178,7 @@ LiquidEvaporationCoeffs
ThermoSurfaceFilmCoeffs
{}
}
// ************************************************************************* //

View File

@ -17,26 +17,6 @@ FoamFile
active true;
InjectionModel ConeInjectionMP;
DragModel SphereDrag;
DispersionModel none;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel none; //RanzMarshall;
CompositionModel SinglePhaseMixture;
PhaseChangeModel none; // LiquidEvaporation;
PostProcessingModel none;
CollisionModel none;
SurfaceFilmModel ThermoSurfaceFilm; // none;
radiation off;
coupled true;
@ -88,6 +68,28 @@ particleForces
paramagnetic off;
}
subModels
{
InjectionModel ConeInjectionMP;
DragModel SphereDrag;
DispersionModel none;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel none; //RanzMarshall;
CompositionModel SinglePhaseMixture;
PhaseChangeModel none; // LiquidEvaporation;
PostProcessingModel none;
CollisionModel none;
SurfaceFilmModel ThermoSurfaceFilm; // none;
ConeInjectionCoeffs
{
SOI 0.000;
@ -176,6 +178,7 @@ LiquidEvaporationCoeffs
ThermoSurfaceFilmCoeffs
{}
}
// ************************************************************************* //

View File

@ -17,26 +17,6 @@ FoamFile
active false; // true;
InjectionModel none;
DragModel SphereDrag;
DispersionModel none;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel none;
CompositionModel SinglePhaseMixture;
PhaseChangeModel none;
PostProcessingModel none;
CollisionModel none;
SurfaceFilmModel ThermoSurfaceFilm;
radiation off;
coupled true;
@ -88,6 +68,28 @@ particleForces
paramagnetic off;
}
subModels
{
InjectionModel none;
DragModel SphereDrag;
DispersionModel none;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel none;
CompositionModel SinglePhaseMixture;
PhaseChangeModel none;
PostProcessingModel none;
CollisionModel none;
SurfaceFilmModel ThermoSurfaceFilm;
StandardWallInteractionCoeffs
{
type rebound;
@ -106,6 +108,7 @@ SinglePhaseMixtureCoeffs
ThermoSurfaceFilmCoeffs
{}
}
// ************************************************************************* //

View File

@ -17,26 +17,6 @@ FoamFile
active true;
InjectionModel ManualInjection;
DragModel SphereDrag;
DispersionModel none;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel RanzMarshall;
CompositionModel SinglePhaseMixture;
PhaseChangeModel LiquidEvaporation;
PostProcessingModel none;
CollisionModel none;
SurfaceFilmModel none;
radiation off;
coupled true;
@ -88,6 +68,28 @@ particleForces
paramagnetic off;
}
subModels
{
InjectionModel ManualInjection;
DragModel SphereDrag;
DispersionModel none;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel RanzMarshall;
CompositionModel SinglePhaseMixture;
PhaseChangeModel LiquidEvaporation;
PostProcessingModel none;
CollisionModel none;
SurfaceFilmModel none;
ManualInjectionCoeffs
{
massTotal massTotal [ 1 0 0 0 0 ] 1e-8;
@ -136,5 +138,7 @@ LiquidEvaporationCoeffs
H2O
);
}
}
// ************************************************************************* //

View File

@ -17,20 +17,6 @@ FoamFile
active true;
InjectionModel ManualInjection;
DragModel SphereDrag;
DispersionModel StochasticDispersionRAS;
PatchInteractionModel StandardWallInteraction;
PostProcessingModel none;
SurfaceFilmModel none;
CollisionModel none;
coupled true;
cellValueSourceCorrection on;
@ -66,6 +52,22 @@ particleForces
paramagnetic off;
}
subModels
{
InjectionModel ManualInjection;
DragModel SphereDrag;
DispersionModel StochasticDispersionRAS;
PatchInteractionModel StandardWallInteraction;
PostProcessingModel none;
SurfaceFilmModel none;
CollisionModel none;
ManualInjectionCoeffs
{
massTotal massTotal [ 1 0 0 0 0 ] 0.0002;
@ -115,6 +117,7 @@ StandardWallInteractionCoeffs
{
type rebound;
}
}
// ************************************************************************* //

View File

@ -17,22 +17,6 @@ FoamFile
active true;
InjectionModel ManualInjection;
DragModel SphereDrag;
DispersionModel StochasticDispersionRAS;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel RanzMarshall;
PostProcessingModel none;
CollisionModel none;
SurfaceFilmModel none;
radiation off;
coupled true;
@ -79,6 +63,24 @@ particleForces
paramagnetic off;
}
subModels
{
InjectionModel ManualInjection;
DragModel SphereDrag;
DispersionModel StochasticDispersionRAS;
PatchInteractionModel StandardWallInteraction;
HeatTransferModel RanzMarshall;
PostProcessingModel none;
CollisionModel none;
SurfaceFilmModel none;
ManualInjectionCoeffs
{
massTotal massTotal [ 1 0 0 0 0 ] 0.0001;
@ -109,6 +111,7 @@ RanzMarshallCoeffs
// thermal shielding
BirdCorrection false;
}
}
// ************************************************************************* //