From f5874937ebaf10d5bc845823e3c923aac9cb4b63 Mon Sep 17 00:00:00 2001 From: Mark Olesen <Mark.Olesen@esi-group.com> Date: Mon, 8 Jun 2020 20:48:23 +0200 Subject: [PATCH] ENH: copy assignment, bool comparison for polynomialFunction --- .../functions/Polynomial/polynomialFunction.C | 11 +++++++++++ .../functions/Polynomial/polynomialFunction.H | 11 ++++++++--- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/OpenFOAM/primitives/functions/Polynomial/polynomialFunction.C b/src/OpenFOAM/primitives/functions/Polynomial/polynomialFunction.C index a6a979e8abc..215675a8a2d 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 411260f4be8..6f3757be336 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&); -- GitLab