Complex Double Class to hold std::complex<double> values. More...
#include <complex_double.h>
Public Member Functions | |
void | accept (Visitor &v) const override |
void | accept (EvalRealDoubleVisitorFinal &v) const override |
ComplexDouble (std::complex< double > i) | |
Constructor of ComplexDouble class. | |
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 |
std::complex< double > | as_complex_double () const |
bool | is_exact () const override |
Evaluate & | get_eval () const override |
Get Evaluate singleton to evaluate numerically. | |
bool | is_zero () const override |
bool | is_one () const override |
bool | is_minus_one () const override |
RCP< const Number > | addcomp (const Integer &other) const |
RCP< const Number > | addcomp (const Rational &other) const |
RCP< const Number > | addcomp (const Complex &other) const |
RCP< const Number > | addcomp (const RealDouble &other) const |
RCP< const Number > | addcomp (const ComplexDouble &other) const |
RCP< const Number > | add (const Number &other) const override |
Converts the param other appropriately and then calls addcomp | |
RCP< const Number > | subcomp (const Integer &other) const |
RCP< const Number > | subcomp (const Rational &other) const |
RCP< const Number > | subcomp (const Complex &other) const |
RCP< const Number > | subcomp (const RealDouble &other) const |
RCP< const Number > | subcomp (const ComplexDouble &other) const |
RCP< const Number > | sub (const Number &other) const override |
Converts the param other appropriately and then calls subcomp | |
RCP< const Number > | rsubcomp (const Integer &other) const |
RCP< const Number > | rsubcomp (const Rational &other) const |
RCP< const Number > | rsubcomp (const Complex &other) const |
RCP< const Number > | rsubcomp (const RealDouble &other) const |
RCP< const Number > | rsub (const Number &other) const override |
Converts the param other appropriately and then calls subcomp | |
RCP< const Number > | mulcomp (const Integer &other) const |
RCP< const Number > | mulcomp (const Rational &other) const |
RCP< const Number > | mulcomp (const Complex &other) const |
RCP< const Number > | mulcomp (const RealDouble &other) const |
RCP< const Number > | mulcomp (const ComplexDouble &other) const |
RCP< const Number > | mul (const Number &other) const override |
Converts the param other appropriately and then calls mulcomp | |
RCP< const Number > | divcomp (const Integer &other) const |
RCP< const Number > | divcomp (const Rational &other) const |
RCP< const Number > | divcomp (const Complex &other) const |
RCP< const Number > | divcomp (const RealDouble &other) const |
RCP< const Number > | divcomp (const ComplexDouble &other) const |
RCP< const Number > | div (const Number &other) const override |
Converts the param other appropriately and then calls divcomp | |
RCP< const Number > | rdivcomp (const Integer &other) const |
RCP< const Number > | rdivcomp (const Rational &other) const |
RCP< const Number > | rdivcomp (const Complex &other) const |
RCP< const Number > | rdivcomp (const RealDouble &other) const |
RCP< const Number > | rdiv (const Number &other) const override |
Converts the param other appropriately and then calls divcomp | |
RCP< const Number > | powcomp (const Integer &other) const |
RCP< const Number > | powcomp (const Rational &other) const |
RCP< const Number > | powcomp (const Complex &other) const |
RCP< const Number > | powcomp (const RealDouble &other) const |
RCP< const Number > | powcomp (const ComplexDouble &other) const |
RCP< const Number > | pow (const Number &other) const override |
Converts the param other appropriately and then calls powcomp | |
RCP< const Number > | rpowcomp (const Integer &other) const |
RCP< const Number > | rpowcomp (const Rational &other) const |
RCP< const Number > | rpowcomp (const Complex &other) const |
RCP< const Number > | rpowcomp (const RealDouble &other) const |
RCP< const Number > | rpow (const Number &other) const override |
Converts the param other appropriately and then calls powcomp | |
Public Member Functions inherited from SymEngine::ComplexBase | |
bool | is_re_zero () const |
Public Member Functions inherited from SymEngine::Number | |
bool | is_exact_zero () const |
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 |
Data Fields | |
std::complex< double > | i |
Data Fields inherited from SymEngine::Basic | |
TypeID | type_code_ |
Static Public Attributes | |
static const TypeID | type_code_id = SYMENGINE_COMPLEX_DOUBLE |
Additional Inherited Members | |
Static Public Member Functions inherited from SymEngine::Basic | |
static RCP< const Basic > | loads (const std::string &) |
Creates an instance of a serialized string. | |
Complex Double Class to hold std::complex<double> values.
Definition at line 15 of file complex_double.h.
|
overridevirtual |
Equality comparator
o | - Object to be compared with |
Implements SymEngine::Basic.
Definition at line 41 of file complex_double.cpp.
|
overridevirtual |
Implements SymEngine::Basic.
Definition at line 33 of file complex_double.cpp.
|
inline |
Add ComplexDoubles
other | of type ComplexDouble |
Definition at line 127 of file complex_double.h.
|
inline |
Add ComplexDoubles
other | of type RealDouble |
Definition at line 119 of file complex_double.h.
|
inline |
|
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 50 of file complex_double.cpp.
Divide ComplexDoubles
other | of type Complex |
Definition at line 350 of file complex_double.h.
|
inline |
Divide ComplexDoubles
other | of type ComplexDouble |
Definition at line 369 of file complex_double.h.
Divide ComplexDoubles
other | of type Integer |
Definition at line 332 of file complex_double.h.
Divide ComplexDoubles
other | of type Rational |
Definition at line 341 of file complex_double.h.
|
inline |
Divide ComplexDoubles
other | of type RealDouble |
Definition at line 361 of file complex_double.h.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
true
if equal to 0
Implements SymEngine::Number.
Definition at line 70 of file complex_double.h.
Multiply ComplexDoubles
other | of type Complex |
Definition at line 287 of file complex_double.h.
|
inline |
Multiply ComplexDoubles
other | of type ComplexDouble |
Definition at line 306 of file complex_double.h.
Multiply ComplexDoubles
other | of type Integer |
Definition at line 269 of file complex_double.h.
Multiply ComplexDoubles
other | of type Rational |
Definition at line 278 of file complex_double.h.
|
inline |
Multiply ComplexDoubles
other | of type RealDouble |
Definition at line 298 of file complex_double.h.
Raise ComplexDouble to power other
other | of type Complex |
Definition at line 466 of file complex_double.h.
|
inline |
Raise ComplexDouble to power other
other | of type ComplexDouble |
Definition at line 484 of file complex_double.h.
Raise ComplexDouble to power other
other | of type Integer |
Definition at line 448 of file complex_double.h.
Raise ComplexDouble to power other
other | of type Rational |
Definition at line 457 of file complex_double.h.
|
inline |
Raise ComplexDouble to power other
other | of type RealDouble |
Definition at line 475 of file complex_double.h.
Divide ComplexDoubles
other | of type Complex |
Definition at line 413 of file complex_double.h.
Divide ComplexDoubles
other | of type Integer |
Definition at line 395 of file complex_double.h.
Divide ComplexDoubles
other | of type Rational |
Definition at line 404 of file complex_double.h.
|
inline |
Divide ComplexDoubles
other | of type RealDouble |
Definition at line 424 of file complex_double.h.
Raise other
to power ComplexDouble
other | of type Complex |
Definition at line 529 of file complex_double.h.
Raise other
to power ComplexDouble
other | of type Integer |
Definition at line 511 of file complex_double.h.
Raise other
to power ComplexDouble
other | of type Rational |
Definition at line 520 of file complex_double.h.
|
inline |
Raise other
to power ComplexDouble
other | of type RealDouble |
Definition at line 540 of file complex_double.h.
Subtract ComplexDoubles
other | of type Complex |
Definition at line 234 of file complex_double.h.
Subtract ComplexDoubles
other | of type Integer |
Definition at line 216 of file complex_double.h.
Subtract ComplexDoubles
other | of type Rational |
Definition at line 225 of file complex_double.h.
|
inline |
Subtract ComplexDoubles
other | of type RealDouble |
Definition at line 245 of file complex_double.h.
Subtract ComplexDoubles
other | of type Complex |
Definition at line 171 of file complex_double.h.
|
inline |
Subtract ComplexDoubles
other | of type ComplexDouble |
Definition at line 190 of file complex_double.h.
Subtract ComplexDoubles
other | of type Integer |
Definition at line 153 of file complex_double.h.
Subtract ComplexDoubles
other | of type Rational |
Definition at line 162 of file complex_double.h.
|
inline |
Subtract ComplexDoubles
other | of type RealDouble |
Definition at line 182 of file complex_double.h.
|
static |
Type_code_id shared by all instances
Definition at line 21 of file complex_double.h.