diff --git a/src/OpenFOAM/primitives/functions/Polynomial/polynomialFunction.C b/src/OpenFOAM/primitives/functions/Polynomial/polynomialFunction.C index a6a979e8abc95656fc96cd9ed2a28c5dd73a4ecd..215675a8a2d33a011777bf448204981a6eab0b06 100644 --- a/src/OpenFOAM/primitives/functions/Polynomial/polynomialFunction.C +++ b/src/OpenFOAM/primitives/functions/Polynomial/polynomialFunction.C @@ -230,6 +230,17 @@ Foam::polynomialFunction::integralMinus1(const scalar intConstant) const // * * * * * * * * * * * * * * Member Operators * * * * * * * * * * * * * * // +bool Foam::polynomialFunction::operator==(const polynomialFunction& rhs) const +{ + return + ( + scalarList::operator==(static_cast<const scalarList&>(rhs)) + && logActive_ == rhs.logActive_ + && (!logActive_ || (logCoeff_ == rhs.logCoeff_)) + ); +} + + Foam::polynomialFunction& Foam::polynomialFunction::operator+=(const polynomialFunction& poly) { diff --git a/src/OpenFOAM/primitives/functions/Polynomial/polynomialFunction.H b/src/OpenFOAM/primitives/functions/Polynomial/polynomialFunction.H index 411260f4be89974abd051ab67f7483dbfcee6699..6f3757be3368e04776e81f35638d45a52c653090 100644 --- a/src/OpenFOAM/primitives/functions/Polynomial/polynomialFunction.H +++ b/src/OpenFOAM/primitives/functions/Polynomial/polynomialFunction.H @@ -108,9 +108,6 @@ class polynomialFunction //- Check size is non-zero or trigger FatalErrot void checkSize() const; - //- No copy assignment - void operator=(const polynomialFunction&) = delete; - public: @@ -190,6 +187,14 @@ public: // Member Operators + //- Equality of coefficients, and logCoeff (if active) + bool operator==(const polynomialFunction& rhs) const; + + bool operator!=(const polynomialFunction& rhs) const + { + return !operator==(rhs); + } + polynomialFunction& operator+=(const polynomialFunction&); polynomialFunction& operator-=(const polynomialFunction&);