Scale< Type > Class Template Reference

Function1 which scales a given 'value' function by a 'scale' scalar function and scales the 'x' argument of the 'value' and 'scale' functions by the optional 'xScale' scalar function. More...

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

Public Member Functions

 TypeName ("scale")
 
 Scale (const word &name, const Function1< scalar > &scale, const Function1< scalar > &xScale, const Function1< Type > &value)
 Construct from name and functions. More...
 
 Scale (const word &name, const unitConversions &units, const dictionary &dict)
 Construct from name and dictionary. More...
 
 Scale (const Scale< Type > &se)
 Copy constructor. More...
 
virtual ~Scale ()
 Destructor. More...
 
virtual Type value (const scalar x) const
 Return value. More...
 
virtual Type integral (const scalar x1, const scalar x2) const
 Integrate between two values. More...
 
virtual bool constant () const
 Is this function guaranteed to be constant? More...
 
virtual void write (Ostream &os, const unitConversions &units) const
 Write data to dictionary stream. More...
 
void operator= (const Scale< Type > &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from FieldFunction1< Type, Scale< 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 Function1s::unitConversions &units, const dictionary &dict),(name, units, dict))
 
 declareRunTimeSelectionTable (autoPtr, Function1, Istream,(const word &name, const Function1s::unitConversions &units, Istream &is),(name, units, is))
 
 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...
 
void operator= (const refCount &)=delete
 Disallow bitwise assignment. 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 Function1s::unitConversions &units, const dictionary &dict)
 Select from dictionary. More...
 
static autoPtr< Function1< Type > > New (const word &name, const unitConversion &xUnits, const unitConversion &valueUnits, const dictionary &dict)
 Select from dictionary. More...
 
static autoPtr< Function1< Type > > New (const word &name, const Function1s::unitConversions &units, const word &Function1Type, Istream &is)
 Select from Istream. More...
 
static autoPtr< Function1< Type > > New (const word &name, const unitConversion &xUnits, const unitConversion &valueUnits, const word &Function1Type, Istream &is)
 Select from Istream. More...
 
- Protected Member Functions inherited from refCount
 refCount ()
 Construct null initialising count to 0. More...
 
 refCount (const refCount &)=delete
 Disallow copy. More...
 
- Protected Attributes inherited from Function1< Type >
const word name_
 Name of entry. More...
 

Detailed Description

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

Function1 which scales a given 'value' function by a 'scale' scalar function and scales the 'x' argument of the 'value' and 'scale' functions by the optional 'xScale' scalar function.

This is particularly useful to ramp a time-varying value by one of the monotonic ramp functions.

Usage
For a vector:
    <name>
    {
        type      scale;

        scale
        {
            type        linearRamp;

            start       0;
            duration    10;
        }

        value
        {
            type        sine;

            frequency   10;
            amplitude   1;
            scale       (1 0.1 0);
            level       (10 1 0);
        }
    }

Simplified usage to scale by a constant factor, e.g. 2:

    <name>
    {
        type      scale;

        scale     2;

        value
        {
            type        sine;

            frequency   10;
            amplitude   1;
            scale       (1 0.1 0);
            level       (10 1 0);
        }
    }

Including the optional 'xScale' function:

    <name>
    {
        type      scale;

        xScale    0.5;
        scale     2;

        value
        {
            type        sine;

            frequency   10;
            amplitude   1;
            scale       (1 0.1 0);
            level       (10 1 0);
        }
    }

Where:

Property Description Required
value Function of type Function1<Type> yes
scale Scaling function of type Function1<scalar> yes
xScale 'x' scaling function of type Function1<scalar> no
See also
Foam::Function1s::ramp Foam::Function1s::reverseRamp
Source files

Definition at line 152 of file Scale.H.

Constructor & Destructor Documentation

◆ Scale() [1/3]

Scale ( const word name,
const Function1< scalar > &  scale,
const Function1< scalar > &  xScale,
const Function1< Type > &  value 
)

Construct from name and functions.

Definition at line 31 of file Scale.C.

◆ Scale() [2/3]

Scale ( const word name,
const unitConversions units,
const dictionary dict 
)

Construct from name and dictionary.

Definition at line 49 of file Scale.C.

◆ Scale() [3/3]

Scale ( const Scale< Type > &  se)

Copy constructor.

Definition at line 71 of file Scale.C.

◆ ~Scale()

~Scale
virtual

Destructor.

Definition at line 85 of file Scale.C.

Member Function Documentation

◆ TypeName()

TypeName ( "scale"  )

◆ value()

Type value ( const scalar  x) const
inlinevirtual

Return value.

Implements FieldFunction1< Type, Scale< Type > >.

Definition at line 31 of file ScaleI.H.

References x.

◆ integral()

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

Integrate between two values.

Implements FieldFunction1< Type, Scale< Type > >.

Definition at line 39 of file ScaleI.H.

References Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::type(), and Foam::Zero.

Here is the call graph for this function:

◆ constant()

bool constant
inlinevirtual

Is this function guaranteed to be constant?

Reimplemented from Function1< Type >.

Definition at line 68 of file ScaleI.H.

◆ write()

void write ( Ostream os,
const unitConversions units 
) const
virtual

Write data to dictionary stream.

Implements Function1< Type >.

Definition at line 92 of file Scale.C.

References Foam::unitless, Foam::units(), and Foam::Function1s::writeEntry().

Here is the call graph for this function:

◆ operator=()

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

Disallow default bitwise assignment.


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