ramp Class Referenceabstract

Ramp function base class for the set of scalar functions starting from 0 and increasing monotonically to 1 from start over the duration and remaining at 1 thereafter. More...

Inheritance diagram for ramp:
Collaboration diagram for ramp:

Public Member Functions

 ramp (const word &entryName, const dictionary &dict, const objectRegistry *obrPtr=nullptr)
 Construct from entry name, dictionary and optional registry. More...
 
virtual ~ramp ()=default
 Destructor. More...
 
virtual void userTimeToTime (const Time &t)
 Convert time. More...
 
virtual scalar value (const scalar t) const =0
 Return value for time t. More...
 
virtual void writeData (Ostream &os) const
 Write in dictionary format. More...
 
virtual void writeEntries (Ostream &os) const
 Write coefficient entries in dictionary format. More...
 
- Public Member Functions inherited from Function1< scalar >
 Function1 (const word &entryName, const objectRegistry *obrPtr=nullptr)
 Construct from entry name. More...
 
 Function1 (const word &entryName, const dictionary &dict, const objectRegistry *obrPtr=nullptr)
 Construct from entry name, (unused) dictionary and optional registry. More...
 
 Function1 (const Function1< scalar > &rhs)
 Copy construct. More...
 
 TypeName ("Function1") declareRunTimeSelectionTable(autoPtr
 Runtime type information. More...
 
virtual tmp< Function1< scalar > > clone () const=0
 Construct and return a clone. More...
 
virtual ~Function1 ()=default
 Destructor. More...
 
virtual bool constant () const
 Is value constant (i.e. independent of x) More...
 
virtual bool good () const
 Can function be evaluated? More...
 
virtual tmp< Field< scalar > > value (const scalarField &x) const
 Return value as a function of (scalar) independent variable. More...
 
virtual scalar integrate (const scalar x1, const scalar x2) const
 Integrate between two (scalar) values. More...
 
virtual tmp< Field< scalar > > integrate (const scalarField &x1, const scalarField &x2) const
 Integrate between two (scalar) values. More...
 
- Public Member Functions inherited from function1Base
 function1Base (const word &entryName, const objectRegistry *obrPtr=nullptr)
 Construct from entry name and optional registry. More...
 
 function1Base (const word &entryName, const dictionary &dict, const objectRegistry *obrPtr=nullptr)
 Construct from entry name, dictionary (unused) and optional registry. More...
 
 function1Base (const function1Base &rhs)
 Copy construct. More...
 
virtual ~function1Base ()
 Destructor. More...
 
const wordname () const noexcept
 The name of the entry. More...
 
const objectRegistrywhichDb () const noexcept
 Return the associated registry or nullptr. More...
 
void resetDb (const objectRegistry *obrPtr=nullptr) noexcept
 Reset the associated objectRegistry. More...
 
void resetDb (const objectRegistry &db) noexcept
 Reset the associated objectRegistry. More...
 
const objectRegistryobr () const
 Return the object registry. More...
 
bool isTime () const noexcept
 Return true if this function was created with the time database. More...
 
const Timetime () const
 Return the time database. More...
 
template<class MeshType >
const MeshType & mesh (const word &regionName=word::null) const
 Return the mesh database if this Function1 was created using a mesh. More...
 
- Public Member Functions inherited from refCount
constexpr refCount () noexcept
 Default construct, initializing count to 0. More...
 
int use_count () const noexcept
 Return the current reference count. More...
 
bool unique () const noexcept
 Return true if the reference count is zero. More...
 
void operator++ () noexcept
 Increment the reference count. More...
 
void operator++ (int) noexcept
 Increment the reference count. More...
 
void operator-- () noexcept
 Decrement the reference count. More...
 
void operator-- (int) noexcept
 Decrement the reference count. More...
 

Protected Member Functions

scalar linearRamp (const scalar t) const
 Simple linear ramp function that forms the basis of many more complex ramp functions. More...
 
- Protected Member Functions inherited from Function1< scalar >
void operator= (const Function1< scalar > &)=delete
 No copy assignment. More...
 
- Protected Member Functions inherited from function1Base
void operator= (const function1Base &)=delete
 No copy assignment. More...
 

Protected Attributes

scalar start_
 Start-time of the ramp function. More...
 
scalar duration_
 Duration of the ramp function. More...
 
- Protected Attributes inherited from function1Base
const word name_
 Name of entry. More...
 
const objectRegistryobrPtr_
 Pointer to an object registry. More...
 

Additional Inherited Members

- Public Types inherited from Function1< scalar >
typedef scalar returnType
 The return type. More...
 
- Static Public Member Functions inherited from Function1< scalar >
static autoPtr< Function1< scalar > > New (const word &entryName, const dictionary &dict, const word &redirectType, const objectRegistry *obrPtr=nullptr, const bool mandatory=true)
 Selector, with fallback redirection. More...
 
static autoPtr< Function1< scalar > > New (const word &entryName, const dictionary &dict, const objectRegistry *obrPtr=nullptr, const bool mandatory=true)
 Selector, without fallback redirection. More...
 
static refPtr< Function1< scalar > > New (HashPtrTable< Function1< scalar >> &cache, const word &entryName, const dictionary &dict, enum keyType::option matchOpt=keyType::LITERAL, const objectRegistry *obrPtr=nullptr, const bool mandatory=true)
 Selector with external storage of Function1. This also allows wildcard matches in a dictionary. More...
 
static autoPtr< Function1< scalar > > NewCompat (const word &entryName, std::initializer_list< std::pair< const char *, int >> compat, const dictionary &dict, const word &redirectType=word::null, const objectRegistry *obrPtr=nullptr, const bool mandatory=true)
 Compatibility selector, with fallback redirection. More...
 
static autoPtr< Function1< scalar > > NewIfPresent (const word &entryName, const dictionary &dict, const word &redirectType, const objectRegistry *obrPtr=nullptr)
 An optional selector, with fallback redirection. More...
 
static autoPtr< Function1< scalar > > NewIfPresent (const word &entryName, const dictionary &dict, const objectRegistry *obrPtr=nullptr)
 An optional selector, without fallback redirection. More...
 
- Public Attributes inherited from Function1< scalar >
 Function1
 
 dictionary
 
const wordentryName
 
const word const dictionary const objectRegistry entryName
 
const word const dictionarydict
 
const word const dictionary const objectRegistry dict
 
const word const dictionary const objectRegistryobrPtr
 
const word const dictionary const objectRegistry obrPtr
 

Detailed Description

Ramp function base class for the set of scalar functions starting from 0 and increasing monotonically to 1 from start over the duration and remaining at 1 thereafter.

Usage:

    <entryName> <rampFunction>;
    <entryName>Coeffs
    {
        start     10;
        duration  20;
    }

or

    <entryName>
    {
        type      <rampFunction>;
        start     10;
        duration  20;
    }

Where:

Property Description Required Default value
start Start time no 0
duration Duration yes
See also
Foam::Function1
Source files

Definition at line 95 of file ramp.H.

Constructor & Destructor Documentation

◆ ramp()

ramp ( const word entryName,
const dictionary dict,
const objectRegistry obrPtr = nullptr 
)

Construct from entry name, dictionary and optional registry.

Definition at line 34 of file ramp.C.

References dict, and Foam::read().

Here is the call graph for this function:

◆ ~ramp()

virtual ~ramp ( )
virtualdefault

Destructor.

Member Function Documentation

◆ linearRamp()

scalar linearRamp ( const scalar  t) const
inlineprotected

Simple linear ramp function that forms the basis of many more complex ramp functions.

Definition at line 117 of file ramp.H.

References Foam::clamp(), ramp::duration_, and ramp::start_.

Here is the call graph for this function:

◆ userTimeToTime()

void userTimeToTime ( const Time t)
virtual

Convert time.

Reimplemented from function1Base.

Definition at line 55 of file ramp.C.

References TimeState::userTimeToTime().

Here is the call graph for this function:

◆ value()

virtual scalar value ( const scalar  t) const
pure virtual

Return value for time t.

Reimplemented from Function1< scalar >.

Implemented in reverseRamp, stepRamp, halfCosineRamp, quadraticRamp, quarterSineRamp, stepFunction, linearRamp, and quarterCosineRamp.

◆ writeData()

void writeData ( Ostream os) const
virtual

Write in dictionary format.

Reimplemented from Function1< scalar >.

Definition at line 62 of file ramp.C.

References Foam::name(), os(), and Function1< Type >::writeData().

Here is the call graph for this function:

◆ writeEntries()

void writeEntries ( Ostream os) const
virtual

Write coefficient entries in dictionary format.

Reimplemented from Function1< scalar >.

Definition at line 48 of file ramp.C.

References os().

Here is the call graph for this function:

Member Data Documentation

◆ start_

scalar start_
protected

Start-time of the ramp function.

Definition at line 106 of file ramp.H.

Referenced by ramp::linearRamp().

◆ duration_

scalar duration_
protected

Duration of the ramp function.

Definition at line 111 of file ramp.H.

Referenced by ramp::linearRamp().


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