mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
ENH: Encapuslated cloud solution params
This commit is contained in:
@ -36,13 +36,72 @@ License
|
|||||||
#include "PostProcessingModel.H"
|
#include "PostProcessingModel.H"
|
||||||
#include "SurfaceFilmModel.H"
|
#include "SurfaceFilmModel.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * cloudSolution * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
template<class ParcelType>
|
||||||
|
void Foam::KinematicCloud<ParcelType>::cloudSolution::read()
|
||||||
|
{
|
||||||
|
dict_.lookup("coupled") >> coupled_;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
template<class ParcelType>
|
||||||
|
Foam::KinematicCloud<ParcelType>::cloudSolution::cloudSolution
|
||||||
|
(
|
||||||
|
const fvMesh& mesh,
|
||||||
|
const dictionary& dict
|
||||||
|
)
|
||||||
|
:
|
||||||
|
mesh_(mesh),
|
||||||
|
dict_(dict),
|
||||||
|
active_(dict.lookup("active")),
|
||||||
|
coupled_(false)
|
||||||
|
{
|
||||||
|
if (active_)
|
||||||
|
{
|
||||||
|
read();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
template<class ParcelType>
|
||||||
|
Foam::KinematicCloud<ParcelType>::cloudSolution::cloudSolution
|
||||||
|
(
|
||||||
|
const cloudSolution& cs
|
||||||
|
)
|
||||||
|
:
|
||||||
|
mesh_(cs.mesh_),
|
||||||
|
dict_(cs.dict_),
|
||||||
|
active_(cs.active_),
|
||||||
|
coupled_(cs.coupled_)
|
||||||
|
{}
|
||||||
|
|
||||||
|
|
||||||
|
template<class ParcelType>
|
||||||
|
Foam::KinematicCloud<ParcelType>::cloudSolution::cloudSolution
|
||||||
|
(
|
||||||
|
const fvMesh& mesh
|
||||||
|
)
|
||||||
|
:
|
||||||
|
mesh_(mesh),
|
||||||
|
dict_(dictionary::null),
|
||||||
|
active_(false),
|
||||||
|
coupled_(false)
|
||||||
|
{}
|
||||||
|
|
||||||
|
|
||||||
|
template<class ParcelType>
|
||||||
|
Foam::KinematicCloud<ParcelType>::cloudSolution::~cloudSolution()
|
||||||
|
{}
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * //
|
// * * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * //
|
||||||
|
|
||||||
template<class ParcelType>
|
template<class ParcelType>
|
||||||
void Foam::KinematicCloud<ParcelType>::preEvolve()
|
void Foam::KinematicCloud<ParcelType>::preEvolve()
|
||||||
{
|
{
|
||||||
this->dispersion().cacheFields(true);
|
this->dispersion().cacheFields(true);
|
||||||
forces_.cacheFields(true, interpolationSchemes_);
|
forces_.cacheFields(true, solution_.interpolationSchemes());
|
||||||
updateCellOccupancy();
|
updateCellOccupancy();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -98,21 +157,21 @@ void Foam::KinematicCloud<ParcelType>::evolveCloud()
|
|||||||
autoPtr<interpolation<scalar> > rhoInterpolator =
|
autoPtr<interpolation<scalar> > rhoInterpolator =
|
||||||
interpolation<scalar>::New
|
interpolation<scalar>::New
|
||||||
(
|
(
|
||||||
interpolationSchemes_,
|
solution_.interpolationSchemes(),
|
||||||
rho_
|
rho_
|
||||||
);
|
);
|
||||||
|
|
||||||
autoPtr<interpolation<vector> > UInterpolator =
|
autoPtr<interpolation<vector> > UInterpolator =
|
||||||
interpolation<vector>::New
|
interpolation<vector>::New
|
||||||
(
|
(
|
||||||
interpolationSchemes_,
|
solution_.interpolationSchemes(),
|
||||||
U_
|
U_
|
||||||
);
|
);
|
||||||
|
|
||||||
autoPtr<interpolation<scalar> > muInterpolator =
|
autoPtr<interpolation<scalar> > muInterpolator =
|
||||||
interpolation<scalar>::New
|
interpolation<scalar>::New
|
||||||
(
|
(
|
||||||
interpolationSchemes_,
|
solution_.interpolationSchemes(),
|
||||||
mu_
|
mu_
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -141,7 +200,7 @@ void Foam::KinematicCloud<ParcelType>::evolveCloud()
|
|||||||
|
|
||||||
this->injection().inject(td);
|
this->injection().inject(td);
|
||||||
|
|
||||||
if (coupled_)
|
if (solution_.coupled())
|
||||||
{
|
{
|
||||||
resetSourceTerms();
|
resetSourceTerms();
|
||||||
}
|
}
|
||||||
@ -223,7 +282,7 @@ void Foam::KinematicCloud<ParcelType>::postEvolve()
|
|||||||
}
|
}
|
||||||
|
|
||||||
this->dispersion().cacheFields(false);
|
this->dispersion().cacheFields(false);
|
||||||
forces_.cacheFields(false, interpolationSchemes_);
|
forces_.cacheFields(false, solution_.interpolationSchemes());
|
||||||
|
|
||||||
this->postProcessing().post();
|
this->postProcessing().post();
|
||||||
}
|
}
|
||||||
@ -256,11 +315,10 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud
|
|||||||
IOobject::NO_WRITE
|
IOobject::NO_WRITE
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
|
solution_(mesh_, particleProperties_.subDict("solution")),
|
||||||
constProps_(particleProperties_),
|
constProps_(particleProperties_),
|
||||||
subModelProperties_(particleProperties_.subDict("subModels")),
|
subModelProperties_(particleProperties_.subDict("subModels")),
|
||||||
active_(particleProperties_.lookup("active")),
|
|
||||||
parcelTypeId_(readLabel(particleProperties_.lookup("parcelTypeId"))),
|
parcelTypeId_(readLabel(particleProperties_.lookup("parcelTypeId"))),
|
||||||
coupled_(particleProperties_.lookup("coupled")),
|
|
||||||
cellValueSourceCorrection_
|
cellValueSourceCorrection_
|
||||||
(
|
(
|
||||||
particleProperties_.lookup("cellValueSourceCorrection")
|
particleProperties_.lookup("cellValueSourceCorrection")
|
||||||
@ -272,7 +330,6 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud
|
|||||||
mu_(mu),
|
mu_(mu),
|
||||||
g_(g),
|
g_(g),
|
||||||
forces_(mesh_, particleProperties_, g_.value()),
|
forces_(mesh_, particleProperties_, g_.value()),
|
||||||
interpolationSchemes_(particleProperties_.subDict("interpolationSchemes")),
|
|
||||||
dispersionModel_
|
dispersionModel_
|
||||||
(
|
(
|
||||||
DispersionModel<KinematicCloud<ParcelType> >::New
|
DispersionModel<KinematicCloud<ParcelType> >::New
|
||||||
@ -335,7 +392,7 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud
|
|||||||
vectorIntegrationScheme::New
|
vectorIntegrationScheme::New
|
||||||
(
|
(
|
||||||
"U",
|
"U",
|
||||||
particleProperties_.subDict("integrationSchemes")
|
solution_.integrationSchemes()
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
UTrans_
|
UTrans_
|
||||||
@ -397,7 +454,7 @@ void Foam::KinematicCloud<ParcelType>::resetSourceTerms()
|
|||||||
template<class ParcelType>
|
template<class ParcelType>
|
||||||
void Foam::KinematicCloud<ParcelType>::evolve()
|
void Foam::KinematicCloud<ParcelType>::evolve()
|
||||||
{
|
{
|
||||||
if (active_)
|
if (solution_.active())
|
||||||
{
|
{
|
||||||
preEvolve();
|
preEvolve();
|
||||||
|
|
||||||
|
|||||||
@ -105,6 +105,83 @@ class KinematicCloud
|
|||||||
void operator=(const KinematicCloud&);
|
void operator=(const KinematicCloud&);
|
||||||
|
|
||||||
|
|
||||||
|
public:
|
||||||
|
|
||||||
|
// Cloud solution helper class
|
||||||
|
class cloudSolution
|
||||||
|
{
|
||||||
|
// Private Data
|
||||||
|
|
||||||
|
//- Reference to the mesh
|
||||||
|
const fvMesh& mesh_;
|
||||||
|
|
||||||
|
//- Dictionary used during construction
|
||||||
|
dictionary dict_;
|
||||||
|
|
||||||
|
//- Cloud active flag
|
||||||
|
const Switch active_;
|
||||||
|
|
||||||
|
|
||||||
|
// Run-time options
|
||||||
|
|
||||||
|
//- Flag to indicate whether parcels are coupled to the carrier
|
||||||
|
// phase, i.e. whether or not to generate source terms for
|
||||||
|
// carrier phase
|
||||||
|
Switch coupled_;
|
||||||
|
|
||||||
|
//- Flag to correct cell values with latest transfer information
|
||||||
|
// during the lagrangian timestep
|
||||||
|
Switch cellValueSourceCorrection_;
|
||||||
|
|
||||||
|
|
||||||
|
public:
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
//- Construct null from mesh reference
|
||||||
|
cloudSolution(const fvMesh& mesh);
|
||||||
|
|
||||||
|
//- Construct from mesh and dictionary
|
||||||
|
cloudSolution(const fvMesh& mesh, const dictionary& dict);
|
||||||
|
|
||||||
|
//- Construct copy
|
||||||
|
cloudSolution(const cloudSolution& cs);
|
||||||
|
|
||||||
|
|
||||||
|
//- Destructor
|
||||||
|
virtual ~cloudSolution();
|
||||||
|
|
||||||
|
|
||||||
|
// Member functions
|
||||||
|
|
||||||
|
//- Read properties from dictionary
|
||||||
|
void read();
|
||||||
|
|
||||||
|
// Access
|
||||||
|
|
||||||
|
//- Return reference to the mesh
|
||||||
|
inline const fvMesh& mesh() const;
|
||||||
|
|
||||||
|
//- Return const access to the dictionary
|
||||||
|
inline const dictionary& dict() const;
|
||||||
|
|
||||||
|
//- Return the active flag
|
||||||
|
inline const Switch active() const;
|
||||||
|
|
||||||
|
//- Return const access to the coupled flag
|
||||||
|
inline const Switch coupled() const;
|
||||||
|
|
||||||
|
//- Return const access to the cell value correction flag
|
||||||
|
inline const Switch cellValueSourceCorrection() const;
|
||||||
|
|
||||||
|
//- Interpolation schemes dictionary
|
||||||
|
inline const dictionary& interpolationSchemes() const;
|
||||||
|
|
||||||
|
//- Integration schemes dictionary
|
||||||
|
inline const dictionary& integrationSchemes() const;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
// Protected data
|
// Protected data
|
||||||
@ -115,23 +192,19 @@ protected:
|
|||||||
//- Dictionary of particle properties
|
//- Dictionary of particle properties
|
||||||
IOdictionary particleProperties_;
|
IOdictionary particleProperties_;
|
||||||
|
|
||||||
//- Sub-models dictionary
|
//- Solution properties
|
||||||
const dictionary& subModelProperties_;
|
cloudSolution solution_;
|
||||||
|
|
||||||
//- Parcel constant properties
|
//- Parcel constant properties
|
||||||
typename ParcelType::constantProperties constProps_;
|
typename ParcelType::constantProperties constProps_;
|
||||||
|
|
||||||
//- Cloud active flag
|
//- Sub-models dictionary
|
||||||
const Switch active_;
|
const dictionary& subModelProperties_;
|
||||||
|
|
||||||
//- Parcel type id - used to flag the type of parcels issued by this
|
//- Parcel type id - used to flag the type of parcels issued by this
|
||||||
// cloud
|
// cloud
|
||||||
const label parcelTypeId_;
|
const label parcelTypeId_;
|
||||||
|
|
||||||
//- Flag to indicate whether parcels are coupled to the carrier phase
|
|
||||||
// i.e. whether or not to generate source terms for carrier phase
|
|
||||||
const Switch coupled_;
|
|
||||||
|
|
||||||
//- Flag to correct cell values with latest transfer information
|
//- Flag to correct cell values with latest transfer information
|
||||||
// during the lagrangian timestep
|
// during the lagrangian timestep
|
||||||
const Switch cellValueSourceCorrection_;
|
const Switch cellValueSourceCorrection_;
|
||||||
@ -164,9 +237,6 @@ protected:
|
|||||||
//- Optional particle forces
|
//- Optional particle forces
|
||||||
particleForces forces_;
|
particleForces forces_;
|
||||||
|
|
||||||
//- Interpolation schemes dictionary
|
|
||||||
dictionary interpolationSchemes_;
|
|
||||||
|
|
||||||
|
|
||||||
// References to the cloud sub-models
|
// References to the cloud sub-models
|
||||||
|
|
||||||
@ -278,28 +348,22 @@ public:
|
|||||||
//- Return particle properties dictionary
|
//- Return particle properties dictionary
|
||||||
inline const IOdictionary& particleProperties() const;
|
inline const IOdictionary& particleProperties() const;
|
||||||
|
|
||||||
//- Return reference to the sub-models dictionary
|
//- Return const access to the solution properties
|
||||||
inline const dictionary& subModelProperties() const;
|
inline const cloudSolution& solution() const;
|
||||||
|
|
||||||
//- Return the constant properties
|
//- Return the constant properties
|
||||||
inline const typename ParcelType::constantProperties&
|
inline const typename ParcelType::constantProperties&
|
||||||
constProps() const;
|
constProps() const;
|
||||||
|
|
||||||
|
//- Return reference to the sub-models dictionary
|
||||||
|
inline const dictionary& subModelProperties() const;
|
||||||
|
|
||||||
|
|
||||||
// Cloud data
|
// Cloud data
|
||||||
|
|
||||||
//- Return the active flag
|
|
||||||
inline const Switch active() const;
|
|
||||||
|
|
||||||
//- Return the parcel type id
|
//- Return the parcel type id
|
||||||
inline label parcelTypeId() const;
|
inline label parcelTypeId() const;
|
||||||
|
|
||||||
//- Return coupled flag
|
|
||||||
inline const Switch coupled() const;
|
|
||||||
|
|
||||||
//- Return cell value correction flag
|
|
||||||
inline const Switch cellValueSourceCorrection() const;
|
|
||||||
|
|
||||||
//- Return refernce to the random object
|
//- Return refernce to the random object
|
||||||
inline Random& rndGen();
|
inline Random& rndGen();
|
||||||
|
|
||||||
@ -332,12 +396,6 @@ public:
|
|||||||
inline const particleForces& forces() const;
|
inline const particleForces& forces() const;
|
||||||
|
|
||||||
|
|
||||||
// Interpolations
|
|
||||||
|
|
||||||
//- Return reference to the interpolation dictionary
|
|
||||||
inline const dictionary& interpolationSchemes() const;
|
|
||||||
|
|
||||||
|
|
||||||
// Sub-models
|
// Sub-models
|
||||||
|
|
||||||
//- Return const-access to the dispersion model
|
//- Return const-access to the dispersion model
|
||||||
|
|||||||
@ -25,6 +25,65 @@ License
|
|||||||
|
|
||||||
#include "fvmSup.H"
|
#include "fvmSup.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * cloudSolution Member Functions * * * * * * * * * * //
|
||||||
|
|
||||||
|
template<class ParcelType>
|
||||||
|
inline const Foam::fvMesh&
|
||||||
|
Foam::KinematicCloud<ParcelType>::cloudSolution::mesh() const
|
||||||
|
{
|
||||||
|
return mesh_;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
template<class ParcelType>
|
||||||
|
inline const Foam::dictionary&
|
||||||
|
Foam::KinematicCloud<ParcelType>::cloudSolution::dict() const
|
||||||
|
{
|
||||||
|
return dict_;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
template<class ParcelType>
|
||||||
|
inline const Foam::Switch
|
||||||
|
Foam::KinematicCloud<ParcelType>::cloudSolution::active() const
|
||||||
|
{
|
||||||
|
return active_;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
template<class ParcelType>
|
||||||
|
inline const Foam::Switch
|
||||||
|
Foam::KinematicCloud<ParcelType>::cloudSolution::coupled() const
|
||||||
|
{
|
||||||
|
return coupled_;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
template<class ParcelType>
|
||||||
|
inline const Foam::Switch
|
||||||
|
Foam::KinematicCloud<ParcelType>::cloudSolution::cellValueSourceCorrection()
|
||||||
|
const
|
||||||
|
{
|
||||||
|
return cellValueSourceCorrection_;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
template<class ParcelType>
|
||||||
|
inline const Foam::dictionary&
|
||||||
|
Foam::KinematicCloud<ParcelType>::cloudSolution::interpolationSchemes() const
|
||||||
|
{
|
||||||
|
return dict_.subDict("interpolationSchemes");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
template<class ParcelType>
|
||||||
|
inline const Foam::dictionary&
|
||||||
|
Foam::KinematicCloud<ParcelType>::cloudSolution::integrationSchemes() const
|
||||||
|
{
|
||||||
|
return dict_.subDict("integrationSchemes");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
template<class ParcelType>
|
template<class ParcelType>
|
||||||
@ -57,10 +116,10 @@ Foam::KinematicCloud<ParcelType>::particleProperties() const
|
|||||||
|
|
||||||
|
|
||||||
template<class ParcelType>
|
template<class ParcelType>
|
||||||
inline const Foam::dictionary&
|
inline const typename Foam::KinematicCloud<ParcelType>::cloudSolution&
|
||||||
Foam::KinematicCloud<ParcelType>::subModelProperties() const
|
Foam::KinematicCloud<ParcelType>::solution() const
|
||||||
{
|
{
|
||||||
return subModelProperties_;
|
return solution_;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -73,24 +132,10 @@ Foam::KinematicCloud<ParcelType>::constProps() const
|
|||||||
|
|
||||||
|
|
||||||
template<class ParcelType>
|
template<class ParcelType>
|
||||||
inline const Foam::Switch Foam::KinematicCloud<ParcelType>::active() const
|
inline const Foam::dictionary&
|
||||||
|
Foam::KinematicCloud<ParcelType>::subModelProperties() const
|
||||||
{
|
{
|
||||||
return active_;
|
return subModelProperties_;
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
template<class ParcelType>
|
|
||||||
inline const Foam::Switch Foam::KinematicCloud<ParcelType>::coupled() const
|
|
||||||
{
|
|
||||||
return coupled_;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
template <class ParcelType>
|
|
||||||
inline const Foam::Switch
|
|
||||||
Foam::KinematicCloud<ParcelType>::cellValueSourceCorrection() const
|
|
||||||
{
|
|
||||||
return cellValueSourceCorrection_;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -132,14 +177,6 @@ Foam::KinematicCloud<ParcelType>::forces() const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
template<class ParcelType>
|
|
||||||
inline const Foam::dictionary&
|
|
||||||
Foam::KinematicCloud<ParcelType>::interpolationSchemes() const
|
|
||||||
{
|
|
||||||
return interpolationSchemes_;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
template<class ParcelType>
|
template<class ParcelType>
|
||||||
inline const Foam::DispersionModel<Foam::KinematicCloud<ParcelType> >&
|
inline const Foam::DispersionModel<Foam::KinematicCloud<ParcelType> >&
|
||||||
Foam::KinematicCloud<ParcelType>::dispersion() const
|
Foam::KinematicCloud<ParcelType>::dispersion() const
|
||||||
|
|||||||
@ -135,7 +135,7 @@ void Foam::ReactingCloud<ParcelType>::evolveCloud()
|
|||||||
|
|
||||||
this->injection().inject(td);
|
this->injection().inject(td);
|
||||||
|
|
||||||
if (this->coupled())
|
if (this->solution().coupled())
|
||||||
{
|
{
|
||||||
resetSourceTerms();
|
resetSourceTerms();
|
||||||
}
|
}
|
||||||
@ -286,7 +286,7 @@ void Foam::ReactingCloud<ParcelType>::resetSourceTerms()
|
|||||||
template<class ParcelType>
|
template<class ParcelType>
|
||||||
void Foam::ReactingCloud<ParcelType>::evolve()
|
void Foam::ReactingCloud<ParcelType>::evolve()
|
||||||
{
|
{
|
||||||
if (this->active())
|
if (this->solution().active())
|
||||||
{
|
{
|
||||||
preEvolve();
|
preEvolve();
|
||||||
|
|
||||||
|
|||||||
@ -46,37 +46,37 @@ void Foam::ReactingMultiphaseCloud<ParcelType>::evolveCloud()
|
|||||||
|
|
||||||
autoPtr<interpolation<scalar> > rhoInterp = interpolation<scalar>::New
|
autoPtr<interpolation<scalar> > rhoInterp = interpolation<scalar>::New
|
||||||
(
|
(
|
||||||
this->interpolationSchemes(),
|
this->solution().interpolationSchemes(),
|
||||||
this->rho()
|
this->rho()
|
||||||
);
|
);
|
||||||
|
|
||||||
autoPtr<interpolation<vector> > UInterp = interpolation<vector>::New
|
autoPtr<interpolation<vector> > UInterp = interpolation<vector>::New
|
||||||
(
|
(
|
||||||
this->interpolationSchemes(),
|
this->solution().interpolationSchemes(),
|
||||||
this->U()
|
this->U()
|
||||||
);
|
);
|
||||||
|
|
||||||
autoPtr<interpolation<scalar> > muInterp = interpolation<scalar>::New
|
autoPtr<interpolation<scalar> > muInterp = interpolation<scalar>::New
|
||||||
(
|
(
|
||||||
this->interpolationSchemes(),
|
this->solution().interpolationSchemes(),
|
||||||
this->mu()
|
this->mu()
|
||||||
);
|
);
|
||||||
|
|
||||||
autoPtr<interpolation<scalar> > TInterp = interpolation<scalar>::New
|
autoPtr<interpolation<scalar> > TInterp = interpolation<scalar>::New
|
||||||
(
|
(
|
||||||
this->interpolationSchemes(),
|
this->solution().interpolationSchemes(),
|
||||||
T
|
T
|
||||||
);
|
);
|
||||||
|
|
||||||
autoPtr<interpolation<scalar> > cpInterp = interpolation<scalar>::New
|
autoPtr<interpolation<scalar> > cpInterp = interpolation<scalar>::New
|
||||||
(
|
(
|
||||||
this->interpolationSchemes(),
|
this->solution().interpolationSchemes(),
|
||||||
cp
|
cp
|
||||||
);
|
);
|
||||||
|
|
||||||
autoPtr<interpolation<scalar> > pInterp = interpolation<scalar>::New
|
autoPtr<interpolation<scalar> > pInterp = interpolation<scalar>::New
|
||||||
(
|
(
|
||||||
this->interpolationSchemes(),
|
this->solution().interpolationSchemes(),
|
||||||
p
|
p
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -108,7 +108,7 @@ void Foam::ReactingMultiphaseCloud<ParcelType>::evolveCloud()
|
|||||||
|
|
||||||
this->injection().inject(td);
|
this->injection().inject(td);
|
||||||
|
|
||||||
if (this->coupled())
|
if (this->solution().coupled())
|
||||||
{
|
{
|
||||||
resetSourceTerms();
|
resetSourceTerms();
|
||||||
}
|
}
|
||||||
@ -245,7 +245,7 @@ void Foam::ReactingMultiphaseCloud<ParcelType>::resetSourceTerms()
|
|||||||
template<class ParcelType>
|
template<class ParcelType>
|
||||||
void Foam::ReactingMultiphaseCloud<ParcelType>::evolve()
|
void Foam::ReactingMultiphaseCloud<ParcelType>::evolve()
|
||||||
{
|
{
|
||||||
if (this->active())
|
if (this->solution().active())
|
||||||
{
|
{
|
||||||
preEvolve();
|
preEvolve();
|
||||||
|
|
||||||
|
|||||||
@ -46,31 +46,31 @@ void Foam::ThermoCloud<ParcelType>::evolveCloud()
|
|||||||
|
|
||||||
autoPtr<interpolation<scalar> > rhoInterp = interpolation<scalar>::New
|
autoPtr<interpolation<scalar> > rhoInterp = interpolation<scalar>::New
|
||||||
(
|
(
|
||||||
this->interpolationSchemes(),
|
this->solution().interpolationSchemes(),
|
||||||
this->rho()
|
this->rho()
|
||||||
);
|
);
|
||||||
|
|
||||||
autoPtr<interpolation<vector> > UInterp = interpolation<vector>::New
|
autoPtr<interpolation<vector> > UInterp = interpolation<vector>::New
|
||||||
(
|
(
|
||||||
this->interpolationSchemes(),
|
this->solution().interpolationSchemes(),
|
||||||
this->U()
|
this->U()
|
||||||
);
|
);
|
||||||
|
|
||||||
autoPtr<interpolation<scalar> > muInterp = interpolation<scalar>::New
|
autoPtr<interpolation<scalar> > muInterp = interpolation<scalar>::New
|
||||||
(
|
(
|
||||||
this->interpolationSchemes(),
|
this->solution().interpolationSchemes(),
|
||||||
this->mu()
|
this->mu()
|
||||||
);
|
);
|
||||||
|
|
||||||
autoPtr<interpolation<scalar> > TInterp = interpolation<scalar>::New
|
autoPtr<interpolation<scalar> > TInterp = interpolation<scalar>::New
|
||||||
(
|
(
|
||||||
this->interpolationSchemes(),
|
this->solution().interpolationSchemes(),
|
||||||
T
|
T
|
||||||
);
|
);
|
||||||
|
|
||||||
autoPtr<interpolation<scalar> > cpInterp = interpolation<scalar>::New
|
autoPtr<interpolation<scalar> > cpInterp = interpolation<scalar>::New
|
||||||
(
|
(
|
||||||
this->interpolationSchemes(),
|
this->solution().interpolationSchemes(),
|
||||||
cp
|
cp
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -101,7 +101,7 @@ void Foam::ThermoCloud<ParcelType>::evolveCloud()
|
|||||||
|
|
||||||
this->injection().inject(td);
|
this->injection().inject(td);
|
||||||
|
|
||||||
if (this->coupled())
|
if (this->solution().coupled())
|
||||||
{
|
{
|
||||||
resetSourceTerms();
|
resetSourceTerms();
|
||||||
}
|
}
|
||||||
@ -167,7 +167,7 @@ Foam::ThermoCloud<ParcelType>::ThermoCloud
|
|||||||
scalarIntegrationScheme::New
|
scalarIntegrationScheme::New
|
||||||
(
|
(
|
||||||
"T",
|
"T",
|
||||||
this->particleProperties().subDict("integrationSchemes")
|
this->solution().integrationSchemes()
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
radiation_(this->particleProperties().lookup("radiation")),
|
radiation_(this->particleProperties().lookup("radiation")),
|
||||||
@ -236,7 +236,7 @@ void Foam::ThermoCloud<ParcelType>::resetSourceTerms()
|
|||||||
template<class ParcelType>
|
template<class ParcelType>
|
||||||
void Foam::ThermoCloud<ParcelType>::evolve()
|
void Foam::ThermoCloud<ParcelType>::evolve()
|
||||||
{
|
{
|
||||||
if (this->active())
|
if (this->solution().active())
|
||||||
{
|
{
|
||||||
preEvolve();
|
preEvolve();
|
||||||
|
|
||||||
|
|||||||
@ -123,7 +123,7 @@ Foam::ThermoCloud<ParcelType>::Ep() const
|
|||||||
);
|
);
|
||||||
|
|
||||||
// Need to check if coupled as field is created on-the-fly
|
// Need to check if coupled as field is created on-the-fly
|
||||||
if (radiation_ && this->coupled())
|
if (radiation_ && this->solution().coupled())
|
||||||
{
|
{
|
||||||
scalarField& Ep = tEp().internalField();
|
scalarField& Ep = tEp().internalField();
|
||||||
const scalarField& V = this->mesh().V();
|
const scalarField& V = this->mesh().V();
|
||||||
@ -166,7 +166,7 @@ Foam::ThermoCloud<ParcelType>::ap() const
|
|||||||
);
|
);
|
||||||
|
|
||||||
// Need to check if coupled as field is created on-the-fly
|
// Need to check if coupled as field is created on-the-fly
|
||||||
if (radiation_ && this->coupled())
|
if (radiation_ && this->solution().coupled())
|
||||||
{
|
{
|
||||||
scalarField& ap = tap().internalField();
|
scalarField& ap = tap().internalField();
|
||||||
const scalarField& V = this->mesh().V();
|
const scalarField& V = this->mesh().V();
|
||||||
@ -209,7 +209,7 @@ Foam::ThermoCloud<ParcelType>::sigmap() const
|
|||||||
);
|
);
|
||||||
|
|
||||||
// Need to check if coupled as field is created on-the-fly
|
// Need to check if coupled as field is created on-the-fly
|
||||||
if (radiation_ && this->coupled())
|
if (radiation_ && this->solution().coupled())
|
||||||
{
|
{
|
||||||
scalarField& sigmap = tsigmap().internalField();
|
scalarField& sigmap = tsigmap().internalField();
|
||||||
|
|
||||||
|
|||||||
@ -127,7 +127,7 @@ void Foam::KinematicParcel<ParcelType>::calc
|
|||||||
|
|
||||||
// Accumulate carrier phase source terms
|
// Accumulate carrier phase source terms
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
if (td.cloud().coupled())
|
if (td.cloud().solution().coupled())
|
||||||
{
|
{
|
||||||
// Update momentum transfer
|
// Update momentum transfer
|
||||||
td.cloud().UTrans()[cellI] += np0*dUTrans;
|
td.cloud().UTrans()[cellI] += np0*dUTrans;
|
||||||
@ -301,7 +301,7 @@ bool Foam::KinematicParcel<ParcelType>::move(TrackData& td)
|
|||||||
// Update cell based properties
|
// Update cell based properties
|
||||||
p.setCellValues(td, dt, cellI);
|
p.setCellValues(td, dt, cellI);
|
||||||
|
|
||||||
if (td.cloud().cellValueSourceCorrection())
|
if (td.cloud().solution().cellValueSourceCorrection())
|
||||||
{
|
{
|
||||||
p.cellValueSourceCorrection(td, dt, cellI);
|
p.cellValueSourceCorrection(td, dt, cellI);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -387,7 +387,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::calc
|
|||||||
// Accumulate carrier phase source terms
|
// Accumulate carrier phase source terms
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
if (td.cloud().coupled())
|
if (td.cloud().solution().coupled())
|
||||||
{
|
{
|
||||||
// Transfer mass lost from particle to carrier mass source
|
// Transfer mass lost from particle to carrier mass source
|
||||||
forAll(YGas_, i)
|
forAll(YGas_, i)
|
||||||
@ -428,7 +428,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::calc
|
|||||||
{
|
{
|
||||||
td.keepParticle = false;
|
td.keepParticle = false;
|
||||||
|
|
||||||
if (td.cloud().coupled())
|
if (td.cloud().solution().coupled())
|
||||||
{
|
{
|
||||||
// Absorb parcel into carrier phase
|
// Absorb parcel into carrier phase
|
||||||
forAll(YGas_, i)
|
forAll(YGas_, i)
|
||||||
|
|||||||
@ -333,7 +333,7 @@ void Foam::ReactingParcel<ParcelType>::calc
|
|||||||
|
|
||||||
// Accumulate carrier phase source terms
|
// Accumulate carrier phase source terms
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
if (td.cloud().coupled())
|
if (td.cloud().solution().coupled())
|
||||||
{
|
{
|
||||||
// Transfer mass lost from particle to carrier mass source
|
// Transfer mass lost from particle to carrier mass source
|
||||||
forAll(dMassPC, i)
|
forAll(dMassPC, i)
|
||||||
@ -356,7 +356,7 @@ void Foam::ReactingParcel<ParcelType>::calc
|
|||||||
{
|
{
|
||||||
td.keepParticle = false;
|
td.keepParticle = false;
|
||||||
|
|
||||||
if (td.cloud().coupled())
|
if (td.cloud().solution().coupled())
|
||||||
{
|
{
|
||||||
// Absorb parcel into carrier phase
|
// Absorb parcel into carrier phase
|
||||||
forAll(Y_, i)
|
forAll(Y_, i)
|
||||||
|
|||||||
@ -193,7 +193,7 @@ void Foam::ThermoParcel<ParcelType>::calc
|
|||||||
|
|
||||||
// Accumulate carrier phase source terms
|
// Accumulate carrier phase source terms
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
if (td.cloud().coupled())
|
if (td.cloud().solution().coupled())
|
||||||
{
|
{
|
||||||
// Update momentum transfer
|
// Update momentum transfer
|
||||||
td.cloud().UTrans()[cellI] += np0*dUTrans;
|
td.cloud().UTrans()[cellI] += np0*dUTrans;
|
||||||
|
|||||||
@ -15,14 +15,31 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
solution
|
||||||
|
{
|
||||||
active true;
|
active true;
|
||||||
|
coupled true;
|
||||||
|
cellValueSourceCorrection on;
|
||||||
|
|
||||||
|
interpolationSchemes
|
||||||
|
{
|
||||||
|
rho cell;
|
||||||
|
U cellPoint;
|
||||||
|
mu cell;
|
||||||
|
T cell;
|
||||||
|
Cp cell;
|
||||||
|
p cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
integrationSchemes
|
||||||
|
{
|
||||||
|
U Euler;
|
||||||
|
T Analytical;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
radiation on;
|
radiation on;
|
||||||
|
|
||||||
coupled true;
|
|
||||||
|
|
||||||
cellValueSourceCorrection on;
|
|
||||||
|
|
||||||
parcelTypeId 1;
|
parcelTypeId 1;
|
||||||
|
|
||||||
constantProperties
|
constantProperties
|
||||||
@ -46,22 +63,6 @@ constantProperties
|
|||||||
constantVolume true;
|
constantVolume true;
|
||||||
}
|
}
|
||||||
|
|
||||||
interpolationSchemes
|
|
||||||
{
|
|
||||||
rho cell;
|
|
||||||
U cellPoint;
|
|
||||||
mu cell;
|
|
||||||
T cell;
|
|
||||||
Cp cell;
|
|
||||||
p cell;
|
|
||||||
}
|
|
||||||
|
|
||||||
integrationSchemes
|
|
||||||
{
|
|
||||||
U Euler;
|
|
||||||
T Analytical;
|
|
||||||
}
|
|
||||||
|
|
||||||
particleForces
|
particleForces
|
||||||
{
|
{
|
||||||
gravity on;
|
gravity on;
|
||||||
|
|||||||
@ -15,14 +15,30 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
solution
|
||||||
|
{
|
||||||
active true;
|
active true;
|
||||||
|
coupled true;
|
||||||
|
cellValueSourceCorrection on;
|
||||||
|
|
||||||
|
interpolationSchemes
|
||||||
|
{
|
||||||
|
rho cell;
|
||||||
|
mu cell;
|
||||||
|
U cellPoint;
|
||||||
|
Cp cell;
|
||||||
|
T cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
integrationSchemes
|
||||||
|
{
|
||||||
|
U Euler;
|
||||||
|
T Analytical;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
radiation on;
|
radiation on;
|
||||||
|
|
||||||
coupled true;
|
|
||||||
|
|
||||||
cellValueSourceCorrection on;
|
|
||||||
|
|
||||||
parcelTypeId 2;
|
parcelTypeId 2;
|
||||||
|
|
||||||
constantProperties
|
constantProperties
|
||||||
@ -40,21 +56,6 @@ constantProperties
|
|||||||
Pr 0.7;
|
Pr 0.7;
|
||||||
}
|
}
|
||||||
|
|
||||||
interpolationSchemes
|
|
||||||
{
|
|
||||||
rho cell;
|
|
||||||
mu cell;
|
|
||||||
U cellPoint;
|
|
||||||
Cp cell;
|
|
||||||
T cell;
|
|
||||||
}
|
|
||||||
|
|
||||||
integrationSchemes
|
|
||||||
{
|
|
||||||
U Euler;
|
|
||||||
T Analytical;
|
|
||||||
}
|
|
||||||
|
|
||||||
particleForces
|
particleForces
|
||||||
{
|
{
|
||||||
gravity on;
|
gravity on;
|
||||||
|
|||||||
@ -15,14 +15,31 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
solution
|
||||||
|
{
|
||||||
active true;
|
active true;
|
||||||
|
coupled true;
|
||||||
|
cellValueSourceCorrection on;
|
||||||
|
|
||||||
|
interpolationSchemes
|
||||||
|
{
|
||||||
|
rho cell;
|
||||||
|
U cellPoint;
|
||||||
|
mu cell;
|
||||||
|
T cell;
|
||||||
|
Cp cell;
|
||||||
|
p cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
integrationSchemes
|
||||||
|
{
|
||||||
|
U Euler;
|
||||||
|
T Analytical;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
radiation off;
|
radiation off;
|
||||||
|
|
||||||
coupled true;
|
|
||||||
|
|
||||||
cellValueSourceCorrection on;
|
|
||||||
|
|
||||||
parcelTypeId 1;
|
parcelTypeId 1;
|
||||||
|
|
||||||
constantProperties
|
constantProperties
|
||||||
@ -46,22 +63,6 @@ constantProperties
|
|||||||
constantVolume false;
|
constantVolume false;
|
||||||
}
|
}
|
||||||
|
|
||||||
interpolationSchemes
|
|
||||||
{
|
|
||||||
rho cell;
|
|
||||||
U cellPoint;
|
|
||||||
mu cell;
|
|
||||||
T cell;
|
|
||||||
Cp cell;
|
|
||||||
p cell;
|
|
||||||
}
|
|
||||||
|
|
||||||
integrationSchemes
|
|
||||||
{
|
|
||||||
U Euler;
|
|
||||||
T Analytical;
|
|
||||||
}
|
|
||||||
|
|
||||||
particleForces
|
particleForces
|
||||||
{
|
{
|
||||||
gravity on;
|
gravity on;
|
||||||
|
|||||||
@ -15,14 +15,31 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
solution
|
||||||
|
{
|
||||||
active true;
|
active true;
|
||||||
|
coupled false;
|
||||||
|
cellValueSourceCorrection off;
|
||||||
|
|
||||||
|
interpolationSchemes
|
||||||
|
{
|
||||||
|
rho cell;
|
||||||
|
U cellPoint;
|
||||||
|
mu cell;
|
||||||
|
T cell;
|
||||||
|
Cp cell;
|
||||||
|
p cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
integrationSchemes
|
||||||
|
{
|
||||||
|
U Euler;
|
||||||
|
T Euler;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
radiation off;
|
radiation off;
|
||||||
|
|
||||||
coupled false;
|
|
||||||
|
|
||||||
cellValueSourceCorrection off;
|
|
||||||
|
|
||||||
parcelTypeId 1;
|
parcelTypeId 1;
|
||||||
|
|
||||||
constantProperties
|
constantProperties
|
||||||
@ -46,22 +63,6 @@ constantProperties
|
|||||||
constantVolume false;
|
constantVolume false;
|
||||||
}
|
}
|
||||||
|
|
||||||
interpolationSchemes
|
|
||||||
{
|
|
||||||
rho cell;
|
|
||||||
U cellPoint;
|
|
||||||
mu cell;
|
|
||||||
T cell;
|
|
||||||
Cp cell;
|
|
||||||
p cell;
|
|
||||||
}
|
|
||||||
|
|
||||||
integrationSchemes
|
|
||||||
{
|
|
||||||
U Euler;
|
|
||||||
T Euler;
|
|
||||||
}
|
|
||||||
|
|
||||||
particleForces
|
particleForces
|
||||||
{
|
{
|
||||||
gravity on;
|
gravity on;
|
||||||
|
|||||||
@ -15,14 +15,31 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
solution
|
||||||
|
{
|
||||||
active true;
|
active true;
|
||||||
|
coupled true;
|
||||||
|
cellValueSourceCorrection on;
|
||||||
|
|
||||||
|
interpolationSchemes
|
||||||
|
{
|
||||||
|
rho cell;
|
||||||
|
U cellPoint;
|
||||||
|
mu cell;
|
||||||
|
T cell;
|
||||||
|
Cp cell;
|
||||||
|
p cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
integrationSchemes
|
||||||
|
{
|
||||||
|
U Euler;
|
||||||
|
T Analytical;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
radiation off;
|
radiation off;
|
||||||
|
|
||||||
coupled true;
|
|
||||||
|
|
||||||
cellValueSourceCorrection on;
|
|
||||||
|
|
||||||
parcelTypeId 1;
|
parcelTypeId 1;
|
||||||
|
|
||||||
constantProperties
|
constantProperties
|
||||||
@ -46,22 +63,6 @@ constantProperties
|
|||||||
constantVolume false;
|
constantVolume false;
|
||||||
}
|
}
|
||||||
|
|
||||||
interpolationSchemes
|
|
||||||
{
|
|
||||||
rho cell;
|
|
||||||
U cellPoint;
|
|
||||||
mu cell;
|
|
||||||
T cell;
|
|
||||||
Cp cell;
|
|
||||||
p cell;
|
|
||||||
}
|
|
||||||
|
|
||||||
integrationSchemes
|
|
||||||
{
|
|
||||||
U Euler;
|
|
||||||
T Analytical;
|
|
||||||
}
|
|
||||||
|
|
||||||
particleForces
|
particleForces
|
||||||
{
|
{
|
||||||
gravity on;
|
gravity on;
|
||||||
|
|||||||
@ -15,14 +15,31 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
solution
|
||||||
|
{
|
||||||
active false; // true;
|
active false; // true;
|
||||||
|
coupled true;
|
||||||
|
cellValueSourceCorrection on;
|
||||||
|
|
||||||
|
interpolationSchemes
|
||||||
|
{
|
||||||
|
rho cell;
|
||||||
|
U cell; // cellPoint;
|
||||||
|
mu cell;
|
||||||
|
T cell;
|
||||||
|
Cp cell;
|
||||||
|
p cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
integrationSchemes
|
||||||
|
{
|
||||||
|
U Euler;
|
||||||
|
T Analytical;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
radiation off;
|
radiation off;
|
||||||
|
|
||||||
coupled true;
|
|
||||||
|
|
||||||
cellValueSourceCorrection on;
|
|
||||||
|
|
||||||
parcelTypeId 1;
|
parcelTypeId 1;
|
||||||
|
|
||||||
constantProperties
|
constantProperties
|
||||||
@ -44,22 +61,6 @@ constantProperties
|
|||||||
poissonsRatio 0;
|
poissonsRatio 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
interpolationSchemes
|
|
||||||
{
|
|
||||||
rho cell;
|
|
||||||
U cell; // cellPoint;
|
|
||||||
mu cell;
|
|
||||||
T cell;
|
|
||||||
Cp cell;
|
|
||||||
p cell;
|
|
||||||
}
|
|
||||||
|
|
||||||
integrationSchemes
|
|
||||||
{
|
|
||||||
U Euler;
|
|
||||||
T Analytical;
|
|
||||||
}
|
|
||||||
|
|
||||||
particleForces
|
particleForces
|
||||||
{
|
{
|
||||||
gravity on;
|
gravity on;
|
||||||
|
|||||||
@ -15,14 +15,31 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
solution
|
||||||
|
{
|
||||||
active true;
|
active true;
|
||||||
|
coupled true;
|
||||||
|
cellValueSourceCorrection on;
|
||||||
|
|
||||||
|
interpolationSchemes
|
||||||
|
{
|
||||||
|
rho cell;
|
||||||
|
U cell; // cellPoint;
|
||||||
|
mu cell;
|
||||||
|
T cell;
|
||||||
|
Cp cell;
|
||||||
|
p cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
integrationSchemes
|
||||||
|
{
|
||||||
|
U Euler;
|
||||||
|
T Analytical;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
radiation off;
|
radiation off;
|
||||||
|
|
||||||
coupled true;
|
|
||||||
|
|
||||||
cellValueSourceCorrection on;
|
|
||||||
|
|
||||||
parcelTypeId 1;
|
parcelTypeId 1;
|
||||||
|
|
||||||
constantProperties
|
constantProperties
|
||||||
@ -44,22 +61,6 @@ constantProperties
|
|||||||
constantVolume false;
|
constantVolume false;
|
||||||
}
|
}
|
||||||
|
|
||||||
interpolationSchemes
|
|
||||||
{
|
|
||||||
rho cell;
|
|
||||||
U cell; // cellPoint;
|
|
||||||
mu cell;
|
|
||||||
T cell;
|
|
||||||
Cp cell;
|
|
||||||
p cell;
|
|
||||||
}
|
|
||||||
|
|
||||||
integrationSchemes
|
|
||||||
{
|
|
||||||
U Euler;
|
|
||||||
T Analytical;
|
|
||||||
}
|
|
||||||
|
|
||||||
particleForces
|
particleForces
|
||||||
{
|
{
|
||||||
gravity on;
|
gravity on;
|
||||||
|
|||||||
@ -15,14 +15,31 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
solution
|
||||||
|
{
|
||||||
active true;
|
active true;
|
||||||
|
coupled true;
|
||||||
|
cellValueSourceCorrection on;
|
||||||
|
|
||||||
|
interpolationSchemes
|
||||||
|
{
|
||||||
|
rho cell;
|
||||||
|
U cell; // cellPoint;
|
||||||
|
mu cell;
|
||||||
|
T cell;
|
||||||
|
Cp cell;
|
||||||
|
p cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
integrationSchemes
|
||||||
|
{
|
||||||
|
U Euler;
|
||||||
|
T Analytical;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
radiation off;
|
radiation off;
|
||||||
|
|
||||||
coupled true;
|
|
||||||
|
|
||||||
cellValueSourceCorrection on;
|
|
||||||
|
|
||||||
parcelTypeId 1;
|
parcelTypeId 1;
|
||||||
|
|
||||||
constantProperties
|
constantProperties
|
||||||
@ -44,22 +61,6 @@ constantProperties
|
|||||||
constantVolume false;
|
constantVolume false;
|
||||||
}
|
}
|
||||||
|
|
||||||
interpolationSchemes
|
|
||||||
{
|
|
||||||
rho cell;
|
|
||||||
U cell; // cellPoint;
|
|
||||||
mu cell;
|
|
||||||
T cell;
|
|
||||||
Cp cell;
|
|
||||||
p cell;
|
|
||||||
}
|
|
||||||
|
|
||||||
integrationSchemes
|
|
||||||
{
|
|
||||||
U Euler;
|
|
||||||
T Analytical;
|
|
||||||
}
|
|
||||||
|
|
||||||
particleForces
|
particleForces
|
||||||
{
|
{
|
||||||
gravity on;
|
gravity on;
|
||||||
|
|||||||
@ -15,14 +15,31 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
solution
|
||||||
|
{
|
||||||
active false; // true;
|
active false; // true;
|
||||||
|
coupled true;
|
||||||
|
cellValueSourceCorrection on;
|
||||||
|
|
||||||
|
interpolationSchemes
|
||||||
|
{
|
||||||
|
rho cell;
|
||||||
|
U cell; // cellPoint;
|
||||||
|
mu cell;
|
||||||
|
T cell;
|
||||||
|
Cp cell;
|
||||||
|
p cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
integrationSchemes
|
||||||
|
{
|
||||||
|
U Euler;
|
||||||
|
T Analytical;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
radiation off;
|
radiation off;
|
||||||
|
|
||||||
coupled true;
|
|
||||||
|
|
||||||
cellValueSourceCorrection on;
|
|
||||||
|
|
||||||
parcelTypeId 1;
|
parcelTypeId 1;
|
||||||
|
|
||||||
constantProperties
|
constantProperties
|
||||||
@ -44,22 +61,6 @@ constantProperties
|
|||||||
constantVolume false;
|
constantVolume false;
|
||||||
}
|
}
|
||||||
|
|
||||||
interpolationSchemes
|
|
||||||
{
|
|
||||||
rho cell;
|
|
||||||
U cell; // cellPoint;
|
|
||||||
mu cell;
|
|
||||||
T cell;
|
|
||||||
Cp cell;
|
|
||||||
p cell;
|
|
||||||
}
|
|
||||||
|
|
||||||
integrationSchemes
|
|
||||||
{
|
|
||||||
U Euler;
|
|
||||||
T Analytical;
|
|
||||||
}
|
|
||||||
|
|
||||||
particleForces
|
particleForces
|
||||||
{
|
{
|
||||||
gravity on;
|
gravity on;
|
||||||
|
|||||||
@ -15,14 +15,31 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
solution
|
||||||
|
{
|
||||||
active true;
|
active true;
|
||||||
|
coupled true;
|
||||||
|
cellValueSourceCorrection on;
|
||||||
|
|
||||||
|
interpolationSchemes
|
||||||
|
{
|
||||||
|
rho cell;
|
||||||
|
U cellPoint;
|
||||||
|
mu cell;
|
||||||
|
T cell;
|
||||||
|
Cp cell;
|
||||||
|
p cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
integrationSchemes
|
||||||
|
{
|
||||||
|
U Euler;
|
||||||
|
T Analytical;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
radiation off;
|
radiation off;
|
||||||
|
|
||||||
coupled true;
|
|
||||||
|
|
||||||
cellValueSourceCorrection on;
|
|
||||||
|
|
||||||
parcelTypeId 1;
|
parcelTypeId 1;
|
||||||
|
|
||||||
constantProperties
|
constantProperties
|
||||||
@ -44,22 +61,6 @@ constantProperties
|
|||||||
constantVolume false;
|
constantVolume false;
|
||||||
}
|
}
|
||||||
|
|
||||||
interpolationSchemes
|
|
||||||
{
|
|
||||||
rho cell;
|
|
||||||
U cellPoint;
|
|
||||||
mu cell;
|
|
||||||
T cell;
|
|
||||||
Cp cell;
|
|
||||||
p cell;
|
|
||||||
}
|
|
||||||
|
|
||||||
integrationSchemes
|
|
||||||
{
|
|
||||||
U Euler;
|
|
||||||
T Analytical;
|
|
||||||
}
|
|
||||||
|
|
||||||
particleForces
|
particleForces
|
||||||
{
|
{
|
||||||
gravity off;
|
gravity off;
|
||||||
|
|||||||
@ -15,22 +15,11 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
active true;
|
solution
|
||||||
|
|
||||||
coupled true;
|
|
||||||
|
|
||||||
cellValueSourceCorrection on;
|
|
||||||
|
|
||||||
parcelTypeId 2;
|
|
||||||
|
|
||||||
constantProperties
|
|
||||||
{
|
{
|
||||||
rhoMin 1e-15;
|
active true;
|
||||||
minParticleMass 1e-15;
|
coupled true;
|
||||||
rho0 5000;
|
cellValueSourceCorrection on;
|
||||||
youngsModulus 1e9;
|
|
||||||
poissonsRatio 0.35;
|
|
||||||
}
|
|
||||||
|
|
||||||
interpolationSchemes
|
interpolationSchemes
|
||||||
{
|
{
|
||||||
@ -43,6 +32,18 @@ integrationSchemes
|
|||||||
{
|
{
|
||||||
U Euler;
|
U Euler;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
parcelTypeId 2;
|
||||||
|
|
||||||
|
constantProperties
|
||||||
|
{
|
||||||
|
rhoMin 1e-15;
|
||||||
|
minParticleMass 1e-15;
|
||||||
|
rho0 5000;
|
||||||
|
youngsModulus 1e9;
|
||||||
|
poissonsRatio 0.35;
|
||||||
|
}
|
||||||
|
|
||||||
particleForces
|
particleForces
|
||||||
{
|
{
|
||||||
|
|||||||
@ -15,14 +15,30 @@ FoamFile
|
|||||||
}
|
}
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
solution
|
||||||
|
{
|
||||||
active true;
|
active true;
|
||||||
|
coupled true;
|
||||||
|
cellValueSourceCorrection on;
|
||||||
|
|
||||||
|
interpolationSchemes
|
||||||
|
{
|
||||||
|
rho cell;
|
||||||
|
mu cell;
|
||||||
|
U cellPoint;
|
||||||
|
T cell;
|
||||||
|
Cp cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
integrationSchemes
|
||||||
|
{
|
||||||
|
U Euler;
|
||||||
|
T Analytical;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
radiation off;
|
radiation off;
|
||||||
|
|
||||||
coupled true;
|
|
||||||
|
|
||||||
cellValueSourceCorrection on;
|
|
||||||
|
|
||||||
parcelTypeId 1;
|
parcelTypeId 1;
|
||||||
|
|
||||||
constantProperties
|
constantProperties
|
||||||
@ -40,21 +56,6 @@ constantProperties
|
|||||||
Pr 0.7;
|
Pr 0.7;
|
||||||
}
|
}
|
||||||
|
|
||||||
interpolationSchemes
|
|
||||||
{
|
|
||||||
rho cell;
|
|
||||||
mu cell;
|
|
||||||
U cellPoint;
|
|
||||||
T cell;
|
|
||||||
Cp cell;
|
|
||||||
}
|
|
||||||
|
|
||||||
integrationSchemes
|
|
||||||
{
|
|
||||||
U Euler;
|
|
||||||
T Analytical;
|
|
||||||
}
|
|
||||||
|
|
||||||
particleForces
|
particleForces
|
||||||
{
|
{
|
||||||
gravity on;
|
gravity on;
|
||||||
|
|||||||
Reference in New Issue
Block a user