lagrangian: Replace dummy "notImplemented" functions with abstract functions making base classes abstract

Make clone functions const and abstract in abstract base classes
Change copy constructors to take const argument
Make private data mutable where necessary
This commit is contained in:
Henry 2015-03-06 18:14:18 +00:00
parent 0aa276f1d8
commit 6884300a00
57 changed files with 284 additions and 1107 deletions

View file

@ -117,7 +117,7 @@ Foam::DispersionRASModel<CloudType>::DispersionRASModel
template<class CloudType>
Foam::DispersionRASModel<CloudType>::DispersionRASModel
(
DispersionRASModel<CloudType>& dm
const DispersionRASModel<CloudType>& dm
)
:
DispersionModel<CloudType>(dm),

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -59,13 +59,13 @@ protected:
const volScalarField* kPtr_;
//- Take ownership of the k field
bool ownK_;
mutable bool ownK_;
//- Turbulence epsilon
const volScalarField* epsilonPtr_;
//- Take ownership of the epsilon field
bool ownEpsilon_;
mutable bool ownEpsilon_;
// Protected Functions
@ -89,10 +89,10 @@ public:
DispersionRASModel(const dictionary& dict, CloudType& owner);
//- Construct copy
DispersionRASModel(DispersionRASModel<CloudType>& dm);
DispersionRASModel(const DispersionRASModel<CloudType>& dm);
//- Construct and return a clone
virtual autoPtr<DispersionModel<CloudType> > clone()
virtual autoPtr<DispersionModel<CloudType> > clone() const
{
return autoPtr<DispersionModel<CloudType> >
(

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -45,7 +45,7 @@ Foam::GradientDispersionRAS<CloudType>::GradientDispersionRAS
template<class CloudType>
Foam::GradientDispersionRAS<CloudType>::GradientDispersionRAS
(
GradientDispersionRAS<CloudType>& dm
const GradientDispersionRAS<CloudType>& dm
)
:
DispersionRASModel<CloudType>(dm),

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -75,10 +75,10 @@ public:
GradientDispersionRAS(const dictionary& dict, CloudType& owner);
//- Construct copy
GradientDispersionRAS(GradientDispersionRAS<CloudType>& dm);
GradientDispersionRAS(const GradientDispersionRAS<CloudType>& dm);
//- Construct and return a clone
virtual autoPtr<DispersionModel<CloudType> > clone()
virtual autoPtr<DispersionModel<CloudType> > clone() const
{
return autoPtr<DispersionModel<CloudType> >
(

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -41,7 +41,7 @@ Foam::StochasticDispersionRAS<CloudType>::StochasticDispersionRAS
template<class CloudType>
Foam::StochasticDispersionRAS<CloudType>::StochasticDispersionRAS
(
StochasticDispersionRAS<CloudType>& dm
const StochasticDispersionRAS<CloudType>& dm
)
:
DispersionRASModel<CloudType>(dm)

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -62,10 +62,10 @@ public:
StochasticDispersionRAS(const dictionary& dict, CloudType& owner);
//- Construct copy
StochasticDispersionRAS(StochasticDispersionRAS<CloudType>& dm);
StochasticDispersionRAS(const StochasticDispersionRAS<CloudType>& dm);
//- Construct and return a clone
virtual autoPtr<DispersionModel<CloudType> > clone()
virtual autoPtr<DispersionModel<CloudType> > clone() const
{
return autoPtr<DispersionModel<CloudType> >
(

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -36,6 +36,7 @@ namespace Foam
}
}
// * * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * //
void Foam::distributionModels::distributionModel::check() const
@ -89,50 +90,4 @@ Foam::distributionModels::distributionModel::~distributionModel()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
Foam::scalar Foam::distributionModels::distributionModel::sample() const
{
notImplemented
(
"Foam::scalar "
"Foam::distributionModels::distributionModel::sample() const"
);
return 0.0;
}
Foam::scalar Foam::distributionModels::distributionModel::minValue() const
{
notImplemented
(
"Foam::scalar "
"Foam::distributionModels::distributionModel::minValue() const"
);
return 0.0;
}
Foam::scalar Foam::distributionModels::distributionModel::maxValue() const
{
notImplemented
(
"Foam::scalar "
"Foam::distributionModels::distributionModel::maxValue() const"
);
return 0.0;
}
Foam::scalar Foam::distributionModels::distributionModel::meanValue() const
{
notImplemented
(
"Foam::scalar "
"Foam::distributionModels::distributionModel::meanValue() const"
);
return 0.0;
}
// ************************************************************************* //

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -121,10 +121,7 @@ public:
distributionModel(const distributionModel& p);
//- Construct and return a clone
virtual autoPtr<distributionModel> clone() const
{
return autoPtr<distributionModel>(new distributionModel(*this));
}
virtual autoPtr<distributionModel> clone() const = 0;
//- Selector
@ -142,16 +139,16 @@ public:
// Member Functions
//- Sample the distributionModel
virtual scalar sample() const;
virtual scalar sample() const = 0;
//- Return the minimum value
virtual scalar minValue() const;
virtual scalar minValue() const = 0;
//- Return the maximum value
virtual scalar maxValue() const;
virtual scalar maxValue() const = 0;
//- Return the maximum value
virtual scalar meanValue() const;
virtual scalar meanValue() const = 0;
};

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -54,38 +54,6 @@ Foam::IntegrationScheme<Type>::~IntegrationScheme()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class Type>
typename Foam::IntegrationScheme<Type>::integrationResult
Foam::IntegrationScheme<Type>::integrate
(
const Type& phi,
const scalar dt,
const Type& alphaBeta,
const scalar beta
) const
{
notImplemented
(
"Foam::IntegrationScheme<Type>::integrationResult"
"Foam::IntegrationScheme<Type>::integrate"
"("
"const Type&, "
"const scalar, "
"const Type&, "
"const scalar"
") const"
);
typename IntegrationScheme<Type>::integrationResult retValue;
retValue.average() = pTraits<Type>::zero;
retValue.value() = pTraits<Type>::zero;
return retValue;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#include "IntegrationSchemeNew.C"

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -154,13 +154,7 @@ public:
IntegrationScheme(const IntegrationScheme& is);
//- Construct and return clone
virtual autoPtr<IntegrationScheme<Type> > clone() const
{
return autoPtr<IntegrationScheme<Type> >
(
new IntegrationScheme<Type>(*this)
);
}
virtual autoPtr<IntegrationScheme<Type> > clone() const = 0;
// Selectors
@ -186,7 +180,7 @@ public:
const scalar dt,
const Type& alphaBeta,
const scalar beta
) const;
) const = 0;
};

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -47,7 +47,10 @@ Foam::CollisionModel<CloudType>::CollisionModel
template<class CloudType>
Foam::CollisionModel<CloudType>::CollisionModel(CollisionModel<CloudType>& cm)
Foam::CollisionModel<CloudType>::CollisionModel
(
const CollisionModel<CloudType>& cm
)
:
CloudSubModelBase<CloudType>(cm)
{}
@ -60,36 +63,6 @@ Foam::CollisionModel<CloudType>::~CollisionModel()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class CloudType>
Foam::label Foam::CollisionModel<CloudType>::nSubCycles() const
{
notImplemented
(
"Foam::label Foam::CollisionModel<CloudType>::nSubCycles() const"
);
return 0;
}
template<class CloudType>
bool Foam::CollisionModel<CloudType>::controlsWallInteraction() const
{
notImplemented
(
"bool Foam::CollisionModel<CloudType>::controlsWallInteraction()"
);
return false;
}
template<class CloudType>
void Foam::CollisionModel<CloudType>::collide()
{
notImplemented("void Foam::CollisionModel<CloudType>::collide()");
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#include "CollisionModelNew.C"

View file

@ -94,16 +94,10 @@ public:
);
//- Construct copy
CollisionModel(CollisionModel<CloudType>& cm);
CollisionModel(const CollisionModel<CloudType>& cm);
//- Construct and return a clone
virtual autoPtr<CollisionModel<CloudType> > clone()
{
return autoPtr<CollisionModel<CloudType> >
(
new CollisionModel<CloudType>(*this)
);
}
virtual autoPtr<CollisionModel<CloudType> > clone() const = 0;
//- Destructor
@ -122,14 +116,14 @@ public:
//- Return the number of times to subcycle the current
// timestep to meet the criteria of the collision model
virtual label nSubCycles() const;
virtual label nSubCycles() const = 0;
//- Indicates whether model determines wall collisions or not,
// used to determine what value to use for wallImpactDistance
virtual bool controlsWallInteraction() const;
virtual bool controlsWallInteraction() const = 0;
// Collision function
virtual void collide();
virtual void collide() = 0;
};

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -41,7 +41,7 @@ Foam::NoCollision<CloudType>::NoCollision
template<class CloudType>
Foam::NoCollision<CloudType>::NoCollision
(
NoCollision<CloudType>& cm
const NoCollision<CloudType>& cm
)
:
CollisionModel<CloudType>(cm)

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -64,10 +64,10 @@ public:
NoCollision(const dictionary& dict, CloudType& owner);
//- Construct copy
NoCollision(NoCollision<CloudType>& cm);
NoCollision(const NoCollision<CloudType>& cm);
//- Construct and return a clone
virtual autoPtr<CollisionModel<CloudType> > clone()
virtual autoPtr<CollisionModel<CloudType> > clone() const
{
return autoPtr<CollisionModel<CloudType> >
(

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -597,13 +597,17 @@ Foam::PairCollision<CloudType>::PairCollision
template<class CloudType>
Foam::PairCollision<CloudType>::PairCollision(PairCollision<CloudType>& cm)
Foam::PairCollision<CloudType>::PairCollision
(
const PairCollision<CloudType>& cm
)
:
CollisionModel<CloudType>(cm),
pairModel_(NULL),
wallModel_(NULL),
il_(cm.owner().mesh())
{
// Need to clone to PairModel and WallModel
notImplemented
(
"Foam::PairCollision<CloudType>::PairCollision"

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -151,10 +151,10 @@ public:
PairCollision(const dictionary& dict, CloudType& owner);
//- Construct copy
PairCollision(PairCollision<CloudType>& cm);
PairCollision(const PairCollision<CloudType>& cm);
//- Construct and return a clone
virtual autoPtr<CollisionModel<CloudType> > clone()
virtual autoPtr<CollisionModel<CloudType> > clone() const
{
return autoPtr<CollisionModel<CloudType> >
(

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -49,7 +49,7 @@ Foam::DispersionModel<CloudType>::DispersionModel
template<class CloudType>
Foam::DispersionModel<CloudType>::DispersionModel
(
DispersionModel<CloudType>& dm
const DispersionModel<CloudType>& dm
)
:
CloudSubModelBase<CloudType>(dm)
@ -63,36 +63,6 @@ Foam::DispersionModel<CloudType>::~DispersionModel()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class CloudType>
Foam::vector Foam::DispersionModel<CloudType>::update
(
const scalar,
const label,
const vector&,
const vector& Uc,
vector&,
scalar&
)
{
notImplemented
(
"Foam::vector Foam::DispersionModel<CloudType>::update"
"("
"const scalar, "
"const label, "
"const vector&, "
"const vector&, "
"vector&, "
"scalar&"
")"
);
return Uc;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#include "DispersionModelNew.C"

View file

@ -85,16 +85,10 @@ public:
);
//- Construct copy
DispersionModel(DispersionModel<CloudType>& dm);
DispersionModel(const DispersionModel<CloudType>& dm);
//- Construct and return a clone
virtual autoPtr<DispersionModel<CloudType> > clone()
{
return autoPtr<DispersionModel<CloudType> >
(
new DispersionModel<CloudType>(*this)
);
}
virtual autoPtr<DispersionModel<CloudType> > clone() const = 0;
//- Destructor
@ -120,7 +114,7 @@ public:
const vector& Uc,
vector& UTurb,
scalar& tTurb
);
) = 0;
};

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -35,7 +35,7 @@ Foam::NoDispersion<CloudType>::NoDispersion(const dictionary&, CloudType& owner)
template<class CloudType>
Foam::NoDispersion<CloudType>::NoDispersion(NoDispersion<CloudType>& dm)
Foam::NoDispersion<CloudType>::NoDispersion(const NoDispersion<CloudType>& dm)
:
DispersionModel<CloudType>(dm.owner_)
{}

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -60,10 +60,10 @@ public:
NoDispersion(const dictionary& dict, CloudType& owner);
//- Construct copy
NoDispersion(NoDispersion<CloudType>& dm);
NoDispersion(const NoDispersion<CloudType>& dm);
//- Construct and return a clone
virtual autoPtr<DispersionModel<CloudType> > clone()
virtual autoPtr<DispersionModel<CloudType> > clone() const
{
return autoPtr<DispersionModel<CloudType> >
(

View file

@ -32,18 +32,6 @@ using namespace Foam::constant::mathematical;
// * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * * //
template<class CloudType>
bool Foam::InjectionModel<CloudType>::validInjection(const label parcelI)
{
notImplemented
(
"bool Foam::InjectionModel<CloudType>::validInjection(const label)"
);
return false;
}
template<class CloudType>
bool Foam::InjectionModel<CloudType>::prepareForNextTimeStep
(
@ -419,58 +407,6 @@ void Foam::InjectionModel<CloudType>::updateMesh()
}
template<class CloudType>
Foam::scalar Foam::InjectionModel<CloudType>::timeEnd() const
{
notImplemented
(
"Foam::scalar Foam::InjectionModel<CloudType>::timeEnd() const"
);
return 0.0;
}
template<class CloudType>
Foam::label Foam::InjectionModel<CloudType>::parcelsToInject
(
const scalar time0,
const scalar time1
)
{
notImplemented
(
"Foam::label Foam::InjectionModel<CloudType>::parcelsToInject"
"("
"const scalar, "
"const scalar"
")"
);
return 0;
}
template<class CloudType>
Foam::scalar Foam::InjectionModel<CloudType>::volumeToInject
(
const scalar time0,
const scalar time1
)
{
notImplemented
(
"Foam::scalar Foam::InjectionModel<CloudType>::volumeToInject"
"("
"const scalar, "
"const scalar"
")"
);
return 0.0;
}
template<class CloudType>
Foam::scalar Foam::InjectionModel<CloudType>::averageParcelMass()
{
@ -710,68 +646,6 @@ void Foam::InjectionModel<CloudType>::injectSteadyState
}
template<class CloudType>
void Foam::InjectionModel<CloudType>::setPositionAndCell
(
const label parcelI,
const label nParcels,
const scalar time,
vector& position,
label& cellOwner,
label& tetFaceI,
label& tetPtI
)
{
notImplemented
(
"void Foam::InjectionModel<CloudType>::setPositionAndCell"
"("
"const label, "
"const label, "
"const scalar, "
"vector&, "
"label&, "
"label&, "
"label&"
")"
);
}
template<class CloudType>
void Foam::InjectionModel<CloudType>::setProperties
(
const label parcelI,
const label nParcels,
const scalar time,
typename CloudType::parcelType& parcel
)
{
notImplemented
(
"void Foam::InjectionModel<CloudType>::setProperties"
"("
"const label, "
"const label, "
"const scalar, "
"typename CloudType::parcelType&"
")"
);
}
template<class CloudType>
bool Foam::InjectionModel<CloudType>::fullyDescribed() const
{
notImplemented
(
"bool Foam::InjectionModel<CloudType>::fullyDescribed() const"
);
return false;
}
template<class CloudType>
void Foam::InjectionModel<CloudType>::info(Ostream& os)
{

View file

@ -143,7 +143,7 @@ protected:
//- Additional flag to identify whether or not injection of parcelI is
// permitted
virtual bool validInjection(const label parcelI);
virtual bool validInjection(const label parcelI) = 0;
//- Determine properties for next time step/injection interval
virtual bool prepareForNextTimeStep
@ -220,13 +220,7 @@ public:
InjectionModel(const InjectionModel<CloudType>& im);
//- Construct and return a clone
virtual autoPtr<InjectionModel<CloudType> > clone() const
{
return autoPtr<InjectionModel<CloudType> >
(
new InjectionModel<CloudType>(*this)
);
}
virtual autoPtr<InjectionModel<CloudType> > clone() const = 0;
//- Destructor
@ -275,21 +269,21 @@ public:
inline scalar massInjected() const;
//- Return the end-of-injection time
virtual scalar timeEnd() const;
virtual scalar timeEnd() const = 0;
//- Number of parcels to introduce relative to SOI
virtual label parcelsToInject
(
const scalar time0,
const scalar time1
);
) = 0;
//- Volume of parcels to introduce relative to SOI
virtual scalar volumeToInject
(
const scalar time0,
const scalar time1
);
) = 0;
//- Return the average parcel mass over the injection period
virtual scalar averageParcelMass();
@ -327,7 +321,7 @@ public:
label& cellOwner,
label& tetFaceI,
label& tetPtI
);
) = 0;
//- Set the parcel properties
virtual void setProperties
@ -336,10 +330,10 @@ public:
const label nParcels,
const scalar time,
parcelType& parcel
);
) = 0;
//- Flag to identify whether model fully describes the parcel
virtual bool fullyDescribed() const;
virtual bool fullyDescribed() const = 0;
// I-O

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -144,59 +144,60 @@ public:
inline scalar& mDot();
// Friend Operators
friend bool operator==
(
const kinematicParcelInjectionData& a,
const kinematicParcelInjectionData& b
)
{
notImplemented
(
"operator=="
"("
"const kinematicParcelInjectionData&, "
"const kinematicParcelInjectionData&"
")"
);
return false;
}
friend bool operator!=
(
const kinematicParcelInjectionData& a,
const kinematicParcelInjectionData& b
)
{
notImplemented
(
"operator=="
"("
"const kinematicParcelInjectionData&, "
"const kinematicParcelInjectionData&"
")"
);
return false;
}
// I-O
// Friend Operators
//- Ostream operator
friend Ostream& operator<<
(
Ostream& os,
const kinematicParcelInjectionData& data
);
friend bool operator==
(
const kinematicParcelInjectionData& a,
const kinematicParcelInjectionData& b
)
{
notImplemented
(
"operator=="
"("
"const kinematicParcelInjectionData&, "
"const kinematicParcelInjectionData&"
")"
);
return false;
}
friend bool operator!=
(
const kinematicParcelInjectionData& a,
const kinematicParcelInjectionData& b
)
{
notImplemented
(
"operator=="
"("
"const kinematicParcelInjectionData&, "
"const kinematicParcelInjectionData&"
")"
);
return false;
}
//- Ostream operator
friend Ostream& operator<<
(
Ostream& os,
const kinematicParcelInjectionData& data
);
//- Istream operator
friend Istream& operator>>
(
Istream& is,
kinematicParcelInjectionData& data
);
//- Istream operator
friend Istream& operator>>
(
Istream& is,
kinematicParcelInjectionData& data
);
};

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -25,18 +25,6 @@ License
#include "StochasticCollisionModel.H"
// * * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * //
template<class CloudType>
void Foam::StochasticCollisionModel<CloudType>::collide(const scalar dt)
{
notImplemented
(
"void Foam::NoStochasticCollision<CloudType>::collide(const scalar)"
);
}
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
template<class CloudType>

View file

@ -58,7 +58,7 @@ class StochasticCollisionModel
protected:
//- Main collision routine
virtual void collide(const scalar dt);
virtual void collide(const scalar dt) = 0;
public:
@ -97,13 +97,7 @@ public:
StochasticCollisionModel(const StochasticCollisionModel<CloudType>& cm);
//- Construct and return a clone
virtual autoPtr<StochasticCollisionModel<CloudType> > clone() const
{
return autoPtr<StochasticCollisionModel<CloudType> >
(
new StochasticCollisionModel<CloudType>(*this)
);
}
virtual autoPtr<StochasticCollisionModel<CloudType> > clone() const = 0;
//- Destructor

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -99,28 +99,6 @@ Foam::SurfaceFilmModel<CloudType>::~SurfaceFilmModel()
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class CloudType>
bool Foam::SurfaceFilmModel<CloudType>::transferParcel
(
parcelType& p,
const polyPatch& pp,
bool& keepParticle
)
{
notImplemented
(
"bool Foam::SurfaceFilmModel<CloudType>::transferParcel"
"("
"parcelType&, "
"const polyPatch&, "
"bool&"
")"
);
return false;
}
template<class CloudType>
template<class TrackData>
void Foam::SurfaceFilmModel<CloudType>::inject(TrackData& td)

View file

@ -161,13 +161,7 @@ public:
SurfaceFilmModel(const SurfaceFilmModel<CloudType>& sfm);
//- Construct and return a clone
virtual autoPtr<SurfaceFilmModel<CloudType> > clone() const
{
return autoPtr<SurfaceFilmModel<CloudType> >
(
new SurfaceFilmModel<CloudType>(*this)
);
}
virtual autoPtr<SurfaceFilmModel<CloudType> > clone() const = 0;
//- Destructor
@ -215,7 +209,7 @@ public:
parcelType& p,
const polyPatch& pp,
bool& keepParticle
);
) = 0;
//- Inject parcels into the cloud
template<class TrackData>

View file

@ -298,55 +298,6 @@ Foam::scalarField Foam::CompositionModel<CloudType>::X
}
template<class CloudType>
const Foam::scalarField& Foam::CompositionModel<CloudType>::YMixture0() const
{
notImplemented
(
"const scalarField& Foam::CompositionModel<CloudType>::YMixture0() "
"const"
);
return scalarField::null();
}
template<class CloudType>
Foam::label Foam::CompositionModel<CloudType>::idGas() const
{
notImplemented
(
"Foam::label Foam::CompositionModel<CloudType>::idGas() const"
);
return -1;
}
template<class CloudType>
Foam::label Foam::CompositionModel<CloudType>::idLiquid() const
{
notImplemented
(
"Foam::label Foam::CompositionModel<CloudType>::idLiquid() const"
);
return -1;
}
template<class CloudType>
Foam::label Foam::CompositionModel<CloudType>::idSolid() const
{
notImplemented
(
"Foam::label Foam::CompositionModel<CloudType>::idSolid() const"
);
return -1;
}
template<class CloudType>
Foam::scalar Foam::CompositionModel<CloudType>::H
(

View file

@ -107,13 +107,7 @@ public:
CompositionModel(const CompositionModel<CloudType>& cm);
//- Construct and return a clone
virtual autoPtr<CompositionModel<CloudType> > clone() const
{
return autoPtr<CompositionModel<CloudType> >
(
new CompositionModel<CloudType>(*this)
);
}
virtual autoPtr<CompositionModel<CloudType> > clone() const = 0;
//- Destructor
@ -201,19 +195,19 @@ public:
//- Return the list of mixture mass fractions
// If only 1 phase, return component fractions of that phase
virtual const scalarField& YMixture0() const;
virtual const scalarField& YMixture0() const = 0;
// Indices of gas, liquid and solid phases in phase properties
// list - returns -1 if not applicable
//- Gas id
virtual label idGas() const;
virtual label idGas() const = 0;
//- Liquid id
virtual label idLiquid() const;
virtual label idLiquid() const = 0;
//- Solid id
virtual label idSolid() const;
virtual label idSolid() const = 0;
// Evaluation

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -55,5 +55,34 @@ Foam::NoComposition<CloudType>::~NoComposition()
{}
// ************************************************************************* //
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class CloudType>
const Foam::scalarField& Foam::NoComposition<CloudType>::YMixture0() const
{
return scalarField::null();
}
template<class CloudType>
Foam::label Foam::NoComposition<CloudType>::idGas() const
{
return -1;
}
template<class CloudType>
Foam::label Foam::NoComposition<CloudType>::idLiquid() const
{
return -1;
}
template<class CloudType>
Foam::label Foam::NoComposition<CloudType>::idSolid() const
{
return -1;
}
// ************************************************************************* //

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -78,6 +78,29 @@ public:
//- Destructor
virtual ~NoComposition();
// Member Functions
// Access
// Mixture properties
//- Return the list of mixture mass fractions
// If only 1 phase, return component fractions of that phase
virtual const scalarField& YMixture0() const;
// Indices of gas, liquid and solid phases in phase properties
// list
//- Gas id
virtual label idGas() const;
//- Liquid id
virtual label idLiquid() const;
//- Solid id
virtual label idSolid() const;
};

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -158,30 +158,6 @@ Foam::SingleMixtureFraction<CloudType>::~SingleMixtureFraction()
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class CloudType>
const Foam::scalarField&
Foam::SingleMixtureFraction<CloudType>::YGas0() const
{
return this->phaseProps()[idGas_].Y();
}
template<class CloudType>
const Foam::scalarField&
Foam::SingleMixtureFraction<CloudType>::YLiquid0() const
{
return this->phaseProps()[idLiquid_].Y();
}
template<class CloudType>
const Foam::scalarField&
Foam::SingleMixtureFraction<CloudType>::YSolid0() const
{
return this->phaseProps()[idSolid_].Y();
}
template<class CloudType>
const Foam::scalarField&
Foam::SingleMixtureFraction<CloudType>::YMixture0() const
@ -212,4 +188,3 @@ Foam::label Foam::SingleMixtureFraction<CloudType>::idSolid() const
// ************************************************************************* //

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -110,33 +110,6 @@ public:
// Access
// Gas properties
//- Return the list of gas mass fractions
const scalarField& YGas0() const;
//- Return the total gas mass fraction
scalar YGasTot0() const;
// Liquid properties
//- Return the list of liquid mass fractions
const scalarField& YLiquid0() const;
//- Return the total liquid mass fraction
scalar YLiquidTot0() const;
// Solid properties
//- Return the list of solid mass fractions
const scalarField& YSolid0() const;
//- Return the total solid mass fraction
scalar YSolidTot0() const;
// Mixture properties
//- Return the list of mixture mass fractions

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -113,45 +113,6 @@ Foam::SinglePhaseMixture<CloudType>::~SinglePhaseMixture()
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class CloudType>
const Foam::scalarField&
Foam::SinglePhaseMixture<CloudType>::YGas0() const
{
notImplemented
(
"const Foam::scalarField& "
"Foam::SinglePhaseMixture<CloudType>::YGas0() const"
);
return this->phaseProps()[0].Y();
}
template<class CloudType>
const Foam::scalarField&
Foam::SinglePhaseMixture<CloudType>::YLiquid0() const
{
notImplemented
(
"const Foam::scalarField& "
"Foam::SinglePhaseMixture<CloudType>::YLiquid0() const"
);
return this->phaseProps()[0].Y();
}
template<class CloudType>
const Foam::scalarField&
Foam::SinglePhaseMixture<CloudType>::YSolid0() const
{
notImplemented
(
"const Foam::scalarField& "
"Foam::SinglePhaseMixture<CloudType>::YSolid0() const"
);
return this->phaseProps()[0].Y();
}
template<class CloudType>
const Foam::scalarField&
Foam::SinglePhaseMixture<CloudType>::YMixture0() const
@ -182,4 +143,3 @@ Foam::label Foam::SinglePhaseMixture<CloudType>::idSolid() const
// ************************************************************************* //

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -104,33 +104,6 @@ public:
// Access
// Gas properties
//- Return the list of gas mass fractions
const scalarField& YGas0() const;
//- Return the total gas mass fraction
scalar YGasTot0() const;
// Liquid properties
//- Return the list of liquid mass fractions
const scalarField& YLiquid0() const;
//- Return the total liquid mass fraction
scalar YLiquidTot0() const;
// Solid properties
//- Return the list of solid mass fractions
const scalarField& YSolid0() const;
//- Return the total solid mass fraction
scalar YSolidTot0() const;
// Mixture properties
//- Return the list of mixture mass fractions

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -111,57 +111,19 @@ public:
// I-O
// Friend Operators
//- Ostream operator
friend Ostream& operator<<
(
Ostream& os,
const reactingParcelInjectionData& data
);
friend bool operator==
(
const reactingParcelInjectionData& a,
const reactingParcelInjectionData& b
)
{
notImplemented
(
"operator=="
"("
"const reactingParcelInjectionData&, "
"const reactingParcelInjectionData&"
")"
);
return false;
}
friend bool operator!=
(
const reactingParcelInjectionData& a,
const reactingParcelInjectionData& b
)
{
notImplemented
(
"operator=="
"("
"const reactingParcelInjectionData&, "
"const reactingParcelInjectionData&"
")"
);
return false;
}
//- Ostream operator
friend Ostream& operator<<
(
Ostream& os,
const reactingParcelInjectionData& data
);
//- Istream operator
friend Istream& operator>>
(
Istream& is,
reactingParcelInjectionData& data
);
//- Istream operator
friend Istream& operator>>
(
Istream& is,
reactingParcelInjectionData& data
);
};

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -71,40 +71,6 @@ Foam::DevolatilisationModel<CloudType>::~DevolatilisationModel()
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class CloudType>
void Foam::DevolatilisationModel<CloudType>::calculate
(
const scalar,
const scalar,
const scalar,
const scalar,
const scalar,
const scalarField&,
const scalarField&,
const scalarField&,
label&,
scalarField&
) const
{
notImplemented
(
"void Foam::DevolatilisationModel<CloudType>::calculate"
"("
"const scalar, "
"const scalar, "
"const scalar, "
"const scalar, "
"const scalar, "
"const scalarField&, "
"const scalarField&, "
"const scalarField&, "
"label&, "
"scalarField&"
") const"
);
}
template<class CloudType>
void Foam::DevolatilisationModel<CloudType>::addToDevolatilisationMass
(

View file

@ -99,13 +99,7 @@ public:
DevolatilisationModel(const DevolatilisationModel<CloudType>& dm);
//- Construct and return a clone
virtual autoPtr<DevolatilisationModel<CloudType> > clone() const
{
return autoPtr<DevolatilisationModel<CloudType> >
(
new DevolatilisationModel<CloudType>(*this)
);
}
virtual autoPtr<DevolatilisationModel<CloudType> > clone() const = 0;
//- Destructor
@ -135,7 +129,7 @@ public:
const scalarField& YSolidEff,
label& canCombust,
scalarField& dMassDV
) const;
) const = 0;
//- Add to devolatilisation mass
void addToDevolatilisationMass(const scalar dMass);

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -75,7 +75,7 @@ void Foam::NoDevolatilisation<CloudType>::calculate
const scalarField&,
const scalarField&,
const scalarField&,
bool& canCombust,
label& canCombust,
scalarField&
) const
{

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -92,7 +92,7 @@ public:
const scalarField& YGasEff,
const scalarField& YLiquidEff,
const scalarField& YSolidEff,
bool& canCombust,
label& canCombust,
scalarField& dMassDV
) const;
};

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -128,57 +128,19 @@ public:
// I-O
// Friend Operators
//- Ostream operator
friend Ostream& operator<<
(
Ostream& os,
const reactingMultiphaseParcelInjectionData& data
);
friend bool operator==
(
const reactingMultiphaseParcelInjectionData& a,
const reactingMultiphaseParcelInjectionData& b
)
{
notImplemented
(
"operator=="
"("
"const reactingMultiphaseParcelInjectionData&, "
"const reactingMultiphaseParcelInjectionData&"
")"
);
return false;
}
friend bool operator!=
(
const reactingMultiphaseParcelInjectionData& a,
const reactingMultiphaseParcelInjectionData& b
)
{
notImplemented
(
"operator=="
"("
"const reactingMultiphaseParcelInjectionData&, "
"const reactingMultiphaseParcelInjectionData&"
")"
);
return false;
}
//- Ostream operator
friend Ostream& operator<<
(
Ostream& os,
const reactingMultiphaseParcelInjectionData& data
);
//- Istream operator
friend Istream& operator>>
(
Istream& is,
reactingMultiphaseParcelInjectionData& data
);
//- Istream operator
friend Istream& operator>>
(
Istream& is,
reactingMultiphaseParcelInjectionData& data
);
};

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -71,56 +71,6 @@ Foam::SurfaceReactionModel<CloudType>::~SurfaceReactionModel()
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class CloudType>
Foam::scalar Foam::SurfaceReactionModel<CloudType>::calculate
(
const scalar,
const label,
const scalar,
const scalar,
const scalar,
const scalar,
const scalar,
const scalar,
const scalarField&,
const scalarField&,
const scalarField&,
const scalarField&,
const scalar,
scalarField&,
scalarField&,
scalarField&,
scalarField&
) const
{
notImplemented
(
"Foam::scalar Foam::SurfaceReactionModel<CloudType>::calculate"
"("
"const scalar, "
"const label, "
"const scalar, "
"const scalar, "
"const scalar, "
"const scalar, "
"const scalar, "
"const scalar, "
"const scalarField&, "
"const scalarField&, "
"const scalarField&, "
"const scalarField&, "
"const scalar, "
"scalarField&, "
"scalarField&, "
"scalarField&, "
"scalarField&"
") const"
);
return 0.0;
}
template<class CloudType>
void Foam::SurfaceReactionModel<CloudType>::addToSurfaceReactionMass
(
@ -152,4 +102,3 @@ void Foam::SurfaceReactionModel<CloudType>::info(Ostream& os)
#include "SurfaceReactionModelNew.C"
// ************************************************************************* //

View file

@ -101,13 +101,7 @@ public:
SurfaceReactionModel(const SurfaceReactionModel<CloudType>& srm);
//- Construct and return a clone
virtual autoPtr<SurfaceReactionModel<CloudType> > clone() const
{
return autoPtr<SurfaceReactionModel<CloudType> >
(
new SurfaceReactionModel<CloudType>(*this)
);
}
virtual autoPtr<SurfaceReactionModel<CloudType> > clone() const = 0;
//- Destructor
@ -145,7 +139,7 @@ public:
scalarField& dMassLiquid,
scalarField& dMassSolid,
scalarField& dMassSRCarrier
) const;
) const = 0;
//- Add to devolatilisation mass
void addToSurfaceReactionMass(const scalar dMass);

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -75,26 +75,6 @@ const Foam::Switch& Foam::HeatTransferModel<CloudType>::BirdCorrection() const
}
template<class CloudType>
Foam::scalar Foam::HeatTransferModel<CloudType>::Nu
(
const scalar Re,
const scalar Pr
) const
{
notImplemented
(
"Foam::scalar Foam::HeatTransferModel<CloudType>::Nu"
"("
"const scalar, "
"const scalar"
") const"
);
return 0.0;
}
template<class CloudType>
Foam::scalar Foam::HeatTransferModel<CloudType>::htc
(
@ -126,6 +106,4 @@ Foam::scalar Foam::HeatTransferModel<CloudType>::htc
#include "HeatTransferModelNew.C"
// ************************************************************************* //

View file

@ -97,13 +97,7 @@ public:
HeatTransferModel(const HeatTransferModel<CloudType>& htm);
//- Construct and return a clone
virtual autoPtr<HeatTransferModel<CloudType> > clone() const
{
return autoPtr<HeatTransferModel<CloudType> >
(
new HeatTransferModel<CloudType>(*this)
);
}
virtual autoPtr<HeatTransferModel<CloudType> > clone() const = 0;
//- Destructor
@ -133,7 +127,7 @@ public:
(
const scalar Re,
const scalar Pr
) const;
) const = 0;
//- Return heat transfer coefficient
virtual scalar htc

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -119,57 +119,19 @@ public:
// I-O
// Friend Operators
//- Ostream operator
friend Ostream& operator<<
(
Ostream& os,
const thermoParcelInjectionData& data
);
friend bool operator==
(
const thermoParcelInjectionData& a,
const thermoParcelInjectionData& b
)
{
notImplemented
(
"operator=="
"("
"const thermoParcelInjectionData&, "
"const thermoParcelInjectionData&"
")"
);
return false;
}
friend bool operator!=
(
const thermoParcelInjectionData& a,
const thermoParcelInjectionData& b
)
{
notImplemented
(
"operator=="
"("
"const thermoParcelInjectionData&, "
"const thermoParcelInjectionData&"
")"
);
return false;
}
//- Ostream operator
friend Ostream& operator<<
(
Ostream& os,
const thermoParcelInjectionData& data
);
//- Istream operator
friend Istream& operator>>
(
Istream& is,
thermoParcelInjectionData& data
);
//- Istream operator
friend Istream& operator>>
(
Istream& is,
thermoParcelInjectionData& data
);
};

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -254,7 +254,7 @@ public:
ThermoSurfaceFilm(const ThermoSurfaceFilm<CloudType>& sfm);
//- Construct and return a clone using supplied owner cloud
virtual autoPtr<SurfaceFilmModel<CloudType> > clone()
virtual autoPtr<SurfaceFilmModel<CloudType> > clone() const
{
return autoPtr<SurfaceFilmModel<CloudType> >
(

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -68,19 +68,6 @@ Foam::AtomizationModel<CloudType>::~AtomizationModel()
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class CloudType>
Foam::scalar Foam::AtomizationModel<CloudType>::initLiquidCore() const
{
notImplemented
(
"Foam::scalar "
"Foam::AtomizationModel<CloudType>::initLiquidCore() const"
);
return 0.0;
}
template<class CloudType>
Foam::scalar Foam::AtomizationModel<CloudType>::Taverage
(
@ -92,62 +79,8 @@ Foam::scalar Foam::AtomizationModel<CloudType>::Taverage
}
template<class CloudType>
bool Foam::AtomizationModel<CloudType>::calcChi() const
{
notImplemented("bool Foam::AtomizationModel<CloudType>::calcChi()");
return false;
}
template<class CloudType>
void Foam::AtomizationModel<CloudType>::update
(
const scalar dt,
scalar& d,
scalar& liquidCore,
scalar& tc,
const scalar rho,
const scalar mu,
const scalar sigma,
const scalar volFlowRate,
const scalar rhoAv,
const scalar Urel,
const vector& pos,
const vector& injectionPos,
const scalar pAmbient,
const scalar chi,
cachedRandom& rndGen
) const
{
notImplemented
(
"void Foam::AtomizationModel<CloudType>::update"
"("
"const scalar, "
"scalar&, "
"scalar&, "
"scalar&, "
"const scalar, "
"const scalar, "
"const scalar, "
"const scalar, "
"const scalar, "
"const scalar, "
"const vector&, "
"const vector&, "
"const scalar, "
"const scalar, "
"cachedRandom&"
") const"
);
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#include "AtomizationModelNew.C"
// ************************************************************************* //

View file

@ -91,13 +91,7 @@ public:
AtomizationModel(const AtomizationModel<CloudType>& am);
//- Construct and return a clone
virtual autoPtr<AtomizationModel<CloudType> > clone() const
{
return autoPtr<AtomizationModel<CloudType> >
(
new AtomizationModel<CloudType>(*this)
);
}
virtual autoPtr<AtomizationModel<CloudType> > clone() const = 0;
//- Destructor
@ -114,14 +108,14 @@ public:
// Member Functions
//- Initial value of liquidCore
virtual scalar initLiquidCore() const;
//- Average temperature calculation
scalar Taverage(const scalar& Tliq, const scalar& Tc) const;
//- Initial value of liquidCore
virtual scalar initLiquidCore() const = 0;
//- Flag to indicate if chi needs to be calculated
virtual bool calcChi() const;
virtual bool calcChi() const = 0;
virtual void update
(
@ -140,7 +134,7 @@ public:
const scalar pAmbient,
const scalar chi,
cachedRandom& rndGen
) const;
) const = 0;
};

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -94,66 +94,6 @@ Foam::BreakupModel<CloudType>::~BreakupModel()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
template<class CloudType>
bool Foam::BreakupModel<CloudType>::update
(
const scalar dt,
const vector& g,
scalar& d,
scalar& tc,
scalar& ms,
scalar& nParticle,
scalar& KHindex,
scalar& y,
scalar& yDot,
const scalar d0,
const scalar rho,
const scalar mu,
const scalar sigma,
const vector& U,
const scalar rhoc,
const scalar muc,
const vector& Urel,
const scalar Urmag,
const scalar tMom,
scalar& dChild,
scalar& massChild
)
{
notImplemented
(
"bool Foam::BreakupModel<CloudType>::update"
"("
"const scalar, "
"const vector&, "
"scalar&, "
"scalar&, "
"scalar&, "
"scalar&, "
"scalar&, "
"scalar&, "
"scalar&, "
"const scalar, "
"const scalar, "
"const scalar, "
"const scalar, "
"const vector&, "
"const scalar, "
"const scalar, "
"const vector&, "
"const scalar, "
"const scalar, "
"scalar&, "
"scalar&"
");"
);
return false;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#include "BreakupModelNew.C"

View file

@ -106,13 +106,7 @@ public:
BreakupModel(const BreakupModel<CloudType>& bum);
//- Construct and return a clone
virtual autoPtr<BreakupModel<CloudType> > clone() const
{
return autoPtr<BreakupModel<CloudType> >
(
new BreakupModel<CloudType>(*this)
);
}
virtual autoPtr<BreakupModel<CloudType> > clone() const = 0;
//- Destructor
@ -187,7 +181,7 @@ public:
const scalar tMom,
scalar& dChild,
scalar& massChild
);
) = 0;
};

View file

@ -120,7 +120,7 @@ Foam::DispersionRASModel<CloudType>::DispersionRASModel
template<class CloudType>
Foam::DispersionRASModel<CloudType>::DispersionRASModel
(
DispersionRASModel<CloudType>& dm
const DispersionRASModel<CloudType>& dm
)
:
DispersionModel<CloudType>(dm),

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -59,13 +59,13 @@ protected:
const volScalarField* kPtr_;
//- Take ownership of the k field
bool ownK_;
mutable bool ownK_;
//- Turbulence epsilon
const volScalarField* epsilonPtr_;
//- Take ownership of the epsilon field
bool ownEpsilon_;
mutable bool ownEpsilon_;
// Protected Functions
@ -89,16 +89,10 @@ public:
DispersionRASModel(const dictionary& dict, CloudType& owner);
//- Construct copy
DispersionRASModel(DispersionRASModel<CloudType>& dm);
DispersionRASModel(const DispersionRASModel<CloudType>& dm);
//- Construct and return a clone
virtual autoPtr<DispersionModel<CloudType> > clone()
{
return autoPtr<DispersionModel<CloudType> >
(
new DispersionRASModel<CloudType>(*this)
);
}
virtual autoPtr<DispersionModel<CloudType> > clone() const = 0;
//- Destructor
@ -107,6 +101,17 @@ public:
// Member Functions
//- Update (disperse particles)
virtual vector update
(
const scalar dt,
const label cellI,
const vector& U,
const vector& Uc,
vector& UTurb,
scalar& tTurb
) = 0;
//- Cache carrier fields
virtual void cacheFields(const bool store);

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -45,7 +45,7 @@ Foam::GradientDispersionRAS<CloudType>::GradientDispersionRAS
template<class CloudType>
Foam::GradientDispersionRAS<CloudType>::GradientDispersionRAS
(
GradientDispersionRAS<CloudType>& dm
const GradientDispersionRAS<CloudType>& dm
)
:
DispersionRASModel<CloudType>(dm),

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -60,7 +60,7 @@ protected:
const volVectorField* gradkPtr_;
//- Take ownership of the grad(k)
bool ownGradK_;
mutable bool ownGradK_;
public:
@ -75,10 +75,10 @@ public:
GradientDispersionRAS(const dictionary& dict, CloudType& owner);
//- Construct copy
GradientDispersionRAS(GradientDispersionRAS<CloudType>& dm);
GradientDispersionRAS(const GradientDispersionRAS<CloudType>& dm);
//- Construct and return a clone
virtual autoPtr<DispersionModel<CloudType> > clone()
virtual autoPtr<DispersionModel<CloudType> > clone() const
{
return autoPtr<DispersionModel<CloudType> >
(

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -41,7 +41,7 @@ Foam::StochasticDispersionRAS<CloudType>::StochasticDispersionRAS
template<class CloudType>
Foam::StochasticDispersionRAS<CloudType>::StochasticDispersionRAS
(
StochasticDispersionRAS<CloudType>& dm
const StochasticDispersionRAS<CloudType>& dm
)
:
DispersionRASModel<CloudType>(dm)

View file

@ -2,7 +2,7 @@
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration |
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
\\ / A nd | Copyright (C) 2011-2015 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
@ -62,10 +62,10 @@ public:
StochasticDispersionRAS(const dictionary& dict, CloudType& owner);
//- Construct copy
StochasticDispersionRAS(StochasticDispersionRAS<CloudType>& dm);
StochasticDispersionRAS(const StochasticDispersionRAS<CloudType>& dm);
//- Construct and return a clone
virtual autoPtr<DispersionModel<CloudType> > clone()
virtual autoPtr<DispersionModel<CloudType> > clone() const
{
return autoPtr<DispersionModel<CloudType> >
(