SIMLIB/C++  3.07
Public Member Functions | Protected Attributes | List of all members
simlib3::Rline Class Reference

nonlinear block: function defined by given table of values More...

#include <simlib.h>

Inheritance diagram for simlib3::Rline:
Inheritance graph
[legend]
Collaboration diagram for simlib3::Rline:
Collaboration graph
[legend]

Public Member Functions

 Rline (Input in, int num, double *X, double *Y)
 constructor of class Rline implements table-defined function (linear interpolation) More...
 
 ~Rline ()
 
virtual void _Eval () override
 evaluate block (with loop detection) More...
 
virtual double Value () override
 get block output value
this method should be defined in classes derived from aContiBlock More...
 
- Public Member Functions inherited from simlib3::aContiBlock1
 aContiBlock1 (Input i)
 constructor for blocks with single input More...
 
double InputValue ()
 
- Public Member Functions inherited from simlib3::aContiBlock
 aContiBlock ()
 
- Public Member Functions inherited from simlib3::SimObject
bool TestAndSetFlag (bool new_value, unsigned n)
 internal method for flag manipulation is used for algebraic loop checking in continuous blocks More...
 
 SimObject ()
 constructor More...
 
virtual ~SimObject ()
 virtual destructor More...
 
void * operator new (size_t size)
 allocate object, set _flags More...
 
void operator delete (void *ptr)
 deallocate object More...
 
void * operator new[] (size_t size)=delete
 
void operator delete[] (void *ptr)=delete
 
bool isAllocated () const
 
virtual std::string Name () const
 get object name More...
 
bool HasName () const
 
void SetName (const std::string &name)
 assign the name More...
 
virtual void Output () const
 print object to default output More...
 

Protected Attributes

int n
 
double * tableX
 
double * tableY
 
- Protected Attributes inherited from simlib3::aContiBlock
bool isEvaluated
 
- Protected Attributes inherited from simlib3::SimObject
unsigned _flags
 bool flags for internal use (TODO bitfield?) More...
 

Additional Inherited Members

- Public Types inherited from simlib3::SimObject
enum  _Flags { _CLEAR_ALL_FLAGS = 0, _ALLOCATED_FLAG = 1<<0, _EVAL_FLAG = 1<<1, _HAS_NAME_FLAG = 1<<2 }
 

Detailed Description

nonlinear block: function defined by given table of values

Definition at line 1624 of file simlib.h.

Constructor & Destructor Documentation

◆ Rline()

simlib3::Rline::Rline ( Input  in,
int  num,
double *  X,
double *  Y 
)

constructor of class Rline implements table-defined function (linear interpolation)

Definition at line 297 of file stdblock.cc.

References Dprintf, n, simlib3::RlineErr1, simlib3::RlineErr2, simlib3::SIMLIB_error(), tableX, and tableY.

◆ ~Rline()

simlib3::Rline::~Rline ( )

Definition at line 323 of file stdblock.cc.

References Dprintf, n, tableX, and tableY.

Member Function Documentation

◆ _Eval()

void simlib3::Rline::_Eval ( )
overridevirtual

evaluate block (with loop detection)

evaluation with algebraic loop detection

Reimplemented from simlib3::aContiBlock.

Definition at line 330 of file stdblock.cc.

◆ Value()

double simlib3::Rline::Value ( )
overridevirtual

get block output value
this method should be defined in classes derived from aContiBlock

Implements simlib3::aContiBlock.

Definition at line 334 of file stdblock.cc.

References simlib3::SimObject::HasName(), simlib3::aContiBlock1::InputValue(), n, simlib3::SimObject::Name(), simlib3::SIMLIB_create_tmp_name(), tableX, and tableY.

Member Data Documentation

◆ n

int simlib3::Rline::n
protected

Definition at line 1626 of file simlib.h.

Referenced by Rline(), Value(), and ~Rline().

◆ tableX

double* simlib3::Rline::tableX
protected

Definition at line 1627 of file simlib.h.

Referenced by Rline(), Value(), and ~Rline().

◆ tableY

double* simlib3::Rline::tableY
protected

Definition at line 1628 of file simlib.h.

Referenced by Rline(), Value(), and ~Rline().


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