Go to the documentation of this file.
52 #ifndef ConeNozzleInjection_H
53 #define ConeNozzleInjection_H
73 template<
class CloudType>
224 virtual scalar
volumeToInject(
const scalar time0,
const scalar time1);
233 const label nParcels,
245 const label nParcels,
injectionMethod
Injection method enumeration.
TypeName("coneNozzleInjection")
Runtime type information.
vector tanVec2_
Second tangential vector.
const TimeDataEntry< scalar > flowRateProfile_
Flow rate profile relative to SOI [].
A class for handling words, derived from string.
scalar UMag_
Constant velocity [m/s].
vector position_
Injector position [m].
virtual label parcelsToInject(const scalar time0, const scalar time1)
Number of parcels to introduce relative to SOI.
vector direction_
Injector direction [].
vector normal_
Injection vector orthogonal to direction.
virtual bool validInjection(const label parcelI)
Return flag to identify whether or not injection of parcelI is.
Templated injection model class.
const CloudType & owner() const
Return const access to the owner cloud.
label tetFaceI_
Index of tet face for injector cell.
A library of runtime-selectable distribution models.
const word & modelName() const
Return const access to the name of the sub-model.
label injectorCell_
Cell containing injector position [].
vector tanVec1_
First tangential vector.
Light wrapper around DataEntry to provide a mechanism to update time-based entries.
void setInjectionMethod()
Set the injection type.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
virtual scalar volumeToInject(const scalar time0, const scalar time1)
Volume of parcels to introduce relative to SOI.
const dictionary & dict() const
Return const access to the cloud dictionary.
void setFlowType()
Set the injection flow type.
const label parcelsPerSecond_
Number of parcels to introduce per second [].
ConeNozzleInjection(const dictionary &dict, CloudType &owner, const word &modelName)
Construct from dictionary.
TimeDataEntry< scalar > Cd_
Discharge coefficient, relative to SOI [m/s].
flowType flowType_
Flow type.
virtual void updateMesh()
Set injector locations when mesh is updated.
const TimeDataEntry< scalar > thetaInner_
Inner half-cone angle relative to SOI [deg].
Templated base class for dsmc cloud.
A list of keyword definitions, which are a keyword followed by any number of values (e....
TimeDataEntry< scalar > Pinj_
Injection pressure [Pa].
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
injectionMethod injectionMethod_
Point/disc injection method.
const scalar innerDiameter_
Inner nozzle diameter [m].
scalar timeEnd() const
Return the end-of-injection time.
label tetPtI_
Index of tet point for injector cell.
flowType
Flow type enumeration.
virtual void setPositionAndCell(const label parcelI, const label nParcels, const scalar time, vector &position, label &cellOwner, label &tetFaceI, label &tetPtI)
Set the injection position and owner cell.
virtual void setProperties(const label parcelI, const label nParcels, const scalar time, typename CloudType::parcelType &parcel)
Set the parcel properties.
virtual bool fullyDescribed() const
Flag to identify whether model fully describes the parcel.
const TimeDataEntry< scalar > thetaOuter_
Outer half-cone angle relative to SOI [deg].
ParcelType parcelType
Type of parcel the cloud was instantiated for.
scalar duration_
Injection duration [s].
@ ftPressureDrivenVelocity
const autoPtr< distributionModels::distributionModel > sizeDistribution_
Parcel size PDF model.
virtual ~ConeNozzleInjection()
Destructor.
const scalar outerDiameter_
Outer nozzle diameter [m].
virtual autoPtr< InjectionModel< CloudType > > clone() const
Construct and return a clone.