143 #ifndef ConeInjection_H
144 #define ConeInjection_H
159 template<
class CloudType>
162 public InjectionModel<CloudType>
193 const autoPtr<Function1<vector>> position_;
196 const autoPtr<Function1<vector>> direction_;
205 label injectorTetFace_;
208 label injectorTetPt_;
211 const scalar duration_;
214 const autoPtr<Function1<scalar>> massFlowRate_;
253 void setInjectionMethod();
304 virtual scalar
massToInject(
const scalar time0,
const scalar time1);
313 const label nParcels,
326 const label nParcels,
328 typename CloudType::parcelType::trackingData& td,
const CloudType & owner() const
Return const access to the owner cloud.
This injector injects particles in a number of cones. The user specifies a position and a direction t...
virtual ~ConeInjection()
Destructor.
virtual void topoChange()
Set injector locations when mesh is updated.
ConeInjection(const dictionary &dict, CloudType &owner, const word &modelName)
Construct from dictionary.
virtual void setProperties(const label parcelI, const label nParcels, const scalar time, typename CloudType::parcelType::trackingData &td, typename CloudType::parcelType &parcel)
Set the parcel properties.
flowType
Flow type enumeration.
@ ftPressureDrivenVelocity
virtual void setPositionAndCell(const label parcelI, const label nParcels, const scalar time, barycentric &coordinates, label &celli, label &tetFacei, label &tetPti, label &facei)
Set the injection position and owner cell, tetFace and tetPt.
injectionMethod
Injection method enumeration.
virtual autoPtr< InjectionModel< CloudType > > clone() const
Construct and return a clone.
TypeName("coneInjection")
Runtime type information.
virtual label nParcelsToInject(const scalar time0, const scalar time1)
Number of parcels to introduce relative to SOI.
virtual bool fullyDescribed() const
Flag to identify whether model fully describes the parcel.
scalar timeEnd() const
Return the end-of-injection time.
virtual scalar massToInject(const scalar time0, const scalar time1)
Parcel mass to introduce relative to SOI.
Templated base class for dsmc cloud.
ParcelType parcelType
Type of parcel the cloud was instantiated for.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
A list of keyword definitions, which are a keyword followed by any number of values (e....
const dictionary & dict() const
Return const access to the cloud dictionary.
const word & modelName() const
Return const access to the name of the sub-model.
A class for handling words, derived from string.
Barycentric< scalar > barycentric
A scalar version of the templated Barycentric.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.