Go to the documentation of this file.
91 #ifndef functionObjects_multiply_H
92 #define functionObjects_multiply_H
100 namespace functionObjects
109 public fieldsExpression
112 template<
class Type1,
class Type2>
115 static constexpr
bool value =
116 (pTraits<Type1>::rank == 0 || pTraits<Type2>::rank == 0)
117 || (pTraits<Type1>::rank == 1 && pTraits<Type2>::rank == 1);
124 bool initialiseResult(
const word& fieldName);
127 bool multiplyResult(
const word& fieldName,
bool& processed);
129 template<
class Type1,
class Type2>
130 typename std::enable_if
132 is_valid_op<Type1, Type2>::value,
bool
136 GeometricField<Type1, fvPatchField, volMesh>& result,
137 const word& fieldName,
141 template<
class Type1,
class Type2>
142 typename std::enable_if
144 !is_valid_op<Type1, Type2>::value,
bool
149 const word& fieldName,
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
A class for handling words, derived from Foam::string.
virtual ~multiply()=default
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
void operator=(const multiply &)=delete
const word & name() const noexcept
Intermediate class for handling field expression function objects (e.g. add, subtract etc....
virtual const word & type() const =0
A traits class, which is primarily used for primitives.
multiply(const word &name, const Time &runTime, const dictionary &dict)
void multiply(FieldField< Field, Type > &f, const FieldField< Field, Type > &f1, const FieldField< Field, scalar > &f2)
Generic GeometricField class.
Multiplies a given list of (at least two or more) fields and outputs the result into a new field.