BUG: lagrangian turbulence - refactored for consisteny and re-added missing dispersion models to spray libray

This commit is contained in:
andy 2014-02-18 12:28:14 +00:00
parent 99f224ffe1
commit a2aca34a63
10 changed files with 76 additions and 106 deletions

View file

@ -4,6 +4,7 @@ EXE_INC = \
-I$(LIB_SRC)/lagrangian/basic/lnInclude \ -I$(LIB_SRC)/lagrangian/basic/lnInclude \
-I$(LIB_SRC)/lagrangian/intermediate/lnInclude \ -I$(LIB_SRC)/lagrangian/intermediate/lnInclude \
-I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \ -I$(LIB_SRC)/lagrangian/distributionModels/lnInclude \
-I$(LIB_SRC)/lagrangian/turbulence/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/basic/lnInclude \
-I$(LIB_SRC)/thermophysicalModels/properties/liquidProperties/lnInclude \ -I$(LIB_SRC)/thermophysicalModels/properties/liquidProperties/lnInclude \

View file

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -29,7 +29,9 @@ License
// Kinematic // Kinematic
#include "makeThermoParcelForces.H" // thermo variant #include "makeThermoParcelForces.H" // thermo variant
#include "makeThermoParcelTurbulenceForces.H" // add turbulence variant
#include "makeParcelDispersionModels.H" #include "makeParcelDispersionModels.H"
#include "makeParcelTurbulenceDispersionModels.H" // add turbulence variant
#include "makeSprayParcelInjectionModels.H" // Spray variant #include "makeSprayParcelInjectionModels.H" // Spray variant
#include "makeParcelPatchInteractionModels.H" #include "makeParcelPatchInteractionModels.H"
#include "makeSprayParcelStochasticCollisionModels.H" // Spray variant #include "makeSprayParcelStochasticCollisionModels.H" // Spray variant
@ -54,7 +56,9 @@ namespace Foam
// Kinematic sub-models // Kinematic sub-models
makeThermoParcelForces(basicSprayCloud); makeThermoParcelForces(basicSprayCloud);
makeThermoParcelTurbulenceForces(basicSprayCloud);
makeParcelDispersionModels(basicSprayCloud); makeParcelDispersionModels(basicSprayCloud);
makeParcelTurbulenceDispersionModels(basicSprayCloud);
makeSprayParcelInjectionModels(basicSprayCloud); makeSprayParcelInjectionModels(basicSprayCloud);
makeParcelPatchInteractionModels(basicSprayCloud); makeParcelPatchInteractionModels(basicSprayCloud);
makeSprayParcelStochasticCollisionModels(basicSprayCloud); makeSprayParcelStochasticCollisionModels(basicSprayCloud);

View file

@ -24,33 +24,13 @@ License
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/
#include "basicKinematicCollidingCloud.H" #include "basicKinematicCollidingCloud.H"
#include "makeParcelTurbulenceDispersionModels.H"
#include "makeParcelCloudFunctionObjects.H"
#include "GradientDispersionRAS.H"
#include "StochasticDispersionRAS.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam namespace Foam
{ {
typedef basicKinematicCollidingCloud::kinematicCloudType makeParcelTurbulenceDispersionModels(basicKinematicCollidingCloud);
kinematicCloudType_K;
defineNamedTemplateTypeNameAndDebug
(
DispersionRASModel<kinematicCloudType_K>,
0
);
makeDispersionModelType
(
GradientDispersionRAS,
basicKinematicCollidingCloud
);
makeDispersionModelType
(
StochasticDispersionRAS,
basicKinematicCollidingCloud
);
} }

View file

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -24,24 +24,13 @@ License
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/
#include "basicKinematicCloud.H" #include "basicKinematicCloud.H"
#include "makeParcelTurbulenceDispersionModels.H"
#include "makeParcelCloudFunctionObjects.H"
#include "GradientDispersionRAS.H"
#include "StochasticDispersionRAS.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam namespace Foam
{ {
typedef basicKinematicCloud::kinematicCloudType kinematicCloudType_K; makeParcelTurbulenceDispersionModels(basicKinematicCloud);
defineNamedTemplateTypeNameAndDebug
(
DispersionRASModel<kinematicCloudType_K>,
0
);
makeDispersionModelType(GradientDispersionRAS, basicKinematicCloud);
makeDispersionModelType(StochasticDispersionRAS, basicKinematicCloud);
} }

View file

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -25,40 +25,15 @@ License
#include "basicReactingMultiphaseCloud.H" #include "basicReactingMultiphaseCloud.H"
#include "makeParcelCloudFunctionObjects.H" #include "makeParcelTurbulenceDispersionModels.H"
#include "makeThermoParcelTurbulenceForces.H"
#include "GradientDispersionRAS.H"
#include "StochasticDispersionRAS.H"
#include "BrownianMotionForce.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam namespace Foam
{ {
typedef basicReactingMultiphaseCloud::kinematicCloudType makeThermoParcelTurbulenceForces(basicReactingMultiphaseCloud);
kinematicCloudType_K; makeParcelTurbulenceDispersionModels(basicReactingMultiphaseCloud);
defineNamedTemplateTypeNameAndDebug
(
DispersionRASModel<kinematicCloudType_K>,
0
);
makeDispersionModelType
(
GradientDispersionRAS,
basicReactingMultiphaseCloud
);
makeDispersionModelType
(
StochasticDispersionRAS,
basicReactingMultiphaseCloud
);
makeParticleForceModelType
(
BrownianMotionForce,
basicReactingMultiphaseCloud
);
} }

View file

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -25,27 +25,15 @@ License
#include "basicReactingCloud.H" #include "basicReactingCloud.H"
#include "makeParcelCloudFunctionObjects.H" #include "makeParcelTurbulenceDispersionModels.H"
#include "makeThermoParcelTurbulenceForces.H"
#include "GradientDispersionRAS.H"
#include "StochasticDispersionRAS.H"
#include "BrownianMotionForce.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam namespace Foam
{ {
typedef basicReactingCloud::kinematicCloudType kinematicCloudType_K; makeThermoParcelTurbulenceForces(basicReactingCloud);
defineNamedTemplateTypeNameAndDebug makeParcelTurbulenceDispersionModels(basicReactingCloud);
(
DispersionRASModel<kinematicCloudType_K>,
0
);
makeDispersionModelType(GradientDispersionRAS, basicReactingCloud);
makeDispersionModelType(StochasticDispersionRAS, basicReactingCloud);
makeParticleForceModelType(BrownianMotionForce, basicReactingCloud);
} }

View file

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -25,27 +25,15 @@ License
#include "basicThermoCloud.H" #include "basicThermoCloud.H"
#include "makeParcelCloudFunctionObjects.H" #include "makeParcelTurbulenceDispersionModels.H"
#include "makeThermoParcelTurbulenceForces.H"
#include "GradientDispersionRAS.H"
#include "StochasticDispersionRAS.H"
#include "BrownianMotionForce.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam namespace Foam
{ {
typedef basicThermoCloud::kinematicCloudType kinematicCloudType_K; makeThermoParcelTurbulenceForces(basicThermoCloud);
defineNamedTemplateTypeNameAndDebug makeParcelTurbulenceDispersionModels(basicThermoCloud);
(
DispersionRASModel<kinematicCloudType_K>,
0
);
makeDispersionModelType(GradientDispersionRAS, basicThermoCloud);
makeDispersionModelType(StochasticDispersionRAS, basicThermoCloud);
makeParticleForceModelType(BrownianMotionForce, basicThermoCloud);
} }

View file

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -23,8 +23,8 @@ License
\*---------------------------------------------------------------------------*/ \*---------------------------------------------------------------------------*/
#ifndef makeParcelDispersionModels_h #ifndef makeParcelTurbulenceDispersionModels_h
#define makeParcelDispersionModels_h #define makeParcelTurbulenceDispersionModels_h
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -33,7 +33,7 @@ License
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#define makeParcelDispersionModels(CloudType) \ #define makeParcelTurbulenceDispersionModels(CloudType) \
\ \
typedef CloudType::kinematicCloudType kinematicCloudType; \ typedef CloudType::kinematicCloudType kinematicCloudType; \
defineNamedTemplateTypeNameAndDebug \ defineNamedTemplateTypeNameAndDebug \

View file

@ -0,0 +1,44 @@
/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2014 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
OpenFOAM is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
\*---------------------------------------------------------------------------*/
#ifndef makeThermoParcelTurbulenceForces_h
#define makeThermoParcelTurbulenceForces_h
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#include "BrownianMotionForce.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#define makeThermoParcelTurbulenceForces(CloudType) \
\
makeParticleForceModelType(BrownianMotionForce, CloudType);
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#endif
// ************************************************************************* //

View file

@ -2,7 +2,7 @@
========= | ========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | \\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
@ -25,6 +25,7 @@ License
#include "GradientDispersionRAS.H" #include "GradientDispersionRAS.H"
#include "demandDrivenData.H" #include "demandDrivenData.H"
#include "fvcGrad.H"
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //