mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Merge branch 'master' of ssh://noisy/home/noisy3/OpenFOAM/OpenFOAM-dev
This commit is contained in:
@ -50,27 +50,23 @@ License
|
|||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
typedef coalCloud::cloudType coalCloud_R;
|
|
||||||
typedef coalCloud_R::cloudType coalCloud_T;
|
|
||||||
typedef coalCloud_T::cloudType coalCloud_K;
|
|
||||||
|
|
||||||
// Kinematic sub-models
|
// Kinematic sub-models
|
||||||
makeThermoParcelForces(coalCloud_K);
|
makeThermoParcelForces(coalCloud);
|
||||||
makeParcelDispersionModels(coalCloud_K);
|
makeParcelDispersionModels(coalCloud);
|
||||||
makeReactingMultiphaseParcelInjectionModels(coalCloud_K);
|
makeReactingMultiphaseParcelInjectionModels(coalCloud);
|
||||||
makeParcelPatchInteractionModels(coalCloud_K);
|
makeParcelPatchInteractionModels(coalCloud);
|
||||||
makeParcelPostProcessingModels(coalCloud_K);
|
makeParcelPostProcessingModels(coalCloud);
|
||||||
|
|
||||||
// Thermo sub-models
|
// Thermo sub-models
|
||||||
makeParcelHeatTransferModels(coalCloud_T);
|
makeParcelHeatTransferModels(coalCloud);
|
||||||
|
|
||||||
// Reacting sub-models
|
// Reacting sub-models
|
||||||
makeReactingMultiphaseParcelCompositionModels(coalCloud_R);
|
makeReactingMultiphaseParcelCompositionModels(coalCloud);
|
||||||
makeReactingParcelPhaseChangeModels(coalCloud_R);
|
makeReactingParcelPhaseChangeModels(coalCloud);
|
||||||
|
|
||||||
// Reacting multiphase sub-models
|
// Reacting multiphase sub-models
|
||||||
makeReactingMultiphaseParcelDevolatilisationModels(coalCloud);
|
makeReactingMultiphaseParcelDevolatilisationModels(coalCloud);
|
||||||
makeReactingParcelSurfaceFilmModels(coalCloud_K);
|
makeReactingParcelSurfaceFilmModels(coalCloud);
|
||||||
makeCoalParcelSurfaceReactionModels(coalCloud);
|
makeCoalParcelSurfaceReactionModels(coalCloud);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -39,16 +39,13 @@ License
|
|||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
// Kinematic sub-models
|
// Kinematic sub-models
|
||||||
typedef basicKinematicCollidingCloud::cloudType
|
makeParcelForces(basicKinematicCollidingCloud);
|
||||||
basicKinematicCollidingCloud_K;
|
makeParcelDispersionModels(basicKinematicCollidingCloud);
|
||||||
|
makeParcelInjectionModels(basicKinematicCollidingCloud);
|
||||||
makeParcelForces(basicKinematicCollidingCloud_K);
|
|
||||||
makeParcelDispersionModels(basicKinematicCollidingCloud_K);
|
|
||||||
makeParcelInjectionModels(basicKinematicCollidingCloud_K);
|
|
||||||
makeParcelCollisionModels(basicKinematicCollidingCloud);
|
makeParcelCollisionModels(basicKinematicCollidingCloud);
|
||||||
makeParcelPatchInteractionModels(basicKinematicCollidingCloud_K);
|
makeParcelPatchInteractionModels(basicKinematicCollidingCloud);
|
||||||
makeParcelPostProcessingModels(basicKinematicCollidingCloud_K);
|
makeParcelPostProcessingModels(basicKinematicCollidingCloud);
|
||||||
makeParcelSurfaceFilmModels(basicKinematicCollidingCloud_K);
|
makeParcelSurfaceFilmModels(basicKinematicCollidingCloud);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -48,29 +48,22 @@ License
|
|||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
typedef basicReactingMultiphaseCloud::cloudType
|
|
||||||
basicReactingMultiphaseCloud_R;
|
|
||||||
typedef basicReactingMultiphaseCloud_R::cloudType
|
|
||||||
basicReactingMultiphaseCloud_T;
|
|
||||||
typedef basicReactingMultiphaseCloud_T::cloudType
|
|
||||||
basicReactingMultiphaseCloud_K;
|
|
||||||
|
|
||||||
// Kinematic sub-models
|
// Kinematic sub-models
|
||||||
makeThermoParcelForces(basicReactingMultiphaseCloud_K);
|
makeThermoParcelForces(basicReactingMultiphaseCloud);
|
||||||
makeParcelDispersionModels(basicReactingMultiphaseCloud_K);
|
makeParcelDispersionModels(basicReactingMultiphaseCloud);
|
||||||
makeReactingMultiphaseParcelInjectionModels(basicReactingMultiphaseCloud_K);
|
makeReactingMultiphaseParcelInjectionModels(basicReactingMultiphaseCloud);
|
||||||
makeParcelPatchInteractionModels(basicReactingMultiphaseCloud_K);
|
makeParcelPatchInteractionModels(basicReactingMultiphaseCloud);
|
||||||
makeParcelPostProcessingModels(basicReactingMultiphaseCloud_K);
|
makeParcelPostProcessingModels(basicReactingMultiphaseCloud);
|
||||||
|
|
||||||
// Thermo sub-models
|
// Thermo sub-models
|
||||||
makeParcelHeatTransferModels(basicReactingMultiphaseCloud_T);
|
makeParcelHeatTransferModels(basicReactingMultiphaseCloud);
|
||||||
|
|
||||||
// Reacting sub-models
|
// Reacting sub-models
|
||||||
makeReactingMultiphaseParcelCompositionModels
|
makeReactingMultiphaseParcelCompositionModels
|
||||||
(
|
(
|
||||||
basicReactingMultiphaseCloud_R
|
basicReactingMultiphaseCloud
|
||||||
);
|
);
|
||||||
makeReactingParcelPhaseChangeModels(basicReactingMultiphaseCloud_R);
|
makeReactingParcelPhaseChangeModels(basicReactingMultiphaseCloud);
|
||||||
|
|
||||||
// Reacting multiphase sub-models
|
// Reacting multiphase sub-models
|
||||||
makeReactingMultiphaseParcelDevolatilisationModels
|
makeReactingMultiphaseParcelDevolatilisationModels
|
||||||
@ -79,7 +72,7 @@ namespace Foam
|
|||||||
);
|
);
|
||||||
makeReactingParcelSurfaceFilmModels
|
makeReactingParcelSurfaceFilmModels
|
||||||
(
|
(
|
||||||
basicReactingMultiphaseCloud_K
|
basicReactingMultiphaseCloud
|
||||||
);
|
);
|
||||||
makeReactingMultiphaseParcelSurfaceReactionModels
|
makeReactingMultiphaseParcelSurfaceReactionModels
|
||||||
(
|
(
|
||||||
|
|||||||
@ -44,23 +44,23 @@ License
|
|||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
typedef basicReactingCloud::cloudType basicReactingCloud_T;
|
typedef basicReactingCloud::thermoCloudType thermoCloudType2;
|
||||||
typedef basicReactingCloud_T::cloudType basicReactingCloud_K;
|
typedef basicReactingCloud::kinematicCloudType kinematicCloudType2;
|
||||||
|
|
||||||
// Kinematic sub-models
|
// Kinematic sub-models
|
||||||
makeThermoParcelForces(basicReactingCloud_K);
|
makeThermoParcelForces(basicReactingCloud);
|
||||||
makeParcelDispersionModels(basicReactingCloud_K);
|
makeParcelDispersionModels(basicReactingCloud);
|
||||||
makeReactingParcelInjectionModels(basicReactingCloud_K);
|
makeReactingParcelInjectionModels(basicReactingCloud);
|
||||||
makeParcelPatchInteractionModels(basicReactingCloud_K);
|
makeParcelPatchInteractionModels(basicReactingCloud);
|
||||||
makeParcelPostProcessingModels(basicReactingCloud_K);
|
makeParcelPostProcessingModels(basicReactingCloud);
|
||||||
|
|
||||||
// Thermo sub-models
|
// Thermo sub-models
|
||||||
makeParcelHeatTransferModels(basicReactingCloud_T);
|
makeParcelHeatTransferModels(basicReactingCloud);
|
||||||
|
|
||||||
// Reacting sub-models
|
// Reacting sub-models
|
||||||
makeReactingParcelCompositionModels(basicReactingCloud);
|
makeReactingParcelCompositionModels(basicReactingCloud);
|
||||||
makeReactingParcelPhaseChangeModels(basicReactingCloud);
|
makeReactingParcelPhaseChangeModels(basicReactingCloud);
|
||||||
makeReactingParcelSurfaceFilmModels(basicReactingCloud_K);
|
makeReactingParcelSurfaceFilmModels(basicReactingCloud);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -41,18 +41,15 @@ License
|
|||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
// Kinematic sub-models
|
// Kinematic sub-models
|
||||||
typedef basicThermoCloud::cloudType basicThermoCloud_K;
|
makeThermoParcelForces(basicThermoCloud);
|
||||||
|
makeParcelDispersionModels(basicThermoCloud);
|
||||||
// Kinematic sub-models
|
makeParcelInjectionModels(basicThermoCloud);
|
||||||
makeThermoParcelForces(basicThermoCloud_K);
|
makeParcelPatchInteractionModels(basicThermoCloud);
|
||||||
makeParcelDispersionModels(basicThermoCloud_K);
|
makeParcelPostProcessingModels(basicThermoCloud);
|
||||||
makeParcelInjectionModels(basicThermoCloud_K);
|
|
||||||
makeParcelPatchInteractionModels(basicThermoCloud_K);
|
|
||||||
makeParcelPostProcessingModels(basicThermoCloud_K);
|
|
||||||
|
|
||||||
// Thermo sub-models
|
// Thermo sub-models
|
||||||
makeParcelHeatTransferModels(basicThermoCloud);
|
makeParcelHeatTransferModels(basicThermoCloud);
|
||||||
makeParcelSurfaceFilmModels(basicThermoCloud_K);
|
makeParcelSurfaceFilmModels(basicThermoCloud);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -38,7 +38,12 @@ License
|
|||||||
\
|
\
|
||||||
makeDispersionModel(CloudType); \
|
makeDispersionModel(CloudType); \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(DispersionRASModel<CloudType>, 0); \
|
typedef CloudType::kinematicCloudType kinematicCloudType; \
|
||||||
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
DispersionRASModel<kinematicCloudType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
\
|
\
|
||||||
makeDispersionModelType(NoDispersion, CloudType); \
|
makeDispersionModelType(NoDispersion, CloudType); \
|
||||||
makeDispersionModelType(GradientDispersionRAS, CloudType); \
|
makeDispersionModelType(GradientDispersionRAS, CloudType); \
|
||||||
|
|||||||
@ -141,18 +141,27 @@ public:
|
|||||||
|
|
||||||
#define makeCollisionModel(CloudType) \
|
#define makeCollisionModel(CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(CollisionModel<CloudType>, 0); \
|
typedef CloudType::collidingCloudType collidingCloudType; \
|
||||||
\
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
defineTemplateRunTimeSelectionTable(CollisionModel<CloudType>, dictionary);
|
( \
|
||||||
|
CollisionModel<collidingCloudType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
defineTemplateRunTimeSelectionTable \
|
||||||
|
( \
|
||||||
|
CollisionModel<collidingCloudType>, \
|
||||||
|
dictionary \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
#define makeCollisionModelType(SS, CloudType) \
|
#define makeCollisionModelType(SS, CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SS<CloudType>, 0); \
|
typedef CloudType::collidingCloudType collidingCloudType; \
|
||||||
|
defineNamedTemplateTypeNameAndDebug(SS<collidingCloudType>, 0); \
|
||||||
\
|
\
|
||||||
CollisionModel<CloudType>:: \
|
CollisionModel<collidingCloudType>:: \
|
||||||
adddictionaryConstructorToTable<SS<CloudType> > \
|
adddictionaryConstructorToTable<SS<collidingCloudType> > \
|
||||||
add##SS##CloudType##ConstructorToTable_;
|
add##SS##CloudType##collidingCloudType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -132,22 +132,23 @@ public:
|
|||||||
|
|
||||||
#define makeDispersionModel(CloudType) \
|
#define makeDispersionModel(CloudType) \
|
||||||
\
|
\
|
||||||
defineTemplateTypeNameAndDebug(DispersionModel<CloudType>, 0); \
|
typedef CloudType::kinematicCloudType kinematicCloudType; \
|
||||||
\
|
defineTemplateTypeNameAndDebug(DispersionModel<kinematicCloudType>, 0); \
|
||||||
defineTemplateRunTimeSelectionTable \
|
defineTemplateRunTimeSelectionTable \
|
||||||
( \
|
( \
|
||||||
DispersionModel<CloudType>, \
|
DispersionModel<kinematicCloudType>, \
|
||||||
dictionary \
|
dictionary \
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
#define makeDispersionModelType(SS, CloudType) \
|
#define makeDispersionModelType(SS, CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SS<CloudType>, 0); \
|
typedef CloudType::kinematicCloudType kinematicCloudType; \
|
||||||
|
defineNamedTemplateTypeNameAndDebug(SS<kinematicCloudType>, 0); \
|
||||||
\
|
\
|
||||||
DispersionModel<CloudType>:: \
|
DispersionModel<kinematicCloudType>:: \
|
||||||
adddictionaryConstructorToTable<SS<CloudType> > \
|
adddictionaryConstructorToTable<SS<kinematicCloudType> > \
|
||||||
add##SS##CloudType##ConstructorToTable_;
|
add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -328,17 +328,27 @@ public:
|
|||||||
|
|
||||||
#define makeInjectionModel(CloudType) \
|
#define makeInjectionModel(CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(InjectionModel<CloudType>, 0); \
|
typedef CloudType::kinematicCloudType kinematicCloudType; \
|
||||||
\
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
defineTemplateRunTimeSelectionTable(InjectionModel<CloudType>, dictionary);
|
( \
|
||||||
|
InjectionModel<kinematicCloudType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
defineTemplateRunTimeSelectionTable \
|
||||||
|
( \
|
||||||
|
InjectionModel<kinematicCloudType>, \
|
||||||
|
dictionary \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
#define makeInjectionModelType(SS, CloudType) \
|
#define makeInjectionModelType(SS, CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SS<CloudType>, 0); \
|
typedef CloudType::kinematicCloudType kinematicCloudType; \
|
||||||
|
defineNamedTemplateTypeNameAndDebug(SS<kinematicCloudType>, 0); \
|
||||||
\
|
\
|
||||||
InjectionModel<CloudType>::adddictionaryConstructorToTable<SS<CloudType> >\
|
InjectionModel<kinematicCloudType>:: \
|
||||||
add##SS##CloudType##ConstructorToTable_;
|
adddictionaryConstructorToTable<SS<kinematicCloudType> > \
|
||||||
|
add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -188,16 +188,23 @@ public:
|
|||||||
|
|
||||||
#define makeParticleForceModel(CloudType) \
|
#define makeParticleForceModel(CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(ParticleForce<CloudType>, 0); \
|
typedef CloudType::kinematicCloudType kinematicCloudType; \
|
||||||
defineTemplateRunTimeSelectionTable(ParticleForce<CloudType>, dictionary);
|
defineNamedTemplateTypeNameAndDebug(ParticleForce<kinematicCloudType>, 0);\
|
||||||
|
defineTemplateRunTimeSelectionTable \
|
||||||
|
( \
|
||||||
|
ParticleForce<kinematicCloudType>, \
|
||||||
|
dictionary \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
#define makeParticleForceModelType(SS, CloudType) \
|
#define makeParticleForceModelType(SS, CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SS<CloudType>, 0); \
|
typedef CloudType::kinematicCloudType kinematicCloudType; \
|
||||||
|
defineNamedTemplateTypeNameAndDebug(SS<kinematicCloudType>, 0); \
|
||||||
\
|
\
|
||||||
ParticleForce<CloudType>::adddictionaryConstructorToTable<SS<CloudType> > \
|
ParticleForce<kinematicCloudType>:: \
|
||||||
add##SS##CloudType##ConstructorToTable_;
|
adddictionaryConstructorToTable<SS<kinematicCloudType> > \
|
||||||
|
add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -192,22 +192,27 @@ public:
|
|||||||
|
|
||||||
#define makePatchInteractionModel(CloudType) \
|
#define makePatchInteractionModel(CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(PatchInteractionModel<CloudType>, 0); \
|
typedef CloudType::kinematicCloudType kinematicCloudType; \
|
||||||
\
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
PatchInteractionModel<kinematicCloudType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
defineTemplateRunTimeSelectionTable \
|
defineTemplateRunTimeSelectionTable \
|
||||||
( \
|
( \
|
||||||
PatchInteractionModel<CloudType>, \
|
PatchInteractionModel<kinematicCloudType>, \
|
||||||
dictionary \
|
dictionary \
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
#define makePatchInteractionModelType(SS, CloudType) \
|
#define makePatchInteractionModelType(SS, CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SS<CloudType>, 0); \
|
typedef CloudType::kinematicCloudType kinematicCloudType; \
|
||||||
|
defineNamedTemplateTypeNameAndDebug(SS<kinematicCloudType>, 0); \
|
||||||
\
|
\
|
||||||
PatchInteractionModel<CloudType>:: \
|
PatchInteractionModel<kinematicCloudType>:: \
|
||||||
adddictionaryConstructorToTable<SS<CloudType> > \
|
adddictionaryConstructorToTable<SS<kinematicCloudType> > \
|
||||||
add##SS##CloudType##ConstructorToTable_;
|
add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -145,22 +145,27 @@ public:
|
|||||||
|
|
||||||
#define makePostProcessingModel(CloudType) \
|
#define makePostProcessingModel(CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(PostProcessingModel<CloudType>, 0); \
|
typedef CloudType::kinematicCloudType kinematicCloudType; \
|
||||||
\
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
PostProcessingModel<kinematicCloudType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
defineTemplateRunTimeSelectionTable \
|
defineTemplateRunTimeSelectionTable \
|
||||||
( \
|
( \
|
||||||
PostProcessingModel<CloudType>, \
|
PostProcessingModel<kinematicCloudType>, \
|
||||||
dictionary \
|
dictionary \
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
#define makePostProcessingModelType(SS, CloudType) \
|
#define makePostProcessingModelType(SS, CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SS<CloudType>, 0); \
|
typedef CloudType::kinematicCloudType kinematicCloudType; \
|
||||||
|
defineNamedTemplateTypeNameAndDebug(SS<kinematicCloudType>, 0); \
|
||||||
\
|
\
|
||||||
PostProcessingModel<CloudType>:: \
|
PostProcessingModel<kinematicCloudType>:: \
|
||||||
adddictionaryConstructorToTable<SS<CloudType> > \
|
adddictionaryConstructorToTable<SS<kinematicCloudType> > \
|
||||||
add##SS##CloudType##ConstructorToTable_;
|
add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -243,22 +243,27 @@ public:
|
|||||||
|
|
||||||
#define makeSurfaceFilmModel(CloudType) \
|
#define makeSurfaceFilmModel(CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SurfaceFilmModel<CloudType>, 0); \
|
typedef CloudType::kinematicCloudType kinematicCloudType; \
|
||||||
\
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
SurfaceFilmModel<kinematicCloudType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
defineTemplateRunTimeSelectionTable \
|
defineTemplateRunTimeSelectionTable \
|
||||||
( \
|
( \
|
||||||
SurfaceFilmModel<CloudType>, \
|
SurfaceFilmModel<kinematicCloudType>, \
|
||||||
dictionary \
|
dictionary \
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
#define makeSurfaceFilmModelType(SS, CloudType) \
|
#define makeSurfaceFilmModelType(SS, CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SS<CloudType>, 0); \
|
typedef CloudType::kinematicCloudType kinematicCloudType; \
|
||||||
|
defineNamedTemplateTypeNameAndDebug(SS<kinematicCloudType>, 0); \
|
||||||
\
|
\
|
||||||
SurfaceFilmModel<CloudType>:: \
|
SurfaceFilmModel<kinematicCloudType>:: \
|
||||||
adddictionaryConstructorToTable<SS<CloudType> > \
|
adddictionaryConstructorToTable<SS<kinematicCloudType> > \
|
||||||
add##SS##CloudType##ConstructorToTable_;
|
add##SS##CloudType##kinematicCloudType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -267,26 +267,27 @@ public:
|
|||||||
|
|
||||||
#define makeCompositionModel(CloudType) \
|
#define makeCompositionModel(CloudType) \
|
||||||
\
|
\
|
||||||
|
typedef CloudType::reactingCloudType reactingCloudType; \
|
||||||
defineNamedTemplateTypeNameAndDebug \
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
( \
|
( \
|
||||||
CompositionModel<CloudType>, \
|
CompositionModel<reactingCloudType>, \
|
||||||
0 \
|
0 \
|
||||||
); \
|
); \
|
||||||
\
|
|
||||||
defineTemplateRunTimeSelectionTable \
|
defineTemplateRunTimeSelectionTable \
|
||||||
( \
|
( \
|
||||||
CompositionModel<CloudType>, \
|
CompositionModel<reactingCloudType>, \
|
||||||
dictionary \
|
dictionary \
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
#define makeCompositionModelType(SS, CloudType) \
|
#define makeCompositionModelType(SS, CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SS<CloudType>, 0); \
|
typedef CloudType::reactingCloudType reactingCloudType; \
|
||||||
|
defineNamedTemplateTypeNameAndDebug(SS<reactingCloudType>, 0); \
|
||||||
\
|
\
|
||||||
CompositionModel<CloudType>:: \
|
CompositionModel<reactingCloudType>:: \
|
||||||
adddictionaryConstructorToTable<SS<CloudType> > \
|
adddictionaryConstructorToTable<SS<reactingCloudType> > \
|
||||||
add##SS##CloudType##ConstructorToTable_;
|
add##SS##CloudType##reactingCloudType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -185,22 +185,27 @@ public:
|
|||||||
|
|
||||||
#define makePhaseChangeModel(CloudType) \
|
#define makePhaseChangeModel(CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(PhaseChangeModel<CloudType>, 0); \
|
typedef CloudType::reactingCloudType reactingCloudType; \
|
||||||
\
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
PhaseChangeModel<reactingCloudType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
defineTemplateRunTimeSelectionTable \
|
defineTemplateRunTimeSelectionTable \
|
||||||
( \
|
( \
|
||||||
PhaseChangeModel<CloudType>, \
|
PhaseChangeModel<reactingCloudType>, \
|
||||||
dictionary \
|
dictionary \
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
#define makePhaseChangeModelType(SS, CloudType) \
|
#define makePhaseChangeModelType(SS, CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SS<CloudType>, 0); \
|
typedef CloudType::reactingCloudType reactingCloudType; \
|
||||||
|
defineNamedTemplateTypeNameAndDebug(SS<reactingCloudType>, 0); \
|
||||||
\
|
\
|
||||||
PhaseChangeModel<CloudType>:: \
|
PhaseChangeModel<reactingCloudType>:: \
|
||||||
adddictionaryConstructorToTable<SS<CloudType> > \
|
adddictionaryConstructorToTable<SS<reactingCloudType> > \
|
||||||
add##SS##CloudType##ConstructorToTable_;
|
add##SS##CloudType##reactingCloudType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -136,22 +136,29 @@ public:
|
|||||||
|
|
||||||
#define makeDevolatilisationModel(CloudType) \
|
#define makeDevolatilisationModel(CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(DevolatilisationModel<CloudType>, 0); \
|
typedef CloudType::reactingMultiphaseCloudType \
|
||||||
\
|
reactingMultiphaseCloudType; \
|
||||||
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
DevolatilisationModel<reactingMultiphaseCloudType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
defineTemplateRunTimeSelectionTable \
|
defineTemplateRunTimeSelectionTable \
|
||||||
( \
|
( \
|
||||||
DevolatilisationModel<CloudType>, \
|
DevolatilisationModel<reactingMultiphaseCloudType>, \
|
||||||
dictionary \
|
dictionary \
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
#define makeDevolatilisationModelType(SS, CloudType) \
|
#define makeDevolatilisationModelType(SS, CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SS<CloudType>, 0); \
|
typedef CloudType::reactingMultiphaseCloudType \
|
||||||
|
reactingMultiphaseCloudType; \
|
||||||
|
defineNamedTemplateTypeNameAndDebug(SS<reactingMultiphaseCloudType>, 0); \
|
||||||
\
|
\
|
||||||
DevolatilisationModel<CloudType>:: \
|
DevolatilisationModel<reactingMultiphaseCloudType>:: \
|
||||||
adddictionaryConstructorToTable<SS<CloudType> > \
|
adddictionaryConstructorToTable<SS<reactingMultiphaseCloudType> > \
|
||||||
add##SS##CloudType##ConstructorToTable_;
|
add##SS##CloudType##reactingMultiphaseCloudType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -149,22 +149,29 @@ public:
|
|||||||
|
|
||||||
#define makeSurfaceReactionModel(CloudType) \
|
#define makeSurfaceReactionModel(CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SurfaceReactionModel<CloudType>, 0); \
|
typedef CloudType::reactingMultiphaseCloudType \
|
||||||
\
|
reactingMultiphaseCloudType; \
|
||||||
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
SurfaceReactionModel<reactingMultiphaseCloudType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
defineTemplateRunTimeSelectionTable \
|
defineTemplateRunTimeSelectionTable \
|
||||||
( \
|
( \
|
||||||
SurfaceReactionModel<CloudType>, \
|
SurfaceReactionModel<reactingMultiphaseCloudType>, \
|
||||||
dictionary \
|
dictionary \
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
#define makeSurfaceReactionModelType(SS, CloudType) \
|
#define makeSurfaceReactionModelType(SS, CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SS<CloudType>, 0); \
|
typedef CloudType::reactingMultiphaseCloudType \
|
||||||
|
reactingMultiphaseCloudType; \
|
||||||
|
defineNamedTemplateTypeNameAndDebug(SS<reactingMultiphaseCloudType>, 0); \
|
||||||
\
|
\
|
||||||
SurfaceReactionModel<CloudType>:: \
|
SurfaceReactionModel<reactingMultiphaseCloudType>:: \
|
||||||
adddictionaryConstructorToTable<SS<CloudType> > \
|
adddictionaryConstructorToTable<SS<reactingMultiphaseCloudType> > \
|
||||||
add##SS##CloudType##ConstructorToTable_;
|
add##SS##CloudType##reactingMultiphaseCloudType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -155,22 +155,27 @@ public:
|
|||||||
|
|
||||||
#define makeHeatTransferModel(CloudType) \
|
#define makeHeatTransferModel(CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(HeatTransferModel<CloudType>, 0); \
|
typedef CloudType::thermoCloudType thermoCloudType; \
|
||||||
\
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
HeatTransferModel<thermoCloudType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
defineTemplateRunTimeSelectionTable \
|
defineTemplateRunTimeSelectionTable \
|
||||||
( \
|
( \
|
||||||
HeatTransferModel<CloudType>, \
|
HeatTransferModel<thermoCloudType>, \
|
||||||
dictionary \
|
dictionary \
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
#define makeHeatTransferModelType(SS, CloudType) \
|
#define makeHeatTransferModelType(SS, CloudType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SS<CloudType>, 0); \
|
typedef CloudType::thermoCloudType thermoCloudType; \
|
||||||
|
defineNamedTemplateTypeNameAndDebug(SS<thermoCloudType>, 0); \
|
||||||
\
|
\
|
||||||
HeatTransferModel<CloudType>:: \
|
HeatTransferModel<thermoCloudType>:: \
|
||||||
adddictionaryConstructorToTable<SS<CloudType> > \
|
adddictionaryConstructorToTable<SS<thermoCloudType> > \
|
||||||
add##SS##CloudType##ConstructorToTable_;
|
add##SS##CloudType##thermoCloudType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -48,12 +48,12 @@ oxidant
|
|||||||
burntProducts
|
burntProducts
|
||||||
{
|
{
|
||||||
nMoles 1;
|
nMoles 1;
|
||||||
molWeight 28.8478;
|
molWeight 28.6068;
|
||||||
Tlow 298.15;
|
Tlow 200;
|
||||||
Thigh 5000;
|
Thigh 6000;
|
||||||
Tcommon 1000;
|
Tcommon 1000;
|
||||||
highCpCoeffs ( 3.10156 0.00124723 -4.2071e-07 6.66805e-11 -3.92581e-15 -1092.96 5.35255 );
|
highCpCoeffs ( 3.12468 0.00178578 -5.94695e-07 9.09801e-11 -5.1246e-15 -11005.8 5.03593 );
|
||||||
lowCpCoeffs ( 3.58264 -0.000711179 1.64893e-06 -9.37968e-11 -4.35761e-13 -1158.24 3.11438 );
|
lowCpCoeffs ( 3.47612 0.000758205 -3.68739e-07 1.3449e-09 -8.08868e-13 -11071.5 3.3058 );
|
||||||
As 1.67212e-06;
|
As 1.67212e-06;
|
||||||
Ts 170.672;
|
Ts 170.672;
|
||||||
}
|
}
|
||||||
|
|||||||
52
tutorials/discreteMethods/dsmcFoam/README
Normal file
52
tutorials/discreteMethods/dsmcFoam/README
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
Fields are used by dsmcFoam in several ways, some of which are different to
|
||||||
|
their use elsewhere in OpenFOAM. None of these fields are solved by partial
|
||||||
|
differential equations, they are used either to record simulation data, or to
|
||||||
|
supply boundary data.
|
||||||
|
|
||||||
|
In each case there are 11 fields:
|
||||||
|
|
||||||
|
boundaryT, boundaryU:
|
||||||
|
|
||||||
|
The wall and free stream conditions at the boundary are specified for
|
||||||
|
velocity and temperature with these fields - only the data on the
|
||||||
|
patches is used, the cell data is not. These are the only two fields
|
||||||
|
which supply data to the case.
|
||||||
|
|
||||||
|
dsmcRhoN:
|
||||||
|
|
||||||
|
The population of dsmc particles in cells is recorded to visualise how
|
||||||
|
well the cell population conditions required for dsmc are met. The
|
||||||
|
boundary conditions are zeroGradient because only cell data is
|
||||||
|
meaningful.
|
||||||
|
|
||||||
|
fD, q:
|
||||||
|
|
||||||
|
The wall heat flux (q) and force density (fD, i.e. stress vector) is
|
||||||
|
recorded with these fields - only the data on wall patches is relevant,
|
||||||
|
the cell data is not.
|
||||||
|
|
||||||
|
iDof, internalE, linearKE, momentum, rhoM, rhoN:
|
||||||
|
|
||||||
|
These fields are the densities of extensive quantities in the
|
||||||
|
simulation, i.e. of number, mass, momentum, energy. Cell data is
|
||||||
|
recorded in the internal field and the boundaryField is used to record
|
||||||
|
the data of particles that strike wall patches. The properties of
|
||||||
|
particles striking wall faces are weighted by 1/(Un*fA), where Un is the
|
||||||
|
normal component of the particle's velocity and fA is the face area.
|
||||||
|
This is done so that when intensive quantities, such as velocity or
|
||||||
|
temperature, are evaluated on the wall the values are correct this
|
||||||
|
allows velocity slip and temperature jump to be evaluated.
|
||||||
|
|
||||||
|
Therefore, the data in these fields on wall patches is of a different
|
||||||
|
type to the volume data. This may cause problems when post-processing,
|
||||||
|
as any interpolation of these fields will have a artifacts in the near
|
||||||
|
wall cells because the values on the faces are radically different.
|
||||||
|
This can be overcome by visualising the data uninterpolated, or by
|
||||||
|
copying the fields and setting zeroGradient boundary conditions on
|
||||||
|
walls. Calculated intensive fields do not have this issue.
|
||||||
|
|
||||||
|
Further fields are produced by dsmcFoam, i.e. dsmcSigmaTcRMax (used in the
|
||||||
|
selection of collision partners) and by the fieldAverage (averaging the
|
||||||
|
extensive quantity densities) and dsmcFields (calculating intensive quantities,
|
||||||
|
i.e. velocity and temperature, from extensive quantities) function objects in
|
||||||
|
each case as it runs.
|
||||||
@ -1,8 +1,8 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
/*---------------------------------------------------------------------------*\
|
||||||
| ========= | |
|
| ========= | |
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
| \\ / O peration | Version: 1.6 |
|
| \\ / O peration | Version: dev |
|
||||||
| \\ / A nd | Web: http://www.openfoam.org |
|
| \\ / A nd | Web: http://www.OpenFOAM.com |
|
||||||
| \\/ M anipulation | |
|
| \\/ M anipulation | |
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
FoamFile
|
FoamFile
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
/*---------------------------------------------------------------------------*\
|
||||||
| ========= | |
|
| ========= | |
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
| \\ / O peration | Version: 1.6 |
|
| \\ / O peration | Version: dev |
|
||||||
| \\ / A nd | Web: http://www.openfoam.org |
|
| \\ / A nd | Web: http://www.OpenFOAM.com |
|
||||||
| \\/ M anipulation | |
|
| \\/ M anipulation | |
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
FoamFile
|
FoamFile
|
||||||
|
|||||||
Reference in New Issue
Block a user