Functions
VCELPF3_VECTOR_VECTOR_FUNCTIONS

Functions

int_fast16_t VCELPF3_dotProduct (VCELPF3_ComplexVector *vecA, VCELPF3_ComplexVector *vecB, bool conjugate, float complex *result)
 VCE function for calculating the dot product of two vectors, with the option to perform the complex conjugate on the second vector first. More...
 
int_fast16_t VCELPF3_vectorMult (VCELPF3_ComplexVector *vecA, VCELPF3_ComplexVector *vecB, bool conjugate, VCELPF3_ComplexVector *result)
 VCE function for calculating the element-wise product of two vectors, with the option to perform the complex conjugate on the second vector first. More...
 
int_fast16_t VCELPF3_vectorSum (VCELPF3_ComplexVector *vecA, VCELPF3_ComplexVector *vecB, VCELPF3_ComplexVector *result)
 VCE function for calculating the element-wise sum of two vectors. More...
 

Detailed Description

Function Documentation

§ VCELPF3_dotProduct()

int_fast16_t VCELPF3_dotProduct ( VCELPF3_ComplexVector vecA,
VCELPF3_ComplexVector vecB,
bool  conjugate,
float complex *  result 
)

VCE function for calculating the dot product of two vectors, with the option to perform the complex conjugate on the second vector first.

Defined as:

c = A dot B = sum(A[i] * B[i]), i = 0 to N-1

or:

c = A dot conj(B) = sum(A[i] * conj(B[i])), i = 0 to N-1

in which, A, B are complex vectors and c is a complex scalar.

Precondition
VCELPF3_init() has to be called first.
Parameters
[in]vecAa pointer to the first input vector
[in]vecBa pointer to the second input vector
[in]conjugatewhether or not to conjugate vecB
[out]resulta pointer where the output will be placed
Returns
A status code indicating whether the VCE operation was a success.
Return values
VCELPF3_STATUS_SUCCESSThe call was successful.
VCELPF3_STATUS_ERRORThe input vectors were of different sizes.

§ VCELPF3_vectorMult()

int_fast16_t VCELPF3_vectorMult ( VCELPF3_ComplexVector vecA,
VCELPF3_ComplexVector vecB,
bool  conjugate,
VCELPF3_ComplexVector result 
)

VCE function for calculating the element-wise product of two vectors, with the option to perform the complex conjugate on the second vector first.

If both arguments and the result pointer are already within VCE memory, the function will be executed in scratchpad mode. This means that it will assume pointers are placed so

Defined as:

C = A .* B = [A[0] * B[0], A[1] * B[1], .., A[N-1] * B[N-1]]

or:

C = A .* conj(B) = [A[0] * conj(B[0]), A[1] * conj(B[1]), .., A[N-1] * conj(B[N-1])]

in which, A, B and C are complex vectors.

Precondition
VCELPF3_init() has to be called first.
Parameters
[in]vecAa pointer to the first input vector
[in]vecBa pointer to the second input vector
[in]conjugatewhether or not to conjugate vecB
[out]resulta pointer to a vector where the result will be placed
Note
See ti_drivers_VCE_DataManagement for directions on efficient VCE memory management.
Returns
A status code indicating whether the VCE operation was a success.
Return values
VCELPF3_STATUS_SUCCESSThe call was successful.
VCELPF3_STATUS_ERRORThe input vectors were of different sizes.

§ VCELPF3_vectorSum()

int_fast16_t VCELPF3_vectorSum ( VCELPF3_ComplexVector vecA,
VCELPF3_ComplexVector vecB,
VCELPF3_ComplexVector result 
)

VCE function for calculating the element-wise sum of two vectors.

Defined as:

C = A + B = [A[0] + B[0], A[1] + B[1], .., A[N-1] + B[N-1]]

in which, A, B and C are complex vectors.

Precondition
VCELPF3_init() has to be called first.
Parameters
[in]vecAa pointer to the first input vector
[in]vecBa pointer to the second input vector
[out]resulta pointer to a vector where the output will be placed. Its size should be the same as that of the inputs.
Note
See ti_drivers_VCE_DataManagement for directions on efficient VCE memory management.
Returns
A status code indicating whether the VCE operation was a success.
Return values
VCELPF3_STATUS_SUCCESSThe call was successful.
VCELPF3_STATUS_ERRORThe input vectors were of different sizes.
© Copyright 1995-2024, Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy policy | Terms of use | Terms of sale