Jpp  19.0.0
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
JMATH::JPow< ID_t, _vF > Struct Template Reference

Power of x. More...

#include <JMathlib.hh>

Inheritance diagram for JMATH::JPow< ID_t, _vF >:
JMATH::JMathlib< JPow< ID_t > > JMATH::JCalculus< JPow< ID_t > >

Public Member Functions

 JPow ()
 Default constructor. More...
 
 JPow (const double alpha)
 Constructor. More...
 
double getValue (const double x) const
 Function value. More...
 
double getDerivative (const double x) const
 Derivative value. More...
 
const JPowgetGradient (const double x) const
 Get gradient. More...
 
double operator() (const Args &...args) const
 Function value. More...
 
JPow< ID_t > & negate ()
 Negate function. More...
 
JPow< ID_t > & add (const JPow< ID_t > &f1)
 Add function. More...
 
JPow< ID_t > & sub (const JPow< ID_t > &f1)
 Subtract function. More...
 
JPow< ID_t > & mul (const double factor)
 Scale function. More...
 
JPow< ID_t > & div (const double factor)
 Scale function. More...
 

Public Attributes

double alpha
 x^alpha More...
 

Static Public Attributes

static const int ID = ID_t
 
static const parameter_list< JPowparameters
 parameters More...
 

Detailed Description

template<int ID_t>
struct JMATH::JPow< ID_t, _vF >

Power of x.

Definition at line 1907 of file JMathlib.hh.

Constructor & Destructor Documentation

template<int ID_t>
JMATH::JPow< ID_t, _vF >::JPow ( )
inline

Default constructor.

Definition at line 1917 of file JMathlib.hh.

1917  :
1918  alpha(0.0)
1919  {}
double alpha
x^alpha
Definition: JMathlib.hh:1971
template<int ID_t>
JMATH::JPow< ID_t, _vF >::JPow ( const double  alpha)
inline

Constructor.

Parameters
alphavalue

Definition at line 1927 of file JMathlib.hh.

1927  :
1928  alpha(alpha)
1929  {}
double alpha
x^alpha
Definition: JMathlib.hh:1971

Member Function Documentation

template<int ID_t>
double JMATH::JPow< ID_t, _vF >::getValue ( const double  x) const
inline

Function value.

Parameters
xabscissa value
Returns
function value

Definition at line 1938 of file JMathlib.hh.

1939  {
1940  return pow(x, alpha);
1941  }
double alpha
x^alpha
Definition: JMathlib.hh:1971
T pow(const T &x, const double y)
Power .
Definition: JMath.hh:97
template<int ID_t>
double JMATH::JPow< ID_t, _vF >::getDerivative ( const double  x) const
inline

Derivative value.

Parameters
xabscissa value
Returns
derivative value

Definition at line 1950 of file JMathlib.hh.

1951  {
1952  return alpha * pow(x, alpha - 1);
1953  }
double alpha
x^alpha
Definition: JMathlib.hh:1971
T pow(const T &x, const double y)
Power .
Definition: JMath.hh:97
template<int ID_t>
const JPow& JMATH::JPow< ID_t, _vF >::getGradient ( const double  x) const
inline

Get gradient.

Parameters
xabscissa value
Returns
gradient

Definition at line 1962 of file JMathlib.hh.

1963  {
1964  static JPow gradient; // d(f)/d(a)
1965 
1966  gradient.alpha = this->getValue(x) * log(x);
1967 
1968  return gradient;
1969  }
double getValue(const double x) const
Function value.
Definition: JMathlib.hh:1938
Power of function.
Definition: JMathlib.hh:1798
double alpha
f(x)^alpha
Definition: JMathlib.hh:1878
double JMATH::JMathlib< JPow< ID_t > >::operator() ( const Args &...  args) const
inlineinherited

Function value.

Parameters
argsabscissa value(s)
Returns
function value

Definition at line 362 of file JMathlib.hh.

363  {
364  return static_cast<const JF1_t&>(*this).getValue(args...);
365  }
JPow< ID_t > & JMATH::JCalculus< JPow< ID_t > >::negate ( )
inlineinherited

Negate function.

Returns
this function

Definition at line 203 of file JMathlib.hh.

204  {
205  for (const auto& i : JF1_t::parameters) {
206  static_cast<JF1_t&>(*this).*i = -(static_cast<JF1_t&>(*this).*i);
207  }
208 
209  return static_cast<JF1_t&>(*this);
210  }
*fatal Wrong number of arguments esac JCookie sh typeset Z DETECTOR typeset Z SOURCE_RUN typeset Z TARGET_RUN set_variable PARAMETERS_FILE $WORKDIR parameters
Definition: diff-Tuna.sh:38
JPow< ID_t > & JMATH::JCalculus< JPow< ID_t > >::add ( const JPow< ID_t > &  f1)
inlineinherited

Add function.

Parameters
f1function
Returns
this function

Definition at line 219 of file JMathlib.hh.

220  {
221  for (const auto& i : JF1_t::parameters) {
222  static_cast<JF1_t&>(*this).*i += f1.*i;
223  }
224 
225  return static_cast<JF1_t&>(*this);
226  }
*fatal Wrong number of arguments esac JCookie sh typeset Z DETECTOR typeset Z SOURCE_RUN typeset Z TARGET_RUN set_variable PARAMETERS_FILE $WORKDIR parameters
Definition: diff-Tuna.sh:38
JPow< ID_t > & JMATH::JCalculus< JPow< ID_t > >::sub ( const JPow< ID_t > &  f1)
inlineinherited

Subtract function.

Parameters
f1function
Returns
this function

Definition at line 235 of file JMathlib.hh.

236  {
237  for (const auto& i : JF1_t::parameters) {
238  static_cast<JF1_t&>(*this).*i -= f1.*i;
239  }
240 
241  return static_cast<JF1_t&>(*this);
242  }
*fatal Wrong number of arguments esac JCookie sh typeset Z DETECTOR typeset Z SOURCE_RUN typeset Z TARGET_RUN set_variable PARAMETERS_FILE $WORKDIR parameters
Definition: diff-Tuna.sh:38
JPow< ID_t > & JMATH::JCalculus< JPow< ID_t > >::mul ( const double  factor)
inlineinherited

Scale function.

Parameters
factorfactor
Returns
this function

Definition at line 251 of file JMathlib.hh.

252  {
253  for (const auto& i : JF1_t::parameters) {
254  static_cast<JF1_t&>(*this).*i *= factor;
255  }
256 
257  return static_cast<JF1_t&>(*this);
258  }
*fatal Wrong number of arguments esac JCookie sh typeset Z DETECTOR typeset Z SOURCE_RUN typeset Z TARGET_RUN set_variable PARAMETERS_FILE $WORKDIR parameters
Definition: diff-Tuna.sh:38
JPow< ID_t > & JMATH::JCalculus< JPow< ID_t > >::div ( const double  factor)
inlineinherited

Scale function.

Parameters
factorfactor
Returns
this function

Definition at line 267 of file JMathlib.hh.

268  {
269  for (const auto& i : JF1_t::parameters) {
270  static_cast<JF1_t&>(*this).*i /= factor;
271  }
272 
273  return static_cast<JF1_t&>(*this);
274  }
*fatal Wrong number of arguments esac JCookie sh typeset Z DETECTOR typeset Z SOURCE_RUN typeset Z TARGET_RUN set_variable PARAMETERS_FILE $WORKDIR parameters
Definition: diff-Tuna.sh:38

Member Data Documentation

template<int ID_t>
const int JMATH::JPow< ID_t, _vF >::ID = ID_t
static

Definition at line 1911 of file JMathlib.hh.

template<int ID_t>
double JMATH::JPow< ID_t, _vF >::alpha

x^alpha

Definition at line 1971 of file JMathlib.hh.

template<int ID_t>
const parameter_list<JPow> JMATH::JPow< ID_t, _vF >::parameters
static

parameters

Definition at line 1972 of file JMathlib.hh.


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