FreeFOAM The Cross-Platform CFD Toolkit
ReactingMultiphaseLookupTableInjection< CloudType > Class Template Reference

Particle injection sources read from look-up table. Each row corresponds to an injection site. More...

#include <lagrangianIntermediate/ReactingMultiphaseLookupTableInjection.H>


Detailed Description

template<class CloudType>
class Foam::ReactingMultiphaseLookupTableInjection< CloudType >

Particle injection sources read from look-up table. Each row corresponds to an injection site.

( (x y z) (u v w) d rho mDot T cp (Y0..Y2) (Yg0..YgN) (Yl0..YlN) (Ys0..YsN) (x y z) (u v w) d rho mDot T cp (Y0..Y2) (Yg0..YgN) (Yl0..YlN) (Ys0..YsN) ... (x y z) (u v w) d rho mDot T cp (Y0..Y2) (Yg0..YgN) (Yl0..YlN) (Ys0..YsN) );

where: x, y, z = global cartesian co-ordinates [m] u, v, w = global cartesian velocity components [m/s] d= diameter [m] rho = density [kg/m3] mDot = mass flow rate [kg/m3] T= temperature [K] cp = specific heat capacity [J/kg/K] Y(3) = total mass fraction of gas (Y0), liquid (Y1), solid (Y3) Yg(Ngas) = mass fractions of gaseous components Yl(Nliq) = mass fractions of liquid components Ys(Nsld) = mass fractions of solid components

Source files

Definition at line 72 of file ReactingMultiphaseLookupTableInjection.H.

+ Inheritance diagram for ReactingMultiphaseLookupTableInjection< CloudType >:
+ Collaboration diagram for ReactingMultiphaseLookupTableInjection< CloudType >:

List of all members.

Public Member Functions

 TypeName ("ReactingMultiphaseLookupTableInjection")
 Runtime type information.
 ReactingMultiphaseLookupTableInjection (const dictionary &dict, CloudType &owner)
 Construct from dictionary.
virtual ~ReactingMultiphaseLookupTableInjection ()
 Destructor.
bool active () const
 Flag to indicate whether model activates injection model.
scalar timeEnd () const
 Return the end-of-injection time.
virtual void setPositionAndCell (const label parcelI, const label nParcels, const scalar time, vector &position, label &cellOwner)
 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.
virtual bool validInjection (const label parcelI)
 Return flag to identify whether or not injection of parcelI is.
- Public Member Functions inherited from InjectionModel< CloudType >
 TypeName ("InjectionModel")
 Runtime type information.
 declareRunTimeSelectionTable (autoPtr, InjectionModel, dictionary,(const dictionary &dict, CloudType &owner),(dict, owner))
 Declare runtime constructor selection table.
 InjectionModel (CloudType &owner)
 Construct null from owner.
 InjectionModel (const dictionary &dict, CloudType &owner, const word &type)
 Construct from dictionary.
virtual ~InjectionModel ()
 Destructor.
const dictionarydict () const
 Return the owner cloud dictionary.
const CloudType & owner () const
 Return const access the owner cloud object.
CloudType & owner ()
 Return non-const access the owner cloud object for manipulation.
const dictionarycoeffDict () const
 Return the coefficients dictionary.
scalar timeStart () const
 Return the start-of-injection time.
scalar volumeTotal () const
 Return the total volume to be injected across the event.
scalar massTotal () const
 Return mass of particles to introduce.
scalar massInjected () const
 Return mass of particles injected (cumulative)
label nInjections () const
 Return the number of injections.
label parcelsAddedTotal () const
 Return the total number parcels added.
template<class TrackData >
void inject (TrackData &td)
 Main injection loop.

Protected Member Functions

label parcelsToInject (const scalar time0, const scalar time1) const
 Number of parcels to introduce over the time step relative to SOI.
scalar volumeToInject (const scalar time0, const scalar time1) const
 Volume of parcels to introduce over the time step relative to SOI.
- Protected Member Functions inherited from InjectionModel< CloudType >
virtual void prepareForNextTimeStep (const scalar time, label &newParcels, scalar &newVolume)
 Determine properties for next time step/injection interval.
virtual void findCellAtPosition (label &cellI, vector &position)
 Find the cell that contains the supplied position.
virtual scalar setNumberOfParticles (const label parcels, const scalar volume, const scalar diameter, const scalar rho)
 Set number of particles to inject given parcel properties.
virtual void postInjectCheck (const label parcelsAdded, const scalar massAdded)
 Post injection checks.

Additional Inherited Members

- Public Types inherited from InjectionModel< CloudType >
enum  parcelBasis { pbNumber, pbMass }
 Parcel basis representation options. More...
- Static Public Member Functions inherited from InjectionModel< CloudType >
static autoPtr< InjectionModel
< CloudType > > 
New (const dictionary &dict, CloudType &owner)
 Selector.
- Protected Types inherited from InjectionModel< CloudType >
typedef CloudType::parcelType parcelType
 Convenience typedef for parcel type.
- Protected Attributes inherited from InjectionModel< CloudType >
const scalar SOI_
 Start of injection [s].
scalar volumeTotal_
 Total volume of particles introduced by this injector [m^3].
scalar massTotal_
 Total mass to inject [kg].
scalar massInjected_
 Total mass injected to date [kg].
label nInjections_
 Number of injections counter.
label parcelsAddedTotal_
 Running counter of total number of parcels added.
parcelBasis parcelBasis_
 Parcel basis enumeration.
scalar time0_
 Continuous phase time at start of injection time step [s].
scalar timeStep0_
 Time at start of injection time step [s].

Constructor & Destructor Documentation

ReactingMultiphaseLookupTableInjection ( const dictionary dict,
CloudType &  owner 
)

Construct from dictionary.

Definition at line 75 of file ReactingMultiphaseLookupTableInjection.C.

References forAll.

Destructor.

Definition at line 121 of file ReactingMultiphaseLookupTableInjection.C.


Member Function Documentation

Foam::label parcelsToInject ( const scalar  time0,
const scalar  time1 
) const
protectedvirtual

Number of parcels to introduce over the time step relative to SOI.

Implements InjectionModel< CloudType >.

Definition at line 33 of file ReactingMultiphaseLookupTableInjection.C.

Foam::scalar volumeToInject ( const scalar  time0,
const scalar  time1 
) const
protectedvirtual

Volume of parcels to introduce over the time step relative to SOI.

Implements InjectionModel< CloudType >.

Definition at line 52 of file ReactingMultiphaseLookupTableInjection.C.

References forAll.

TypeName ( "ReactingMultiphaseLookupTableInjection< CloudType >"  )

Runtime type information.

bool active ( ) const
virtual

Flag to indicate whether model activates injection model.

Implements InjectionModel< CloudType >.

Definition at line 128 of file ReactingMultiphaseLookupTableInjection.C.

Foam::scalar timeEnd ( ) const
virtual

Return the end-of-injection time.

Implements InjectionModel< CloudType >.

Definition at line 136 of file ReactingMultiphaseLookupTableInjection.C.

void setPositionAndCell ( const label  parcelI,
const label  nParcels,
const scalar  time,
vector position,
label &  cellOwner 
)
virtual

Set the injection position and owner cell.

Implements InjectionModel< CloudType >.

Definition at line 144 of file ReactingMultiphaseLookupTableInjection.C.

References Vector< Cmpt >::x().

void setProperties ( const label  parcelI,
const label  nParcels,
const scalar  time,
typename CloudType::parcelType &  parcel 
)
virtual

Set the parcel properties.

Implements InjectionModel< CloudType >.

Definition at line 161 of file ReactingMultiphaseLookupTableInjection.C.

bool fullyDescribed ( ) const
virtual

Flag to identify whether model fully describes the parcel.

Implements InjectionModel< CloudType >.

Definition at line 201 of file ReactingMultiphaseLookupTableInjection.C.

bool validInjection ( const label  parcelI)
virtual

Return flag to identify whether or not injection of parcelI is.

permitted

Implements InjectionModel< CloudType >.

Definition at line 209 of file ReactingMultiphaseLookupTableInjection.C.


The documentation for this class was generated from the following files: