Jpp 21.0.0-rc.3
the software that should make you happy
Loading...
Searching...
No Matches
JMATH::JSub< JF1_t, double > Struct Template Reference

Subtraction of constant value. More...

#include <JMathlib.hh>

Inheritance diagram for JMATH::JSub< JF1_t, double >:
JMATH::JMathlib< JSub< JF1_t, double > >

Public Member Functions

 JSub ()
 Default constructor.
 
 JSub (const JF1_t &f1, const double value)
 Constructor.
 
template<class ... Args>
double getValue (const Args &...args) const
 Function value.
 
double getDerivative (const double x) const
 Derivative value.
 
template<class ... Args>
JSub getGradient (const Args &...args) const
 Get gradient.
 
double operator() (const Args &...args) const
 Function value.
 
double operator[] (const size_t i) const
 Get value of parameter at given index.
 
double & operator[] (const size_t i)
 Get value of parameter at given index.
 

Static Public Member Functions

static size_t size ()
 Get size of parameter.
 

Private Attributes

double value
 

Detailed Description

template<class JF1_t>
struct JMATH::JSub< JF1_t, double >

Subtraction of constant value.

Definition at line 723 of file JMathlib.hh.

Constructor & Destructor Documentation

◆ JSub() [1/2]

template<class JF1_t >
JMATH::JSub< JF1_t, double >::JSub ( )
inline

Default constructor.

Definition at line 734 of file JMathlib.hh.

735 {}

◆ JSub() [2/2]

template<class JF1_t >
JMATH::JSub< JF1_t, double >::JSub ( const JF1_t & f1,
const double value )
inline

Constructor.

Parameters
f1function
valuevalue

Definition at line 744 of file JMathlib.hh.

744 :
745 JF1_t(f1),
746 value(value)
747 {}

Member Function Documentation

◆ getValue()

template<class JF1_t >
template<class ... Args>
double JMATH::JSub< JF1_t, double >::getValue ( const Args &... args) const
inline

Function value.

Parameters
argsabscissa value(s)
Returns
function value

Definition at line 757 of file JMathlib.hh.

758 {
759 return static_cast<const JF1_t&>(*this).getValue(args...) - value;
760 }

◆ getDerivative()

template<class JF1_t >
double JMATH::JSub< JF1_t, double >::getDerivative ( const double x) const
inline

Derivative value.

Parameters
xabscissa value
Returns
derivative value

Definition at line 769 of file JMathlib.hh.

770 {
771 return static_cast<const JF1_t&>(*this).getDerivative(x);
772 }

◆ getGradient()

template<class JF1_t >
template<class ... Args>
JSub JMATH::JSub< JF1_t, double >::getGradient ( const Args &... args) const
inline

Get gradient.

Parameters
argsabscissa value(s)
Returns
gradient

Definition at line 782 of file JMathlib.hh.

783 {
784 JSub gradient;
785
786 static_cast<JF1_t&>(gradient) = static_cast<const JF1_t&>(*this).getGradient(args...);
787
788 return gradient;
789 }
JSub()
Default constructor.
Definition JMathlib.hh:734

◆ operator()()

double JMATH::JMathlib< JF1_t >::operator() ( const Args &... args) const
inlineinherited

Function value.

Parameters
argsabscissa value(s)
Returns
function value

Definition at line 331 of file JMathlib.hh.

332 {
333 return static_cast<const JF1_t&>(*this).getValue(args...);
334 }

◆ size()

static size_t JMATH::JMathlib< JF1_t >::size ( )
inlinestaticinherited

Get size of parameter.

Returns
size

Definition at line 538 of file JMathlib.hh.

539 {
540 return JF1_t::parameters.size();
541 }

◆ operator[]() [1/2]

double JMATH::JMathlib< JF1_t >::operator[] ( const size_t i) const
inlineinherited

Get value of parameter at given index.

Parameters
iindex
Returns
value

Definition at line 550 of file JMathlib.hh.

551 {
552 return static_cast<const JF1_t&>(*this).*JF1_t::parameters[i];
553 }

◆ operator[]() [2/2]

double & JMATH::JMathlib< JF1_t >::operator[] ( const size_t i)
inlineinherited

Get value of parameter at given index.

Parameters
iindex
Returns
value

Definition at line 562 of file JMathlib.hh.

563 {
564 return static_cast<JF1_t&>(*this).*JF1_t::parameters[i];
565 }

Member Data Documentation

◆ value

template<class JF1_t >
double JMATH::JSub< JF1_t, double >::value
private

Definition at line 792 of file JMathlib.hh.


The documentation for this struct was generated from the following file: