33 namespace populationBalance
50 const word daughterSizeDistributionModelType =
51 dict.lookup<
word>(
"daughterSizeDistributionModel");
54 << daughterSizeDistributionModelType <<
endl;
56 dictionaryConstructorTable::iterator cstrIter =
57 dictionaryConstructorTablePtr_->find(daughterSizeDistributionModelType);
59 if (cstrIter == dictionaryConstructorTablePtr_->end())
62 <<
"Unknown daughter size distribution model type "
63 << daughterSizeDistributionModelType <<
endl <<
endl
64 <<
"Valid daughter size distribution model types are : " <<
endl
65 << dictionaryConstructorTablePtr_->sortedToc()
71 return cstrIter()(breakup,
dict);
112 if (nik_.size() == 0)
114 forAll(breakup_.popBal().phases(),
k)
118 for (
label i = 0; i <=
k; i++)
#define forAll(list, i)
Loop across all elements in list.
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
Base class for breakup models which provide a total breakup rate and a separate daughter size distrib...
Base class for daughter size distribution models. Currently only supports field-independent formulati...
void precompute()
Pre-compute field independent expressions.
const dimensionedScalar & nik(const label i, const label k) const
Return contribution to group i due to breakup in group k.
virtual ~daughterSizeDistributionModel()
Destructor.
daughterSizeDistributionModel(const breakupModel &breakup, const dictionary &dict)
static autoPtr< daughterSizeDistributionModel > New(const breakupModel &breakup, const dictionary &dict)
Enables the printing of a dictionary and subsequently looked-up defaulted entries.
Template function which returns the un-mangled name of a given type. Useful for types which do not ha...
A class for handling words, derived from string.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
defineTypeNameAndDebug(breakupModel, 0)
defineRunTimeSelectionTable(breakupModel, dictionary)
errorManipArg< error, int > exit(error &err, const int errNo=1)
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.
Ostream & indentOrNl(Ostream &os)
Indent stream or add newline if indent level == 0.