xc
Public Member Functions | Friends | List of all members
ExprAlgebra Class Reference

Expresión algebraica. More...

#include <ExprAlgebra.h>

Inheritance diagram for ExprAlgebra:
Inheritance graph
[legend]
Collaboration diagram for ExprAlgebra:
Collaboration graph
[legend]

Public Member Functions

 ExprAlgebra (void)
 Constructor.
 
 ExprAlgebra (const std::string &)
 Constructor.
 
 ExprAlgebra (const ExprAlgebra &)
 Constructor.
 
 ExprAlgebra (const double &)
 Constructor.
 
ExprAlgebraoperator= (const ExprAlgebra &other)
 
ExprAlgebraoperator+= (const ExprAlgebra &a2)
 
ExprAlgebraoperator-= (const ExprAlgebra &a2)
 
ExprAlgebraoperator*= (const ExprAlgebra &a2)
 
ExprAlgebraoperator/= (const ExprAlgebra &a2)
 
ExprAlgebra operator- (void)
 
ExprAlgebra Eval (void) const
 
ExprAlgebra Eval (const std::string &palabra, const ExprAlgebra &a) const
 
ExprAlgebra Eval (const std::string &palabra, const double &d) const
 
ExprAlgebra Eval (const std::string &valores) const
 
ExprAlgebra Diferencia (const std::string &var) const
 
ExprAlgebra Colct (void) const
 
double RaizNewton (const double &tol, size_t max_iter, const std::string &var, const double &d, double &err)
 Devuelve la raiz de la expresion aproximandola por Newton.
 
ExprAlgebra operator() (const std::string &p, const ExprAlgebra &a) const
 
ExprAlgebra operator() (const std::string &p, const double &d) const
 
ExprAlgebra IntegTrapecio (const Intervalo1D &i) const
 Integrates the expresion using the trapezoidal rule. More...
 
ExprAlgebra IntegSimpson (const Intervalo1D &i) const
 Integrates the expresion using the Simpson rule. More...
 
- Public Member Functions inherited from ArbolExpr
 ArbolExpr (void)
 Constructor por defecto.
 
 ArbolExpr (const std::string &str)
 Constructor a partir de text string.
 
 ArbolExpr (const ArbolExpr &otro)
 Constructor de copia.
 
 ArbolExpr (const double &d)
 Constructor a partir de double.
 
virtual bool operator== (const ArbolExpr &) const
 Comparison operator.
 
ArbolExproperator= (const ArbolExpr &otro)
 Operador asignación.
 
ArbolExproperator+= (const ArbolExpr &a2)
 
ArbolExproperator-= (const ArbolExpr &a2)
 
ArbolExproperator*= (const ArbolExpr &a2)
 
ArbolExproperator/= (const ArbolExpr &a2)
 
ArbolExpr operator- (void)
 
ArbolExprpow (const ArbolExpr &a2)
 
const double & ToNum (void) const
 
const double & ToNum (const std::string &palabra, const double &d) const
 Devuelve el valor numérico (si puede).
 
const double & ToNum (const MapValores &) const
 
virtual bool Evaluable (void) const
 
void RecorrePreorden (const ExprFunctor &f)
 
void RecorreEnorden (const ExprFunctor &f)
 
void RecorrePostorden (const ExprFunctor &f)
 
void RecorrePreorden (const ExprFunctor &f) const
 
void RecorreEnorden (const ExprFunctor &f) const
 
void RecorrePostorden (const ExprFunctor &f) const
 
void Asigna (const std::string &palabra, const ArbolExpr &a)
 
void DesAsigna (const std::string &palabra)
 
ConjVariables Variables (void) const
 Devuelve el conjunto de variables que aparecen en la expresión.
 
bool TieneVariable (const std::string &palabra) const
 Return true if the expression depends on the variable name being passed as parameter. More...
 
bool TieneVariable (const VarExpr &var) const
 Devuelve verdadero si la expresión depende de la variable que se pasa como parámetro. More...
 
bool TieneVariable (const Variable &var) const
 Devuelve verdadero si la expresión depende de la variable que se pasa como parámetro. More...
 
int NumVariables (void) const
 Devuelve el número de variables que intervienen en la expresión.
 
std::vector< std::string > getNamesOfVariables (void) const
 Return the names of the variables.
 
std::string GetString (void) const
 Devuelve una text string con el contenido de la expresión.
 
const std::string & GetFullString (void) const
 Devuelve una text string con el contenido de la expresión representando los valores reales con toda la precisión posible. More...
 
void Print (std::ostream &os) const
 Imprime la expresión en el stream que se pasa como parámetro.
 
- Public Member Functions inherited from ExprBase
 ExprBase (const bool &ET)
 Constructor por defecto.
 
virtual bool operator== (const ExprBase &) const
 Comparison operator.
 
bool operator!= (const ExprBase &other) const
 
bool ErrorTraduccion (void) const
 Devuelve verdadero si ha habido errores en la traducción.
 
- Public Member Functions inherited from ProtoExpresion
 ProtoExpresion (void)
 Constructor.
 

Friends

class ExpressionMatrix
 
ExprAlgebra operator+ (const ExprAlgebra &a1, const ExprAlgebra &a2)
 
ExprAlgebra operator+ (const ExprAlgebra &a1, const double &a2)
 
ExprAlgebra operator+ (const double &a1, const ExprAlgebra &a2)
 
ExprAlgebra operator- (const ExprAlgebra &a1, const ExprAlgebra &a2)
 
ExprAlgebra operator- (const ExprAlgebra &a1, const double &a2)
 
ExprAlgebra operator- (const double &a1, const ExprAlgebra &a2)
 
ExprAlgebra operator* (const ExprAlgebra &a1, const ExprAlgebra &a2)
 
ExprAlgebra operator* (const ExprAlgebra &a1, const double &a2)
 
ExprAlgebra operator* (const double &a1, const ExprAlgebra &a2)
 
ExprAlgebra operator/ (const ExprAlgebra &a1, const ExprAlgebra &a2)
 
ExprAlgebra operator/ (const ExprAlgebra &a1, const double &a2)
 
ExprAlgebra operator/ (const double &a1, const ExprAlgebra &a2)
 
ExprAlgebra expand (const ExprAlgebra &)
 
ExprAlgebra abs (const ExprAlgebra &)
 Devuelve el valor absoluto del argumento.
 
ExprAlgebra sqrt (const ExprAlgebra &)
 Devuelve la raía cuadrada del argumento.
 
ExprAlgebra pow (const ExprAlgebra &a, const ExprAlgebra &b)
 Devuelve a^b.
 
ExprAlgebra pow (const ExprAlgebra &a, const double &b)
 Devuelve a^b.
 
ExprAlgebra pow (const double &a, const ExprAlgebra &b)
 Devuelve a^b.
 

Additional Inherited Members

- Static Public Member Functions inherited from ArbolExpr
static void Asigna (const std::string &palabra, const double &d)
 
- Static Public Member Functions inherited from ProtoExpresion
static LexAlgebraCreaLexico (void)
 Devuelve una referencia al léxico.
 
static LexicoLex (void)
 Devuelve una referencia al léxico.
 
static LexAlgebraLexA (void)
 Devuelve una referencia al léxico.
 
static bool TieneLexico (void)
 
static NamedOperandNuevaVar (const Variable &v)
 Creates the variable being passed as parameter.
 
static NamedOperandNuevaVar (const std::string &palabra)
 Creates the variable which name is being passed as parameter. More...
 
static VariableCalcDirVar (const std::string &nmb)
 Return a pointer to the variable which name is being passed as parameter. More...
 
static void Asigna (const std::string &palabra, const double &d)
 Assigns to the variable named 'palabra' the value being passed as parameter. More...
 
static void DesAsigna (const std::string &palabra)
 Removes the assignment to the variable which name is being passed as parameter. More...
 
- Protected Member Functions inherited from ArbolExpr
RamaTraduce (const ExprPostfija &e)
 
RamaTraduce (const std::string &cadena_entrada)
 
void InicFromStr (const std::string &str)
 
void Opera (void)
 Opera todo el árbol.
 
void OperaToNum (void)
 Procesa los operadores to_num que haya en la expresión.
 
const double & GetValor (void) const
 
ArbolExprAplicaOperador (const Operador *op, const ArbolExpr &a2)
 
void Neg (void)
 Cambia de signo la expresión contenida en el árbol.
 
void Abs (void)
 Aplica el operador "valor absoluto" a la expresión contenida en el árbol.
 
void Sqrt (void)
 Aplica el operador "raíz cuadrada" a la expresión contenida en el árbol.
 
void Dif (const std::string &var)
 Diferencia la expresión respecto a la variable cuyo identificador se pasa como parámetro.
 
void Simplifica (void)
 
void Distrib (void)
 
- Static Protected Member Functions inherited from ProtoExpresion
static SegnalCalcularDireccion (const std::string &nmb)
 Return a pointer to the signal which name is being passed as parameter. More...
 
- Protected Attributes inherited from ExprBase
bool err_traduc
 Verdadero si se produce un error en la traducción.
 
- Static Protected Attributes inherited from ProtoExpresion
static LexAlgebraptr_lex = NULL
 

Detailed Description

Expresión algebraica.

Member Function Documentation

◆ IntegSimpson()

ExprAlgebra ExprAlgebra::IntegSimpson ( const Intervalo1D i) const

Integrates the expresion using the Simpson rule.

Parameters
iIntegration interval.

◆ IntegTrapecio()

ExprAlgebra ExprAlgebra::IntegTrapecio ( const Intervalo1D i) const

Integrates the expresion using the trapezoidal rule.

Parameters
iIntegration interval.

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