Matrix.PolarToCart Method

Overload List

#SignatureDescription
1function PolarToCart(AmpltVec: TMtxVec; PhaseVec: TMtxVec): TMtxVec;Converts the polar magnitude/phase pairs to cartesian pairs.
2function PolarToCart(AmpltVec: TMtxVec; PhaseVec: TMtxVec; AIndex: Integer; PIndex: Integer; Index: Integer; Len: Integer): TMtxVec;Convert AmpltVec elements [AIndex]..[AIndex+Len-1] and PhaseVec elements [PIndex]..[PIndex+Len-1] from polar form (radius,angle) to cartesian form (X,y).

Overload 1: function PolarToCart(AmpltVec: TMtxVec; PhaseVec: TMtxVec): TMtxVec;

Converts the polar magnitude/phase pairs to cartesian pairs.

#NameTypeDescription
1AmpltVecTMtxVecsource TVec or TMtx
2PhaseVecTMtxVecsource TVec or TMtx

Result: stored in self (calling object), returns self for chaining

Remarks:

Convert all AmpltVec and PhaseVec elements (combined) from polar to cartesian form. If AmpltVec and PhaseVec size is not the same, an exeption is raised. The results are stored as complex numbers (X=Re, y=Im) in the calling object. Size and Matrix.Complex properties of the calling object are set implicitly to match AmpltVec and PhaseVec objects.

Examples
var a,b,c: Matrix;
begin
    a.SetIt(1,4,false,[1,2,3,4]);  // a = [1,2,3, 4] //magnitude
    b.SetIt(1,4,false,[1,0,1,-1]); // b = [1,0,1,-1] /phase
    c.PolarToCart(a,b); // result stored in c = projections to Re and Im axis
end;
See Also: Matrix.CartToPolar

Overload 2: function PolarToCart(AmpltVec: TMtxVec; PhaseVec: TMtxVec; AIndex: Integer; PIndex: Integer; Index: Integer; Len: Integer): TMtxVec;

Convert AmpltVec elements [AIndex]..[AIndex+Len-1] and PhaseVec elements [PIndex]..[PIndex+Len-1] from polar form (radius,angle) to cartesian form (X,y).

#NameTypeDescription
1AmpltVecTMtxVecsource TVec or TMtx
2PhaseVecTMtxVecsource TVec or TMtx
3AIndexIntegerstart index
4PIndexInteger
5IndexIntegerstart index
6LenIntegerelement count

Result: stored in self (calling object), returns self for chaining

Remarks:

The results are stored as complex numbers (X=Re, y=Im) in the calling object elements [Index]..[Index+Len-1]. Size and Matrix.Complex properties of the calling object must be set explicitly. An exception is raised if Matrix.ConditionCheck is True and array borders are overrun/underrun.