32 template<
class ThermoType>
40 if (
dict.found(
"reduction"))
44 const word methodName(reductionDict.
lookup(
"method"));
47 <<
"Selecting chemistry reduction method " << methodName <<
endl;
49 const word methodTypeName =
52 typename dictionaryConstructorTable::iterator cstrIter =
53 dictionaryConstructorTablePtr_->find(methodTypeName);
55 if (cstrIter == dictionaryConstructorTablePtr_->end())
58 <<
"Unknown " << typeName_() <<
" type " << methodName <<
endl
61 const wordList names(dictionaryConstructorTablePtr_->sortedToc());
64 thisCmpts.
append(word::null);
73 const wordList cmpts(basicThermo::splitThermoName(names[i], 6));
80 validNames.
append(cmpts[0]);
85 <<
"Valid " << typeName_()
86 <<
" types are:" << validNames <<
endl
#define forAll(list, i)
Loop across all elements in list.
void append(const T &)
Append an element at the end of the list.
A List obtained as a section of another List.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Extension to Foam::chemistryModels::standard templated on thermo and provides stiff ODE integration f...
static autoPtr< chemistryReductionMethod< ThermoType > > New(const dictionary &dict, chemistryModels::Standard< ThermoType > &chemistry)
A chemistryReductionMethod which does nothing to allow reduction to be switched-off.
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
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.
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
errorManipArg< error, int > exit(error &err, const int errNo=1)
Ostream & endl(Ostream &os)
Add newline and flush stream.
String typeName(const std::type_info &info)
Return the un-mangled name given the standard type info.
Ostream & indentOrNl(Ostream &os)
Indent stream or add newline if indent level == 0.
chemistryModel & chemistry