30 template<
class CloudType>
37 template<
class CloudType>
48 Info<<
"Constructing particle injection models" <<
endl;
50 if (modelNames.
size() > 0)
57 const word& model = iter().keyword();
58 Info<<
"Creating injector: " << model <<
endl;
93 template<
class CloudType>
105 template<
class CloudType>
112 template<
class CloudType>
115 scalar minTime = great;
118 minTime =
min(minTime, this->
operator[](i).timeStart());
125 template<
class CloudType>
128 scalar maxTime = -great;
131 maxTime =
max(maxTime, this->
operator[](i).timeEnd());
138 template<
class CloudType>
143 this->operator[](i).topoChange();
148 template<
class CloudType>
149 template<
class TrackCloudType>
152 TrackCloudType&
cloud,
153 typename CloudType::parcelType::trackingData& td
158 this->operator[](i).inject(
cloud, td);
163 template<
class CloudType>
164 template<
class TrackCloudType>
167 TrackCloudType&
cloud,
168 typename CloudType::parcelType::trackingData& td
173 this->operator[](i).injectSteadyState(
cloud, td);
178 template<
class CloudType>
183 this->operator[](i).info(os);
#define forAll(list, i)
Loop across all elements in list.
#define forAllConstIter(Container, container, iter)
Iterate across all elements in the container object of type.
Templated base class for dsmc cloud.
Template class for intrusive linked lists.
List of injection models.
InjectionModelList(CloudType &owner)
Construct null from owner.
void topoChange()
Set injector locations when mesh is updated.
void inject(TrackCloudType &cloud, typename CloudType::parcelType::trackingData &td)
Main injection loop.
virtual ~InjectionModelList()
Destructor.
virtual void info(Ostream &os)
Write injection info to stream.
scalar timeStart() const
Return the minimum start-of-injection time.
void injectSteadyState(TrackCloudType &cloud, typename CloudType::parcelType::trackingData &td)
Main injection loop - steady-state.
scalar timeEnd() const
Return the maximum end-of-injection time.
Templated injection model class.
void size(const label)
Override size to be inconsistent with allocated storage.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
bool set(const label) const
Is element set.
void setSize(const label)
Reset size of PtrList. If extending the PtrList, new entries are.
A cloud is a collection of lagrangian particles.
A list of keyword definitions, which are a keyword followed by any number of values (e....
ITstream & lookup(const word &, bool recursive=false, bool patternMatch=true) const
Find and return an entry data stream.
A class for handling words, derived from string.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Ostream & endl(Ostream &os)
Add newline and flush stream.
layerAndWeight min(const layerAndWeight &a, const layerAndWeight &b)
layerAndWeight max(const layerAndWeight &a, const layerAndWeight &b)