Files
OpenFOAM-12/src/OpenFOAM/primitives/functions/Function2/Zero/ZeroConstant2.H

127 lines
3.3 KiB
C++

/*---------------------------------------------------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Copyright (C) 2020-2024 OpenFOAM Foundation
\\/ M anipulation |
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
OpenFOAM is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
Class
Foam::Function2s::ZeroConstant
Description
Templated function of two variables that returns the corresponding 0 (zero).
Usage
\verbatim
<name> zero;
\endverbatim
SourceFiles
ZeroConstant.C
\*---------------------------------------------------------------------------*/
#ifndef ZeroConstant2_H
#define ZeroConstant2_H
#include "Function2.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
namespace Foam
{
namespace Function2s
{
/*---------------------------------------------------------------------------*\
Class ZeroConstant Declaration
\*---------------------------------------------------------------------------*/
template<class Type>
class ZeroConstant
:
public FieldFunction2<Type, ZeroConstant<Type>>
{
public:
// Runtime type information
TypeName("zero");
// Constructors
//- Construct from name
ZeroConstant(const word& name);
//- Construct from name and dictionary
ZeroConstant
(
const word& name,
const unitConversions& units,
const dictionary& dict
);
//- Destructor
virtual ~ZeroConstant();
// Member Functions
//- Return Zero
virtual inline Type value(const scalar x, const scalar y) const;
//- Return Zero field
virtual inline tmp<Field<Type>> value
(
const scalarField& x,
const scalarField& y
) const;
//- Write in dictionary format
virtual void write(Ostream& os, const unitConversions& units) const;
// Member Operators
//- Disallow default bitwise assignment
void operator=(const ZeroConstant<Type>&) = delete;
};
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
} // End namespace Function2s
} // End namespace Foam
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#include "ZeroConstant2I.H"
#ifdef NoRepository
#include "ZeroConstant2.C"
#endif
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
#endif
// ************************************************************************* //