Cantera  3.1.0a1
Loading...
Searching...
No Matches
Func1 Class Reference

Base class for 'functor' classes that evaluate a function of one variable. More...

#include <Func1.h>

Inheritance diagram for Func1:
[legend]

Detailed Description

Base class for 'functor' classes that evaluate a function of one variable.

Definition at line 74 of file Func1.h.

Public Member Functions

 Func1 (shared_ptr< Func1 > f1, shared_ptr< Func1 > f2)
 
 Func1 (shared_ptr< Func1 > f1, double A)
 
 Func1 (const Func1 &right)=delete
 
Func1operator= (const Func1 &right)=delete
 
virtual string type () const
 Returns a string describing the type of the function.
 
string typeName () const
 Returns a string with the class name of the functor.
 
double operator() (double t) const
 Calls method eval to evaluate the function.
 
virtual double eval (double t) const
 Evaluate the function.
 
virtual shared_ptr< Func1derivative () const
 Creates a derivative to the current function.
 
shared_ptr< Func1derivative3 () const
 Creates a derivative to the current function.
 
bool isIdentical (Func1 &other) const
 Routine to determine if two functions are the same.
 
virtual double isProportional (TimesConstant1 &other)
 
virtual double isProportional (Func1 &other)
 
virtual string write (const string &arg) const
 Write LaTeX string describing function.
 
double c () const
 Accessor function for the stored constant.
 
shared_ptr< Func1func1_shared () const
 Accessor function for m_f1_shared.
 
shared_ptr< Func1func2_shared () const
 Accessor function for m_f2_shared.
 
virtual int order () const
 Return the order of the function, if it makes sense.
 

Protected Attributes

double m_c = 0.0
 
Func1m_f1 = nullptr
 
Func1m_f2 = nullptr
 
shared_ptr< Func1m_f1_shared
 
shared_ptr< Func1m_f2_shared
 

Constructor & Destructor Documentation

◆ Func1() [1/2]

Func1 ( shared_ptr< Func1 f1,
shared_ptr< Func1 f2 
)
inline

Definition at line 79 of file Func1.h.

◆ Func1() [2/2]

Func1 ( shared_ptr< Func1 f1,
double  A 
)
inline

Definition at line 86 of file Func1.h.

Member Function Documentation

◆ type()

virtual string type ( ) const
inlinevirtual

Returns a string describing the type of the function.

Since
New in Cantera 3.0.

Reimplemented in Sin1, Cos1, Exp1, Log1, Pow1, Tabulated1, Const1, Sum1, Diff1, Product1, TimesConstant1, PlusConstant1, Ratio1, Composite1, Gaussian1, Poly1, Fourier1, Arrhenius1, and Periodic1.

Definition at line 97 of file Func1.h.

◆ typeName()

string typeName ( ) const

Returns a string with the class name of the functor.

Since
New in Cantera 3.0.

Definition at line 16 of file Func1.cpp.

◆ operator()()

double operator() ( double  t) const

Calls method eval to evaluate the function.

Definition at line 22 of file Func1.cpp.

◆ eval()

double eval ( double  t) const
virtual

Evaluate the function.

Reimplemented in Func1Py, Sin1, Cos1, Exp1, Log1, Pow1, Tabulated1, Const1, Sum1, Diff1, Product1, TimesConstant1, PlusConstant1, Ratio1, Composite1, Gaussian1, Poly1, Fourier1, Arrhenius1, and Periodic1.

Definition at line 28 of file Func1.cpp.

◆ derivative()

shared_ptr< Func1 > derivative ( ) const
virtual

Creates a derivative to the current function.

Returns
shared pointer to new derivative function.
Since
Starting in Cantera 3.1, the return type is a shared_ptr.

Reimplemented in Sin1, Cos1, Exp1, Log1, Pow1, Tabulated1, Const1, Sum1, Diff1, Product1, TimesConstant1, PlusConstant1, Ratio1, and Composite1.

Definition at line 33 of file Func1.cpp.

◆ derivative3()

shared_ptr< Func1 > derivative3 ( ) const
inline

Creates a derivative to the current function.

This will create a new derivative function

Returns
shared pointer to new derivative function.
Since
New in Cantera 3.0.
Deprecated:
Transitional name for derivative()

Definition at line 125 of file Func1.h.

◆ isIdentical()

bool isIdentical ( Func1 other) const

Routine to determine if two functions are the same.

Two functions are the same if they are the same function. This means that the ID and stored constant is the same. This means that the m_f1 and m_f2 are identical if they are non-null.

Definition at line 39 of file Func1.cpp.

◆ isProportional() [1/2]

double isProportional ( TimesConstant1 other)
virtual

Definition at line 506 of file Func1.cpp.

◆ isProportional() [2/2]

double isProportional ( Func1 other)
virtual

Definition at line 513 of file Func1.cpp.

◆ write()

string write ( const string &  arg) const
virtual

Write LaTeX string describing function.

Reimplemented in Sin1, Cos1, Exp1, Log1, Pow1, Tabulated1, Const1, Sum1, Diff1, Product1, TimesConstant1, PlusConstant1, Ratio1, and Composite1.

Definition at line 380 of file Func1.cpp.

◆ c()

double c ( ) const

Accessor function for the stored constant.

accessor function for the returned constant

Definition at line 64 of file Func1.cpp.

◆ func1_shared()

shared_ptr< Func1 > func1_shared ( ) const
inline

Accessor function for m_f1_shared.

Since
New in Cantera 3.0.

Definition at line 146 of file Func1.h.

◆ func2_shared()

shared_ptr< Func1 > func2_shared ( ) const
inline

Accessor function for m_f2_shared.

Since
New in Cantera 3.0.

Definition at line 152 of file Func1.h.

◆ order()

int order ( ) const
virtual

Return the order of the function, if it makes sense.

Reimplemented in Sum1, Diff1, Product1, TimesConstant1, PlusConstant1, Ratio1, and Composite1.

Definition at line 69 of file Func1.cpp.

Member Data Documentation

◆ m_c

double m_c = 0.0
protected

Definition at line 160 of file Func1.h.

◆ m_f1

Func1* m_f1 = nullptr
protected

Definition at line 161 of file Func1.h.

◆ m_f2

Func1* m_f2 = nullptr
protected

Definition at line 162 of file Func1.h.

◆ m_f1_shared

shared_ptr<Func1> m_f1_shared
protected

Definition at line 164 of file Func1.h.

◆ m_f2_shared

shared_ptr<Func1> m_f2_shared
protected

Definition at line 165 of file Func1.h.


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