TOpenCLValue.CplxToReal Method

procedure CplxToReal(ReVec: TOpenCLValue; ImVec: TOpenCLValue);

Split complex calling object in real and imaginary part.

#NameTypeDescription
1ReVecTOpenCLValuesource TOpenCLValue
2ImVecTOpenCLValuesource TOpenCLValue

Result: stored in self (calling object)

Remarks:

Split calling object into real and imaginary components. Stores real component in ReVec and imaginary component in ImVec. FloatPrecision and TOpenCLBase.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
var a,b,c: clValue;
begin
    a.Copy(Cplx(3,4));    // a= [1-2i, 3+4i]
    a.CplxToReal(b,c);  // b = 3, c = 4
end;
See Also: TOpenCLValue.RealToCplx