# Vector

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_Init(const char \*licenseKey)

    - Initialize FastADAS Linear Algebra Vector feature. **WARNING:** Must be called once before other FastADAS functions except [FadasVersion()](https://docs.qualcomm.com/doc/80-63309-1/topic/misc.html#group__misc_1ga55cbdff48d751f2a0227ae4ac106d746).

- Parameters:

    - **licenseKey** – Pointer to the license key string.

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) — Success.

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_DeInit(void)

    - Deinitialize FastADAS Linear Algebra Vector feature. **WARNING:** Must be called once after all other FastADAS functions.

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_ScaleAplusB(const [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vA, [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vB, [float32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/typedef_fadas_8h_1a4611b605e45ab401f02cab15c5e38715.html#_CPPv49float32_t) scale)

    - Compute B = C \* A + B, where A and B are 32-bit float vectors.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input vector B
- **scale** – factor by which the vector has to be scaled

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success[FADAS\_ERROR\_NULL\_PTR](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013afed3a42552a75f460b45f0fc210b2b50) : Vector pointer is nullptr[FADAS\_ERROR\_BAD\_ARGUMENTS](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a09134ed15df3f88b0b41902895b7a58c) : Vector parameters are incorrect[FADAS\_ERROR\_INVALID\_BUF](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a00b95667e0ba5f7b44360b8488ed16ed) : Vector pointer buffer in not validated

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_ScaleAplusB(const [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vA, [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vB, [float64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/typedef_fadas_8h_1ac55f3ae81b5bc9053760baacf57e47f4.html#_CPPv49float64_t) scale)

    - Compute B = C \* A + B, where A and B are 64-bit float vectors.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input vector B
- **scale** – Factor by which the vector has to be scaled

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success[FADAS\_ERROR\_NULL\_PTR](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013afed3a42552a75f460b45f0fc210b2b50) : Vector pointer is nullptr[FADAS\_ERROR\_BAD\_ARGUMENTS](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a09134ed15df3f88b0b41902895b7a58c) : Vector parameters are incorrect[FADAS\_ERROR\_INVALID\_BUF](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a00b95667e0ba5f7b44360b8488ed16ed) : Vector pointer buffer in not validated

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_DotProduct(const [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vA, const [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vB, [float32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/typedef_fadas_8h_1a4611b605e45ab401f02cab15c5e38715.html#_CPPv49float32_t) &result)

    - Compute Dot product of 32-bit float vector a and vector b.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input vector B
- **result** – Pointer to output dot product

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success[FADAS\_ERROR\_NULL\_PTR](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013afed3a42552a75f460b45f0fc210b2b50) : Vector/output pointer is nullptr[FADAS\_ERROR\_BAD\_ARGUMENTS](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a09134ed15df3f88b0b41902895b7a58c) : Vector parameters are incorrect[FADAS\_ERROR\_INVALID\_BUF](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a00b95667e0ba5f7b44360b8488ed16ed) : Vector pointer buffer in not validated

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_DotProduct(const [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vA, const [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vB, [float64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/typedef_fadas_8h_1ac55f3ae81b5bc9053760baacf57e47f4.html#_CPPv49float64_t) &result)

    - Compute Dot product of 64-bit float vector a and vector b.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input vector B
- **result** – Pointer to output dot product

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success [FADAS\_ERROR\_NULL\_PTR](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013afed3a42552a75f460b45f0fc210b2b50) : Vector/Output pointer is nullptr[FADAS\_ERROR\_BAD\_ARGUMENTS](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a09134ed15df3f88b0b41902895b7a58c) : Vector parameters are incorrect[FADAS\_ERROR\_INVALID\_BUF](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a00b95667e0ba5f7b44360b8488ed16ed) : Vector pointer buffer in not validated

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_CrossProduct(const [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vA, const [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vB, [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &result)

    - Compute Cross product of 32-bit float vector a and vector b.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input vector B
- **result** – Reference to output dot product

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success[FADAS\_ERROR\_NULL\_PTR](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013afed3a42552a75f460b45f0fc210b2b50) : Vector/output pointer is nullptr[FADAS\_ERROR\_BAD\_ARGUMENTS](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a09134ed15df3f88b0b41902895b7a58c) : Vector parameters are incorrect[FADAS\_ERROR\_INVALID\_BUF](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a00b95667e0ba5f7b44360b8488ed16ed) : Vector pointer buffer in not validated

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_CrossProduct(const [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vA, const [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vB, [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &result)

    - Compute Cross product of 64-bit float vector a and vector b.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input vector B
- **result** – Reference to output dot product

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success[FADAS\_ERROR\_NULL\_PTR](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013afed3a42552a75f460b45f0fc210b2b50) : Vector/Output pointer is nullptr[FADAS\_ERROR\_BAD\_ARGUMENTS](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a09134ed15df3f88b0b41902895b7a58c) : Vector parameters are incorrect[FADAS\_ERROR\_INVALID\_BUF](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a00b95667e0ba5f7b44360b8488ed16ed) : Vector pointer buffer in not validated

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_Scale([FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vec, [float32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/typedef_fadas_8h_1a4611b605e45ab401f02cab15c5e38715.html#_CPPv49float32_t) scale)

    - Scale the 32-bit float vector pVec by a factor of scale pVec = pVec \* scale.

- Parameters:

    - - **scale** – factor by which the vector has to be scaled
- **pVec** – Input vector

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success[FADAS\_ERROR\_NULL\_PTR](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013afed3a42552a75f460b45f0fc210b2b50) : Vector pointer is nullptr[FADAS\_ERROR\_BAD\_ARGUMENTS](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a09134ed15df3f88b0b41902895b7a58c) : Vector parameters are incorrect[FADAS\_ERROR\_INVALID\_BUF](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a00b95667e0ba5f7b44360b8488ed16ed) : Vector pointer buffer in not validated

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_Scale([FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vec, [float64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/typedef_fadas_8h_1ac55f3ae81b5bc9053760baacf57e47f4.html#_CPPv49float64_t) scale)

    - Scale the 64-bit float vector pVec by a factor of scale pVec = pVec \* scale.

- Parameters:

    - - **scale** – factor by which the vector has to be scaled
- **pVec** – Input vector

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success[FADAS\_ERROR\_NULL\_PTR](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013afed3a42552a75f460b45f0fc210b2b50) : Vector pointer is nullptr[FADAS\_ERROR\_BAD\_ARGUMENTS](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a09134ed15df3f88b0b41902895b7a58c) : Vector parameters are incorrect[FADAS\_ERROR\_INVALID\_BUF](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013a00b95667e0ba5f7b44360b8488ed16ed) : Vector pointer buffer in not validated

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_Add(const [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vA, const [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vB, [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vC)

    - Computes C = A + B, where A, B and C are 32-bit float vectors.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input vector B
- **vC** – Output Vector C

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success.

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_Add(const [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vA, const [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vB, [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vC)

    - Computes C = A + B, where A, B and C are 64-bit float vectors.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input vector B
- **vC** – Output vector C

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success.

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_Add(const [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vA, [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vB)

    - Computes B = A + B, where A and B are 32-bit float vectors.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input/output vector B

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success.

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_Add(const [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vA, [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vB)

    - Computes B = A + B, where A and B are 64-bit float vectors.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input/output vector B

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success.

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_Subtract(const [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vA, const [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vB, [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vC)

    - Computes C = A - B, where A, B and C are 32-bit float vectors.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input vector B
- **vC** – Output vector C

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success.

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_Subtract(const [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vA, const [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vB, [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vC)

    - Computes C = A - B, where A, B and C are 64-bit float vectors.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input vector B
- **vC** – Output vector C

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success.

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_Subtract(const [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vA, [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vB)

    - Computes B = A - B, where A and B are 32-bit float vectors.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input/output Vector B

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success.

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_Subtract(const [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vA, [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vB)

    - Computes B = A - B, where A and B are 64-bit float vectors.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input/output vector B

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success.

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_HadamardProduct(const [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vA, const [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vB, [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vC)

    - Computes C = A .\* B, where A, B and C are 32-bit float vectors.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input vector B
- **vC** – Output vector C

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success.

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_HadamardProduct(const [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vA, const [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vB, [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vC)

    - Computes C = A .\* B, where A, B and C are 64-bit float vectors.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input vector B
- **vC** – Output vector C

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success.

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_HadamardProduct(const [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vA, [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vB)

    - Computes B = A .\* B, where A and B are 32-bit float vectors.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input/output vector B

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success.

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_HadamardProduct(const [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vA, [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vB)

    - Computes B = A .\* B, where A and B are 64-bit float vectors.

- Parameters:

    - - **vA** – Input vector A
- **vB** – Input/output vector B

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success.

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_L2Norm(const [FadasVectorf32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf32__t.html#_CPPv416FadasVectorf32_t) &vA, [float32\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/typedef_fadas_8h_1a4611b605e45ab401f02cab15c5e38715.html#_CPPv49float32_t) &norm)

    - Computes \(|x| = \sqrt{x\_1^2 + x\_2^2 + x\_3^2 + ... + x\_n^2}\), where 32-bit float vector \(x=(x\_1, x\_2, x\_3, ..., x\_n)\).

- Parameters:

    - - **vA** – Input vector A
- **norm** – Pointer to output norm

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success.

- [FadasError\_e](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#_CPPv412FadasError_e) FadasVec\_L2Norm(const [FadasVectorf64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/struct_fadas_vectorf64__t.html#_CPPv416FadasVectorf64_t) &vA, [float64\_t](https://docs.qualcomm.com/doc/80-63309-1/topic/typedef_fadas_8h_1ac55f3ae81b5bc9053760baacf57e47f4.html#_CPPv49float64_t) &norm)

    - Computes \(|x| = \sqrt{x\_1^2 + x\_2^2 + x\_3^2 + ... + x\_n^2}\), where 64-bit float vector \(x=(x\_1, x\_2, x\_3, ..., x\_n)\).

- Parameters:

    - - **vA** – Input vector A
- **norm** – Pointer to output norm

- Returns:

    - [FADAS\_ERROR\_NONE](https://docs.qualcomm.com/doc/80-63309-1/topic/enum_fadas_8h_1a280abf443019bfc722ac1158e5fe1013.html#fadas_8h_1a280abf443019bfc722ac1158e5fe1013aea09a4171f0866f38326d7e5323f2d12) : Success.

## Related examples

- [one/one.cpp](https://docs.qualcomm.com/doc/80-63309-1/topic/one.html)

Last Published: Sep 30, 2024

[Previous Topic
Transform](https://docs.qualcomm.com/bundle/publicresource/80-63309-1/topics/transform.md) [Next Topic
Voxel Map](https://docs.qualcomm.com/bundle/publicresource/80-63309-1/topics/voxel-map.md)