39 #ifndef BlendedInterfacialModel_H
40 #define BlendedInterfacialModel_H
57 template<
class ModelType>
96 mutable label checkTimeIndex_;
105 template<
class GeoMesh>
106 void calculateBlendingCoeffs
121 void postProcessBlendingCoefficients(
const word&
format)
const;
129 template<
class Type,
class GeoMesh,
class ... Args>
133 (ModelType::*method)(Args ...)
const,
140 template<
class Type,
class GeoMesh,
class ... Args>
144 (ModelType::*method)(Args ...)
const,
151 template<
class ... Args>
154 bool (ModelType::*method)(Args ...)
const,
159 template<
class ... Args>
187 TypeName(
"BlendedInterfacialModel");
193 template<
class ... Args>
231 #define defineBlendedInterfacialModelTypeNameAndDebug(ModelType, DebugSwitch) \
233 defineTemplateTypeNameAndDebugWithName \
235 BlendedInterfacialModel<ModelType>, \
237 word(BlendedInterfacialModel<ModelType>::typeName_()) + "<" \
238 + ModelType::typeName + ">" \
Wrapper class for interfacial models for which multiple instances of the model are used for different...
TypeSet requiredPhaseInterfaces
Required phase interface types.
void operator=(const BlendedInterfacialModel< ModelType > &)=delete
Disallow default bitwise assignment.
const phaseInterface & interface() const
Access the interface.
bool writeData(Ostream &os) const
Dummy write for regIOobject.
BlendedInterfacialModel(const UPtrList< const dictionary > &subDicts, const phaseInterface &interface, const dictionary &blendingDict, const Args &... args)
Construct from a dictionary, an interface and a blending dictionary.
TypeSet< dispersedPhaseInterface, segregatedPhaseInterface, displacedPhaseInterface > allowedPhaseInterfaces
Allowed phase interface types.
TypeName("BlendedInterfacialModel")
Runtime type information.
ModelType modelType
Public Type Definitions.
tmp< GeometricField< Type, GeoMesh > > evaluate(tmp< GeometricField< Type, GeoMesh >>(ModelType::*method)(Args ...) const, const word &name, const dimensionSet &dims, Args ... args) const
Return a blended field.
~BlendedInterfacialModel()
Destructor.
Generic GeometricField class.
A HashTable specialisation for hashing pointers.
const word & name() const
Return name.
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...
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
A list of keywords followed by any number of values (e.g. words and numbers) or sub-dictionaries.
Dimension set for the base types.
Class to represent a interface between phases where one phase is considered dispersed within the othe...
Class to represent an interface between phases which has been displaced to some extent by a third pha...
A wordList with hashed indices for faster lookup by name.
Class to represent an interface between phases. Derivations can further specify the configuration of ...
regIOobject is an abstract class derived from IOobject to handle automatic object registration with t...
Class to represent a interface between phases where the two phases are considered to be segregated; t...
A class for managing temporary objects.
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.
const dictionary & blendingDict(const phaseSystem &fluid, const dictionary &dict)
word format(conversionProperties.lookup("format"))
Foam::argList args(argc, argv)
Template meta-programming for operations involving sets of types.