Polynomial< Type > Class Template Reference

Arbitrary order polynomial Function1. More...

Inheritance diagram for Polynomial< Type >:
Collaboration diagram for Polynomial< Type >:

Public Member Functions

 TypeName ("polynomial")
 Runtime type information. More...
 
 Polynomial (const word &name, const dictionary &dict)
 Construct from name and dictionary. More...
 
 Polynomial (const word &name, const List< Tuple2< Type, Type >> &)
 Construct from components. More...
 
 Polynomial (const Polynomial &poly)
 Copy constructor. More...
 
virtual ~Polynomial ()
 Destructor. More...
 
virtual Type value (const scalar x) const
 Return Polynomial value as a function of scalar x. More...
 
virtual Type integral (const scalar x1, const scalar x2) const
 Integrate between two scalar fields. More...
 
virtual void write (Ostream &os) const
 Write in dictionary format. More...
 
void operator= (const Polynomial< Type > &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from FieldFunction1< Type, Polynomial< Type > >
 FieldFunction1 (const word &name)
 Construct from name. More...
 
virtual tmp< Function1< Type > > clone () const
 Construct and return a clone. More...
 
virtual ~FieldFunction1 ()
 Destructor. More...
 
virtual tmp< Field< Type > > value (const scalarField &x) const
 Return value as a function of one scalar field. More...
 
virtual tmp< Field< Type > > integral (const scalarField &x1, const scalarField &x2) const
 Integrate between two scalar fields. More...
 
- Public Member Functions inherited from Function1< Type >
 TypeName ("Function1")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, Function1, dictionary,(const word &name, const dictionary &dict),(name, dict))
 Declare runtime constructor selection table. More...
 
 Function1 (const word &name)
 Construct from name. More...
 
 Function1 (const Function1< Type > &f1)
 Copy constructor. More...
 
virtual ~Function1 ()
 Destructor. More...
 
const wordname () const
 Return the name of the entry. More...
 
void operator= (const Function1< Type > &)
 Assignment. More...
 
- Public Member Functions inherited from refCount
int count () const
 Return the current reference count. More...
 
bool unique () const
 Return true if the reference count is zero. More...
 
void operator++ ()
 Increment the reference count. More...
 
void operator++ (int)
 Increment the reference count. More...
 
void operator-- ()
 Decrement the reference count. More...
 
void operator-- (int)
 Decrement the reference count. More...
 

Additional Inherited Members

- Public Types inherited from Function1< Type >
typedef Type returnType
 
- Static Public Member Functions inherited from Function1< Type >
static autoPtr< Function1< Type > > New (const word &name, const dictionary &dict)
 Selector. More...
 
- Protected Member Functions inherited from refCount
 refCount ()
 Construct null initialising count to 0. More...
 
- Protected Attributes inherited from Function1< Type >
const word name_
 Name of entry. More...
 

Detailed Description

template<class Type>
class Foam::Function1s::Polynomial< Type >

Arbitrary order polynomial Function1.

The coefficients and exponents of the terms in the polynomial are specified as a list of Tuple2's e.g. for the polynomial y = x^2 + 2x^3

    <name>  polynomial
    (
        (1    2)
        (2    3)
    );
Source files

Definition at line 63 of file Polynomial1.H.

Constructor & Destructor Documentation

◆ Polynomial() [1/3]

Polynomial ( const word name,
const dictionary dict 
)

Construct from name and dictionary.

Definition at line 31 of file Polynomial1.C.

References dict, Foam::endl(), IOstream::eof(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::mag(), Function1< Type >::name(), Function1< Type >::name_, Foam::nl, Foam::second(), and WarningInFunction.

Here is the call graph for this function:

◆ Polynomial() [2/3]

Polynomial ( const word name,
const List< Tuple2< Type, Type >> &  coeffs 
)

Construct from components.

Definition at line 89 of file Polynomial1.C.

References Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::mag(), Function1< Type >::name_, Foam::nl, Foam::second(), and WarningInFunction.

Here is the call graph for this function:

◆ Polynomial() [3/3]

Polynomial ( const Polynomial< Type > &  poly)

Copy constructor.

Definition at line 128 of file Polynomial1.C.

◆ ~Polynomial()

~Polynomial
virtual

Destructor.

Definition at line 139 of file Polynomial1.C.

Member Function Documentation

◆ TypeName()

TypeName ( "polynomial"  )

Runtime type information.

◆ value()

Type value ( const scalar  x) const
virtual

Return Polynomial value as a function of scalar x.

Implements FieldFunction1< Type, Polynomial< Type > >.

Definition at line 146 of file Polynomial1.C.

References Foam::cmptMultiply(), Foam::cmptPow(), Foam::first(), forAll, Foam::second(), x, y, and Foam::Zero.

Here is the call graph for this function:

◆ integral()

Type integral ( const scalar  x1,
const scalar  x2 
) const
virtual

Integrate between two scalar fields.

Implements FieldFunction1< Type, Polynomial< Type > >.

Definition at line 163 of file Polynomial1.C.

References Foam::cmptDivide(), Foam::cmptMultiply(), Foam::cmptPow(), Foam::first(), forAll, Foam::second(), and Foam::Zero.

Here is the call graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Write in dictionary format.

Implements Function1< Type >.

Definition at line 201 of file Polynomial1.C.

References token::END_STATEMENT, Foam::nl, and Foam::writeKeyword().

Here is the call graph for this function:

◆ operator=()

void operator= ( const Polynomial< Type > &  )
delete

Disallow default bitwise assignment.


The documentation for this class was generated from the following files: