TMtx.CplxToReal Method

Overload List

#SignatureDescription
1void CplxToReal(TMtxVec ReVec, TMtxVec ImVec)Split complex calling object in real and imaginary part.
2void CplxToReal(TMtxVec ReVec, TMtxVec ImVec, Int32 ReIndex, Int32 ImIndex, Int32 Index, Int32 Len)Split calling object elements [Index]..[Index+Len-1] into real and imaginary components.

Overload 1: void CplxToReal(TMtxVec ReVec, TMtxVec ImVec)

Split complex calling object in real and imaginary part.

#NameTypeDescription
1ReVecTMtxVecsource TVec or TMtx
2ImVecTMtxVecsource TVec or TMtx

Result: stored in self (calling object)

Remarks:

Split calling object into real and imaginary components. Store all real components in ReVec and all imaginary components in ImVec. Size and Dew.Math.TMtxVec.Complex properties of ReVec and ImVec are set implicitly to match with the calling vector. An execption is raised if calling object is not complex.

Examples
Matrix a;
Matrix b;
Matrix c;
a.SetIt(1,2,true,new double[] {1,-2,3,4});
a.CplxToReal(b,c);

Overload 2: void CplxToReal(TMtxVec ReVec, TMtxVec ImVec, Int32 ReIndex, Int32 ImIndex, Int32 Index, Int32 Len)

Split calling object elements [Index]..[Index+Len-1] into real and imaginary components.

#NameTypeDescription
1ReVecTMtxVecsource TVec or TMtx
2ImVecTMtxVecsource TVec or TMtx
3ReIndexInt32
4ImIndexInt32
5IndexInt32start index
6LenInt32element count

Result: stored in self (calling object)

Remarks:

Store real components in ReVec elements [ReIndex]..[ReIndex+Len-1] and imaginary components in ImVec elements [ImIndex]..[ImIndex+Len-1]. Size and Dew.Math.TMtxVec.Complex properties must be set explicitly. An exception is raised if Dew.Math.TMtxVecBase.ConditionCheck is true and array borders are overrun or underrun.