Planetary Orbital Evolution due to Tides
Orbital evolution of two objects experiencing tides
ExponentialPlusFunc Class Reference

Represents a function of the form offset + scale*exp(rate*x) as well as its derivative. More...

#include <PolynomialEvolution.h>

+ Inheritance diagram for ExponentialPlusFunc:
+ Collaboration diagram for ExponentialPlusFunc:

Public Member Functions

 ExponentialPlusFunc (Core::OneArgumentDiffFunction *offset, double scale, double rate, double deriv_x=Core::NaN)
 Create the function with the given parameters. More...
 
double operator() (double x) const
 Evaluate the function at the given x. More...
 
const Core::FunctionDerivativesderiv (double x) const
 Returns the derivatives at the given x. More...
 
double order (unsigned deriv_order=1) const
 Return the given order-th derivative at x set by previous call to deriv(). More...
 
double range_high () const
 The upper end of the range over which the function is defined. More...
 
double range_low () const
 The lower end of the range over which the function is defined. More...
 
Core::InterpSolutionIterator crossings (double) const
 Iterator over the points at which the function takes the given value. More...
 
- Public Member Functions inherited from Core::OneArgumentFunction< double, double >
virtual ~OneArgumentFunction ()
 Provide a virtual destructor for a virtual class. More...
 

Private Attributes

double __scale
 
double __rate
 
double __deriv_x
 
Core::OneArgumentDiffFunction__offset
 

Additional Inherited Members

- Private Member Functions inherited from Core::FunctionDerivatives
virtual ~FunctionDerivatives ()
 Clean up. More...
 

Detailed Description

Represents a function of the form offset + scale*exp(rate*x) as well as its derivative.

Definition at line 394 of file PolynomialEvolution.h.

Constructor & Destructor Documentation

◆ ExponentialPlusFunc()

ExponentialPlusFunc::ExponentialPlusFunc ( Core::OneArgumentDiffFunction offset,
double  scale,
double  rate,
double  deriv_x = Core::NaN 
)
inline

Create the function with the given parameters.

Definition at line 402 of file PolynomialEvolution.h.

Member Function Documentation

◆ crossings()

Core::InterpSolutionIterator ExponentialPlusFunc::crossings ( double  ) const
inlinevirtual

Iterator over the points at which the function takes the given value.

Implements Core::OneArgumentFunction< double, double >.

Definition at line 431 of file PolynomialEvolution.h.

◆ deriv()

const Core::FunctionDerivatives* ExponentialPlusFunc::deriv ( double  x) const
inlinevirtual

Returns the derivatives at the given x.

Implements Core::OneArgumentDiffFunction.

Definition at line 417 of file PolynomialEvolution.h.

◆ operator()()

double ExponentialPlusFunc::operator() ( double  x) const
inlinevirtual

Evaluate the function at the given x.

Implements Core::OneArgumentFunction< double, double >.

Definition at line 413 of file PolynomialEvolution.h.

◆ order()

double ExponentialPlusFunc::order ( unsigned  deriv_order = 1) const
virtual

Return the given order-th derivative at x set by previous call to deriv().

Implements Core::FunctionDerivatives.

Definition at line 420 of file PolynomialEvolution.cpp.

◆ range_high()

double ExponentialPlusFunc::range_high ( ) const
inlinevirtual

The upper end of the range over which the function is defined.

Implements Core::OneArgumentFunction< double, double >.

Definition at line 425 of file PolynomialEvolution.h.

◆ range_low()

double ExponentialPlusFunc::range_low ( ) const
inlinevirtual

The lower end of the range over which the function is defined.

Implements Core::OneArgumentFunction< double, double >.

Definition at line 428 of file PolynomialEvolution.h.


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