diff --git a/src/OpenFOAM/primitives/functions/Function1/CSV/CSV.H b/src/OpenFOAM/primitives/functions/Function1/CSV/CSV.H index 42633d1d7d..907a655e29 100644 --- a/src/OpenFOAM/primitives/functions/Function1/CSV/CSV.H +++ b/src/OpenFOAM/primitives/functions/Function1/CSV/CSV.H @@ -3,7 +3,7 @@ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation - \\/ M anipulation | + \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -127,6 +127,12 @@ public: //- Copy constructor CSV(const CSV& tbl); + //- Construct and return a clone + virtual tmp> clone() const + { + return tmp>(new CSV(*this)); + } + //- Destructor virtual ~CSV(); diff --git a/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.C b/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.C index bd4098d7f9..e5aedbd501 100644 --- a/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.C +++ b/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.C @@ -72,6 +72,17 @@ Type Foam::Function1::value(const scalar x) const return Zero; } +template +Foam::tmp> Foam::Function1::value +( + const scalarField& x +) const +{ + NotImplemented; + + return tmp>(nullptr); +} + template Type Foam::Function1::integrate(const scalar x1, const scalar x2) const @@ -82,6 +93,19 @@ Type Foam::Function1::integrate(const scalar x1, const scalar x2) const } +template +Foam::tmp> Foam::Function1::integrate +( + const scalarField& x1, + const scalarField& x2 +) const +{ + NotImplemented; + + return tmp>(nullptr); +} + + template Foam::tmp> Foam::FieldFunction1::value diff --git a/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.H b/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.H index 8b31dc953d..ed18ad041f 100644 --- a/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.H +++ b/src/OpenFOAM/primitives/functions/Function1/Function1/Function1.H @@ -142,7 +142,7 @@ public: virtual Type value(const scalar x) const; //- Return value as a function of (scalar) independent variable - virtual tmp> value(const scalarField& x) const = 0; + virtual tmp> value(const scalarField& x) const; //- Integrate between two (scalar) values virtual Type integrate(const scalar x1, const scalar x2) const; @@ -152,7 +152,7 @@ public: ( const scalarField& x1, const scalarField& x2 - ) const = 0; + ) const; // I/O