#include <complex.h>
Inheritance diagram for SymEngine::Complex:
Collaboration diagram for SymEngine::Complex:Public Member Functions | |
| void | accept (Visitor &v) const override |
| void | accept (EvalRealDoubleVisitorFinal &v) const override |
| Complex (rational_class real, rational_class imaginary) | |
| Constructor of Complex class. | |
| bool | is_canonical (const rational_class &real, const rational_class &imaginary) const |
| hash_t | __hash__ () const override |
| bool | __eq__ (const Basic &o) const override |
| int | compare (const Basic &o) const override |
| RCP< const Number > | real_part () const override |
| Get the real part of the complex number. | |
| RCP< const Number > | imaginary_part () const override |
| Get the imaginary part of the complex number. | |
| RCP< const Basic > | conjugate () const override |
| Get the conjugate of the complex number. | |
| bool | is_positive () const override |
| bool | is_negative () const override |
| bool | is_complex () const override |
| bool | is_zero () const override |
| bool | is_one () const override |
| bool | is_minus_one () const override |
| RCP< const Number > | addcomp (const Complex &other) const |
| RCP< const Number > | addcomp (const Rational &other) const |
| RCP< const Number > | addcomp (const Integer &other) const |
| RCP< const Number > | subcomp (const Complex &other) const |
| RCP< const Number > | subcomp (const Rational &other) const |
| RCP< const Number > | subcomp (const Integer &other) const |
| RCP< const Number > | rsubcomp (const Complex &other) const |
| RCP< const Number > | rsubcomp (const Rational &other) const |
| RCP< const Number > | rsubcomp (const Integer &other) const |
| RCP< const Number > | mulcomp (const Complex &other) const |
| RCP< const Number > | mulcomp (const Rational &other) const |
| RCP< const Number > | mulcomp (const Integer &other) const |
| RCP< const Number > | divcomp (const Complex &other) const |
| RCP< const Number > | divcomp (const Rational &other) const |
| RCP< const Number > | divcomp (const Integer &other) const |
| RCP< const Number > | rdivcomp (const Integer &other) const |
| RCP< const Number > | powcomp (const Integer &other) const |
| RCP< const Number > | add (const Number &other) const override |
Converts the param other appropriately and then calls addcomp | |
| RCP< const Number > | sub (const Number &other) const override |
Converts the param other appropriately and then calls subcomp | |
| RCP< const Number > | rsub (const Number &other) const override |
Converts the param other appropriately and then calls rsubcomp | |
| RCP< const Number > | mul (const Number &other) const override |
Converts the param other appropriately and then calls mulcomp | |
| RCP< const Number > | div (const Number &other) const override |
Converts the param other appropriately and then calls divcomp | |
| RCP< const Number > | rdiv (const Number &other) const override |
Converts the param other appropriately and then calls rdivcomp | |
| RCP< const Number > | pow (const Number &other) const override |
Converts the param other appropriately and then calls powcomp | |
| RCP< const Number > | rpow (const Number &other) const override |
Public Member Functions inherited from SymEngine::ComplexBase | |
| bool | is_re_zero () const |
Public Member Functions inherited from SymEngine::Number | |
| virtual bool | is_exact () const |
| return true if the number is an exact representation | |
| bool | is_exact_zero () const |
| virtual Evaluate & | get_eval () const |
Get Evaluate singleton to evaluate numerically. | |
| vec_basic | get_args () const override |
| Returns the list of arguments. | |
| virtual bool | is_perfect_power (bool is_expected=false) const |
| virtual bool | nth_root (const Ptr< RCP< const Number >> &, unsigned long n) const |
Public Member Functions inherited from SymEngine::Basic | |
| TypeID | get_type_code () const |
| Basic () | |
| Constructor. | |
| Basic (const Basic &)=delete | |
| Delete the copy constructor and assignment. | |
| Basic & | operator= (const Basic &)=delete |
| Assignment operator in continuation with above. | |
| Basic (Basic &&)=delete | |
| Delete the move constructor and assignment. | |
| Basic & | operator= (Basic &&)=delete |
| Assignment operator in continuation with above. | |
| hash_t | hash () const |
| bool | __neq__ (const Basic &o) const |
true if this is not equal to o. More... | |
| int | __cmp__ (const Basic &o) const |
| Comparison operator. | |
| std::string | __str__ () const |
| std::string | dumps () const |
| Returns a string of the instance serialized. | |
| RCP< const Basic > | subs (const map_basic_basic &subs_dict) const |
| Substitutes 'subs_dict' into 'self'. | |
| RCP< const Basic > | xreplace (const map_basic_basic &subs_dict) const |
| virtual RCP< const Basic > | expand_as_exp () const |
| expands the special function in terms of exp function | |
| RCP< const Basic > | diff (const RCP< const Symbol > &x, bool cache=true) const |
Public Member Functions inherited from SymEngine::EnableRCPFromThis< Basic > | |
| RCP< Basic > | rcp_from_this () |
| Get RCP<T> pointer to self (it will cast the pointer to T) | |
| RCP< const Basic > | rcp_from_this () const |
| Get RCP<const T> pointer to self (it will cast the pointer to const T) | |
| RCP< const T2 > | rcp_from_this_cast () const |
| Get RCP<T2> pointer to self (it will cast the pointer to T2) | |
| unsigned int | use_count () const |
Static Public Member Functions | |
| static RCP< const Number > | from_mpq (const rational_class re, const rational_class im) |
| static RCP< const Number > | from_two_rats (const Rational &re, const Rational &im) |
| static RCP< const Number > | from_two_nums (const Number &re, const Number &im) |
Static Public Member Functions inherited from SymEngine::Basic | |
| static RCP< const Basic > | loads (const std::string &) |
| Creates an instance of a serialized string. | |
Data Fields | |
| rational_class | real_ |
| rational_class | imaginary_ |
Data Fields inherited from SymEngine::Basic | |
| TypeID | type_code_ |
Static Public Attributes | |
| static const TypeID | type_code_id = SYMENGINE_COMPLEX |
|
overridevirtual |
Equality comparator
| o | - Object to be compared with |
Implements SymEngine::Basic.
Definition at line 53 of file complex.cpp.
|
overridevirtual |
| other | of type Complex |
Definition at line 117 of file complex.h.
|
overridevirtual |
Returns -1, 0, 1 for this < o, this == o, this > o. This method is used when you want to sort things like x+y+z into canonical order. This function assumes that o is the same type as this. Use __cmp__ if you want general comparison.
Implements SymEngine::Basic.
Definition at line 63 of file complex.cpp.
|
static |
Creates an instance of Complex if imaginary part is non-zero
| <tt>re</tt> | must already be in rational_class canonical form |
| <tt>im</tt> | must already be in rational_class canonical form |
Definition at line 93 of file complex.cpp.
|
static |
Constructs Complex from re, im. If im is 0 it will return a Rational instead.
Definition at line 109 of file complex.cpp.
|
static |
Constructs Complex from re, im. If im is 0 it will return a Rational instead.
Definition at line 104 of file complex.cpp.
| bool SymEngine::Complex::is_canonical | ( | const rational_class & | real, |
| const rational_class & | imaginary | ||
| ) | const |
|
inlineoverridevirtual |
true Implements SymEngine::Number.
|
inlineoverridevirtual |
false since imaginary_ cannot be zero Implements SymEngine::Number.
|
inlineoverridevirtual |
false Implements SymEngine::Number.
|
inlineoverridevirtual |
false since imaginary_ cannot be zero Implements SymEngine::Number.
|
inlineoverridevirtual |
false Implements SymEngine::Number.
|
inlineoverridevirtual |
false since imaginary_ cannot be zero Implements SymEngine::Number.
| other | of type Integer |
Definition at line 175 of file complex.cpp.
| rational_class SymEngine::Complex::real_ |
|
static |