26 #include "BlendedInterfacialModel.H" 30 template<
class modelType>
33 const dictTable& modelDicts,
44 const phasePairKey& key = iter.key();
59 template<
class modelType>
62 const word& modelName,
79 template<
class modelType>
82 const word& modelName,
85 autoPtr<BlendedInterfacialModel<modelType>>,
92 HashTable<autoPtr<modelType>, phasePairKey, phasePairKey::hash>
95 modelTypeTable tempModels;
98 const blendingMethod& blending
105 autoPtr<modelType> noModel(
nullptr);
114 const phasePairKey key(iter.key().first(), iter.key().second());
115 const phasePairKey key1In2(key.first(), key.second(),
true);
116 const phasePairKey key2In1(key.second(), key.first(),
true);
121 autoPtr<BlendedInterfacialModel<modelType>>
123 new BlendedInterfacialModel<modelType>
128 tempModels.
found(key ) ? tempModels[key ] : noModel,
129 tempModels.found(key1In2) ? tempModels[key1In2] : noModel,
130 tempModels.found(key2In1) ? tempModels[key2In1] : noModel
154 template<
class modelType>
157 const word& modelName,
160 HashTable<autoPtr<modelType>>,
167 HashTable<autoPtr<modelType>, phasePairKey, phasePairKey::hash>
172 modelTypeTable tempModels;
181 const phasePairKey key(tempModelIter.key());
183 if (!models.found(key))
188 HashTable<autoPtr<modelType>>()
192 models[tempModelIter.key()].insert
201 template<
class modelType>
212 template<
class modelType>
215 const phaseModel& dispersed,
216 const phaseModel& continuous
219 return lookupSubModel<modelType>(orderedPhasePair(dispersed, continuous));
void generatePairs(const dictTable &modelDicts)
Generate pairs.
#define forAll(list, i)
Loop across all elements in list.
bool found(const word &) const
Search DictionaryBase for given keyword.
phasePairTable phasePairs_
Phase pairs.
const modelType & lookupSubModel(const phasePair &key) const
Access a sub model between a phase pair.
void createSubModels(const dictTable &modelDicts, HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &models)
Generate pairs and sub-model tables.
const Type & lookupObject(const word &name) const
Lookup and return the object of the given Type.
phaseModelList phaseModels_
Phase models.
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tdf1, const word &name, const dimensionSet &dimensions)
bool insert(const Key &, const T &newElmt)
Insert a new hashedEntry.
bool found(const Key &) const
Return true if hashedEntry is found in table.
static word groupName(Name name, const word &group)
const word & name() const
Name function is needed to disambiguate those inherited.
forAllConstIter(PtrDictionary< phaseModel >, mixture.phases(), phase)
void generatePairsAndSubModels(const word &modelName, HashTable< autoPtr< modelType >, phasePairKey, phasePairKey::hash > &models)
Generate pairs and sub-model tables.
blendingMethodTable blendingMethods_
Blending methods.
const fvMesh & mesh() const
Constant access the mesh.
HashTable< dictionary, phasePairKey, phasePairKey::hash > dictTable
ITstream & lookup(const word &, bool recursive=false, bool patternMatch=true) const
Find and return an entry data stream.