C3D Toolkit  Kernel - 117982, Vision - 2.9.2.2

Operation with one argument as a node of a binary tree. More...

#include <pars_equation_tree.h>

+ Inheritance diagram for BTreeOperation1Arg:
+ Collaboration diagram for BTreeOperation1Arg:

Public Member Functions

BteNodeType IsA () const override
 Get type of a tree node.
 
BTreeNodeDuplicate () const override
 Create a copy of the object.
 
bool IsLine () const override
 Function is linear.
 
EquTreeResCode GetValue (double &fvalue) const override
 Calculate value. More...
 
EquTreeResCode CalculateDerives (double &, double &, double &, double &, const VarsDerives &) const override
 Calculate a value and derivatives. More...
 
void GetUsedVariables (SSArray< ItTreeVariable * > &, SSArray< ItUserFunc * > &) const override
 Get the used variables. More...
 
bool SetValue (double, const std::set< ItTreeVariable * > &) override
 Set value. More...
 
void ReplaceParVariable (const c3d::string_t &varName, ItTreeVariable &newVar) override
 Replace all variables with name 'varName' by variable 'newVar'

 
void ReplaceParVariable (const ItTreeVariable &, const BTreeNode &) override
 Replace a node. More...
 
bool GetDefRange (DefRange &range, ItTreeVariable &var, bool stopOnBreak) const override
 Domain. More...
 
std::unique_ptr< BTreeNodeFixVars (const RPArray< ItTreeVariable > &unfixed, PArray< ItUserFunc > &newFuncs, EquTreeResCode &) const override
 Fixed variables. More...
 
std::unique_ptr< BTreeNodeGetCalcEquivalent () const override
 Get equivalent node.
 
void GetString (c3d::string_t &str) const override
 Get string. More...
 
bool IsEqual (const BTreeNode &other, const EqualVarsMap &equVars) const override
 Whether the node is equal to the given node. More...
 
bool IsEqual (const BTreeOperation1Arg &other, const EqualVarsMap &equVars) const override
 Whether the node is equal to the given node. More...
 
size_t SizeOf () const override
 Get size in bytes.
 
- Public Member Functions inherited from BTreeNode
EquTreeResCode CalculateDerives (const ItCoord *coord, double &v, double &fd, double &sd, double &td) const
 Calculate a value and derivatives. More...
 
virtual void ReplaceIntVariable (const c3d::string_t &, ItIntervalTreeVariable &)
 Replace variables. More...
 
bool GetExtremumPoints (const c3d::DoublePair &interval, ItTreeVariable &var, c3d::DoubleVector &points)
 Get value of parameter of extremum. More...
 
virtual bool IsEqual (const BTreeConst &, const EqualVarsMap &) const
 Whether the node is equal to the given node. More...
 
virtual bool IsEqual (const BTreeIdent &, const EqualVarsMap &) const
 Whether the node is equal to the given node. More...
 
virtual bool IsEqual (const BTreeFunction &, const EqualVarsMap &) const
 Whether the node is equal to the given node. More...
 
virtual bool IsEqual (const BTreeOperation &, const EqualVarsMap &) const
 Whether the node is equal to the given node. More...
 
virtual bool IsEqual (const BTreeOperation3Args &, const EqualVarsMap &) const
 Whether the node is equal to the given node. More...
 
virtual bool IsEqual (const BTreeUserFunc &, const EqualVarsMap &) const
 Whether the node is equal to the given node. More...
 
- Public Member Functions inherited from TapeBase
 TapeBase (RegistrableRec regs=noRegistrable)
 Constructor.
 
 TapeBase (const TapeBase &)
 Copy-constructor.
 
virtual ~TapeBase ()
 Destructor.
 
RegistrableRec GetRegistrable () const
 Whether the stream class is registrable.
 
void SetRegistrable (RegistrableRec regs=registrable) const
 Set the state of registration of the stream class.
 
virtual const char * GetPureName (const VersionContainer &) const
 Get the class name.
 
virtual bool IsFamilyRegistrable () const
 Whether the object belongs to a registrable family.
 

Additional Inherited Members

- Public Types inherited from BTreeNode
typedef std::map< ItTreeVariable *, ItTreeVariable * > EqualVarsMap
 A set of pairs of variables.
 
typedef std::map< const ItCoord *, DerivesValuesVarsDerives
 A set of pairs: coordinate - value and derivatives.
 
- Public Attributes inherited from BTreeNode
BteNodeType type
 A type of node.
 
- Protected Member Functions inherited from BTreeNode
 BTreeNode ()
 Default constructor.
 
- Protected Attributes inherited from BTreeNode
VarsDerives varDers
 Working variables.
 

Detailed Description

Operation with one argument as a node of a binary tree.

Node of a binary tree denoting an operation with one argument.

Member Function Documentation

◆ GetValue()

EquTreeResCode BTreeOperation1Arg::GetValue ( double &  fValue) const
overridevirtual

Calculate value.

Calculate value of node.

Parameters
[out]fValue- Value.
Returns
String parsing result code.

Implements BTreeNode.

◆ CalculateDerives()

EquTreeResCode BTreeOperation1Arg::CalculateDerives ( double &  fValue,
double &  derive1,
double &  derive2,
double &  derive3,
const VarsDerives ders 
) const
overridevirtual

Calculate a value and derivatives.

Calculate a value and derivatives.

Parameters
[out]fValue- Value.
[out]derive1- The first derivative.
[out]derive2- The second derivative.
[out]derive3- The third derivative.
[in]ders- Set of values and derivatives.
Returns
String parsing result code.

Implements BTreeNode.

◆ GetUsedVariables()

void BTreeOperation1Arg::GetUsedVariables ( SSArray< ItTreeVariable * > &  arr,
SSArray< ItUserFunc * > &  funcs 
) const
overridevirtual

Get the used variables.

Get the used variables.

Parameters
[out]arr- Variables.
[out]funcs- User functions.

Implements BTreeNode.

◆ SetValue()

bool BTreeOperation1Arg::SetValue ( double  v,
const std::set< ItTreeVariable * > &  unfixedDVars 
)
overridevirtual

Set value.

Set 'v' value to a tree node.

Parameters
[in]v- Desirable value.
[in]unfixedDVars- Variables which values can be changed.

Implements BTreeNode.

◆ ReplaceParVariable()

void BTreeOperation1Arg::ReplaceParVariable ( const ItTreeVariable var,
const BTreeNode subTree 
)
overridevirtual

Replace a node.

Replace a node with a copy of a new one if the given variable is used.

Parameters
[out]var- Variable.
[out]subTree- New node.

Implements BTreeNode.

◆ GetDefRange()

bool BTreeOperation1Arg::GetDefRange ( DefRange defRange,
ItTreeVariable var,
bool  stopOnBreak 
) const
inlineoverridevirtual

Domain.

Domain.

Parameters
[in,out]defRange- Domain.
[out]var- Variable.
[in]stopOnBreak- Not to search the discontinuities in the definition domain.

Implements BTreeNode.

◆ FixVars()

std::unique_ptr<BTreeNode> BTreeOperation1Arg::FixVars ( const RPArray< ItTreeVariable > &  unfixedVars,
PArray< ItUserFunc > &  newFuncs,
EquTreeResCode code 
) const
overridevirtual

Fixed variables.

Fixed variables.

Parameters
[in]unfixedVars- A set of unfixed variables. If variable was found in set, then fix the copy.
[in]newFuncs- User functions.
[out]code- Result codes of string parsing.
Returns
Variable for fixation.

Implements BTreeNode.

◆ GetString()

void BTreeOperation1Arg::GetString ( c3d::string_t ) const
overridevirtual

Get string.

Get expression string.

Parameters
[out]-String.

Implements BTreeNode.

◆ IsEqual() [1/2]

bool BTreeOperation1Arg::IsEqual ( const BTreeNode other,
const EqualVarsMap varsMap 
) const
inlineoverridevirtual

Whether the node is equal to the given node.

Whether the node is equal to the given node.

Parameters
[in]other- Node for comparison.
[in]varsMap- A set of pairs of equal variables.
Returns
true if nodes are equal.

Implements BTreeNode.

◆ IsEqual() [2/2]

bool BTreeOperation1Arg::IsEqual ( const BTreeOperation1Arg ,
const EqualVarsMap  
) const
overridevirtual

Whether the node is equal to the given node.

Whether the node is equal to the given node.

Returns
false.

Reimplemented from BTreeNode.


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