Loading [MathJax]/extensions/tex2jax.js
Cantera  3.2.0a1
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
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.
 
virtual bool isIdentical (shared_ptr< Func1 > other) const
 Routine to determine if two functions are the same.
 
virtual string write (const string &arg) const
 Write LaTeX string describing function.
 
double c () const
 Accessor function for the stored constant m_c.
 
shared_ptr< Func1func1_shared () const
 Accessor function for m_f1.
 
shared_ptr< Func1func2_shared () const
 Accessor function for m_f2.
 
virtual int order () const
 Return the order of the function, if it makes sense.
 

Protected Attributes

double m_c = 0.0
 
shared_ptr< Func1m_f1
 
shared_ptr< Func1m_f2
 

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 81 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 90 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.

◆ isIdentical()

bool isIdentical ( shared_ptr< Func1 other) const
virtual

Routine to determine if two functions are the same.

Two functions are the same if they are the same function. For example, either ID and stored constant are the same, or the m_f1 and m_f2 are identical if they are non-null. Functors of the base class Func1 are by default not identical, as they are used by callback functions that cannot be differentiated. In instances where exact comparisons are not implemented, false is returned to prevent false positives that could lead to incorrect simplifications of compound functors.

Reimplemented in Tabulated1, Gaussian1, Poly1, Fourier1, and Arrhenius1.

Definition at line 39 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, Composite1, and Poly1.

Definition at line 415 of file Func1.cpp.

◆ c()

double c ( ) const

Accessor function for the stored constant m_c.

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.

Since
New in Cantera 3.0.

Definition at line 130 of file Func1.h.

◆ func2_shared()

shared_ptr< Func1 > func2_shared ( ) const
inline

Accessor function for m_f2.

Since
New in Cantera 3.0.

Definition at line 136 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 144 of file Func1.h.

◆ m_f1

shared_ptr<Func1> m_f1
protected

Definition at line 145 of file Func1.h.

◆ m_f2

shared_ptr<Func1> m_f2
protected

Definition at line 146 of file Func1.h.


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