C3D Toolkit
Kernel - 117982, Vision - 2.9.2.2
|
Function as node of a binary tree. More...
#include <pars_equation_tree.h>
Public Types | |
enum | EquFnCode { eFnCode_unknown = -1 , eFnCode_first = 0 , eFnCode_sin = eFnCode_first , eFnCode_cos , eFnCode_tan , eFnCode_sqrt , eFnCode_atan , eFnCode_exp , eFnCode_ln , eFnCode_abs , eFnCode_DegBegin , eFnCode_sind = eFnCode_DegBegin , eFnCode_cosd , eFnCode_tand , eFnCode_DegEnd = eFnCode_tand , eFnCode_atand , eFnCode_lg , eFnCode_ceil , eFnCode_floor , eFnCode_round , eFnCode_acos , eFnCode_acosd , eFnCode_asin , eFnCode_asind , eFnCode_rad , eFnCode_deg , eFnCode_last = eFnCode_deg } |
Types of functions. More... | |
![]() | |
typedef std::map< ItTreeVariable *, ItTreeVariable * > | EqualVarsMap |
A set of pairs of variables. | |
typedef std::map< const ItCoord *, DerivesValues > | VarsDerives |
A set of pairs: coordinate - value and derivatives. | |
Public Member Functions | |
BTreeFunction (EquFnCode code, BTreeNode &p) | |
Constructor. More... | |
BTreeFunction (const BTreeFunction &) | |
Copy-constructor. | |
virtual | ~BTreeFunction () |
Destructor. | |
BteNodeType | IsA () const override |
Get type of a tree node. | |
BTreeNode * | Duplicate () const override |
Create a copy of the object. | |
bool | IsLine () const override |
Function is linear. | |
bool | IsCos () const |
looks like a * cos() + b | |
Functions for calculation of the value and the derivative. | |
EquTreeResCode | GetValue (double &value) 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... | |
Functions for replacing variables by names. | |
void | ReplaceParVariable (const c3d::string_t &varName, ItTreeVariable &newVar) override |
Replace variables. More... | |
void | ReplaceParVariable (const ItTreeVariable &var, const BTreeNode &subTree) override |
Replace a node. More... | |
Functions for access to data. | |
virtual BTreeNode * | GetSubNode (size_t i) |
Get a child node by an index. | |
bool | GetDefRange (DefRange &, ItTreeVariable &, bool stopOnBreak) const override |
Domain. More... | |
std::unique_ptr< BTreeNode > | FixVars (const RPArray< ItTreeVariable > &unfixed, PArray< ItUserFunc > &newFuncs, EquTreeResCode &) const override |
Fixed variables. More... | |
std::unique_ptr< BTreeNode > | GetCalcEquivalent () const override |
Get equivalent node. | |
void | GetString (c3d::string_t &str) const override |
Get string. More... | |
size_t | SizeOf () const override |
Get size in bytes. | |
Comparison function. | |
bool | IsEqual (const BTreeNode &other, const EqualVarsMap &equVars) const override |
Whether a node is equal to the given node. More... | |
bool | IsEqual (const BTreeFunction &other, const EqualVarsMap &equVars) const override |
Whether a node is equal to the given node. More... | |
![]() | |
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 BTreeOperation &, const EqualVarsMap &) const |
Whether the node is equal to the given node. More... | |
virtual bool | IsEqual (const BTreeOperation1Arg &, 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... | |
![]() | |
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 | |
![]() | |
BteNodeType | type |
A type of node. | |
![]() | |
BTreeNode () | |
Default constructor. | |
![]() | |
VarsDerives | varDers |
Working variables. | |
Function as node of a binary tree.
Node of a binary tree denoting a function.
Types of functions.
Types of functions.
Constructor.
Constructor.
[in] | code | - Type of a function. |
[in] | p | - Parameter of a function. |
|
overridevirtual |
Calculate value.
Calculate value of node.
[out] | fValue | - Value. |
Implements BTreeNode.
|
overridevirtual |
Calculate a value and derivatives.
Calculate a value and derivatives.
[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. |
Implements BTreeNode.
|
overridevirtual |
Get the used variables.
Get the used variables.
[out] | arr | - Variables. |
[out] | funcs | - User functions. |
Implements BTreeNode.
|
inlineoverridevirtual |
Set value.
Set 'v' value to a tree node.
[in] | v | - Desirable value. |
[in] | unfixedDVars | - Variables which values can be changed. |
Implements BTreeNode.
|
overridevirtual |
Replace variables.
Replace all variables with the specified name by a new variable.
[out] | varName | - Name. |
[out] | newVar | - New variable. |
Implements BTreeNode.
|
overridevirtual |
Replace a node.
Replace a node with a copy of a new one if the given variable is used.
[out] | var | - Variable. |
[out] | subTree | - New node. |
Implements BTreeNode.
|
overridevirtual |
Domain.
Domain.
[in,out] | defRange | - Domain. |
[out] | var | - Variable. |
[in] | stopOnBreak | - Not to search the discontinuities in the definition domain. |
Implements BTreeNode.
|
overridevirtual |
Fixed variables.
Fixed variables.
[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. |
Implements BTreeNode.
|
overridevirtual |
|
inlineoverridevirtual |
Whether a node is equal to the given node.
Whether a node is equal to the given node.
[in] | other | - Node for comparison. |
[in] | equVars | - A set of pairs of equal variables. |
Implements BTreeNode.
|
overridevirtual |
Whether a node is equal to the given node.
Whether a node is equal to the given node.
[in] | other | - Node for comparison. |
[in] | equVars | - A set of pairs of equal variables. |
Reimplemented from BTreeNode.