mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
more fun with templates - templating thermo type throughout submodels
This commit is contained in:
@ -35,10 +35,10 @@ Description
|
|||||||
#include "hCombustionThermo.H"
|
#include "hCombustionThermo.H"
|
||||||
#include "turbulenceModel.H"
|
#include "turbulenceModel.H"
|
||||||
#include "basicThermoCloud.H"
|
#include "basicThermoCloud.H"
|
||||||
#include "coalCloud.H"
|
#include "CoalCloud.H"
|
||||||
#include "chemistryModel.H"
|
#include "chemistryModel.H"
|
||||||
#include "chemistrySolver.H"
|
#include "chemistrySolver.H"
|
||||||
#include "ReactingCloudThermoTypes.H"
|
#include "reactingThermoTypes.H"
|
||||||
#include "timeActivatedExplicitSource.H"
|
#include "timeActivatedExplicitSource.H"
|
||||||
#include "radiationModel.H"
|
#include "radiationModel.H"
|
||||||
|
|
||||||
|
|||||||
@ -31,7 +31,7 @@ forAll(gasProperties, i)
|
|||||||
}
|
}
|
||||||
|
|
||||||
Info<< "\nConstructing coal cloud" << endl;
|
Info<< "\nConstructing coal cloud" << endl;
|
||||||
coalCloud coalParcels
|
CoalCloud<specieReactingProperties> coalParcels
|
||||||
(
|
(
|
||||||
"coalCloud1",
|
"coalCloud1",
|
||||||
rho,
|
rho,
|
||||||
|
|||||||
@ -37,7 +37,7 @@ Description
|
|||||||
#include "BasicReactingCloud.H"
|
#include "BasicReactingCloud.H"
|
||||||
#include "chemistryModel.H"
|
#include "chemistryModel.H"
|
||||||
#include "chemistrySolver.H"
|
#include "chemistrySolver.H"
|
||||||
#include "ReactingCloudThermoTypes.H"
|
#include "reactingThermoTypes.H"
|
||||||
#include "radiationModel.H"
|
#include "radiationModel.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -24,53 +24,48 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "coalCloud.H"
|
#include "CoalCloud.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
defineTypeNameAndDebug(coalCloud, 0);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::coalCloud::coalCloud
|
template<class ThermoType>
|
||||||
|
Foam::CoalCloud<ThermoType>::CoalCloud
|
||||||
(
|
(
|
||||||
const word& cloudName,
|
const word& cloudName,
|
||||||
const volScalarField& rho,
|
const volScalarField& rho,
|
||||||
const volVectorField& U,
|
const volVectorField& U,
|
||||||
const dimensionedVector& g,
|
const dimensionedVector& g,
|
||||||
hCombustionThermo& thermo,
|
hCombustionThermo& thermo,
|
||||||
PtrList<specieReactingProperties>& gases
|
PtrList<ThermoType>& carrierSpecies
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
ReactingMultiphaseCloud<coalParcel>
|
ReactingMultiphaseCloud<CoalParcel<ThermoType> >
|
||||||
(
|
(
|
||||||
cloudName,
|
cloudName,
|
||||||
rho,
|
rho,
|
||||||
U,
|
U,
|
||||||
g,
|
g,
|
||||||
thermo,
|
thermo,
|
||||||
gases
|
carrierSpecies
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
coalParcel::readFields(*this);
|
CoalParcel<ThermoType>::readFields(*this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::coalCloud::~coalCloud()
|
template<class ThermoType>
|
||||||
|
Foam::CoalCloud<ThermoType>::~CoalCloud()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
void Foam::coalCloud::writeFields() const
|
template<class ThermoType>
|
||||||
|
void Foam::CoalCloud<ThermoType>::writeFields() const
|
||||||
{
|
{
|
||||||
coalParcel::writeFields(*this);
|
CoalParcel<ThermoType>::writeFields(*this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -23,20 +23,20 @@ License
|
|||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
Class
|
Class
|
||||||
coalCloud
|
CoalCloud
|
||||||
|
|
||||||
Description
|
Description
|
||||||
|
|
||||||
SourceFiles
|
SourceFiles
|
||||||
coalCloud.C
|
CoalCloud.C
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#ifndef coalCloud_H
|
#ifndef CoalCloud_H
|
||||||
#define coalCloud_H
|
#define CoalCloud_H
|
||||||
|
|
||||||
#include "ReactingMultiphaseCloud.H"
|
#include "ReactingMultiphaseCloud.H"
|
||||||
#include "coalParcel.H"
|
#include "CoalParcel.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
@ -44,44 +44,45 @@ namespace Foam
|
|||||||
{
|
{
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*\
|
/*---------------------------------------------------------------------------*\
|
||||||
Class coalCloud Declaration
|
Class CoalCloud Declaration
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
class coalCloud
|
template<class ThermoType>
|
||||||
|
class CoalCloud
|
||||||
:
|
:
|
||||||
public ReactingMultiphaseCloud<coalParcel>
|
public ReactingMultiphaseCloud<CoalParcel<ThermoType> >
|
||||||
{
|
{
|
||||||
// Private Member Functions
|
// Private Member Functions
|
||||||
|
|
||||||
//- Disallow default bitwise copy construct
|
//- Disallow default bitwise copy construct
|
||||||
coalCloud(const coalCloud&);
|
CoalCloud(const CoalCloud&);
|
||||||
|
|
||||||
//- Disallow default bitwise assignment
|
//- Disallow default bitwise assignment
|
||||||
void operator=(const coalCloud&);
|
void operator=(const CoalCloud&);
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
//-Runtime type information
|
//-Runtime type information
|
||||||
TypeName("coalCloud");
|
TypeName("CoalCloud");
|
||||||
|
|
||||||
|
|
||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct given carrier gas fields
|
//- Construct given carrier gas fields
|
||||||
coalCloud
|
CoalCloud
|
||||||
(
|
(
|
||||||
const word& cloudName,
|
const word& cloudName,
|
||||||
const volScalarField& rho,
|
const volScalarField& rho,
|
||||||
const volVectorField& U,
|
const volVectorField& U,
|
||||||
const dimensionedVector& g,
|
const dimensionedVector& g,
|
||||||
hCombustionThermo& thermo,
|
hCombustionThermo& thermo,
|
||||||
PtrList<specieReactingProperties>& gases
|
PtrList<ThermoType>& gases
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
//- Destructor
|
//- Destructor
|
||||||
~coalCloud();
|
~CoalCloud();
|
||||||
|
|
||||||
|
|
||||||
// Member Functions
|
// Member Functions
|
||||||
@ -97,6 +98,12 @@ public:
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#ifdef NoRepository
|
||||||
|
#include "CoalCloud.C"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
@ -24,15 +24,14 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "makeParcelIOList.H"
|
#include "createReactingCloudTypes.H"
|
||||||
|
#include "CoalCloud.H"
|
||||||
#include "coalParcel.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
makeParcelIOList(coalParcel);
|
createReactingCloudType(CoalCloud);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -24,34 +24,26 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "coalParcel.H"
|
#include "CoalParcel.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
defineTypeNameAndDebug(coalParcel, 0);
|
|
||||||
defineParticleTypeNameAndDebug(coalParcel, 0);
|
|
||||||
defineParcelTypeNameAndDebug(coalParcel, 0);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::coalParcel::coalParcel
|
template<class ThermoType>
|
||||||
|
Foam::CoalParcel<ThermoType>::CoalParcel
|
||||||
(
|
(
|
||||||
ReactingMultiphaseCloud<coalParcel>& owner,
|
ReactingMultiphaseCloud<CoalParcel<ThermoType> >& owner,
|
||||||
const vector& position,
|
const vector& position,
|
||||||
const label cellI
|
const label cellI
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
ReactingMultiphaseParcel<coalParcel>(owner, position, cellI)
|
ReactingMultiphaseParcel<CoalParcel<ThermoType> >(owner, position, cellI)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
Foam::coalParcel::coalParcel
|
template<class ThermoType>
|
||||||
|
Foam::CoalParcel<ThermoType>::CoalParcel
|
||||||
(
|
(
|
||||||
ReactingMultiphaseCloud<coalParcel>& owner,
|
ReactingMultiphaseCloud<CoalParcel<ThermoType> >& owner,
|
||||||
const vector& position,
|
const vector& position,
|
||||||
const label cellI,
|
const label cellI,
|
||||||
const label typeId,
|
const label typeId,
|
||||||
@ -62,10 +54,12 @@ Foam::coalParcel::coalParcel
|
|||||||
const scalarField& YGas0,
|
const scalarField& YGas0,
|
||||||
const scalarField& YLiquid0,
|
const scalarField& YLiquid0,
|
||||||
const scalarField& YSolid0,
|
const scalarField& YSolid0,
|
||||||
const constantProperties& constProps
|
const typename
|
||||||
|
ReactingMultiphaseParcel<CoalParcel<ThermoType> >::
|
||||||
|
constantProperties& constProps
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
ReactingMultiphaseParcel<coalParcel>
|
ReactingMultiphaseParcel<CoalParcel<ThermoType> >
|
||||||
(
|
(
|
||||||
owner,
|
owner,
|
||||||
position,
|
position,
|
||||||
@ -83,20 +77,22 @@ Foam::coalParcel::coalParcel
|
|||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
Foam::coalParcel::coalParcel
|
template<class ThermoType>
|
||||||
|
Foam::CoalParcel<ThermoType>::CoalParcel
|
||||||
(
|
(
|
||||||
const Cloud<coalParcel>& cloud,
|
const Cloud<CoalParcel<ThermoType> >& cloud,
|
||||||
Istream& is,
|
Istream& is,
|
||||||
bool readFields
|
bool readFields
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
ReactingMultiphaseParcel<coalParcel>(cloud, is, readFields)
|
ReactingMultiphaseParcel<CoalParcel<ThermoType> >(cloud, is, readFields)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Destructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Destructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::coalParcel::~coalParcel()
|
template<class ThermoType>
|
||||||
|
Foam::CoalParcel<ThermoType>::~CoalParcel()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
@ -23,19 +23,19 @@ License
|
|||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
Class
|
Class
|
||||||
coalParcel
|
CoalParcel
|
||||||
|
|
||||||
Description
|
Description
|
||||||
|
|
||||||
|
|
||||||
SourceFiles
|
SourceFiles
|
||||||
coalParcel.C
|
CoalParcel.C
|
||||||
coalParcelIO.C
|
CoalParcelIO.C
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#ifndef coalParcel_H
|
#ifndef CoalParcel_H
|
||||||
#define coalParcel_H
|
#define CoalParcel_H
|
||||||
|
|
||||||
#include "ReactingMultiphaseParcel.H"
|
#include "ReactingMultiphaseParcel.H"
|
||||||
|
|
||||||
@ -44,34 +44,42 @@ SourceFiles
|
|||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
|
|
||||||
|
// Forward declaration of classes
|
||||||
|
template<class ThermoType>
|
||||||
|
class CoalParcel;
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*\
|
/*---------------------------------------------------------------------------*\
|
||||||
Class coalParcel Declaration
|
Class CoalParcel Declaration
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
class coalParcel
|
template<class ThermoType>
|
||||||
|
class CoalParcel
|
||||||
:
|
:
|
||||||
public ReactingMultiphaseParcel<coalParcel>
|
public ReactingMultiphaseParcel<CoalParcel<ThermoType> >
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
//- The type of thermodynamics this parcel was instantiated for
|
||||||
|
typedef ThermoType thermoType;
|
||||||
|
|
||||||
// Run-time type information
|
// Run-time type information
|
||||||
TypeName("coalParcel");
|
TypeName("CoalParcel");
|
||||||
|
|
||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct from owner, position, and cloud owner
|
//- Construct from owner, position, and cloud owner
|
||||||
// Other properties initialised as null
|
// Other properties initialised as null
|
||||||
coalParcel
|
CoalParcel
|
||||||
(
|
(
|
||||||
ReactingMultiphaseCloud<coalParcel>& owner,
|
ReactingMultiphaseCloud<CoalParcel>& owner,
|
||||||
const vector& position,
|
const vector& position,
|
||||||
const label cellI
|
const label cellI
|
||||||
);
|
);
|
||||||
|
|
||||||
//- Construct from components
|
//- Construct from components
|
||||||
coalParcel
|
CoalParcel
|
||||||
(
|
(
|
||||||
ReactingMultiphaseCloud<coalParcel>& owner,
|
ReactingMultiphaseCloud<CoalParcel>& owner,
|
||||||
const vector& position,
|
const vector& position,
|
||||||
const label cellI,
|
const label cellI,
|
||||||
const label typeId,
|
const label typeId,
|
||||||
@ -82,42 +90,43 @@ public:
|
|||||||
const scalarField& YGas0,
|
const scalarField& YGas0,
|
||||||
const scalarField& YLiquid0,
|
const scalarField& YLiquid0,
|
||||||
const scalarField& YSolid0,
|
const scalarField& YSolid0,
|
||||||
const constantProperties& constProps
|
const typename
|
||||||
|
ReactingMultiphaseParcel<CoalParcel>::
|
||||||
|
constantProperties& constProps
|
||||||
);
|
);
|
||||||
|
|
||||||
//- Construct from Istream
|
//- Construct from Istream
|
||||||
coalParcel
|
CoalParcel
|
||||||
(
|
(
|
||||||
const Cloud<coalParcel>& c,
|
const Cloud<CoalParcel>& c,
|
||||||
Istream& is,
|
Istream& is,
|
||||||
bool readFields = true
|
bool readFields = true
|
||||||
);
|
);
|
||||||
|
|
||||||
//- Construct and return a clone
|
//- Construct and return a clone
|
||||||
autoPtr<coalParcel> clone() const
|
autoPtr<CoalParcel> clone() const
|
||||||
{
|
{
|
||||||
return autoPtr<coalParcel>(new coalParcel(*this));
|
return autoPtr<CoalParcel>(new CoalParcel(*this));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//- Destructor
|
//- Destructor
|
||||||
virtual ~coalParcel();
|
virtual ~CoalParcel();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
template<>
|
|
||||||
inline bool contiguous<coalParcel>()
|
|
||||||
{
|
|
||||||
return false; // Now have scalar lists/fields (mass fractions)
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
} // End namespace Foam
|
} // End namespace Foam
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#ifdef NoRepository
|
||||||
|
#include "CoalParcel.C"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
@ -24,24 +24,14 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "coalParcel.H"
|
#include "createCoalParcelTypes.H"
|
||||||
#include "ReactingCloud.H"
|
#include "CoalParcel.H"
|
||||||
|
|
||||||
#include "SingleMixtureFraction.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
makeCompositionModel(ReactingCloud<coalParcel>);
|
createCoalParcelType(CoalParcel);
|
||||||
|
|
||||||
// Add instances of composition model to the table
|
|
||||||
makeCompositionModelType
|
|
||||||
(
|
|
||||||
SingleMixtureFraction,
|
|
||||||
ReactingCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -24,31 +24,43 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "basicReactingMultiphaseParcelTypes.H"
|
#include "CoalParcel.H"
|
||||||
#include "ThermoCloud.H"
|
|
||||||
|
|
||||||
#include "NoHeatTransfer.H"
|
#include "makeReactingParcelDispersionModels.H"
|
||||||
#include "RanzMarshall.H"
|
#include "makeReactingParcelDragModels.H"
|
||||||
|
#include "makeReactingParcelInjectionModels.H"
|
||||||
|
#include "makeReactingParcelPatchInteractionModels.H"
|
||||||
|
#include "makeReactingParcelPostProcessingModels.H"
|
||||||
|
|
||||||
|
#include "makeReactingParcelHeatTransferModels.H"
|
||||||
|
|
||||||
|
#include "makeReactingMultiphaseParcelCompositionModels.H"
|
||||||
|
#include "makeReactingParcelPhaseChangeModels.H"
|
||||||
|
|
||||||
|
#include "makeReactingMultiphaseParcelDevolatilisationModels.H"
|
||||||
|
#include "makeCoalParcelSurfaceReactionModels.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
makeHeatTransferModel(ThermoCloud<bReactingMultiphaseParcel>);
|
// Kinematic sub-models
|
||||||
|
createReactingDispersionModelType(CoalParcel);
|
||||||
|
createReactingDragModelType(CoalParcel);
|
||||||
|
createReactingInjectionModelType(CoalParcel);
|
||||||
|
createReactingPatchInteractionModelType(CoalParcel);
|
||||||
|
createReactingPostProcessingModelType(CoalParcel);
|
||||||
|
|
||||||
// Add instances of heat transfer model to the table
|
// Thermo sub-models
|
||||||
makeHeatTransferModelType
|
createReactingHeatTransferModelType(CoalParcel);
|
||||||
(
|
|
||||||
NoHeatTransfer,
|
// Reacting sub-models
|
||||||
ThermoCloud,
|
createReactingMultiphaseCompositionModelType(CoalParcel);
|
||||||
bReactingMultiphaseParcel
|
createReactingPhaseChangeModelType(CoalParcel);
|
||||||
);
|
|
||||||
makeHeatTransferModelType
|
// Reacting multiphase sub-models
|
||||||
(
|
createReactingMultiphaseDevolatilisationModelType(CoalParcel);
|
||||||
RanzMarshall,
|
createCoalSurfaceReactionModelType(CoalParcel);
|
||||||
ThermoCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -0,0 +1,97 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef makeCoalParcelSurfaceReactionModels_H
|
||||||
|
#define makeCoalParcelSurfaceReactionModels_H
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#include "reactingThermoTypes.H"
|
||||||
|
#include "ReactingMultiphaseCloud.H"
|
||||||
|
|
||||||
|
#include "NoSurfaceReaction.H"
|
||||||
|
#include "COxidationDiffusionLimitedRate.H"
|
||||||
|
#include "COxidationKineticDiffusionLimitedRate.H"
|
||||||
|
#include "COxidationMurphyShaddix.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#define createCoalSurfaceReactionModelType(ParcelType) \
|
||||||
|
\
|
||||||
|
createCoalSurfaceReactionModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieConstProperties \
|
||||||
|
); \
|
||||||
|
createCoalSurfaceReactionModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieReactingProperties \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#define createCoalSurfaceReactionModelThermoType(ParcelType, ThermoType) \
|
||||||
|
\
|
||||||
|
makeSurfaceReactionModel \
|
||||||
|
( \
|
||||||
|
ReactingMultiphaseCloud<ParcelType<ThermoType> > \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
makeSurfaceReactionModelThermoTypeNew \
|
||||||
|
( \
|
||||||
|
NoSurfaceReaction, \
|
||||||
|
ReactingMultiphaseCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makeSurfaceReactionModelThermoTypeNew \
|
||||||
|
( \
|
||||||
|
COxidationDiffusionLimitedRate, \
|
||||||
|
ReactingMultiphaseCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makeSurfaceReactionModelThermoTypeNew \
|
||||||
|
( \
|
||||||
|
COxidationKineticDiffusionLimitedRate, \
|
||||||
|
ReactingMultiphaseCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makeSurfaceReactionModelThermoTypeNew \
|
||||||
|
( \
|
||||||
|
COxidationMurphyShaddix, \
|
||||||
|
ReactingMultiphaseCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -1,25 +1,8 @@
|
|||||||
/* coal cloud */
|
/* Coal cloud */
|
||||||
coalCloud/coalCloud.C
|
CoalCloud/defineCoalCloud.C
|
||||||
|
|
||||||
/* coal parcel and sub-models */
|
/* Coal parcel and sub-models */
|
||||||
coalParcel/coalParcel.C
|
CoalParcel/defineCoalParcel.C
|
||||||
coalParcel/defineCoalParcel.C
|
CoalParcel/submodels/makeCoalParcelSubmodels.C
|
||||||
coalParcel/submodels/makeCoalParcelCompositionModels.C
|
|
||||||
coalParcel/submodels/makeCoalParcelDevolatilisationModels.C
|
|
||||||
coalParcel/submodels/makeCoalParcelDragModels.C
|
|
||||||
coalParcel/submodels/makeCoalParcelDispersionModels.C
|
|
||||||
coalParcel/submodels/makeCoalParcelInjectionModels.C
|
|
||||||
coalParcel/submodels/makeCoalParcelHeatTransferModels.C
|
|
||||||
coalParcel/submodels/makeCoalParcelPhaseChangeModels.C
|
|
||||||
coalParcel/submodels/makeCoalParcelPatchInteractionModels.C
|
|
||||||
coalParcel/submodels/makeCoalParcelPostProcessingModels.C
|
|
||||||
coalParcel/submodels/makeCoalParcelSurfaceReactionModels.C
|
|
||||||
|
|
||||||
submodels/surfaceReactionModel/COxidationDiffusionLimitedRate/COxidationDiffusionLimitedRate.C
|
|
||||||
submodels/surfaceReactionModel/COxidationKineticDiffusionLimitedRate/COxidationKineticDiffusionLimitedRate.C
|
|
||||||
submodels/surfaceReactionModel/COxidationMurphyShaddix/COxidationMurphyShaddix.C
|
|
||||||
|
|
||||||
/* IOLists */
|
|
||||||
coalParcel/submodels/makeCoalParcelIOList.C
|
|
||||||
|
|
||||||
LIB = $(FOAM_LIBBIN)/libcoalCombustion
|
LIB = $(FOAM_LIBBIN)/libcoalCombustion
|
||||||
|
|||||||
@ -1,50 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2007 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "coalParcel.H"
|
|
||||||
#include "ReactingMultiphaseCloud.H"
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
defineTemplateTypeNameAndDebug(Cloud<coalParcel>, 0);
|
|
||||||
|
|
||||||
defineParcelTypeNameAndDebug(KinematicParcel<coalParcel>, 0);
|
|
||||||
// defineTemplateTypeNameAndDebug(KinematicParcel<coalParcel>, 0);
|
|
||||||
defineParcelTypeNameAndDebug(ThermoParcel<coalParcel>, 0);
|
|
||||||
defineTemplateTypeNameAndDebug(ThermoParcel<coalParcel>, 0);
|
|
||||||
defineParcelTypeNameAndDebug(ReactingParcel<coalParcel>, 0);
|
|
||||||
defineTemplateTypeNameAndDebug(ReactingParcel<coalParcel>, 0);
|
|
||||||
defineParcelTypeNameAndDebug(ReactingMultiphaseParcel<coalParcel>, 0);
|
|
||||||
defineTemplateTypeNameAndDebug(ReactingMultiphaseParcel<coalParcel>, 0);
|
|
||||||
|
|
||||||
defineParcelTypeNameAndDebug(KinematicCloud<coalParcel>, 0);
|
|
||||||
defineParcelTypeNameAndDebug(ThermoCloud<coalParcel>, 0);
|
|
||||||
defineParcelTypeNameAndDebug(ReactingCloud<coalParcel>, 0);
|
|
||||||
defineParcelTypeNameAndDebug(ReactingMultiphaseCloud<coalParcel>, 0);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,65 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "coalParcel.H"
|
|
||||||
#include "ReactingMultiphaseCloud.H"
|
|
||||||
|
|
||||||
#include "NoDevolatilisation.H"
|
|
||||||
#include "ConstantRateDevolatilisation.H"
|
|
||||||
#include "SingleKineticRateDevolatilisation.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeDevolatilisationModel
|
|
||||||
(
|
|
||||||
ReactingMultiphaseCloud<coalParcel>
|
|
||||||
);
|
|
||||||
|
|
||||||
// Add instances of devolatilisation model to the table
|
|
||||||
makeDevolatilisationModelType
|
|
||||||
(
|
|
||||||
NoDevolatilisation,
|
|
||||||
ReactingMultiphaseCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
makeDevolatilisationModelType
|
|
||||||
(
|
|
||||||
ConstantRateDevolatilisation,
|
|
||||||
ReactingMultiphaseCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
makeDevolatilisationModelType
|
|
||||||
(
|
|
||||||
SingleKineticRateDevolatilisation,
|
|
||||||
ReactingMultiphaseCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,68 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2007 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "coalParcel.H"
|
|
||||||
#include "KinematicCloud.H"
|
|
||||||
|
|
||||||
#include "NoDispersion.H"
|
|
||||||
#include "GradientDispersionRAS.H"
|
|
||||||
#include "StochasticDispersionRAS.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeDispersionModel(KinematicCloud<coalParcel>);
|
|
||||||
|
|
||||||
defineNamedTemplateTypeNameAndDebug
|
|
||||||
(
|
|
||||||
DispersionRASModel<KinematicCloud<coalParcel> >,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
|
|
||||||
// Add instances of dispersion model to the table
|
|
||||||
makeDispersionModelType
|
|
||||||
(
|
|
||||||
NoDispersion,
|
|
||||||
KinematicCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
makeDispersionModelType
|
|
||||||
(
|
|
||||||
GradientDispersionRAS,
|
|
||||||
KinematicCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
makeDispersionModelType
|
|
||||||
(
|
|
||||||
StochasticDispersionRAS,
|
|
||||||
KinematicCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,45 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2007 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "coalParcel.H"
|
|
||||||
#include "KinematicCloud.H"
|
|
||||||
|
|
||||||
#include "NoDrag.H"
|
|
||||||
#include "SphereDrag.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeDragModel(KinematicCloud<coalParcel>);
|
|
||||||
|
|
||||||
// Add instances of drag model to the table
|
|
||||||
makeDragModelType(NoDrag, KinematicCloud, coalParcel);
|
|
||||||
makeDragModelType(SphereDrag, KinematicCloud, coalParcel);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,45 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2007 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "coalParcel.H"
|
|
||||||
#include "ThermoCloud.H"
|
|
||||||
|
|
||||||
#include "NoHeatTransfer.H"
|
|
||||||
#include "RanzMarshall.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeHeatTransferModel(ThermoCloud<coalParcel>);
|
|
||||||
|
|
||||||
// Add instances of heat transfer model to the table
|
|
||||||
makeHeatTransferModelType(NoHeatTransfer, ThermoCloud, coalParcel);
|
|
||||||
makeHeatTransferModelType(RanzMarshall, ThermoCloud, coalParcel);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,49 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2007 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "coalParcel.H"
|
|
||||||
#include "ReactingCloud.H"
|
|
||||||
|
|
||||||
#include "ConeInjection.H"
|
|
||||||
#include "FieldActivatedInjection.H"
|
|
||||||
#include "ManualInjection.H"
|
|
||||||
#include "NoInjection.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeInjectionModel(KinematicCloud<coalParcel>);
|
|
||||||
|
|
||||||
// Add instances of injection model to the table
|
|
||||||
makeInjectionModelType(ConeInjection, KinematicCloud, coalParcel);
|
|
||||||
makeInjectionModelType(FieldActivatedInjection, KinematicCloud, coalParcel);
|
|
||||||
makeInjectionModelType(ManualInjection, KinematicCloud, coalParcel);
|
|
||||||
makeInjectionModelType(NoInjection, KinematicCloud, coalParcel);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,62 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2007 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "coalParcel.H"
|
|
||||||
#include "ReactingCloud.H"
|
|
||||||
|
|
||||||
#include "LocalInteraction.H"
|
|
||||||
#include "Rebound.H"
|
|
||||||
#include "StandardWallInteraction.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makePatchInteractionModel(KinematicCloud<coalParcel>);
|
|
||||||
|
|
||||||
// Add instances of patch interaction model to the table
|
|
||||||
makePatchInteractionModelType
|
|
||||||
(
|
|
||||||
LocalInteraction,
|
|
||||||
KinematicCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
makePatchInteractionModelType
|
|
||||||
(
|
|
||||||
Rebound,
|
|
||||||
KinematicCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
makePatchInteractionModelType
|
|
||||||
(
|
|
||||||
StandardWallInteraction,
|
|
||||||
KinematicCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,58 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "coalParcel.H"
|
|
||||||
#include "ReactingCloud.H"
|
|
||||||
|
|
||||||
#include "NoPhaseChange.H"
|
|
||||||
#include "LiquidEvaporation.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makePhaseChangeModel
|
|
||||||
(
|
|
||||||
ReactingCloud<coalParcel>
|
|
||||||
);
|
|
||||||
|
|
||||||
// Add instances of phase change model to the table
|
|
||||||
makePhaseChangeModelType
|
|
||||||
(
|
|
||||||
NoPhaseChange,
|
|
||||||
ReactingCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
makePhaseChangeModelType
|
|
||||||
(
|
|
||||||
LiquidEvaporation,
|
|
||||||
ReactingCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,55 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "coalParcel.H"
|
|
||||||
#include "KinematicCloud.H"
|
|
||||||
|
|
||||||
#include "NoPostProcessing.H"
|
|
||||||
#include "StandardPostProcessing.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makePostProcessingModel(KinematicCloud<coalParcel>);
|
|
||||||
|
|
||||||
// Add instances of post-processing model to the table
|
|
||||||
makePostProcessingModelType
|
|
||||||
(
|
|
||||||
NoPostProcessing,
|
|
||||||
KinematicCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
makePostProcessingModelType
|
|
||||||
(
|
|
||||||
StandardPostProcessing,
|
|
||||||
KinematicCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,69 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2007 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "coalParcel.H"
|
|
||||||
#include "ReactingMultiphaseCloud.H"
|
|
||||||
|
|
||||||
#include "NoSurfaceReaction.H"
|
|
||||||
#include "COxidationDiffusionLimitedRate.H"
|
|
||||||
#include "COxidationKineticDiffusionLimitedRate.H"
|
|
||||||
#include "COxidationMurphyShaddix.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeSurfaceReactionModel(ReactingMultiphaseCloud<coalParcel>);
|
|
||||||
|
|
||||||
// Add instances of surface reaction model to the table
|
|
||||||
makeSurfaceReactionModelType
|
|
||||||
(
|
|
||||||
NoSurfaceReaction,
|
|
||||||
ReactingMultiphaseCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
makeSurfaceReactionModelTypeInstance
|
|
||||||
(
|
|
||||||
COxidationDiffusionLimitedRate,
|
|
||||||
ReactingMultiphaseCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
makeSurfaceReactionModelTypeInstance
|
|
||||||
(
|
|
||||||
COxidationKineticDiffusionLimitedRate,
|
|
||||||
ReactingMultiphaseCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
makeSurfaceReactionModelTypeInstance
|
|
||||||
(
|
|
||||||
COxidationMurphyShaddix,
|
|
||||||
ReactingMultiphaseCloud,
|
|
||||||
coalParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -0,0 +1,98 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef createCoalParcelTypes_H
|
||||||
|
#define createCoalParcelTypes_H
|
||||||
|
|
||||||
|
#include "makeParcelIOList.H"
|
||||||
|
#include "reactingThermoTypes.H"
|
||||||
|
#include "CoalCloud.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#define createCoalParcelType(ParcelType) \
|
||||||
|
\
|
||||||
|
createCoalParcelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieConstProperties \
|
||||||
|
); \
|
||||||
|
createCoalParcelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieReactingProperties \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#define createCoalParcelThermoType(ParcelType, ThermoType) \
|
||||||
|
\
|
||||||
|
typedef ParcelType<ThermoType> ParcelType##ThermoType; \
|
||||||
|
\
|
||||||
|
makeParcelIOList(ParcelType##ThermoType); \
|
||||||
|
\
|
||||||
|
defineTemplateTypeNameAndDebug(ParcelType##ThermoType, 0); \
|
||||||
|
defineTemplateTypeNameAndDebug(Particle<ParcelType##ThermoType>, 0); \
|
||||||
|
defineTemplateTypeNameAndDebug(Cloud<ParcelType##ThermoType>, 0); \
|
||||||
|
\
|
||||||
|
defineParcelTypeNameAndDebug(KinematicParcel<ParcelType##ThermoType>, 0); \
|
||||||
|
defineTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
KinematicParcel<ParcelType##ThermoType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
defineParcelTypeNameAndDebug(ThermoParcel<ParcelType##ThermoType>, 0); \
|
||||||
|
defineTemplateTypeNameAndDebug(ThermoParcel<ParcelType##ThermoType>, 0); \
|
||||||
|
defineParcelTypeNameAndDebug(ReactingParcel<ParcelType##ThermoType>, 0); \
|
||||||
|
defineTemplateTypeNameAndDebug(ReactingParcel<ParcelType##ThermoType>, 0);\
|
||||||
|
defineParcelTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
ReactingMultiphaseParcel<ParcelType##ThermoType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
defineTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
ReactingMultiphaseParcel<ParcelType##ThermoType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
defineParcelTypeNameAndDebug(CoalParcel<ParcelType##ThermoType>, 0); \
|
||||||
|
defineTemplateTypeNameAndDebug(CoalParcel<ParcelType##ThermoType>, 0); \
|
||||||
|
\
|
||||||
|
defineParcelTypeNameAndDebug(KinematicCloud<ParcelType##ThermoType>, 0); \
|
||||||
|
defineParcelTypeNameAndDebug(ThermoCloud<ParcelType##ThermoType>, 0); \
|
||||||
|
defineParcelTypeNameAndDebug(ReactingCloud<ParcelType##ThermoType>, 0); \
|
||||||
|
defineParcelTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
ReactingMultiphaseCloud<ParcelType##ThermoType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
defineParcelTypeNameAndDebug(CoalCloud<ParcelType##ThermoType>, 0);
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -28,18 +28,14 @@ License
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::COxidationDiffusionLimitedRate::COxidationDiffusionLimitedRate
|
template<class CloudType>
|
||||||
|
Foam::COxidationDiffusionLimitedRate<CloudType>::COxidationDiffusionLimitedRate
|
||||||
(
|
(
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
ReactingMultiphaseCloud<coalParcel>& owner
|
CloudType& owner
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
SurfaceReactionModel<ReactingMultiphaseCloud<coalParcel> >
|
SurfaceReactionModel<CloudType>(dict, owner, typeName),
|
||||||
(
|
|
||||||
dict,
|
|
||||||
owner,
|
|
||||||
typeName
|
|
||||||
),
|
|
||||||
Sb_(dimensionedScalar(this->coeffDict().lookup("Sb")).value()),
|
Sb_(dimensionedScalar(this->coeffDict().lookup("Sb")).value()),
|
||||||
D_(dimensionedScalar(this->coeffDict().lookup("D")).value()),
|
D_(dimensionedScalar(this->coeffDict().lookup("D")).value()),
|
||||||
CsLocalId_(-1),
|
CsLocalId_(-1),
|
||||||
@ -63,10 +59,10 @@ Foam::COxidationDiffusionLimitedRate::COxidationDiffusionLimitedRate
|
|||||||
{
|
{
|
||||||
FatalErrorIn
|
FatalErrorIn
|
||||||
(
|
(
|
||||||
"COxidationDiffusionLimitedRate"
|
"COxidationDiffusionLimitedRate<CloudType>"
|
||||||
"("
|
"("
|
||||||
"const dictionary&, "
|
"const dictionary&, "
|
||||||
"ReactingMultiphaseCloud<coalParcel>&"
|
"CloudType&"
|
||||||
")"
|
")"
|
||||||
) << "Stoichiometry of reaction, Sb, must be greater than zero" << nl
|
) << "Stoichiometry of reaction, Sb, must be greater than zero" << nl
|
||||||
<< exit(FatalError);
|
<< exit(FatalError);
|
||||||
@ -76,19 +72,23 @@ Foam::COxidationDiffusionLimitedRate::COxidationDiffusionLimitedRate
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::COxidationDiffusionLimitedRate::~COxidationDiffusionLimitedRate()
|
template<class CloudType>
|
||||||
|
Foam::COxidationDiffusionLimitedRate<CloudType>::
|
||||||
|
~COxidationDiffusionLimitedRate()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
bool Foam::COxidationDiffusionLimitedRate::active() const
|
template<class CloudType>
|
||||||
|
bool Foam::COxidationDiffusionLimitedRate<CloudType>::active() const
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Foam::scalar Foam::COxidationDiffusionLimitedRate::calculate
|
template<class CloudType>
|
||||||
|
Foam::scalar Foam::COxidationDiffusionLimitedRate<CloudType>::calculate
|
||||||
(
|
(
|
||||||
const scalar dt,
|
const scalar dt,
|
||||||
const label cellI,
|
const label cellI,
|
||||||
@ -110,7 +110,8 @@ Foam::scalar Foam::COxidationDiffusionLimitedRate::calculate
|
|||||||
) const
|
) const
|
||||||
{
|
{
|
||||||
// Fraction of remaining combustible material
|
// Fraction of remaining combustible material
|
||||||
const scalar fComb = YMixture[coalParcel::SLD]*YSolid[CsLocalId_];
|
const label idSolid = CloudType::parcelType::SLD;
|
||||||
|
const scalar fComb = YMixture[idSolid]*YSolid[CsLocalId_];
|
||||||
|
|
||||||
// Surface combustion active combustible fraction is consumed
|
// Surface combustion active combustible fraction is consumed
|
||||||
if (fComb < SMALL)
|
if (fComb < SMALL)
|
||||||
@ -120,7 +121,7 @@ Foam::scalar Foam::COxidationDiffusionLimitedRate::calculate
|
|||||||
|
|
||||||
// Local mass fraction of O2 in the carrier phase
|
// Local mass fraction of O2 in the carrier phase
|
||||||
const scalar YO2 =
|
const scalar YO2 =
|
||||||
owner().carrierThermo().composition().Y(O2GlobalId_)[cellI];
|
this->owner().carrierThermo().composition().Y(O2GlobalId_)[cellI];
|
||||||
|
|
||||||
// Change in C mass [kg]
|
// Change in C mass [kg]
|
||||||
scalar dmC =
|
scalar dmC =
|
||||||
|
|||||||
@ -38,19 +38,23 @@ Description
|
|||||||
#define COxidationDiffusionLimitedRate_H
|
#define COxidationDiffusionLimitedRate_H
|
||||||
|
|
||||||
#include "SurfaceReactionModel.H"
|
#include "SurfaceReactionModel.H"
|
||||||
#include "coalParcel.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
// Forward class declarations
|
||||||
|
template<class CloudType>
|
||||||
|
class COxidationDiffusionLimitedRate;
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
/*---------------------------------------------------------------------------*\
|
/*---------------------------------------------------------------------------*\
|
||||||
Class COxidationDiffusionLimitedRate Declaration
|
Class COxidationDiffusionLimitedRate Declaration
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
template<class CloudType>
|
||||||
class COxidationDiffusionLimitedRate
|
class COxidationDiffusionLimitedRate
|
||||||
:
|
:
|
||||||
public SurfaceReactionModel<ReactingMultiphaseCloud<coalParcel> >
|
public SurfaceReactionModel<CloudType>
|
||||||
{
|
{
|
||||||
// Private data
|
// Private data
|
||||||
|
|
||||||
@ -99,7 +103,7 @@ public:
|
|||||||
COxidationDiffusionLimitedRate
|
COxidationDiffusionLimitedRate
|
||||||
(
|
(
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
ReactingMultiphaseCloud<coalParcel>& owner
|
CloudType& owner
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
@ -142,6 +146,12 @@ public:
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#ifdef NoRepository
|
||||||
|
#include "COxidationDiffusionLimitedRate.C"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
|
|||||||
@ -28,14 +28,15 @@ License
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::COxidationKineticDiffusionLimitedRate::
|
template<class CloudType>
|
||||||
|
Foam::COxidationKineticDiffusionLimitedRate<CloudType>::
|
||||||
COxidationKineticDiffusionLimitedRate
|
COxidationKineticDiffusionLimitedRate
|
||||||
(
|
(
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
ReactingMultiphaseCloud<coalParcel>& owner
|
CloudType& owner
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
SurfaceReactionModel<ReactingMultiphaseCloud<coalParcel> >
|
SurfaceReactionModel<CloudType>
|
||||||
(
|
(
|
||||||
dict,
|
dict,
|
||||||
owner,
|
owner,
|
||||||
@ -69,7 +70,7 @@ COxidationKineticDiffusionLimitedRate
|
|||||||
"COxidationKineticDiffusionLimitedRate"
|
"COxidationKineticDiffusionLimitedRate"
|
||||||
"("
|
"("
|
||||||
"const dictionary&, "
|
"const dictionary&, "
|
||||||
"ReactingMultiphaseCloud<coalParcel>&"
|
"CloudType&"
|
||||||
")"
|
")"
|
||||||
) << "Stoichiometry of reaction, Sb, must be greater than zero" << nl
|
) << "Stoichiometry of reaction, Sb, must be greater than zero" << nl
|
||||||
<< exit(FatalError);
|
<< exit(FatalError);
|
||||||
@ -79,20 +80,23 @@ COxidationKineticDiffusionLimitedRate
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::COxidationKineticDiffusionLimitedRate::
|
template<class CloudType>
|
||||||
|
Foam::COxidationKineticDiffusionLimitedRate<CloudType>::
|
||||||
~COxidationKineticDiffusionLimitedRate()
|
~COxidationKineticDiffusionLimitedRate()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
bool Foam::COxidationKineticDiffusionLimitedRate::active() const
|
template<class CloudType>
|
||||||
|
bool Foam::COxidationKineticDiffusionLimitedRate<CloudType>::active() const
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Foam::scalar Foam::COxidationKineticDiffusionLimitedRate::calculate
|
template<class CloudType>
|
||||||
|
Foam::scalar Foam::COxidationKineticDiffusionLimitedRate<CloudType>::calculate
|
||||||
(
|
(
|
||||||
const scalar dt,
|
const scalar dt,
|
||||||
const label cellI,
|
const label cellI,
|
||||||
@ -114,7 +118,8 @@ Foam::scalar Foam::COxidationKineticDiffusionLimitedRate::calculate
|
|||||||
) const
|
) const
|
||||||
{
|
{
|
||||||
// Fraction of remaining combustible material
|
// Fraction of remaining combustible material
|
||||||
const scalar fComb = YMixture[coalParcel::SLD]*YSolid[CsLocalId_];
|
const label idSolid = CloudType::parcelType::SLD;
|
||||||
|
const scalar fComb = YMixture[idSolid]*YSolid[CsLocalId_];
|
||||||
|
|
||||||
// Surface combustion active combustible fraction is consumed
|
// Surface combustion active combustible fraction is consumed
|
||||||
if (fComb < SMALL)
|
if (fComb < SMALL)
|
||||||
@ -124,7 +129,7 @@ Foam::scalar Foam::COxidationKineticDiffusionLimitedRate::calculate
|
|||||||
|
|
||||||
// Local mass fraction of O2 in the carrier phase
|
// Local mass fraction of O2 in the carrier phase
|
||||||
const scalar YO2 =
|
const scalar YO2 =
|
||||||
owner().carrierThermo().composition().Y(O2GlobalId_)[cellI];
|
this->owner().carrierThermo().composition().Y(O2GlobalId_)[cellI];
|
||||||
|
|
||||||
// Diffusion rate coefficient
|
// Diffusion rate coefficient
|
||||||
const scalar D0 = C1_/d*pow(0.5*(T + Tc), 0.75);
|
const scalar D0 = C1_/d*pow(0.5*(T + Tc), 0.75);
|
||||||
|
|||||||
@ -39,19 +39,24 @@ Description
|
|||||||
#define COxidationKineticDiffusionLimitedRate_H
|
#define COxidationKineticDiffusionLimitedRate_H
|
||||||
|
|
||||||
#include "SurfaceReactionModel.H"
|
#include "SurfaceReactionModel.H"
|
||||||
#include "coalParcel.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
|
|
||||||
|
// Forward class declarations
|
||||||
|
template<class CloudType>
|
||||||
|
class COxidationKineticDiffusionLimitedRate;
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*\
|
/*---------------------------------------------------------------------------*\
|
||||||
Class COxidationKineticDiffusionLimitedRate Declaration
|
Class COxidationKineticDiffusionLimitedRate Declaration
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
template<class CloudType>
|
||||||
class COxidationKineticDiffusionLimitedRate
|
class COxidationKineticDiffusionLimitedRate
|
||||||
:
|
:
|
||||||
public SurfaceReactionModel<ReactingMultiphaseCloud<coalParcel> >
|
public SurfaceReactionModel<CloudType>
|
||||||
{
|
{
|
||||||
// Private data
|
// Private data
|
||||||
|
|
||||||
@ -106,7 +111,7 @@ public:
|
|||||||
COxidationKineticDiffusionLimitedRate
|
COxidationKineticDiffusionLimitedRate
|
||||||
(
|
(
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
ReactingMultiphaseCloud<coalParcel>& owner
|
CloudType& owner
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
@ -149,6 +154,12 @@ public:
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#ifdef NoRepository
|
||||||
|
#include "COxidationKineticDiffusionLimitedRate.C"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
|
|||||||
@ -28,20 +28,23 @@ License
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::label Foam::COxidationMurphyShaddix::maxIters_ = 1000;
|
template<class CloudType>
|
||||||
|
Foam::label Foam::COxidationMurphyShaddix<CloudType>::maxIters_ = 1000;
|
||||||
|
|
||||||
Foam::scalar Foam::COxidationMurphyShaddix::tolerance_ = 1e-06;
|
template<class CloudType>
|
||||||
|
Foam::scalar Foam::COxidationMurphyShaddix<CloudType>::tolerance_ = 1e-06;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::COxidationMurphyShaddix::COxidationMurphyShaddix
|
template<class CloudType>
|
||||||
|
Foam::COxidationMurphyShaddix<CloudType>::COxidationMurphyShaddix
|
||||||
(
|
(
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
ReactingMultiphaseCloud<coalParcel>& owner
|
CloudType& owner
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
SurfaceReactionModel<ReactingMultiphaseCloud<coalParcel> >
|
SurfaceReactionModel<CloudType>
|
||||||
(
|
(
|
||||||
dict,
|
dict,
|
||||||
owner,
|
owner,
|
||||||
@ -76,19 +79,22 @@ Foam::COxidationMurphyShaddix::COxidationMurphyShaddix
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
Foam::COxidationMurphyShaddix::~COxidationMurphyShaddix()
|
template<class CloudType>
|
||||||
|
Foam::COxidationMurphyShaddix<CloudType>::~COxidationMurphyShaddix()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
bool Foam::COxidationMurphyShaddix::active() const
|
template<class CloudType>
|
||||||
|
bool Foam::COxidationMurphyShaddix<CloudType>::active() const
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Foam::scalar Foam::COxidationMurphyShaddix::calculate
|
template<class CloudType>
|
||||||
|
Foam::scalar Foam::COxidationMurphyShaddix<CloudType>::calculate
|
||||||
(
|
(
|
||||||
const scalar dt,
|
const scalar dt,
|
||||||
const label cellI,
|
const label cellI,
|
||||||
@ -110,7 +116,8 @@ Foam::scalar Foam::COxidationMurphyShaddix::calculate
|
|||||||
) const
|
) const
|
||||||
{
|
{
|
||||||
// Fraction of remaining combustible material
|
// Fraction of remaining combustible material
|
||||||
const scalar fComb = YMixture[coalParcel::SLD]*YSolid[CsLocalId_];
|
const label idSolid = CloudType::parcelType::SLD;
|
||||||
|
const scalar fComb = YMixture[idSolid]*YSolid[CsLocalId_];
|
||||||
|
|
||||||
// Surface combustion until combustible fraction is consumed
|
// Surface combustion until combustible fraction is consumed
|
||||||
if (fComb < SMALL)
|
if (fComb < SMALL)
|
||||||
@ -120,7 +127,7 @@ Foam::scalar Foam::COxidationMurphyShaddix::calculate
|
|||||||
|
|
||||||
// Cell carrier phase O2 species density [kg/m^3]
|
// Cell carrier phase O2 species density [kg/m^3]
|
||||||
const scalar rhoO2 =
|
const scalar rhoO2 =
|
||||||
rhoc*owner().carrierThermo().composition().Y(O2GlobalId_)[cellI];
|
rhoc*this->owner().carrierThermo().composition().Y(O2GlobalId_)[cellI];
|
||||||
|
|
||||||
if (rhoO2 < SMALL)
|
if (rhoO2 < SMALL)
|
||||||
{
|
{
|
||||||
@ -186,8 +193,10 @@ Foam::scalar Foam::COxidationMurphyShaddix::calculate
|
|||||||
|
|
||||||
if (iter > maxIters_)
|
if (iter > maxIters_)
|
||||||
{
|
{
|
||||||
WarningIn("scalar Foam::COxidationMurphyShaddix::calculate(...)")
|
WarningIn
|
||||||
<< "iter limit reached (" << maxIters_ << ")" << nl << endl;
|
(
|
||||||
|
"scalar Foam::COxidationMurphyShaddix<CloudType>::calculate(...)"
|
||||||
|
) << "iter limit reached (" << maxIters_ << ")" << nl << endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Calculate the number of molar units reacted
|
// Calculate the number of molar units reacted
|
||||||
|
|||||||
@ -34,19 +34,24 @@ Description
|
|||||||
#define COxidationMurphyShaddix_H
|
#define COxidationMurphyShaddix_H
|
||||||
|
|
||||||
#include "SurfaceReactionModel.H"
|
#include "SurfaceReactionModel.H"
|
||||||
#include "coalParcel.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
|
|
||||||
|
// Forward class declarations
|
||||||
|
template<class CloudType>
|
||||||
|
class COxidationMurphyShaddix;
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*\
|
/*---------------------------------------------------------------------------*\
|
||||||
Class COxidationMurphyShaddix Declaration
|
Class COxidationMurphyShaddix Declaration
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
template<class CloudType>
|
||||||
class COxidationMurphyShaddix
|
class COxidationMurphyShaddix
|
||||||
:
|
:
|
||||||
public SurfaceReactionModel<ReactingMultiphaseCloud<coalParcel> >
|
public SurfaceReactionModel<CloudType>
|
||||||
{
|
{
|
||||||
// Private data
|
// Private data
|
||||||
|
|
||||||
@ -122,7 +127,7 @@ public:
|
|||||||
COxidationMurphyShaddix
|
COxidationMurphyShaddix
|
||||||
(
|
(
|
||||||
const dictionary& dict,
|
const dictionary& dict,
|
||||||
ReactingMultiphaseCloud<coalParcel>& owner
|
CloudType& owner
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
@ -165,6 +170,12 @@ public:
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#ifdef NoRepository
|
||||||
|
#include "COxidationMurphyShaddix.C"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
|
|||||||
@ -2,32 +2,33 @@ PARCELS=parcels
|
|||||||
DERIVEDPARCELS=$(PARCELS)/derived
|
DERIVEDPARCELS=$(PARCELS)/derived
|
||||||
BASEPARCELS=$(PARCELS)/baseClasses
|
BASEPARCELS=$(PARCELS)/baseClasses
|
||||||
|
|
||||||
/* Parcels */
|
CLOUDS=clouds
|
||||||
$(DERIVEDPARCELS)/basicKinematicParcel/basicKinematicParcel.C
|
DERIVEDCLOUDS=$(CLOUDS)/derived
|
||||||
$(DERIVEDPARCELS)/basicThermoParcel/basicThermoParcel.C
|
BASECLOUDS=$(CLOUDS)/baseClasses
|
||||||
/* $(DERIVEDPARCELS)/basicReactingParcel/basicReactingParcel.C */
|
|
||||||
/* $(DERIVEDPARCELS)/basicReactingMultiphaseParcel/basicReactingMultiphaseParcel.C */
|
|
||||||
/* $(DERIVEDPARCELS)/trackedReactingParcel/trackedReactingParcel.C */
|
|
||||||
|
|
||||||
|
|
||||||
|
/* Parcels */
|
||||||
$(BASEPARCELS)/reactingParcel/reactingParcel.C
|
$(BASEPARCELS)/reactingParcel/reactingParcel.C
|
||||||
|
|
||||||
|
|
||||||
/* Cloud base classes */
|
/* Cloud base classes */
|
||||||
clouds/baseClasses/kinematicCloud/kinematicCloud.C
|
$(BASECLOUDS)/kinematicCloud/kinematicCloud.C
|
||||||
clouds/baseClasses/thermoCloud/thermoCloud.C
|
$(BASECLOUDS)/thermoCloud/thermoCloud.C
|
||||||
clouds/baseClasses/reactingCloud/reactingCloud.C
|
$(BASECLOUDS)/reactingCloud/reactingCloud.C
|
||||||
clouds/baseClasses/reactingMultiphaseCloud/reactingMultiphaseCloud.C
|
$(BASECLOUDS)/reactingMultiphaseCloud/reactingMultiphaseCloud.C
|
||||||
|
|
||||||
|
|
||||||
/* Cloud container/injection mechanisms */
|
/* Cloud container/injection mechanisms */
|
||||||
clouds/derived/basicKinematicCloud/basicKinematicCloud.C
|
$(DERIVEDCLOUDS)/basicKinematicCloud/basicKinematicCloud.C
|
||||||
clouds/derived/basicThermoCloud/basicThermoCloud.C
|
$(DERIVEDCLOUDS)/basicThermoCloud/basicThermoCloud.C
|
||||||
/* clouds/derived/basicReactingCloud/basicReactingCloud.C */
|
$(DERIVEDCLOUDS)/BasicReactingCloud/defineBasicReactingCloud.C
|
||||||
/* clouds/derived/basicReactingMultiphaseCloud/basicReactingMultiphaseCloud.C */
|
$(DERIVEDCLOUDS)/BasicReactingMultiphaseCloud/defineBasicReactingMultiphaseCloud.C
|
||||||
/* clouds/derived/trackedReactingCloud/trackedReactingCloud.C */
|
$(DERIVEDCLOUDS)/BasicTrackedReactingCloud/defineBasicTrackedReactingCloud.C
|
||||||
|
|
||||||
|
|
||||||
/* kinematic parcel sub-models */
|
/* kinematic parcel sub-models */
|
||||||
KINEMATICPARCEL=$(DERIVEDPARCELS)/basicKinematicParcel
|
KINEMATICPARCEL=$(DERIVEDPARCELS)/basicKinematicParcel
|
||||||
|
$(KINEMATICPARCEL)/basicKinematicParcel.C
|
||||||
$(KINEMATICPARCEL)/defineBasicKinematicParcel.C
|
$(KINEMATICPARCEL)/defineBasicKinematicParcel.C
|
||||||
$(KINEMATICPARCEL)/submodels/makeBasicKinematicParcelDispersionModels.C
|
$(KINEMATICPARCEL)/submodels/makeBasicKinematicParcelDispersionModels.C
|
||||||
$(KINEMATICPARCEL)/submodels/makeBasicKinematicParcelDragModels.C
|
$(KINEMATICPARCEL)/submodels/makeBasicKinematicParcelDragModels.C
|
||||||
@ -38,6 +39,7 @@ $(KINEMATICPARCEL)/submodels/makeBasicKinematicParcelPostProcessingModels.C
|
|||||||
|
|
||||||
/* thermo parcel sub-models */
|
/* thermo parcel sub-models */
|
||||||
THERMOPARCEL=$(DERIVEDPARCELS)/basicThermoParcel
|
THERMOPARCEL=$(DERIVEDPARCELS)/basicThermoParcel
|
||||||
|
$(THERMOPARCEL)/basicThermoParcel.C
|
||||||
$(THERMOPARCEL)/defineBasicThermoParcel.C
|
$(THERMOPARCEL)/defineBasicThermoParcel.C
|
||||||
$(THERMOPARCEL)/submodels/makeBasicThermoParcelDispersionModels.C
|
$(THERMOPARCEL)/submodels/makeBasicThermoParcelDispersionModels.C
|
||||||
$(THERMOPARCEL)/submodels/makeBasicThermoParcelDragModels.C
|
$(THERMOPARCEL)/submodels/makeBasicThermoParcelDragModels.C
|
||||||
@ -50,42 +52,19 @@ $(THERMOPARCEL)/submodels/makeBasicThermoParcelPostProcessingModels.C
|
|||||||
/* reacting parcel sub-models */
|
/* reacting parcel sub-models */
|
||||||
REACTINGPARCEL=$(DERIVEDPARCELS)/BasicReactingParcel
|
REACTINGPARCEL=$(DERIVEDPARCELS)/BasicReactingParcel
|
||||||
$(REACTINGPARCEL)/defineBasicReactingParcel.C
|
$(REACTINGPARCEL)/defineBasicReactingParcel.C
|
||||||
$(REACTINGPARCEL)/submodels/makeBasicReactingParcelCompositionModels.C
|
$(REACTINGPARCEL)/submodels/makeBasicReactingParcelSubmodels.C
|
||||||
$(REACTINGPARCEL)/submodels/makeBasicReactingParcelDispersionModels.C
|
|
||||||
$(REACTINGPARCEL)/submodels/makeBasicReactingParcelDragModels.C
|
|
||||||
$(REACTINGPARCEL)/submodels/makeBasicReactingParcelHeatTransferModels.C
|
|
||||||
$(REACTINGPARCEL)/submodels/makeBasicReactingParcelInjectionModels.C
|
|
||||||
$(REACTINGPARCEL)/submodels/makeBasicReactingParcelPatchInteractionModels.C
|
|
||||||
$(REACTINGPARCEL)/submodels/makeBasicReactingParcelPhaseChangeModels.C
|
|
||||||
$(REACTINGPARCEL)/submodels/makeBasicReactingParcelPostProcessingModels.C
|
|
||||||
|
|
||||||
|
|
||||||
/* reacting multiphase parcel sub-models */
|
|
||||||
REACTINGMPPARCEL=$(DERIVEDPARCELS)/BasicReactingMultiphaseParcel
|
|
||||||
$(REACTINGMPPARCEL)/defineBasicReactingMultiphaseParcel.C
|
|
||||||
$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelCompositionModels.C
|
|
||||||
$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelDevolatilisationModels.C
|
|
||||||
$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelDispersionModels.C
|
|
||||||
$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelDragModels.C
|
|
||||||
$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelHeatTransferModels.C
|
|
||||||
$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelInjectionModels.C
|
|
||||||
$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelPatchInteractionModels.C
|
|
||||||
$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelPhaseChangeModels.C
|
|
||||||
$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelPostProcessingModels.C
|
|
||||||
$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseParcelSurfaceReactionModels.C
|
|
||||||
|
|
||||||
|
|
||||||
/* tracked reacting parcel sub-models */
|
/* tracked reacting parcel sub-models */
|
||||||
TRACKEDREACTINGPARCEL=$(DERIVEDPARCELS)/BasicTrackedReactingParcel
|
TRACKEDREACTINGPARCEL=$(DERIVEDPARCELS)/BasicTrackedReactingParcel
|
||||||
$(TRACKEDREACTINGPARCEL)/defineTrackedReactingParcel.C
|
$(TRACKEDREACTINGPARCEL)/defineTrackedReactingParcel.C
|
||||||
$(TRACKEDREACTINGPARCEL)/submodels/makeTrackedReactingParcelCompositionModels.C
|
$(TRACKEDREACTINGPARCEL)/submodels/makeBasicTrackedReactingParcelSubmodels.C
|
||||||
$(TRACKEDREACTINGPARCEL)/submodels/makeTrackedReactingParcelDispersionModels.C
|
|
||||||
$(TRACKEDREACTINGPARCEL)/submodels/makeTrackedReactingParcelDragModels.C
|
|
||||||
$(TRACKEDREACTINGPARCEL)/submodels/makeTrackedReactingParcelHeatTransferModels.C
|
/* reacting multiphase parcel sub-models */
|
||||||
$(TRACKEDREACTINGPARCEL)/submodels/makeTrackedReactingParcelInjectionModels.C
|
/*REACTINGMPPARCEL=$(DERIVEDPARCELS)/BasicReactingMultiphaseParcel
|
||||||
$(TRACKEDREACTINGPARCEL)/submodels/makeTrackedReactingParcelPatchInteractionModels.C
|
$(REACTINGMPPARCEL)/defineBasicReactingMultiphaseParcel.C
|
||||||
$(TRACKEDREACTINGPARCEL)/submodels/makeTrackedReactingParcelPhaseChangeModels.C
|
$(REACTINGMPPARCEL)/submodels/makeBasicReactingMultiphaseSubmodels.C
|
||||||
$(TRACKEDREACTINGPARCEL)/submodels/makeTrackedReactingParcelPostProcessingModels.C
|
|
||||||
|
|
||||||
|
|
||||||
/* bolt-on models */
|
/* bolt-on models */
|
||||||
|
|||||||
@ -47,8 +47,6 @@ SourceFiles
|
|||||||
#include "ThermoCloud.H"
|
#include "ThermoCloud.H"
|
||||||
#include "reactingCloud.H"
|
#include "reactingCloud.H"
|
||||||
|
|
||||||
#include "ReactingCloudThermoTypes.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
|
|||||||
@ -24,24 +24,14 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "basicReactingParcelTypes.H"
|
#include "createReactingCloudTypes.H"
|
||||||
#include "ReactingCloud.H"
|
#include "BasicReactingCloud.H"
|
||||||
|
|
||||||
#include "SinglePhaseMixture.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
makeCompositionModel(ReactingCloud<bReactingParcel>);
|
createReactingCloudType(BasicReactingCloud);
|
||||||
|
|
||||||
// Add instances of composition model to the table
|
|
||||||
makeCompositionModelType
|
|
||||||
(
|
|
||||||
SinglePhaseMixture,
|
|
||||||
ReactingCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -55,7 +55,7 @@ class BasicReactingMultiphaseCloud;
|
|||||||
template<class ThermoType>
|
template<class ThermoType>
|
||||||
class BasicReactingMultiphaseCloud
|
class BasicReactingMultiphaseCloud
|
||||||
:
|
:
|
||||||
public ReactingMultiphaseCloud<BasicReactingMultiphaseParcel>
|
public ReactingMultiphaseCloud<BasicReactingMultiphaseParcel<ThermoType> >
|
||||||
{
|
{
|
||||||
// Private Member Functions
|
// Private Member Functions
|
||||||
|
|
||||||
|
|||||||
@ -24,21 +24,14 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "basicReactingParcelTypes.H"
|
#include "createReactingCloudTypes.H"
|
||||||
#include "KinematicCloud.H"
|
#include "BasicReactingMultiphaseCloud.H"
|
||||||
|
|
||||||
#include "NoDrag.H"
|
|
||||||
#include "SphereDrag.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
makeDragModel(KinematicCloud<bReactingParcel>);
|
createReactingCloudType(BasicReactingMultiphaseCloud);
|
||||||
|
|
||||||
// Add instances of drag model to the table
|
|
||||||
makeDragModelType(NoDrag, KinematicCloud, bReactingParcel);
|
|
||||||
makeDragModelType(SphereDrag, KinematicCloud, bReactingParcel);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -24,12 +24,12 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "trackedReactingCloud.H"
|
#include "BasicTrackedReactingCloud.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
template<class ThermoType>
|
template<class ThermoType>
|
||||||
Foam::trackedReactingCloud<ThermoType>::trackedReactingCloud
|
Foam::BasicTrackedReactingCloud<ThermoType>::BasicTrackedReactingCloud
|
||||||
(
|
(
|
||||||
const word& cloudName,
|
const word& cloudName,
|
||||||
const volScalarField& rho,
|
const volScalarField& rho,
|
||||||
@ -56,14 +56,14 @@ Foam::trackedReactingCloud<ThermoType>::trackedReactingCloud
|
|||||||
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
template<class ThermoType>
|
template<class ThermoType>
|
||||||
Foam::trackedReactingCloud<ThermoType>::~trackedReactingCloud()
|
Foam::BasicTrackedReactingCloud<ThermoType>::~BasicTrackedReactingCloud()
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
template<class ThermoType>
|
template<class ThermoType>
|
||||||
void Foam::trackedReactingCloud<ThermoType>::writeFields() const
|
void Foam::BasicTrackedReactingCloud<ThermoType>::writeFields() const
|
||||||
{
|
{
|
||||||
BasicTrackedReactingParcel<ThermoType>::writeFields(*this);
|
BasicTrackedReactingParcel<ThermoType>::writeFields(*this);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -23,18 +23,18 @@ License
|
|||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
Class
|
Class
|
||||||
Foam::trackedReactingCloud
|
Foam::BasicTrackedReactingCloud
|
||||||
|
|
||||||
Description
|
Description
|
||||||
Reacting cloud templated on the reacting parcel
|
Reacting cloud templated on the reacting parcel
|
||||||
|
|
||||||
SourceFiles
|
SourceFiles
|
||||||
trackedReactingCloud.C
|
BasicTrackedReactingCloud.C
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#ifndef trackedReactingCloud_H
|
#ifndef BasicTrackedReactingCloud_H
|
||||||
#define trackedReactingCloud_H
|
#define BasicTrackedReactingCloud_H
|
||||||
|
|
||||||
#include "ReactingCloud.H"
|
#include "ReactingCloud.H"
|
||||||
#include "BasicTrackedReactingParcel.H"
|
#include "BasicTrackedReactingParcel.H"
|
||||||
@ -46,36 +46,36 @@ namespace Foam
|
|||||||
|
|
||||||
// Forward declaration of classes
|
// Forward declaration of classes
|
||||||
template<class ThermoType>
|
template<class ThermoType>
|
||||||
class trackedReactingCloud;
|
class BasicTrackedReactingCloud;
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*\
|
/*---------------------------------------------------------------------------*\
|
||||||
Class trackedReactingCloud Declaration
|
Class BasicTrackedReactingCloud Declaration
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
template<class ThermoType>
|
template<class ThermoType>
|
||||||
class trackedReactingCloud
|
class BasicTrackedReactingCloud
|
||||||
:
|
:
|
||||||
public ReactingCloud<BasicTrackedReactingParcel<ThermoType> >
|
public ReactingCloud<BasicTrackedReactingParcel<ThermoType> >
|
||||||
{
|
{
|
||||||
// Private Member Functions
|
// Private Member Functions
|
||||||
|
|
||||||
//- Disallow default bitwise copy construct
|
//- Disallow default bitwise copy construct
|
||||||
trackedReactingCloud(const trackedReactingCloud&);
|
BasicTrackedReactingCloud(const BasicTrackedReactingCloud&);
|
||||||
|
|
||||||
//- Disallow default bitwise assignment
|
//- Disallow default bitwise assignment
|
||||||
void operator=(const trackedReactingCloud&);
|
void operator=(const BasicTrackedReactingCloud&);
|
||||||
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
//- Runtime type information
|
//- Runtime type information
|
||||||
TypeName("trackedReactingCloud");
|
TypeName("BasicTrackedReactingCloud");
|
||||||
|
|
||||||
|
|
||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct given carrier gas fields
|
//- Construct given carrier gas fields
|
||||||
trackedReactingCloud
|
BasicTrackedReactingCloud
|
||||||
(
|
(
|
||||||
const word& cloudName,
|
const word& cloudName,
|
||||||
const volScalarField& rho,
|
const volScalarField& rho,
|
||||||
@ -87,7 +87,7 @@ public:
|
|||||||
|
|
||||||
|
|
||||||
//- Destructor
|
//- Destructor
|
||||||
~trackedReactingCloud();
|
~BasicTrackedReactingCloud();
|
||||||
|
|
||||||
|
|
||||||
// Member Functions
|
// Member Functions
|
||||||
@ -104,7 +104,7 @@ public:
|
|||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#ifdef NoRepository
|
#ifdef NoRepository
|
||||||
#include "trackedReactingCloud.C"
|
#include "BasicTrackedReactingCloud.C"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -24,22 +24,15 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#ifndef basicTrackedReactingParcelTypes_H
|
#include "createReactingCloudTypes.H"
|
||||||
#define basicTrackedReactingParcelTypes_H
|
#include "BasicTrackedReactingCloud.H"
|
||||||
|
|
||||||
#include "BasicTrackedReactingParcel.H"
|
|
||||||
#include "ReactingCloudThermoTypes.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
typedef BasicTrackedReactingParcel<specieReactingProperties>
|
createReactingCloudType(BasicTrackedReactingCloud);
|
||||||
bTrackedReactingParcel;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
@ -24,19 +24,23 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#ifndef basicReactingMultiphaseParcelTypes_H
|
#ifndef createReactingCloudTypes_H
|
||||||
#define basicReactingMultiphaseParcelTypes_H
|
#define createReactingCloudTypes_H
|
||||||
|
|
||||||
#include "BasicReactingMultiphaseParcel.H"
|
#include "reactingThermoTypes.H"
|
||||||
#include "ReactingCloudThermoTypes.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
#define createReactingCloudType(CloudType) \
|
||||||
{
|
\
|
||||||
typedef BasicReactingMultiphaseParcel<specieReactingProperties>
|
createReactingCloudThermoType(CloudType, specieConstProperties); \
|
||||||
bReactingMultiphaseParcel;
|
createReactingCloudThermoType(CloudType, specieReactingProperties);
|
||||||
};
|
|
||||||
|
|
||||||
|
#define createReactingCloudThermoType(CloudType, ThermoType) \
|
||||||
|
\
|
||||||
|
defineTemplateTypeNameAndDebug(CloudType<ThermoType>, 0);
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
@ -24,79 +24,14 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "basicReactingMultiphaseParcelTypes.H"
|
#include "createReactingMultiphaseParcelTypes.H"
|
||||||
#include "ReactingMultiphaseCloud.H"
|
#include "BasicReactingMultiphaseParcel.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
defineTemplateTypeNameAndDebug(bReactingMultiphaseParcel, 0);
|
createReactingMultiphaseParcelType(BasicReactingMultiphaseParcel);
|
||||||
|
|
||||||
defineTemplateTypeNameAndDebug(Particle<bReactingMultiphaseParcel>, 0);
|
|
||||||
|
|
||||||
defineTemplateTypeNameAndDebug(Cloud<bReactingMultiphaseParcel>, 0);
|
|
||||||
|
|
||||||
defineParcelTypeNameAndDebug
|
|
||||||
(
|
|
||||||
KinematicParcel<bReactingMultiphaseParcel>,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
defineTemplateTypeNameAndDebug
|
|
||||||
(
|
|
||||||
KinematicParcel<bReactingMultiphaseParcel>,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
defineParcelTypeNameAndDebug
|
|
||||||
(
|
|
||||||
ThermoParcel<bReactingMultiphaseParcel>,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
defineTemplateTypeNameAndDebug
|
|
||||||
(
|
|
||||||
ThermoParcel<bReactingMultiphaseParcel>,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
defineParcelTypeNameAndDebug
|
|
||||||
(
|
|
||||||
ReactingParcel<bReactingMultiphaseParcel>,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
defineTemplateTypeNameAndDebug
|
|
||||||
(
|
|
||||||
ReactingParcel<bReactingMultiphaseParcel>,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
defineParcelTypeNameAndDebug
|
|
||||||
(
|
|
||||||
ReactingMultiphaseParcel<bReactingMultiphaseParcel>,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
defineTemplateTypeNameAndDebug
|
|
||||||
(
|
|
||||||
ReactingMultiphaseParcel<bReactingMultiphaseParcel>,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
|
|
||||||
defineParcelTypeNameAndDebug
|
|
||||||
(
|
|
||||||
KinematicCloud<bReactingMultiphaseParcel>,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
defineParcelTypeNameAndDebug
|
|
||||||
(
|
|
||||||
ThermoCloud<bReactingMultiphaseParcel>,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
defineParcelTypeNameAndDebug
|
|
||||||
(
|
|
||||||
ReactingCloud<bReactingMultiphaseParcel>,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
defineParcelTypeNameAndDebug
|
|
||||||
(
|
|
||||||
ReactingMultiphaseCloud<bReactingMultiphaseParcel>,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,51 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicReactingMultiphaseParcelTypes.H"
|
|
||||||
#include "ReactingCloud.H"
|
|
||||||
|
|
||||||
#include "SingleMixtureFraction.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeCompositionModel
|
|
||||||
(
|
|
||||||
ReactingCloud<bReactingMultiphaseParcel>
|
|
||||||
);
|
|
||||||
|
|
||||||
// Add instances of composition model to the table
|
|
||||||
makeCompositionModelType
|
|
||||||
(
|
|
||||||
SingleMixtureFraction,
|
|
||||||
ReactingCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,65 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicReactingMultiphaseParcelTypes.H"
|
|
||||||
#include "ReactingMultiphaseCloud.H"
|
|
||||||
|
|
||||||
#include "NoDevolatilisation.H"
|
|
||||||
#include "ConstantRateDevolatilisation.H"
|
|
||||||
#include "SingleKineticRateDevolatilisation.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeDevolatilisationModel
|
|
||||||
(
|
|
||||||
ReactingMultiphaseCloud<bReactingMultiphaseParcel>
|
|
||||||
);
|
|
||||||
|
|
||||||
// Add instances of devolatilisation model to the table
|
|
||||||
makeDevolatilisationModelType
|
|
||||||
(
|
|
||||||
NoDevolatilisation,
|
|
||||||
ReactingMultiphaseCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
makeDevolatilisationModelType
|
|
||||||
(
|
|
||||||
ConstantRateDevolatilisation,
|
|
||||||
ReactingMultiphaseCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
makeDevolatilisationModelType
|
|
||||||
(
|
|
||||||
SingleKineticRateDevolatilisation,
|
|
||||||
ReactingMultiphaseCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,50 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicReactingMultiphaseParcelTypes.H"
|
|
||||||
#include "KinematicCloud.H"
|
|
||||||
|
|
||||||
#include "NoDrag.H"
|
|
||||||
#include "SphereDrag.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeDragModel(KinematicCloud<bReactingMultiphaseParcel>);
|
|
||||||
|
|
||||||
// Add instances of drag model to the table
|
|
||||||
makeDragModelType(NoDrag, KinematicCloud, bReactingMultiphaseParcel);
|
|
||||||
makeDragModelType
|
|
||||||
(
|
|
||||||
SphereDrag,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,69 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicReactingMultiphaseParcelTypes.H"
|
|
||||||
#include "ReactingCloud.H"
|
|
||||||
|
|
||||||
#include "ConeInjection.H"
|
|
||||||
#include "FieldActivatedInjection.H"
|
|
||||||
#include "ManualInjection.H"
|
|
||||||
#include "NoInjection.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeInjectionModel(KinematicCloud<bReactingMultiphaseParcel>);
|
|
||||||
|
|
||||||
// Add instances of injection model to the table
|
|
||||||
makeInjectionModelType
|
|
||||||
(
|
|
||||||
ConeInjection,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
makeInjectionModelType
|
|
||||||
(
|
|
||||||
FieldActivatedInjection,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
makeInjectionModelType
|
|
||||||
(
|
|
||||||
ManualInjection,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
makeInjectionModelType
|
|
||||||
(
|
|
||||||
NoInjection,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,62 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicReactingMultiphaseParcelTypes.H"
|
|
||||||
#include "KinematicCloud.H"
|
|
||||||
|
|
||||||
#include "LocalInteraction.H"
|
|
||||||
#include "Rebound.H"
|
|
||||||
#include "StandardWallInteraction.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makePatchInteractionModel(KinematicCloud<bReactingMultiphaseParcel>);
|
|
||||||
|
|
||||||
// Add instances of patch interaction model to the table
|
|
||||||
makePatchInteractionModelType
|
|
||||||
(
|
|
||||||
LocalInteraction,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
makePatchInteractionModelType
|
|
||||||
(
|
|
||||||
Rebound,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
makePatchInteractionModelType
|
|
||||||
(
|
|
||||||
StandardWallInteraction,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,58 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicReactingMultiphaseParcelTypes.H"
|
|
||||||
#include "ReactingCloud.H"
|
|
||||||
|
|
||||||
#include "NoPhaseChange.H"
|
|
||||||
#include "LiquidEvaporation.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makePhaseChangeModel
|
|
||||||
(
|
|
||||||
ReactingCloud<bReactingMultiphaseParcel>
|
|
||||||
);
|
|
||||||
|
|
||||||
// Add instances of phase change model to the table
|
|
||||||
makePhaseChangeModelType
|
|
||||||
(
|
|
||||||
NoPhaseChange,
|
|
||||||
ReactingCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
makePhaseChangeModelType
|
|
||||||
(
|
|
||||||
LiquidEvaporation,
|
|
||||||
ReactingCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,55 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicReactingMultiphaseParcelTypes.H"
|
|
||||||
#include "KinematicCloud.H"
|
|
||||||
|
|
||||||
#include "NoPostProcessing.H"
|
|
||||||
#include "StandardPostProcessing.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makePostProcessingModel(KinematicCloud<bReactingMultiphaseParcel>);
|
|
||||||
|
|
||||||
// Add instances of post-processing model to the table
|
|
||||||
makePostProcessingModelType
|
|
||||||
(
|
|
||||||
NoPostProcessing,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
makePostProcessingModelType
|
|
||||||
(
|
|
||||||
StandardPostProcessing,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -0,0 +1,73 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#include "BasicReactingMultiphaseParcel.H"
|
||||||
|
|
||||||
|
#include "makeReactingParcelDispersionModels.H"
|
||||||
|
#include "makeReactingParcelDragModels.H"
|
||||||
|
#include "makeReactingParcelInjectionModels.H"
|
||||||
|
#include "makeReactingParcelPatchInteractionModels.H"
|
||||||
|
#include "makeReactingParcelPostProcessingModels.H"
|
||||||
|
|
||||||
|
#include "makeReactingParcelHeatTransferModels.H"
|
||||||
|
|
||||||
|
#include "makeReactingMultiphaseParcelCompositionModels.H"
|
||||||
|
#include "makeReactingParcelPhaseChangeModels.H"
|
||||||
|
|
||||||
|
#include "makeReactingMultiphaseParcelDevolatilisationModels.H"
|
||||||
|
#include "makeReactingMultiphaseParcelSurfaceReactionModels.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
namespace Foam
|
||||||
|
{
|
||||||
|
// Kinematic sub-models
|
||||||
|
createReactingDispersionModelType(BasicReactingMultiphaseParcel);
|
||||||
|
createReactingDragModelType(BasicReactingMultiphaseParcel);
|
||||||
|
createReactingInjectionModelType(BasicReactingMultiphaseParcel);
|
||||||
|
createReactingPatchInteractionModelType(BasicReactingMultiphaseParcel);
|
||||||
|
createReactingPostProcessingModelType(BasicReactingMultiphaseParcel);
|
||||||
|
|
||||||
|
// Thermo sub-models
|
||||||
|
createReactingHeatTransferModelType(BasicReactingMultiphaseParcel);
|
||||||
|
|
||||||
|
// Reacting sub-models
|
||||||
|
createReactingMultiphaseCompositionModelType(BasicReactingMultiphaseParcel);
|
||||||
|
createReactingPhaseChangeModelType(BasicReactingMultiphaseParcel);
|
||||||
|
|
||||||
|
// Reacting multiphase sub-models
|
||||||
|
createReactingMultiphaseDevolatilisationModelType
|
||||||
|
(
|
||||||
|
BasicReactingMultiphaseParcel
|
||||||
|
);
|
||||||
|
createReactingMultiphaseSurfaceReactionModelType
|
||||||
|
(
|
||||||
|
BasicReactingMultiphaseParcel
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -1,51 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicReactingMultiphaseParcelTypes.H"
|
|
||||||
#include "ReactingMultiphaseCloud.H"
|
|
||||||
|
|
||||||
#include "NoSurfaceReaction.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeSurfaceReactionModel
|
|
||||||
(
|
|
||||||
ReactingMultiphaseCloud<bReactingMultiphaseParcel>
|
|
||||||
);
|
|
||||||
|
|
||||||
// Add instances of surface reaction model to the table
|
|
||||||
makeSurfaceReactionModelType
|
|
||||||
(
|
|
||||||
NoSurfaceReaction,
|
|
||||||
ReactingMultiphaseCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -0,0 +1,70 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef makeReactingMultiphaseParcelCompositionModels_H
|
||||||
|
#define makeReactingMultiphaseParcelCompositionModels_H
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#include "reactingThermoTypes.H"
|
||||||
|
#include "ReactingCloud.H"
|
||||||
|
|
||||||
|
#include "SingleMixtureFraction.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#define createReactingMultiphaseCompositionModelType(ParcelType) \
|
||||||
|
\
|
||||||
|
createReactingMultiphaseCompositionModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieConstProperties \
|
||||||
|
); \
|
||||||
|
createReactingMultiphaseCompositionModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieReactingProperties \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#define createReactingMultiphaseCompositionModelThermoType(ParcelType, ThermoType)\
|
||||||
|
\
|
||||||
|
makeCompositionModel(ReactingCloud<ParcelType<ThermoType> >); \
|
||||||
|
\
|
||||||
|
makeCompositionModelThermoType \
|
||||||
|
( \
|
||||||
|
SingleMixtureFraction, \
|
||||||
|
ReactingCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,89 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef makeReactingMultiphaseParcelDevolatilisationModels_H
|
||||||
|
#define makeReactingMultiphaseParcelDevolatilisationModels_H
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#include "reactingThermoTypes.H"
|
||||||
|
#include "ReactingMultiphaseCloud.H"
|
||||||
|
|
||||||
|
#include "ConstantRateDevolatilisation.H"
|
||||||
|
#include "NoDevolatilisation.H"
|
||||||
|
#include "SingleKineticRateDevolatilisation.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#define createReactingMultiphaseDevolatilisationModelType(ParcelType) \
|
||||||
|
\
|
||||||
|
createReactingMultiphaseDevolatilisationModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieConstProperties \
|
||||||
|
); \
|
||||||
|
createReactingMultiphaseDevolatilisationModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieReactingProperties \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#define createReactingMultiphaseDevolatilisationModelThermoType(ParcelType, ThermoType)\
|
||||||
|
\
|
||||||
|
makeDevolatilisationModel \
|
||||||
|
( \
|
||||||
|
ReactingMultiphaseCloud<ParcelType<ThermoType> > \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
makeDevolatilisationModelThermoType \
|
||||||
|
( \
|
||||||
|
ConstantRateDevolatilisation, \
|
||||||
|
ReactingMultiphaseCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makeDevolatilisationModelThermoType \
|
||||||
|
( \
|
||||||
|
NoDevolatilisation, \
|
||||||
|
ReactingMultiphaseCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makeDevolatilisationModelThermoType \
|
||||||
|
( \
|
||||||
|
SingleKineticRateDevolatilisation, \
|
||||||
|
ReactingMultiphaseCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,73 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef makeReactingMultiphaseParcelSurfaceReactionModels_H
|
||||||
|
#define makeReactingMultiphaseParcelSurfaceReactionModels_H
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#include "reactingThermoTypes.H"
|
||||||
|
#include "ReactingMultiphaseCloud.H"
|
||||||
|
|
||||||
|
#include "NoSurfaceReaction.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#define createReactingMultiphaseSurfaceReactionModelType(ParcelType) \
|
||||||
|
\
|
||||||
|
createReactingMultiphaseSurfaceReactionModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieConstProperties \
|
||||||
|
); \
|
||||||
|
createReactingMultiphaseSurfaceReactionModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieReactingProperties \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#define createReactingMultiphaseSurfaceReactionModelThermoType(ParcelType, ThermoType)\
|
||||||
|
\
|
||||||
|
makeSurfaceReactionModel \
|
||||||
|
( \
|
||||||
|
ReactingMultiphaseCloud<ParcelType<ThermoType> > \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
makeSurfaceReactionModelThermoType \
|
||||||
|
( \
|
||||||
|
NoSurfaceReaction, \
|
||||||
|
ReactingMultiphaseCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -24,7 +24,8 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "basicReactingParcelTypes.H"
|
#include "createReactingParcelTypes.H"
|
||||||
|
#include "BasicReactingParcel.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
|||||||
@ -1,68 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicReactingParcelTypes.H"
|
|
||||||
#include "KinematicCloud.H"
|
|
||||||
|
|
||||||
#include "NoDispersion.H"
|
|
||||||
#include "GradientDispersionRAS.H"
|
|
||||||
#include "StochasticDispersionRAS.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeDispersionModel(KinematicCloud<bReactingParcel>);
|
|
||||||
|
|
||||||
defineNamedTemplateTypeNameAndDebug
|
|
||||||
(
|
|
||||||
DispersionRASModel<KinematicCloud<bReactingParcel> >,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
|
|
||||||
// Add instances of dispersion model to the table
|
|
||||||
makeDispersionModelType
|
|
||||||
(
|
|
||||||
NoDispersion,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
makeDispersionModelType
|
|
||||||
(
|
|
||||||
GradientDispersionRAS,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
makeDispersionModelType
|
|
||||||
(
|
|
||||||
StochasticDispersionRAS,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,55 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicReactingParcelTypes.H"
|
|
||||||
#include "ThermoCloud.H"
|
|
||||||
|
|
||||||
#include "NoHeatTransfer.H"
|
|
||||||
#include "RanzMarshall.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeHeatTransferModel(ThermoCloud<bReactingParcel>);
|
|
||||||
|
|
||||||
// Add instances of heat transfer model to the table
|
|
||||||
makeHeatTransferModelType
|
|
||||||
(
|
|
||||||
NoHeatTransfer,
|
|
||||||
ThermoCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
makeHeatTransferModelType
|
|
||||||
(
|
|
||||||
RanzMarshall,
|
|
||||||
ThermoCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,76 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicReactingParcelTypes.H"
|
|
||||||
#include "ReactingCloud.H"
|
|
||||||
|
|
||||||
#include "ConeInjection.H"
|
|
||||||
#include "FieldActivatedInjection.H"
|
|
||||||
#include "ManualInjection.H"
|
|
||||||
#include "NoInjection.H"
|
|
||||||
#include "ReactingLookupTableInjection.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeInjectionModel(KinematicCloud<bReactingParcel>);
|
|
||||||
|
|
||||||
// Add instances of injection model to the table
|
|
||||||
makeInjectionModelType
|
|
||||||
(
|
|
||||||
ConeInjection,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
makeInjectionModelType
|
|
||||||
(
|
|
||||||
FieldActivatedInjection,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
makeInjectionModelType
|
|
||||||
(
|
|
||||||
ManualInjection,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
makeInjectionModelType
|
|
||||||
(
|
|
||||||
NoInjection,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
makeInjectionModelType
|
|
||||||
(
|
|
||||||
ReactingLookupTableInjection,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,62 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicReactingParcelTypes.H"
|
|
||||||
#include "KinematicCloud.H"
|
|
||||||
|
|
||||||
#include "LocalInteraction.H"
|
|
||||||
#include "Rebound.H"
|
|
||||||
#include "StandardWallInteraction.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makePatchInteractionModel(KinematicCloud<bReactingParcel>);
|
|
||||||
|
|
||||||
// Add instances of patch interaction model to the table
|
|
||||||
makePatchInteractionModelType
|
|
||||||
(
|
|
||||||
LocalInteraction,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
makePatchInteractionModelType
|
|
||||||
(
|
|
||||||
Rebound,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
makePatchInteractionModelType
|
|
||||||
(
|
|
||||||
StandardWallInteraction,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,55 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicReactingParcelTypes.H"
|
|
||||||
#include "ReactingCloud.H"
|
|
||||||
|
|
||||||
#include "NoPhaseChange.H"
|
|
||||||
#include "LiquidEvaporation.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makePhaseChangeModel(ReactingCloud<bReactingParcel>);
|
|
||||||
|
|
||||||
// Add instances of phase change model to the table
|
|
||||||
makePhaseChangeModelType
|
|
||||||
(
|
|
||||||
NoPhaseChange,
|
|
||||||
ReactingCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
makePhaseChangeModelType
|
|
||||||
(
|
|
||||||
LiquidEvaporation,
|
|
||||||
ReactingCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,55 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicReactingParcelTypes.H"
|
|
||||||
#include "KinematicCloud.H"
|
|
||||||
|
|
||||||
#include "NoPostProcessing.H"
|
|
||||||
#include "StandardPostProcessing.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makePostProcessingModel(KinematicCloud<bReactingParcel>);
|
|
||||||
|
|
||||||
// Add instances of post-processing model to the table
|
|
||||||
makePostProcessingModelType
|
|
||||||
(
|
|
||||||
NoPostProcessing,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
makePostProcessingModelType
|
|
||||||
(
|
|
||||||
StandardPostProcessing,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingParcel
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -24,44 +24,36 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "basicReactingMultiphaseParcelTypes.H"
|
#include "BasicReactingParcel.H"
|
||||||
#include "KinematicCloud.H"
|
|
||||||
|
|
||||||
#include "NoDispersion.H"
|
#include "makeReactingParcelDispersionModels.H"
|
||||||
#include "GradientDispersionRAS.H"
|
#include "makeReactingParcelDragModels.H"
|
||||||
#include "StochasticDispersionRAS.H"
|
#include "makeReactingParcelInjectionModels.H"
|
||||||
|
#include "makeReactingParcelPatchInteractionModels.H"
|
||||||
|
#include "makeReactingParcelPostProcessingModels.H"
|
||||||
|
|
||||||
|
#include "makeReactingParcelHeatTransferModels.H"
|
||||||
|
|
||||||
|
#include "makeReactingParcelCompositionModels.H"
|
||||||
|
#include "makeReactingParcelPhaseChangeModels.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
makeDispersionModel(KinematicCloud<bReactingMultiphaseParcel>);
|
// Kinematic sub-models
|
||||||
|
createReactingDispersionModelType(BasicReactingParcel);
|
||||||
|
createReactingDragModelType(BasicReactingParcel);
|
||||||
|
createReactingInjectionModelType(BasicReactingParcel);
|
||||||
|
createReactingPatchInteractionModelType(BasicReactingParcel);
|
||||||
|
createReactingPostProcessingModelType(BasicReactingParcel);
|
||||||
|
|
||||||
defineNamedTemplateTypeNameAndDebug
|
// Thermo sub-models
|
||||||
(
|
createReactingHeatTransferModelType(BasicReactingParcel);
|
||||||
DispersionRASModel<KinematicCloud<bReactingMultiphaseParcel> >,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
|
|
||||||
// Add instances of dispersion model to the table
|
// Reacting sub-models
|
||||||
makeDispersionModelType
|
createReactingCompositionModelType(BasicReactingParcel);
|
||||||
(
|
createReactingPhaseChangeModelType(BasicReactingParcel);
|
||||||
NoDispersion,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
makeDispersionModelType
|
|
||||||
(
|
|
||||||
GradientDispersionRAS,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
makeDispersionModelType
|
|
||||||
(
|
|
||||||
StochasticDispersionRAS,
|
|
||||||
KinematicCloud,
|
|
||||||
bReactingMultiphaseParcel
|
|
||||||
);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -0,0 +1,70 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef makeReactingParcelCompositionModels_H
|
||||||
|
#define makeReactingParcelCompositionModels_H
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#include "reactingThermoTypes.H"
|
||||||
|
#include "ReactingCloud.H"
|
||||||
|
|
||||||
|
#include "SinglePhaseMixture.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#define createReactingCompositionModelType(ParcelType) \
|
||||||
|
\
|
||||||
|
createReactingCompositionModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieConstProperties \
|
||||||
|
); \
|
||||||
|
createReactingCompositionModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieReactingProperties \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#define createReactingCompositionModelThermoType(ParcelType, ThermoType) \
|
||||||
|
\
|
||||||
|
makeCompositionModel(ReactingCloud<ParcelType<ThermoType> >); \
|
||||||
|
\
|
||||||
|
makeCompositionModelThermoType \
|
||||||
|
( \
|
||||||
|
SinglePhaseMixture, \
|
||||||
|
ReactingCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,93 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef makeReactingParcelDispersionModels_H
|
||||||
|
#define makeReactingParcelDispersionModels_H
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#include "reactingThermoTypes.H"
|
||||||
|
#include "KinematicCloud.H"
|
||||||
|
|
||||||
|
#include "NoDispersion.H"
|
||||||
|
#include "GradientDispersionRAS.H"
|
||||||
|
#include "StochasticDispersionRAS.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#define createReactingDispersionModelType(ParcelType) \
|
||||||
|
\
|
||||||
|
createReactingDispersionModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieConstProperties \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
createReactingDispersionModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieReactingProperties \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#define createReactingDispersionModelThermoType(ParcelType, ThermoType) \
|
||||||
|
\
|
||||||
|
makeDispersionModel(KinematicCloud<ParcelType<ThermoType> >); \
|
||||||
|
\
|
||||||
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
DispersionRASModel<KinematicCloud<ParcelType<ThermoType> > >, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
makeDispersionModelThermoType \
|
||||||
|
( \
|
||||||
|
NoDispersion, \
|
||||||
|
KinematicCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makeDispersionModelThermoType \
|
||||||
|
( \
|
||||||
|
GradientDispersionRAS, \
|
||||||
|
KinematicCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makeDispersionModelThermoType \
|
||||||
|
( \
|
||||||
|
StochasticDispersionRAS, \
|
||||||
|
KinematicCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,78 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef makeReactingParcelDragModels_H
|
||||||
|
#define makeReactingParcelDragModels_H
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#include "reactingThermoTypes.H"
|
||||||
|
#include "KinematicCloud.H"
|
||||||
|
|
||||||
|
#include "NoDrag.H"
|
||||||
|
#include "SphereDrag.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#define createReactingDragModelType(ParcelType) \
|
||||||
|
\
|
||||||
|
createReactingDragModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieConstProperties \
|
||||||
|
); \
|
||||||
|
createReactingDragModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieReactingProperties \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#define createReactingDragModelThermoType(ParcelType, ThermoType) \
|
||||||
|
\
|
||||||
|
makeDragModel(KinematicCloud<ParcelType<ThermoType> >); \
|
||||||
|
\
|
||||||
|
makeDragModelThermoType \
|
||||||
|
( \
|
||||||
|
NoDrag, \
|
||||||
|
KinematicCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makeDragModelThermoType \
|
||||||
|
( \
|
||||||
|
SphereDrag, \
|
||||||
|
KinematicCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,78 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef makeReactingParcelHeatTransferModels_H
|
||||||
|
#define makeReactingParcelHeatTransferModels_H
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#include "reactingThermoTypes.H"
|
||||||
|
#include "ThermoCloud.H"
|
||||||
|
|
||||||
|
#include "NoHeatTransfer.H"
|
||||||
|
#include "RanzMarshall.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#define createReactingHeatTransferModelType(ParcelType) \
|
||||||
|
\
|
||||||
|
createReactingHeatTransferModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieConstProperties \
|
||||||
|
); \
|
||||||
|
createReactingHeatTransferModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieReactingProperties \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#define createReactingHeatTransferModelThermoType(ParcelType, ThermoType) \
|
||||||
|
\
|
||||||
|
makeHeatTransferModel(ThermoCloud<ParcelType<ThermoType> >); \
|
||||||
|
\
|
||||||
|
makeHeatTransferModelThermoType \
|
||||||
|
( \
|
||||||
|
NoHeatTransfer, \
|
||||||
|
ThermoCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makeHeatTransferModelThermoType \
|
||||||
|
( \
|
||||||
|
RanzMarshall, \
|
||||||
|
ThermoCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,103 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef makeReactingParcelInjectionModels_H
|
||||||
|
#define makeReactingParcelInjectionModels_H
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#include "reactingThermoTypes.H"
|
||||||
|
#include "KinematicCloud.H"
|
||||||
|
|
||||||
|
#include "ConeInjection.H"
|
||||||
|
#include "FieldActivatedInjection.H"
|
||||||
|
#include "ManualInjection.H"
|
||||||
|
#include "NoInjection.H"
|
||||||
|
#include "ReactingLookupTableInjection.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#define createReactingInjectionModelType(ParcelType) \
|
||||||
|
\
|
||||||
|
createReactingInjectionModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieConstProperties \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
createReactingInjectionModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieReactingProperties \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#define createReactingInjectionModelThermoType(ParcelType, ThermoType) \
|
||||||
|
\
|
||||||
|
makeInjectionModel(KinematicCloud<ParcelType<ThermoType> >); \
|
||||||
|
\
|
||||||
|
makeInjectionModelThermoType \
|
||||||
|
( \
|
||||||
|
ConeInjection, \
|
||||||
|
KinematicCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makeInjectionModelThermoType \
|
||||||
|
( \
|
||||||
|
FieldActivatedInjection, \
|
||||||
|
KinematicCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makeInjectionModelThermoType \
|
||||||
|
( \
|
||||||
|
ManualInjection, \
|
||||||
|
KinematicCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makeInjectionModelThermoType \
|
||||||
|
( \
|
||||||
|
NoInjection, \
|
||||||
|
KinematicCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makeInjectionModelThermoType \
|
||||||
|
( \
|
||||||
|
ReactingLookupTableInjection, \
|
||||||
|
KinematicCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,87 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef makeReactingParcelPatchInteractionModels_H
|
||||||
|
#define makeReactingParcelPatchInteractionModels_H
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#include "reactingThermoTypes.H"
|
||||||
|
#include "KinematicCloud.H"
|
||||||
|
|
||||||
|
#include "LocalInteraction.H"
|
||||||
|
#include "Rebound.H"
|
||||||
|
#include "StandardWallInteraction.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#define createReactingPatchInteractionModelType(ParcelType) \
|
||||||
|
\
|
||||||
|
createReactingPatchInteractionModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieConstProperties \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
createReactingPatchInteractionModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieReactingProperties \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#define createReactingPatchInteractionModelThermoType(ParcelType, ThermoType) \
|
||||||
|
\
|
||||||
|
makePatchInteractionModel(KinematicCloud<ParcelType<ThermoType> >); \
|
||||||
|
\
|
||||||
|
makePatchInteractionModelThermoType \
|
||||||
|
( \
|
||||||
|
LocalInteraction, \
|
||||||
|
KinematicCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makePatchInteractionModelThermoType \
|
||||||
|
( \
|
||||||
|
Rebound, \
|
||||||
|
KinematicCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makePatchInteractionModelThermoType \
|
||||||
|
( \
|
||||||
|
StandardWallInteraction, \
|
||||||
|
KinematicCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,79 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef makeReactingParcelPhaseChangeModels_H
|
||||||
|
#define makeReactingParcelPhaseChangeModels_H
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#include "reactingThermoTypes.H"
|
||||||
|
#include "ReactingCloud.H"
|
||||||
|
|
||||||
|
#include "NoPhaseChange.H"
|
||||||
|
#include "LiquidEvaporation.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#define createReactingPhaseChangeModelType(ParcelType) \
|
||||||
|
\
|
||||||
|
createReactingPhaseChangeModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieConstProperties \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
createReactingPhaseChangeModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieReactingProperties \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#define createReactingPhaseChangeModelThermoType(ParcelType, ThermoType) \
|
||||||
|
\
|
||||||
|
makePhaseChangeModel(ReactingCloud<ParcelType<ThermoType> >); \
|
||||||
|
\
|
||||||
|
makePhaseChangeModelThermoType \
|
||||||
|
( \
|
||||||
|
NoPhaseChange, \
|
||||||
|
ReactingCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makePhaseChangeModelThermoType \
|
||||||
|
( \
|
||||||
|
LiquidEvaporation, \
|
||||||
|
ReactingCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,79 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef makeReactingParcelPostProcessingModels_H
|
||||||
|
#define makeReactingParcelPostProcessingModels_H
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#include "reactingThermoTypes.H"
|
||||||
|
#include "KinematicCloud.H"
|
||||||
|
|
||||||
|
#include "NoPostProcessing.H"
|
||||||
|
#include "StandardPostProcessing.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#define createReactingPostProcessingModelType(ParcelType) \
|
||||||
|
\
|
||||||
|
createReactingPostProcessingModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieConstProperties \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
createReactingPostProcessingModelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieReactingProperties \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#define createReactingPostProcessingModelThermoType(ParcelType, ThermoType) \
|
||||||
|
\
|
||||||
|
makePostProcessingModel(KinematicCloud<ParcelType<ThermoType> >); \
|
||||||
|
\
|
||||||
|
makePostProcessingModelThermoType \
|
||||||
|
( \
|
||||||
|
NoPostProcessing, \
|
||||||
|
KinematicCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
); \
|
||||||
|
makePostProcessingModelThermoType \
|
||||||
|
( \
|
||||||
|
StandardPostProcessing, \
|
||||||
|
KinematicCloud, \
|
||||||
|
ParcelType, \
|
||||||
|
ThermoType \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -24,35 +24,14 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "basicTrackedReactingParcelTypes.H"
|
#include "createTrackedReactingParcelTypes.H"
|
||||||
#include "BasicReactingCloud.H"
|
#include "BasicTrackedReactingParcel.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
defineTemplateTypeNameAndDebug(bTrackedReactingParcel, 0);
|
createTrackedReactingParcelType(BasicTrackedReactingParcel);
|
||||||
defineTemplateTypeNameAndDebug(Particle<bTrackedReactingParcel>, 0);
|
|
||||||
defineTemplateTypeNameAndDebug(Cloud<bTrackedReactingParcel>, 0);
|
|
||||||
|
|
||||||
defineParcelTypeNameAndDebug(KinematicParcel<bTrackedReactingParcel>, 0);
|
|
||||||
defineTemplateTypeNameAndDebug(KinematicParcel<bTrackedReactingParcel>, 0);
|
|
||||||
defineParcelTypeNameAndDebug(ThermoParcel<bTrackedReactingParcel>, 0);
|
|
||||||
defineTemplateTypeNameAndDebug(ThermoParcel<bTrackedReactingParcel>, 0);
|
|
||||||
defineParcelTypeNameAndDebug(ReactingParcel<bTrackedReactingParcel>, 0);
|
|
||||||
defineTemplateTypeNameAndDebug(ReactingParcel<bTrackedReactingParcel>, 0);
|
|
||||||
defineTemplateTypeNameAndDebug
|
|
||||||
(
|
|
||||||
TrackedReactingParcel<bTrackedReactingParcel>,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
|
|
||||||
defineParcelTypeNameAndDebug(KinematicCloud<bTrackedReactingParcel>, 0);
|
|
||||||
// defineTemplateTypeNameAndDebug(KinematicCloud<bTrackedReactingParcel>, 0);
|
|
||||||
|
|
||||||
defineParcelTypeNameAndDebug(ThermoCloud<bTrackedReactingParcel>, 0);
|
|
||||||
// defineTemplateTypeNameAndDebug(ThermoCloud<bTrackedReactingParcel>, 0);
|
|
||||||
|
|
||||||
defineParcelTypeNameAndDebug(ReactingCloud<bTrackedReactingParcel>, 0);
|
|
||||||
// defineTemplateTypeNameAndDebug(ReactingCloud<bTrackedReactingParcel>, 0);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -24,22 +24,37 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#include "basicTrackedReactingParcelTypes.H"
|
#include "BasicTrackedReactingParcel.H"
|
||||||
#include "KinematicCloud.H"
|
|
||||||
|
|
||||||
#include "NoDrag.H"
|
#include "makeReactingParcelDispersionModels.H"
|
||||||
#include "SphereDrag.H"
|
#include "makeReactingParcelDragModels.H"
|
||||||
|
#include "makeReactingParcelInjectionModels.H"
|
||||||
|
#include "makeReactingParcelPatchInteractionModels.H"
|
||||||
|
#include "makeReactingParcelPostProcessingModels.H"
|
||||||
|
|
||||||
|
#include "makeReactingParcelHeatTransferModels.H"
|
||||||
|
|
||||||
|
#include "makeReactingParcelCompositionModels.H"
|
||||||
|
#include "makeReactingParcelPhaseChangeModels.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
makeDragModel(KinematicCloud<bTrackedReactingParcel>);
|
// Kinematic sub-models
|
||||||
|
createReactingDispersionModelType(BasicTrackedReactingParcel);
|
||||||
|
createReactingDragModelType(BasicTrackedReactingParcel);
|
||||||
|
createReactingInjectionModelType(BasicTrackedReactingParcel);
|
||||||
|
createReactingPatchInteractionModelType(BasicTrackedReactingParcel);
|
||||||
|
createReactingPostProcessingModelType(BasicTrackedReactingParcel);
|
||||||
|
|
||||||
// Add instances of drag model to the table
|
// Thermo sub-models
|
||||||
makeDragModelType(NoDrag, KinematicCloud, bTrackedReactingParcel);
|
createReactingHeatTransferModelType(BasicTrackedReactingParcel);
|
||||||
makeDragModelType(SphereDrag, KinematicCloud, bTrackedReactingParcel);
|
|
||||||
}
|
// Reacting sub-models
|
||||||
|
createReactingCompositionModelType(BasicTrackedReactingParcel);
|
||||||
|
createReactingPhaseChangeModelType(BasicTrackedReactingParcel);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
@ -1,48 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicTrackedReactingParcelTypes.H"
|
|
||||||
#include "ReactingCloud.H"
|
|
||||||
|
|
||||||
#include "SinglePhaseMixture.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeCompositionModel(ReactingCloud<bTrackedReactingParcel>);
|
|
||||||
|
|
||||||
// Add instances of composition model to the table
|
|
||||||
makeCompositionModelType
|
|
||||||
(
|
|
||||||
SinglePhaseMixture,
|
|
||||||
ReactingCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,68 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicTrackedReactingParcelTypes.H"
|
|
||||||
#include "KinematicCloud.H"
|
|
||||||
|
|
||||||
#include "NoDispersion.H"
|
|
||||||
#include "GradientDispersionRAS.H"
|
|
||||||
#include "StochasticDispersionRAS.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeDispersionModel(KinematicCloud<bTrackedReactingParcel>);
|
|
||||||
|
|
||||||
defineNamedTemplateTypeNameAndDebug
|
|
||||||
(
|
|
||||||
DispersionRASModel<KinematicCloud<bTrackedReactingParcel> >,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
|
|
||||||
// Add instances of dispersion model to the table
|
|
||||||
makeDispersionModelType
|
|
||||||
(
|
|
||||||
NoDispersion,
|
|
||||||
KinematicCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
makeDispersionModelType
|
|
||||||
(
|
|
||||||
GradientDispersionRAS,
|
|
||||||
KinematicCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
makeDispersionModelType
|
|
||||||
(
|
|
||||||
StochasticDispersionRAS,
|
|
||||||
KinematicCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,55 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicTrackedReactingParcelTypes.H"
|
|
||||||
#include "ThermoCloud.H"
|
|
||||||
|
|
||||||
#include "NoHeatTransfer.H"
|
|
||||||
#include "RanzMarshall.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeHeatTransferModel(ThermoCloud<bTrackedReactingParcel>);
|
|
||||||
|
|
||||||
// Add instances of heat transfer model to the table
|
|
||||||
makeHeatTransferModelType
|
|
||||||
(
|
|
||||||
NoHeatTransfer,
|
|
||||||
ThermoCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
makeHeatTransferModelType
|
|
||||||
(
|
|
||||||
RanzMarshall,
|
|
||||||
ThermoCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,76 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicTrackedReactingParcelTypes.H"
|
|
||||||
#include "ReactingCloud.H"
|
|
||||||
|
|
||||||
#include "ConeInjection.H"
|
|
||||||
#include "FieldActivatedInjection.H"
|
|
||||||
#include "ManualInjection.H"
|
|
||||||
#include "NoInjection.H"
|
|
||||||
#include "ReactingLookupTableInjection.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makeInjectionModel(KinematicCloud<bTrackedReactingParcel>);
|
|
||||||
|
|
||||||
// Add instances of injection model to the table
|
|
||||||
makeInjectionModelType
|
|
||||||
(
|
|
||||||
ConeInjection,
|
|
||||||
KinematicCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
makeInjectionModelType
|
|
||||||
(
|
|
||||||
FieldActivatedInjection,
|
|
||||||
KinematicCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
makeInjectionModelType
|
|
||||||
(
|
|
||||||
ManualInjection,
|
|
||||||
KinematicCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
makeInjectionModelType
|
|
||||||
(
|
|
||||||
NoInjection,
|
|
||||||
KinematicCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
makeInjectionModelType
|
|
||||||
(
|
|
||||||
ReactingLookupTableInjection,
|
|
||||||
KinematicCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,62 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicTrackedReactingParcelTypes.H"
|
|
||||||
#include "KinematicCloud.H"
|
|
||||||
|
|
||||||
#include "LocalInteraction.H"
|
|
||||||
#include "Rebound.H"
|
|
||||||
#include "StandardWallInteraction.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makePatchInteractionModel(KinematicCloud<bTrackedReactingParcel>);
|
|
||||||
|
|
||||||
// Add instances of patch interaction model to the table
|
|
||||||
makePatchInteractionModelType
|
|
||||||
(
|
|
||||||
LocalInteraction,
|
|
||||||
KinematicCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
makePatchInteractionModelType
|
|
||||||
(
|
|
||||||
Rebound,
|
|
||||||
KinematicCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
makePatchInteractionModelType
|
|
||||||
(
|
|
||||||
StandardWallInteraction,
|
|
||||||
KinematicCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,55 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicTrackedReactingParcelTypes.H"
|
|
||||||
#include "ReactingCloud.H"
|
|
||||||
|
|
||||||
#include "NoPhaseChange.H"
|
|
||||||
#include "LiquidEvaporation.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makePhaseChangeModel(ReactingCloud<bTrackedReactingParcel>);
|
|
||||||
|
|
||||||
// Add instances of phase change model to the table
|
|
||||||
makePhaseChangeModelType
|
|
||||||
(
|
|
||||||
NoPhaseChange,
|
|
||||||
ReactingCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
makePhaseChangeModelType
|
|
||||||
(
|
|
||||||
LiquidEvaporation,
|
|
||||||
ReactingCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,55 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
|
||||||
\\ / O peration |
|
|
||||||
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
|
||||||
\\/ 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 2 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, write to the Free Software Foundation,
|
|
||||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#include "basicTrackedReactingParcelTypes.H"
|
|
||||||
#include "KinematicCloud.H"
|
|
||||||
|
|
||||||
#include "NoPostProcessing.H"
|
|
||||||
#include "StandardPostProcessing.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makePostProcessingModel(KinematicCloud<bTrackedReactingParcel>);
|
|
||||||
|
|
||||||
// Add instances of post-processing model to the table
|
|
||||||
makePostProcessingModelType
|
|
||||||
(
|
|
||||||
NoPostProcessing,
|
|
||||||
KinematicCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
makePostProcessingModelType
|
|
||||||
(
|
|
||||||
StandardPostProcessing,
|
|
||||||
KinematicCloud,
|
|
||||||
bTrackedReactingParcel
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -0,0 +1,94 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef createReactingMultiphaseParcelTypes_H
|
||||||
|
#define createReactingMultiphaseParcelTypes_H
|
||||||
|
|
||||||
|
#include "makeParcelIOList.H"
|
||||||
|
#include "reactingThermoTypes.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#define createReactingMultiphaseParcelType(ParcelType) \
|
||||||
|
\
|
||||||
|
createReactingMultiphaseParcelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieConstProperties \
|
||||||
|
); \
|
||||||
|
createReactingParcelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieReactingProperties \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#define createReactingMultiphaseParcelThermoType(ParcelType, ThermoType) \
|
||||||
|
\
|
||||||
|
typedef ParcelType<ThermoType> ParcelType##ThermoType; \
|
||||||
|
\
|
||||||
|
makeParcelIOList(ParcelType##ThermoType); \
|
||||||
|
\
|
||||||
|
defineTemplateTypeNameAndDebug(ParcelType##ThermoType, 0); \
|
||||||
|
defineTemplateTypeNameAndDebug(Particle<ParcelType##ThermoType>, 0); \
|
||||||
|
defineTemplateTypeNameAndDebug(Cloud<ParcelType##ThermoType>, 0); \
|
||||||
|
\
|
||||||
|
defineParcelTypeNameAndDebug(KinematicParcel<ParcelType##ThermoType>, 0); \
|
||||||
|
defineTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
KinematicParcel<ParcelType##ThermoType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
defineParcelTypeNameAndDebug(ThermoParcel<ParcelType##ThermoType>, 0); \
|
||||||
|
defineTemplateTypeNameAndDebug(ThermoParcel<ParcelType##ThermoType>, 0); \
|
||||||
|
defineParcelTypeNameAndDebug(ReactingParcel<ParcelType##ThermoType>, 0); \
|
||||||
|
defineTemplateTypeNameAndDebug(ReactingParcel<ParcelType##ThermoType>, 0);\
|
||||||
|
defineParcelTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
ReactingMultiphaseParcel<ParcelType##ThermoType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
defineTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
ReactingMultiphaseParcel<ParcelType##ThermoType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
defineParcelTypeNameAndDebug(KinematicCloud<ParcelType##ThermoType>, 0); \
|
||||||
|
defineParcelTypeNameAndDebug(ThermoCloud<ParcelType##ThermoType>, 0); \
|
||||||
|
defineParcelTypeNameAndDebug(ReactingCloud<ParcelType##ThermoType>, 0); \
|
||||||
|
defineParcelTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
ReactingMultiphaseCloud<ParcelType##ThermoType>, \
|
||||||
|
0 \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -24,21 +24,11 @@ License
|
|||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#ifndef basicReactingParcelTypes_H
|
#ifndef createReactingParcelTypes_H
|
||||||
#define basicReactingParcelTypes_H
|
#define createReactingParcelTypes_H
|
||||||
|
|
||||||
#include "BasicReactingParcel.H"
|
|
||||||
#include "BasicReactingCloud.H"
|
|
||||||
|
|
||||||
#include "ReactingCloudThermoTypes.H"
|
|
||||||
#include "makeParcelIOList.H"
|
#include "makeParcelIOList.H"
|
||||||
|
#include "reactingThermoTypes.H"
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
typedef BasicReactingParcel<specieReactingProperties> bReactingParcel;
|
|
||||||
};
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
@ -54,8 +44,6 @@ namespace Foam
|
|||||||
\
|
\
|
||||||
makeParcelIOList(ParcelType##ThermoType); \
|
makeParcelIOList(ParcelType##ThermoType); \
|
||||||
\
|
\
|
||||||
defineTemplateTypeNameAndDebug(BasicReactingCloud<ThermoType>, 0); \
|
|
||||||
\
|
|
||||||
defineTemplateTypeNameAndDebug(ParcelType##ThermoType, 0); \
|
defineTemplateTypeNameAndDebug(ParcelType##ThermoType, 0); \
|
||||||
defineTemplateTypeNameAndDebug(Particle<ParcelType##ThermoType>, 0); \
|
defineTemplateTypeNameAndDebug(Particle<ParcelType##ThermoType>, 0); \
|
||||||
defineTemplateTypeNameAndDebug(Cloud<ParcelType##ThermoType>, 0); \
|
defineTemplateTypeNameAndDebug(Cloud<ParcelType##ThermoType>, 0); \
|
||||||
@ -0,0 +1,70 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 1991-2009 OpenCFD Ltd.
|
||||||
|
\\/ 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 2 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, write to the Free Software Foundation,
|
||||||
|
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef createTrackedReactingParcelTypes_H
|
||||||
|
#define createTrackedReactingParcelTypes_H
|
||||||
|
|
||||||
|
#include "createReactingParcelTypes.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#define createTrackedReactingParcelType(ParcelType) \
|
||||||
|
\
|
||||||
|
createTrackedReactingParcelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieConstProperties \
|
||||||
|
); \
|
||||||
|
createTrackedReactingParcelThermoType \
|
||||||
|
( \
|
||||||
|
ParcelType, \
|
||||||
|
specieReactingProperties \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#define createTrackedReactingParcelThermoType(ParcelType, ThermoType) \
|
||||||
|
\
|
||||||
|
createReactingParcelThermoType(ParcelType, ThermoType); \
|
||||||
|
\
|
||||||
|
typedef ParcelType<ThermoType> ParcelType##ThermoType; \
|
||||||
|
\
|
||||||
|
defineParcelTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
TrackedReactingParcel<ParcelType##ThermoType>, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
defineTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
TrackedReactingParcel<ParcelType##ThermoType>, \
|
||||||
|
0 \
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -26,18 +26,19 @@ Typedefs
|
|||||||
Foam::ReactingCloudThermoTypes
|
Foam::ReactingCloudThermoTypes
|
||||||
|
|
||||||
Description
|
Description
|
||||||
|
Type definitions for available thermo pacakges
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#ifndef ReactingCloudThermoTypes_H
|
#ifndef reactingThermoTypes_H
|
||||||
#define ReactingCloudThermoTypes_H
|
#define reactingThermoTypes_H
|
||||||
|
|
||||||
#include "sutherlandTransport.H"
|
#include "perfectGas.H"
|
||||||
#include "constTransport.H"
|
|
||||||
#include "specieThermo.H"
|
|
||||||
#include "hConstThermo.H"
|
#include "hConstThermo.H"
|
||||||
#include "janafThermo.H"
|
#include "janafThermo.H"
|
||||||
#include "perfectGas.H"
|
#include "specieThermo.H"
|
||||||
|
#include "sutherlandTransport.H"
|
||||||
|
#include "constTransport.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
@ -28,9 +28,6 @@ License
|
|||||||
|
|
||||||
#include "basicKinematicParcel.H"
|
#include "basicKinematicParcel.H"
|
||||||
#include "basicThermoParcel.H"
|
#include "basicThermoParcel.H"
|
||||||
#include "basicReactingMultiphaseParcelTypes.H"
|
|
||||||
|
|
||||||
#include "basicTrackedReactingParcelTypes.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
@ -38,9 +35,6 @@ namespace Foam
|
|||||||
{
|
{
|
||||||
makeParcelIOList(basicKinematicParcel);
|
makeParcelIOList(basicKinematicParcel);
|
||||||
makeParcelIOList(basicThermoParcel);
|
makeParcelIOList(basicThermoParcel);
|
||||||
makeParcelIOList(bReactingMultiphaseParcel);
|
|
||||||
|
|
||||||
makeParcelIOList(bTrackedReactingParcel);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -160,6 +160,20 @@ public:
|
|||||||
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
|
#define makeDispersionModelThermoType(SS, CloudType, ParcelType, ThermoType) \
|
||||||
|
\
|
||||||
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
SS<CloudType<ParcelType<ThermoType> > >, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
DispersionModel<CloudType<ParcelType<ThermoType> > >:: \
|
||||||
|
adddictionaryConstructorToTable \
|
||||||
|
<SS<CloudType<ParcelType<ThermoType> > > > \
|
||||||
|
add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#ifdef NoRepository
|
#ifdef NoRepository
|
||||||
|
|||||||
@ -155,6 +155,20 @@ public:
|
|||||||
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
|
#define makeDragModelThermoType(SS, CloudType, ParcelType, ThermoType) \
|
||||||
|
\
|
||||||
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
SS<CloudType<ParcelType<ThermoType> > >, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
DragModel<CloudType<ParcelType<ThermoType> > >:: \
|
||||||
|
adddictionaryConstructorToTable \
|
||||||
|
<SS<CloudType<ParcelType<ThermoType> > > > \
|
||||||
|
add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#ifdef NoRepository
|
#ifdef NoRepository
|
||||||
|
|||||||
@ -303,21 +303,6 @@ public:
|
|||||||
) = 0;
|
) = 0;
|
||||||
|
|
||||||
virtual bool fullyDescribed() const = 0;
|
virtual bool fullyDescribed() const = 0;
|
||||||
/*
|
|
||||||
//- Return the velocity of the parcel to introduce at a time
|
|
||||||
virtual vector velocity
|
|
||||||
(
|
|
||||||
const label parcelI,
|
|
||||||
const scalar time
|
|
||||||
) = 0;
|
|
||||||
|
|
||||||
//- Return the diameter of the parcel to introduce at a time
|
|
||||||
virtual scalar d0
|
|
||||||
(
|
|
||||||
const label parcelI,
|
|
||||||
const scalar time
|
|
||||||
) const = 0;
|
|
||||||
*/
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -343,6 +328,21 @@ public:
|
|||||||
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
|
#define makeInjectionModelThermoType(SS, CloudType, ParcelType, ThermoType) \
|
||||||
|
\
|
||||||
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
SS<CloudType<ParcelType<ThermoType> > >, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
InjectionModel<CloudType<ParcelType<ThermoType> > >:: \
|
||||||
|
adddictionaryConstructorToTable \
|
||||||
|
<SS<CloudType<ParcelType<ThermoType> > > > \
|
||||||
|
add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#include "InjectionModelI.H"
|
#include "InjectionModelI.H"
|
||||||
|
|||||||
@ -160,6 +160,20 @@ public:
|
|||||||
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
|
#define makePatchInteractionModelThermoType(SS, CloudType, ParcelType, ThermoType)\
|
||||||
|
\
|
||||||
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
SS<CloudType<ParcelType<ThermoType> > >, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
PatchInteractionModel<CloudType<ParcelType<ThermoType> > >:: \
|
||||||
|
adddictionaryConstructorToTable \
|
||||||
|
<SS<CloudType<ParcelType<ThermoType> > > > \
|
||||||
|
add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#ifdef NoRepository
|
#ifdef NoRepository
|
||||||
|
|||||||
@ -178,6 +178,20 @@ public:
|
|||||||
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
|
#define makePostProcessingModelThermoType(SS, CloudType, ParcelType, ThermoType)\
|
||||||
|
\
|
||||||
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
SS<CloudType<ParcelType<ThermoType> > >, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
PostProcessingModel<CloudType<ParcelType<ThermoType> > >:: \
|
||||||
|
adddictionaryConstructorToTable \
|
||||||
|
<SS<CloudType<ParcelType<ThermoType> > > > \
|
||||||
|
add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#include "PostProcessingModelI.H"
|
#include "PostProcessingModelI.H"
|
||||||
|
|||||||
@ -282,13 +282,18 @@ public:
|
|||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
#define makeCompositionModelType(SS, CloudType, ParcelType) \
|
#define makeCompositionModelThermoType(SS, CloudType, ParcelType, ThermoType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SS<CloudType<ParcelType> >, 0); \
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
SS<CloudType<ParcelType<ThermoType> > >, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
\
|
\
|
||||||
CompositionModel<CloudType<ParcelType> >:: \
|
CompositionModel<CloudType<ParcelType<ThermoType> > >:: \
|
||||||
adddictionaryConstructorToTable<SS<CloudType<ParcelType> > > \
|
adddictionaryConstructorToTable \
|
||||||
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
<SS<CloudType<ParcelType<ThermoType> > > > \
|
||||||
|
add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -139,6 +139,10 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
} // End namespace Foam
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#ifdef NoRepository
|
#ifdef NoRepository
|
||||||
@ -147,10 +151,6 @@ public:
|
|||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
} // End namespace Foam
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
|
|||||||
@ -168,13 +168,18 @@ public:
|
|||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
#define makePhaseChangeModelType(SS, CloudType, ParcelType) \
|
#define makePhaseChangeModelThermoType(SS, CloudType, ParcelType, ThermoType) \
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SS<CloudType<ParcelType> >, 0); \
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
SS<CloudType<ParcelType<ThermoType> > >, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
\
|
\
|
||||||
PhaseChangeModel<CloudType<ParcelType> >:: \
|
PhaseChangeModel<CloudType<ParcelType<ThermoType> > >:: \
|
||||||
adddictionaryConstructorToTable<SS<CloudType<ParcelType> > > \
|
adddictionaryConstructorToTable \
|
||||||
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
<SS<CloudType<ParcelType<ThermoType> > > > \
|
||||||
|
add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -160,13 +160,18 @@ public:
|
|||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
#define makeDevolatilisationModelType(SS, CloudType, ParcelType) \
|
#define makeDevolatilisationModelThermoType(SS, CloudType, ParcelType, ThermoType)\
|
||||||
\
|
\
|
||||||
defineNamedTemplateTypeNameAndDebug(SS<CloudType<ParcelType> >, 0); \
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
SS<CloudType<ParcelType<ThermoType> > >, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
\
|
\
|
||||||
DevolatilisationModel<CloudType<ParcelType> >:: \
|
DevolatilisationModel<CloudType<ParcelType<ThermoType> > >:: \
|
||||||
adddictionaryConstructorToTable<SS<CloudType<ParcelType> > > \
|
adddictionaryConstructorToTable \
|
||||||
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
<SS<CloudType<ParcelType<ThermoType> > > > \
|
||||||
|
add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|||||||
@ -190,6 +190,19 @@ public:
|
|||||||
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
|
#define makeSurfaceReactionModelThermoTypeNew(SS, CloudType, ParcelType, ThermoType)\
|
||||||
|
\
|
||||||
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
SS<CloudType<ParcelType<ThermoType> > >, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
SurfaceReactionModel<CloudType<ParcelType<ThermoType> > >:: \
|
||||||
|
adddictionaryConstructorToTable \
|
||||||
|
<SS<CloudType<ParcelType<ThermoType> > > > \
|
||||||
|
add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_;
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#ifdef NoRepository
|
#ifdef NoRepository
|
||||||
|
|||||||
@ -189,6 +189,20 @@ public:
|
|||||||
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
add##SS##CloudType##ParcelType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
|
#define makeHeatTransferModelThermoType(SS, CloudType, ParcelType, ThermoType)\
|
||||||
|
\
|
||||||
|
defineNamedTemplateTypeNameAndDebug \
|
||||||
|
( \
|
||||||
|
SS<CloudType<ParcelType<ThermoType> > >, \
|
||||||
|
0 \
|
||||||
|
); \
|
||||||
|
\
|
||||||
|
HeatTransferModel<CloudType<ParcelType<ThermoType> > >:: \
|
||||||
|
adddictionaryConstructorToTable \
|
||||||
|
<SS<CloudType<ParcelType<ThermoType> > > > \
|
||||||
|
add##SS##CloudType##ParcelType##ThermoType##ConstructorToTable_;
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
#ifdef NoRepository
|
#ifdef NoRepository
|
||||||
|
|||||||
Reference in New Issue
Block a user