37#ifndef InjectionModelList_H
38#define InjectionModelList_H
52template<
class CloudType>
55 public PtrList<InjectionModel<CloudType>>
111 template<
class TrackCloudType>
114 TrackCloudType&
cloud,
115 typename CloudType::parcelType::trackingData&
td
119 template<
class TrackCloudType>
122 TrackCloudType&
cloud,
123 typename CloudType::parcelType::trackingData&
td,
124 const scalar trackTime
InjectionModelList(CloudType &owner)
Construct null from owner.
void inject(TrackCloudType &cloud, typename CloudType::parcelType::trackingData &td)
Main injection loop.
virtual ~InjectionModelList()=default
Destructor.
scalar volumeToInject(const scalar time0, const scalar time1)
Volume of parcels to introduce relative to SOI.
scalar timeStart() const
Return the minimum start-of-injection time.
scalar averageParcelMass()
Return the average parcel mass.
void injectSteadyState(TrackCloudType &cloud, typename CloudType::parcelType::trackingData &td, const scalar trackTime)
Main injection loop - steady-state.
virtual void info()
Write injection info.
virtual autoPtr< InjectionModelList< CloudType > > clone() const
Construct and return a clone.
void updateMesh()
Set injector locations when mesh is updated.
scalar timeEnd() const
Return the maximum end-of-injection time.
constexpr PtrList() noexcept
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A cloud is a registry collection of lagrangian particles.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
wallPoints::trackData td(isBlockedFace, regionToBlockSize)
DSMCCloud< dsmcParcel > CloudType