ComplexToReal - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


SignalProcessing

  

ComplexToReal

  

split a complex rtable into rtables of the real and imaginary parts

  

RealToComplex

  

join two real rtables of real and imaginary parts into one complex rtable

 

Calling Sequence

Parameters

Description

Examples

Compatibility

Calling Sequence

ComplexToReal( Data )

ComplexToReal( Data, containers = [ ContainerReal, ContainerImaginary ] )

RealToComplex( DataReal, DataImaginary )

RealToComplex( DataReal, DataImaginary, container = Container )

Parameters

Data

-

rtable or list with entries of type complexcons.

ContainerReal

-

(optional) rtable of datatype float[8] to store the real part of Data.

ContainerImaginary

-

(optional) rtable of datatype float[8] to store the imaginary part of Data.

DataReal

-

rtable or list with entries of type realcons.

DataImaginary

-

rtable or list with entries of type realcons.

Container

-

(optional) rtable of datatype complex[8] to store the combined complex numbers represented by DataReal and DataImaginary.

Description

• 

The ComplexToReal command takes an rtable or list of complex entries, and returns rtables with the real and imaginary parts.

• 

The RealToComplex command takes two lists/rtables of real entries, representing the real and imaginary parts, and returns an rtable with the combined complex entries.

• 

Any passed rtables must have the same order (C_order or Fortran_order), have no indexing function, and use rectangular storage.

• 

Any passed rtables must have the same number of elements, but need not have the same dimensions. Internally, one-dimensional aliases of the rtables are used.

• 

When no container is passed for storage, the output of ComplexToReal or RealToComplex is an rtable of the same subtype and dimensions as the first input rtable.

• 

The input container Data is converted to an rtable of datatype complex[8], and the input containers DataReal and DataImaginary are converted to rtables of datatype float[8]. For this reason, it is more efficient to pass containers already having the appropriate datatypes.

• 

The ComplexToReal and RealToComplex commands are not thread safe.

Examples

withSignalProcessing:

Example 1

AVector1+2I,3+4I,datatype=complex8

A1.+2.I3.+4.I

(1)

ComplexToRealA

1.3.,2.4.

(2)

Example 2

• 

Containers can be passed to store the real and imaginary parts:

AMatrix1+5I,2+6I,3+7I,4+8I,datatype=complex8

A1.+5.I2.+6.I3.+7.I4.+8.I

(3)

BMatrix2,2,datatype=float8:

CMatrix2,2,datatype=float8:

ComplexToRealA,containers=B,C:

B=B

B=1.2.3.4.

(4)

C=C

C=5.6.7.8.

(5)

Example 3

• 

Different types of rtables can be passed, provided they are compatible:

AVectorrow3,5,datatype=float8

A−3.5.

(6)

BVectorcolumn4,7,datatype=float8

B4.−7.

(7)

CArray1..2,datatype=complex8:

RealToComplexA,B,container=C:

C=C

C=−3.+4.I5.7.I

(8)

Compatibility

• 

The SignalProcessing[ComplexToReal] and SignalProcessing[RealToComplex] commands were introduced in Maple 2021.

• 

For more information on Maple 2021 changes, see Updates in Maple 2021.

See Also

SignalProcessing

SignalProcessing[Conjugate]

SignalProcessing[RealPart]