Overview - Maple Help

Online Help

All Products    Maple    MapleSim


evalc

symbolic evaluator over the complex field

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

evalc(expr)

Parameters

expr

-

any expression

Description

• 

This evalc(expr) calling sequence is used to manipulate complex-valued expressions, such as sina+Ib, by attempting to split such expressions into their real and imaginary parts.  Whenever possible, the output from evalc is put into the canonical form expr1+Iexpr2.

• 

The fundamental assumption that evalc makes is that unknown variables represent real-valued quantities.  Thus, for example, evalc(Re(a+I*b)) = a and evalc(Im(a+b)) = 0. Furthermore, evalc also assumes that an unknown function of a real variable is real valued.

• 

The assume command can be used to override these default assumptions. For example, assume(u::complex) tells evalc that u is not necessarily real.  Note also that some usages of the assume command implicitly imply real and others do not.  For example assume(u<1) implies u is real but assume(v^2<1) and assume(abs(v)<1) do not imply that v is real.

• 

The evalc command maps onto sets, lists, equations and relations. The evalc command applied to a complex series will be a series with each coefficient in the above canonical form.

• 

When evalc encounters a function whose decomposition into real and imaginary parts is unknown to it (such as f(1+I) where f is not defined), it attempts to put the arguments in the above canonical form.

• 

The standard functions Re, Im, abs, and conjugate are recognized by evalc, and when such functions are invoked from within a call to evalc they apply the assumptions outlined above.  For example, evalc(abs(a+I*b)) = sqrt(a^2+b^2).

• 

A complex-valued expression may be represented to evalc as polar(r,theta) where r is the modulus and theta is the argument of the expression.

• 

For a complete list of the functions initially known to evalc, see evalc/functions.

Examples

evalcsqrt1+I

2+222+I2+222

(1)

evalcsin3+5I

sin3cosh5+Icos3sinh5

(2)

evalc21+I

2cosln2+2Isinln2

(3)

evalcconjugateexpI

cos1Isin1

(4)

evalcfexpa+bI

f&ExponentialE;acosb+I&ExponentialE;asinb

(5)

evalcpolarr&comma;θ

rcosθ+Irsinθ

(6)

evalca+Ib2&comma;lna+Ib

b2+2Iab+a2&comma;lna2+b22+Iarctanb&comma;a

(7)

evalcabsx+Iy=cosux+Ivy

x2+y2=cosuxcoshvyIsinuxsinhvy

(8)

evalcsqrt1u2

u211signumu212+Iu211+signumu212

(9)

Set an assumption on v.  An alternative way to set this assumption is with assume(-1<v,v<1), which implicitly assumes v is real.

assumev::real&comma;v2<1

evalcsqrt1v2

v~2+1

(10)

seriesexpEi1&comma;4Ix&comma;x&comma;3

1+Ei14Ix+12Ei14I2x2+Ox3

(11)

evalc

1+Ci4+ISi4π2x+Ci422Si422+Si4π2π28+ICi4Si4+Ci4π2x2+Ox3

(12)

See Also

assume

evalc/functions

evalf

polar

Re