TOpenCLMatrix Class

Header: Dew.Math/clMtxVec.h · Cross-compiler
tObjectTOpenCLBaseTOpenCLMtxVecTOpenCLMatrix

class TOpenCLMatrix : public TOpenCLMtxVec;

Constructors

NameDescription
TOpenCLMatrix (2)

Destructors

NameDescription
~TOpenCLMatrix

Properties

NameTypeDescription
CaptionDewStringStores optional label.
CDataintPtrReturns Open CL buffer reference.
CmdQueueTOpenCLCommandQueue*Returns the queue on the Device on which we will run functions using this object.
Colsint
ComplexboolSet this property to indicate that object data values are to be treated complex.
ComplexValuesDewString
DataTMtx*
DeviceTOpenCLDevice*Returns the device on which we allocated memory for this object.
FloatPrecisionTclFloatPrecision
IsSubRangeboolAutomatically set to true after the SetSubIndex or SetSubRange call.
LengthintDefines the length in number of elements (single or double precision) of the memory allocated.
RealValuesDewString
Rowsint
SDataintPtrReturns Open CL buffer reference.
Taglong longAllows storing optional information.

Methods

NameDescription
Abs (5)Absolute values.
Add (15)Add each of Vec2 elements to corresponding elements in Vec1.
AddProduct (2)Add a product of two vectors.
AddRef
AddScaled (4)Add each of Vec elements to corresponding elements in the calling object.
ArcCos (5)The inverse cosine.
ArcCosh (5)Inverse hyperbolic cosine.
ArcCot (5)Inverse cotangens.
ArcCoth (5)Inverse hyperbolic cotangens.
ArcCsc (5)Inverse cosecant.
ArcCsch (5)Inverse hyperbolic cosecant.
ArcSec (5)Inverse secant.
ArcSech (5)Inverse hyperbolic secant.
ArcSin (5)The inverse sine.
ArcSinh (5)Inverse hyperbolic sine.
ArcTan (5)Inverse tangens.
ArcTan2 (3)Inverse tangens of Y/X.
ArcTanh (5)Inverse hyperbolic tangens.
Assign
CartToPolar (3)Converts elements from cartesian to polar coordinate form.
Cbrt (5)The cube root.
CDataIndexReturns the index offest in to the buffer.
Ceil (5)Rounds towards positive infinity.
Conj (5)Conjugate.
ConjMul (5)Conjugate and multiply.
Copy (5)Copy object values.
CopyCplxFromArray (6)Copies array content.
CopyFromArray (9)Copies array content.
CopyTo (4)
CopyToArray (9)Copies calling object data to array.
Cos (5)Cosine.
Cosh (5)Hyperbolic cosine.
Cot (5)Cotangens.
Coth (5)Hyperbolic cotangens.
CplxToReal (3)Split complex calling object in real and imaginary part.
Csc (5)Cosecant.
Csch (5)Hyperbolic cosecant.
DebugUpdate
DifferenceDifference.
DisableSelectPrevents calls to TOpenCLMatrix::Select.
DisableSubrangePrevents calls to TOpenCLMatrix::SetSubRange.
Divide (5)Divide each of Num elements with corresponding elements in Den.
DivideBy (10)Divide Value with elements of the calling object and store the result in the calling object.
DotProd (5)Scalar product of two real arrays.
DotProdc (4)Scalar product of two complex arrays.
DownSampleDownsamples object values.
EnableSelectEnables calls to TOpenCLMatrix::Select.
EnableSubrangeEnables calls to TOpenCLMatrix::SetSubRange.
Erf (5)Error functon of values.
Erfc (5)Complementary error functon of values.
Exp (5)Exponent (e^).
Exp10 (5)Exponent base 10 (10^).
Exp2 (5)Exponent base 2 (2^).
Expj (4)A complex exponential e^(j*Omega)).
ExtendToComplex (4)Extends a real object to a complex object.
FinishThe calling thread will block until the command queue using this object has finished.
FixAngle (5)Sets angle in [-2PI,2PI].
Flip (5)Flips the real and imaginary part of complex numbers.
FlipConj (5)Flips the real and imaginary part of complex numbers and conjugates the complex numbers.
Floor (5)Rounds towards negative infinity.
Frac (5)Fractional part of values.
GetCData
GetCmdQueue
GetComplexValues
GetRealValues
ImagPart (3)Gets the imaginary part of a complex object.
IntPower (3)Power (integer exponent).
Inv (5)Inverse elements.
InvCbrt (5)The inverse of cube root 1/(v)^1/3.
InvElem (2)The inverse of matrix elements.
InvSqrt (5)The inverse of square root 1/(v)^1/2.
Ln (5)Natural logarithm.
LocateCommandQueue
Log10 (5)Log base 10.
Log2 (5)Log base 2.
LogN (5)Log base N.
Mag (4)Magnitude.
Max (6)Maximum value.
Maxc (3)Maximum value.
MaxMin (4)Maximum and minimum value in a single pass.
Mean (5)Mean value.
Meanc (4)Mean value.
Min (6)Minimum value.
Minc (3)Minimum value.
Mul (16)Multiply Vec1 elements [Vec1Index]..[Vec1Index+Len-1] with Vec2 object elements [Vec2Index]..[Vec2Index+Len-1].
MulElem (2)Matrix array multiplication.
MulI (5)Multiply elements by imaginary unit I.
Normalize (4)Normalize object.
NormC (4)The C-norm.
NormL1 (4)The L1-norm.
NormL2 (4)The L2-norm.
PhaseSpectrum (2)The phase angles (spectrum) of object elements.
PolarToCart (3)Converts the polar magnitude/phase pairs to cartesian pairs.
Power (11)Raises base object elements to any power.
PowerSpectrum (2)The power spectrum from object complex values.
PowerVec (2)Raises Base object elements to Exponent object elements power.
Product (6)Elements product.
Productc (2)Elements product.
RealPart (3)Gets real part of complex object values.
RealToCplx (3)Constructs a complex object from two real objects.
Release
Rem (6)The Reminder after division X/Y.
Reset
Reverse (2)Reverse vector elements.
RMS (2)Standard deviation.
RotateA cyclic shift on vector elements in range.
Round (5)Elements rounded to the nearest whole number.
Scale (4)Multiply object elements with Value.
SDataIndexReturns the index offest in to the buffer.
Sec (5)Secant.
Sech (5)Hyperbolic secant.
Select (2)Selects a set of elements from the vector.
SelectAllResets any defined selection.
SetFullRange
SetLength
SetSubIndexDefines a subarray.
SetSubRange (2)Sets the subarray size to full size.
SetVal (4)Initialize elements to Value.
SetZero (2)Initializes object elements to zero.
Sgn (5)Computes signum function of calling object elements.
SgnMul (2)Signum.
ShiftA shift on vector elements in range.
Sign (4)Changes elements sign.
Sin (5)Sine function.
SinCos (3)Sine and cosine.
Sinh (5)Hyperbolic sine.
SinhCosh (3)Hyperbolic sine and cosine.
Size (4)
SizeToArray (9)Sets the size of the array to match the size of the object.
Sqr (5)Square.
Sqrt (5)Square root.
StdDev (4)Standard deviation.
Sub (14)Subtracts Value from object elements.
SubFrom (10)Subtraction from value.
Sum (5)Sums vector values.
SumAndSqrSum (2)Computes the sum and the sum of squared elements from the elements in the calling object.
Sumc (2)Sum (complex value).
Tan (5)Tangens.
Tanh (5)Hyperbolic tangens.
ThreshBottom (5)Threshold bottom operation.
ThresholdGT (10)Threshold greater than operation.
ThresholdGT_LT (5)Threshold greater than and less than operation.
ThresholdLT (10)Threshold less than operation.
ThreshTop (5)Threshold top operation.
Trunc (5)Rounds a real number towards zero.
TruncAndFrac (3)Rounds a real number towards zero and returns the fractional part.
UpSampleInserts zeroes between consecutive array values.
ValidateParams
ValuesToStrings (2)Converts the content of the matrix Values array to a list of strings.
ValuesToText (2)Converts all calling matrix elements to string.

Operators

NameDescription
operator* (4)Multiply all elements in Left with corresponding elements in Right.
operator+ (4)Add coresponding elements in Left and Right.
operator- (6)Subtract coresponding elements in Right from Left.
operator/ (4)Divide all elements in Left with coresponding elements in Right.

Fields

NameTypeDescription
BlockIdint
fCacheIndexint
FDataTDenseMtxVec *
FDataOffsetint
fRefCountint
IsUsedbool