Chi-Tech
chi_math::functions::PiecewiseLinear1D Class Reference

#include <piecewise_linear_1D.h>

Inheritance diagram for chi_math::functions::PiecewiseLinear1D:
chi_math::FunctionDimAToDimB ChiObject

Public Member Functions

 PiecewiseLinear1D (const chi::InputParameters &params)
 
std::vector< double > Evaluate (const std::vector< double > &values) const override
 
std::vector< double > EvaluateSlope (const std::vector< double > &values) const override
 
double ScalarFunction1Parameter (double x) const override
 
double ScalarFunctionSlope1Parameter (double x) const override
 
bool HasSlope () const override
 
bool HasCurvature () const override
 
- Public Member Functions inherited from chi_math::FunctionDimAToDimB
 FunctionDimAToDimB (const chi::InputParameters &params)
 
size_t InputDimension () const
 
size_t OutputDimension () const
 
virtual bool HasSlope () const =0
 
virtual bool HasCurvature () const =0
 
virtual double ScalarFunction1Parameter (double) const
 
virtual double ScalarFunctionSlope1Parameter (double) const
 
virtual double ScalarFunctionCurvature1Parameter (double) const
 
virtual double ScalarFunction4Parameters (double, double, double, double) const
 
virtual double ScalarFunctionSlope4Parameters (double, double, double, double) const
 
virtual double ScalarFunctionCurvature4Parameters (double, double, double, double) const
 
virtual std::vector< double > Evaluate (const std::vector< double > &vals) const =0
 
virtual std::vector< double > EvaluateSlope (const std::vector< double > &vals) const
 
- Public Member Functions inherited from ChiObject
 ChiObject ()
 
 ChiObject (const chi::InputParameters &params)
 
void SetStackID (size_t stack_id)
 
size_t StackID () const
 
virtual void PushOntoStack (std::shared_ptr< ChiObject > &new_object)
 
virtual ~ChiObject ()=default
 

Static Public Member Functions

static chi::InputParameters GetInputParameters ()
 
- Static Public Member Functions inherited from chi_math::FunctionDimAToDimB
static chi::InputParameters GetInputParameters ()
 
- Static Public Member Functions inherited from ChiObject
static chi::InputParameters GetInputParameters ()
 

Private Attributes

const std::vector< double > x_values_
 
const std::vector< double > y_values_
 
std::vector< double > slopes_
 
const size_t num_vals_
 
std::vector< double > delta_x_values_
 

Detailed Description

Definition at line 8 of file piecewise_linear_1D.h.

Constructor & Destructor Documentation

◆ PiecewiseLinear1D()

chi_math::functions::PiecewiseLinear1D::PiecewiseLinear1D ( const chi::InputParameters params)
explicit

Definition at line 30 of file piecewise_linear_1D.cc.

Member Function Documentation

◆ Evaluate()

std::vector< double > chi_math::functions::PiecewiseLinear1D::Evaluate ( const std::vector< double > &  values) const
overridevirtual

Implements chi_math::FunctionDimAToDimB.

Definition at line 58 of file piecewise_linear_1D.cc.

◆ EvaluateSlope()

std::vector< double > chi_math::functions::PiecewiseLinear1D::EvaluateSlope ( const std::vector< double > &  values) const
overridevirtual

Reimplemented from chi_math::FunctionDimAToDimB.

Definition at line 67 of file piecewise_linear_1D.cc.

◆ GetInputParameters()

chi::InputParameters chi_math::functions::PiecewiseLinear1D::GetInputParameters ( )
static

Definition at line 10 of file piecewise_linear_1D.cc.

◆ HasCurvature()

bool chi_math::functions::PiecewiseLinear1D::HasCurvature ( ) const
inlineoverridevirtual

Implements chi_math::FunctionDimAToDimB.

Definition at line 24 of file piecewise_linear_1D.h.

◆ HasSlope()

bool chi_math::functions::PiecewiseLinear1D::HasSlope ( ) const
inlineoverridevirtual

Implements chi_math::FunctionDimAToDimB.

Definition at line 23 of file piecewise_linear_1D.h.

◆ ScalarFunction1Parameter()

double chi_math::functions::PiecewiseLinear1D::ScalarFunction1Parameter ( double  x) const
overridevirtual

Reimplemented from chi_math::FunctionDimAToDimB.

Definition at line 75 of file piecewise_linear_1D.cc.

◆ ScalarFunctionSlope1Parameter()

double chi_math::functions::PiecewiseLinear1D::ScalarFunctionSlope1Parameter ( double  x) const
overridevirtual

Reimplemented from chi_math::FunctionDimAToDimB.

Definition at line 93 of file piecewise_linear_1D.cc.

Field Documentation

◆ delta_x_values_

std::vector<double> chi_math::functions::PiecewiseLinear1D::delta_x_values_
private

Distance between independent variable values. Used for interpolation.

Definition at line 38 of file piecewise_linear_1D.h.

◆ num_vals_

const size_t chi_math::functions::PiecewiseLinear1D::num_vals_
private

The number of items in the discrete function values

Definition at line 36 of file piecewise_linear_1D.h.

◆ slopes_

std::vector<double> chi_math::functions::PiecewiseLinear1D::slopes_
private

Definition at line 32 of file piecewise_linear_1D.h.

◆ x_values_

const std::vector<double> chi_math::functions::PiecewiseLinear1D::x_values_
private

Independent variable values.

Definition at line 28 of file piecewise_linear_1D.h.

◆ y_values_

const std::vector<double> chi_math::functions::PiecewiseLinear1D::y_values_
private

Dependent variable values.

Definition at line 30 of file piecewise_linear_1D.h.


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