ENH: Encapuslated cloud solution params

This commit is contained in:
andy
2010-10-18 16:58:53 +01:00
parent 2ae6047ac0
commit 83db9efc84
23 changed files with 503 additions and 339 deletions

View File

@ -36,13 +36,72 @@ License
#include "PostProcessingModel.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 * * * * * * * * * * //
template<class ParcelType>
void Foam::KinematicCloud<ParcelType>::preEvolve()
{
this->dispersion().cacheFields(true);
forces_.cacheFields(true, interpolationSchemes_);
forces_.cacheFields(true, solution_.interpolationSchemes());
updateCellOccupancy();
}
@ -98,21 +157,21 @@ void Foam::KinematicCloud<ParcelType>::evolveCloud()
autoPtr<interpolation<scalar> > rhoInterpolator =
interpolation<scalar>::New
(
interpolationSchemes_,
solution_.interpolationSchemes(),
rho_
);
autoPtr<interpolation<vector> > UInterpolator =
interpolation<vector>::New
(
interpolationSchemes_,
solution_.interpolationSchemes(),
U_
);
autoPtr<interpolation<scalar> > muInterpolator =
interpolation<scalar>::New
(
interpolationSchemes_,
solution_.interpolationSchemes(),
mu_
);
@ -141,7 +200,7 @@ void Foam::KinematicCloud<ParcelType>::evolveCloud()
this->injection().inject(td);
if (coupled_)
if (solution_.coupled())
{
resetSourceTerms();
}
@ -223,7 +282,7 @@ void Foam::KinematicCloud<ParcelType>::postEvolve()
}
this->dispersion().cacheFields(false);
forces_.cacheFields(false, interpolationSchemes_);
forces_.cacheFields(false, solution_.interpolationSchemes());
this->postProcessing().post();
}
@ -256,11 +315,10 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud
IOobject::NO_WRITE
)
),
solution_(mesh_, particleProperties_.subDict("solution")),
constProps_(particleProperties_),
subModelProperties_(particleProperties_.subDict("subModels")),
active_(particleProperties_.lookup("active")),
parcelTypeId_(readLabel(particleProperties_.lookup("parcelTypeId"))),
coupled_(particleProperties_.lookup("coupled")),
cellValueSourceCorrection_
(
particleProperties_.lookup("cellValueSourceCorrection")
@ -272,7 +330,6 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud
mu_(mu),
g_(g),
forces_(mesh_, particleProperties_, g_.value()),
interpolationSchemes_(particleProperties_.subDict("interpolationSchemes")),
dispersionModel_
(
DispersionModel<KinematicCloud<ParcelType> >::New
@ -335,7 +392,7 @@ Foam::KinematicCloud<ParcelType>::KinematicCloud
vectorIntegrationScheme::New
(
"U",
particleProperties_.subDict("integrationSchemes")
solution_.integrationSchemes()
)
),
UTrans_
@ -397,7 +454,7 @@ void Foam::KinematicCloud<ParcelType>::resetSourceTerms()
template<class ParcelType>
void Foam::KinematicCloud<ParcelType>::evolve()
{
if (active_)
if (solution_.active())
{
preEvolve();

View File

@ -105,6 +105,83 @@ class 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 data
@ -115,23 +192,19 @@ protected:
//- Dictionary of particle properties
IOdictionary particleProperties_;
//- Sub-models dictionary
const dictionary& subModelProperties_;
//- Solution properties
cloudSolution solution_;
//- Parcel constant properties
typename ParcelType::constantProperties constProps_;
//- Cloud active flag
const Switch active_;
//- Sub-models dictionary
const dictionary& subModelProperties_;
//- Parcel type id - used to flag the type of parcels issued by this
// cloud
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
// during the lagrangian timestep
const Switch cellValueSourceCorrection_;
@ -164,9 +237,6 @@ protected:
//- Optional particle forces
particleForces forces_;
//- Interpolation schemes dictionary
dictionary interpolationSchemes_;
// References to the cloud sub-models
@ -278,28 +348,22 @@ public:
//- Return particle properties dictionary
inline const IOdictionary& particleProperties() const;
//- Return reference to the sub-models dictionary
inline const dictionary& subModelProperties() const;
//- Return const access to the solution properties
inline const cloudSolution& solution() const;
//- Return the constant properties
inline const typename ParcelType::constantProperties&
constProps() const;
//- Return reference to the sub-models dictionary
inline const dictionary& subModelProperties() const;
// Cloud data
//- Return the active flag
inline const Switch active() const;
//- Return the parcel type id
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
inline Random& rndGen();
@ -332,12 +396,6 @@ public:
inline const particleForces& forces() const;
// Interpolations
//- Return reference to the interpolation dictionary
inline const dictionary& interpolationSchemes() const;
// Sub-models
//- Return const-access to the dispersion model

View File

@ -25,6 +25,65 @@ License
#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 * * * * * * * * * * * * * //
template<class ParcelType>
@ -57,10 +116,10 @@ Foam::KinematicCloud<ParcelType>::particleProperties() const
template<class ParcelType>
inline const Foam::dictionary&
Foam::KinematicCloud<ParcelType>::subModelProperties() const
inline const typename Foam::KinematicCloud<ParcelType>::cloudSolution&
Foam::KinematicCloud<ParcelType>::solution() const
{
return subModelProperties_;
return solution_;
}
@ -73,24 +132,10 @@ Foam::KinematicCloud<ParcelType>::constProps() const
template<class ParcelType>
inline const Foam::Switch Foam::KinematicCloud<ParcelType>::active() const
inline const Foam::dictionary&
Foam::KinematicCloud<ParcelType>::subModelProperties() const
{
return active_;
}
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_;
return subModelProperties_;
}
@ -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>
inline const Foam::DispersionModel<Foam::KinematicCloud<ParcelType> >&
Foam::KinematicCloud<ParcelType>::dispersion() const

View File

@ -135,7 +135,7 @@ void Foam::ReactingCloud<ParcelType>::evolveCloud()
this->injection().inject(td);
if (this->coupled())
if (this->solution().coupled())
{
resetSourceTerms();
}
@ -286,7 +286,7 @@ void Foam::ReactingCloud<ParcelType>::resetSourceTerms()
template<class ParcelType>
void Foam::ReactingCloud<ParcelType>::evolve()
{
if (this->active())
if (this->solution().active())
{
preEvolve();

View File

@ -46,37 +46,37 @@ void Foam::ReactingMultiphaseCloud<ParcelType>::evolveCloud()
autoPtr<interpolation<scalar> > rhoInterp = interpolation<scalar>::New
(
this->interpolationSchemes(),
this->solution().interpolationSchemes(),
this->rho()
);
autoPtr<interpolation<vector> > UInterp = interpolation<vector>::New
(
this->interpolationSchemes(),
this->solution().interpolationSchemes(),
this->U()
);
autoPtr<interpolation<scalar> > muInterp = interpolation<scalar>::New
(
this->interpolationSchemes(),
this->solution().interpolationSchemes(),
this->mu()
);
autoPtr<interpolation<scalar> > TInterp = interpolation<scalar>::New
(
this->interpolationSchemes(),
this->solution().interpolationSchemes(),
T
);
autoPtr<interpolation<scalar> > cpInterp = interpolation<scalar>::New
(
this->interpolationSchemes(),
this->solution().interpolationSchemes(),
cp
);
autoPtr<interpolation<scalar> > pInterp = interpolation<scalar>::New
(
this->interpolationSchemes(),
this->solution().interpolationSchemes(),
p
);
@ -108,7 +108,7 @@ void Foam::ReactingMultiphaseCloud<ParcelType>::evolveCloud()
this->injection().inject(td);
if (this->coupled())
if (this->solution().coupled())
{
resetSourceTerms();
}
@ -245,7 +245,7 @@ void Foam::ReactingMultiphaseCloud<ParcelType>::resetSourceTerms()
template<class ParcelType>
void Foam::ReactingMultiphaseCloud<ParcelType>::evolve()
{
if (this->active())
if (this->solution().active())
{
preEvolve();

View File

@ -46,31 +46,31 @@ void Foam::ThermoCloud<ParcelType>::evolveCloud()
autoPtr<interpolation<scalar> > rhoInterp = interpolation<scalar>::New
(
this->interpolationSchemes(),
this->solution().interpolationSchemes(),
this->rho()
);
autoPtr<interpolation<vector> > UInterp = interpolation<vector>::New
(
this->interpolationSchemes(),
this->solution().interpolationSchemes(),
this->U()
);
autoPtr<interpolation<scalar> > muInterp = interpolation<scalar>::New
(
this->interpolationSchemes(),
this->solution().interpolationSchemes(),
this->mu()
);
autoPtr<interpolation<scalar> > TInterp = interpolation<scalar>::New
(
this->interpolationSchemes(),
this->solution().interpolationSchemes(),
T
);
autoPtr<interpolation<scalar> > cpInterp = interpolation<scalar>::New
(
this->interpolationSchemes(),
this->solution().interpolationSchemes(),
cp
);
@ -101,7 +101,7 @@ void Foam::ThermoCloud<ParcelType>::evolveCloud()
this->injection().inject(td);
if (this->coupled())
if (this->solution().coupled())
{
resetSourceTerms();
}
@ -167,7 +167,7 @@ Foam::ThermoCloud<ParcelType>::ThermoCloud
scalarIntegrationScheme::New
(
"T",
this->particleProperties().subDict("integrationSchemes")
this->solution().integrationSchemes()
)
),
radiation_(this->particleProperties().lookup("radiation")),
@ -236,7 +236,7 @@ void Foam::ThermoCloud<ParcelType>::resetSourceTerms()
template<class ParcelType>
void Foam::ThermoCloud<ParcelType>::evolve()
{
if (this->active())
if (this->solution().active())
{
preEvolve();

View File

@ -123,7 +123,7 @@ Foam::ThermoCloud<ParcelType>::Ep() const
);
// 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();
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
if (radiation_ && this->coupled())
if (radiation_ && this->solution().coupled())
{
scalarField& ap = tap().internalField();
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
if (radiation_ && this->coupled())
if (radiation_ && this->solution().coupled())
{
scalarField& sigmap = tsigmap().internalField();

View File

@ -127,7 +127,7 @@ void Foam::KinematicParcel<ParcelType>::calc
// Accumulate carrier phase source terms
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
if (td.cloud().coupled())
if (td.cloud().solution().coupled())
{
// Update momentum transfer
td.cloud().UTrans()[cellI] += np0*dUTrans;
@ -301,7 +301,7 @@ bool Foam::KinematicParcel<ParcelType>::move(TrackData& td)
// Update cell based properties
p.setCellValues(td, dt, cellI);
if (td.cloud().cellValueSourceCorrection())
if (td.cloud().solution().cellValueSourceCorrection())
{
p.cellValueSourceCorrection(td, dt, cellI);
}

View File

@ -387,7 +387,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::calc
// Accumulate carrier phase source terms
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
if (td.cloud().coupled())
if (td.cloud().solution().coupled())
{
// Transfer mass lost from particle to carrier mass source
forAll(YGas_, i)
@ -428,7 +428,7 @@ void Foam::ReactingMultiphaseParcel<ParcelType>::calc
{
td.keepParticle = false;
if (td.cloud().coupled())
if (td.cloud().solution().coupled())
{
// Absorb parcel into carrier phase
forAll(YGas_, i)

View File

@ -333,7 +333,7 @@ void Foam::ReactingParcel<ParcelType>::calc
// Accumulate carrier phase source terms
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
if (td.cloud().coupled())
if (td.cloud().solution().coupled())
{
// Transfer mass lost from particle to carrier mass source
forAll(dMassPC, i)
@ -356,7 +356,7 @@ void Foam::ReactingParcel<ParcelType>::calc
{
td.keepParticle = false;
if (td.cloud().coupled())
if (td.cloud().solution().coupled())
{
// Absorb parcel into carrier phase
forAll(Y_, i)

View File

@ -193,7 +193,7 @@ void Foam::ThermoParcel<ParcelType>::calc
// Accumulate carrier phase source terms
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
if (td.cloud().coupled())
if (td.cloud().solution().coupled())
{
// Update momentum transfer
td.cloud().UTrans()[cellI] += np0*dUTrans;

View File

@ -15,14 +15,31 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
active true;
solution
{
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;
coupled true;
cellValueSourceCorrection on;
parcelTypeId 1;
constantProperties
@ -46,22 +63,6 @@ constantProperties
constantVolume true;
}
interpolationSchemes
{
rho cell;
U cellPoint;
mu cell;
T cell;
Cp cell;
p cell;
}
integrationSchemes
{
U Euler;
T Analytical;
}
particleForces
{
gravity on;

View File

@ -15,14 +15,30 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
active true;
solution
{
active true;
coupled true;
cellValueSourceCorrection on;
interpolationSchemes
{
rho cell;
mu cell;
U cellPoint;
Cp cell;
T cell;
}
integrationSchemes
{
U Euler;
T Analytical;
}
}
radiation on;
coupled true;
cellValueSourceCorrection on;
parcelTypeId 2;
constantProperties
@ -40,21 +56,6 @@ constantProperties
Pr 0.7;
}
interpolationSchemes
{
rho cell;
mu cell;
U cellPoint;
Cp cell;
T cell;
}
integrationSchemes
{
U Euler;
T Analytical;
}
particleForces
{
gravity on;

View File

@ -15,14 +15,31 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
active true;
solution
{
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;
coupled true;
cellValueSourceCorrection on;
parcelTypeId 1;
constantProperties
@ -46,22 +63,6 @@ constantProperties
constantVolume false;
}
interpolationSchemes
{
rho cell;
U cellPoint;
mu cell;
T cell;
Cp cell;
p cell;
}
integrationSchemes
{
U Euler;
T Analytical;
}
particleForces
{
gravity on;

View File

@ -15,14 +15,31 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
active true;
solution
{
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;
coupled false;
cellValueSourceCorrection off;
parcelTypeId 1;
constantProperties
@ -46,22 +63,6 @@ constantProperties
constantVolume false;
}
interpolationSchemes
{
rho cell;
U cellPoint;
mu cell;
T cell;
Cp cell;
p cell;
}
integrationSchemes
{
U Euler;
T Euler;
}
particleForces
{
gravity on;

View File

@ -15,14 +15,31 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
active true;
solution
{
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;
coupled true;
cellValueSourceCorrection on;
parcelTypeId 1;
constantProperties
@ -46,22 +63,6 @@ constantProperties
constantVolume false;
}
interpolationSchemes
{
rho cell;
U cellPoint;
mu cell;
T cell;
Cp cell;
p cell;
}
integrationSchemes
{
U Euler;
T Analytical;
}
particleForces
{
gravity on;

View File

@ -15,14 +15,31 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
active false; // true;
solution
{
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;
coupled true;
cellValueSourceCorrection on;
parcelTypeId 1;
constantProperties
@ -44,22 +61,6 @@ constantProperties
poissonsRatio 0;
}
interpolationSchemes
{
rho cell;
U cell; // cellPoint;
mu cell;
T cell;
Cp cell;
p cell;
}
integrationSchemes
{
U Euler;
T Analytical;
}
particleForces
{
gravity on;

View File

@ -15,14 +15,31 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
active true;
solution
{
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;
coupled true;
cellValueSourceCorrection on;
parcelTypeId 1;
constantProperties
@ -44,22 +61,6 @@ constantProperties
constantVolume false;
}
interpolationSchemes
{
rho cell;
U cell; // cellPoint;
mu cell;
T cell;
Cp cell;
p cell;
}
integrationSchemes
{
U Euler;
T Analytical;
}
particleForces
{
gravity on;

View File

@ -15,14 +15,31 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
active true;
solution
{
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;
coupled true;
cellValueSourceCorrection on;
parcelTypeId 1;
constantProperties
@ -44,22 +61,6 @@ constantProperties
constantVolume false;
}
interpolationSchemes
{
rho cell;
U cell; // cellPoint;
mu cell;
T cell;
Cp cell;
p cell;
}
integrationSchemes
{
U Euler;
T Analytical;
}
particleForces
{
gravity on;

View File

@ -15,14 +15,31 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
active false; // true;
solution
{
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;
coupled true;
cellValueSourceCorrection on;
parcelTypeId 1;
constantProperties
@ -44,22 +61,6 @@ constantProperties
constantVolume false;
}
interpolationSchemes
{
rho cell;
U cell; // cellPoint;
mu cell;
T cell;
Cp cell;
p cell;
}
integrationSchemes
{
U Euler;
T Analytical;
}
particleForces
{
gravity on;

View File

@ -15,14 +15,31 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
active true;
solution
{
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;
coupled true;
cellValueSourceCorrection on;
parcelTypeId 1;
constantProperties
@ -44,22 +61,6 @@ constantProperties
constantVolume false;
}
interpolationSchemes
{
rho cell;
U cellPoint;
mu cell;
T cell;
Cp cell;
p cell;
}
integrationSchemes
{
U Euler;
T Analytical;
}
particleForces
{
gravity off;

View File

@ -15,11 +15,24 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
active true;
solution
{
active true;
coupled true;
cellValueSourceCorrection on;
coupled true;
interpolationSchemes
{
rho cell;
U cellPoint;
mu cell;
}
cellValueSourceCorrection on;
integrationSchemes
{
U Euler;
}
}
parcelTypeId 2;
@ -32,18 +45,6 @@ constantProperties
poissonsRatio 0.35;
}
interpolationSchemes
{
rho cell;
U cellPoint;
mu cell;
}
integrationSchemes
{
U Euler;
}
particleForces
{
gravity on;

View File

@ -15,14 +15,30 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
active true;
solution
{
active true;
coupled true;
cellValueSourceCorrection on;
interpolationSchemes
{
rho cell;
mu cell;
U cellPoint;
T cell;
Cp cell;
}
integrationSchemes
{
U Euler;
T Analytical;
}
}
radiation off;
coupled true;
cellValueSourceCorrection on;
parcelTypeId 1;
constantProperties
@ -40,21 +56,6 @@ constantProperties
Pr 0.7;
}
interpolationSchemes
{
rho cell;
mu cell;
U cellPoint;
T cell;
Cp cell;
}
integrationSchemes
{
U Euler;
T Analytical;
}
particleForces
{
gravity on;