Adelsbach/VSIPL
Core Programming Reference Guide
DD-00016-015
Core

This manual is preliminary and incomplete.
While our Core implementation implements all functions given in the standard we are still working on completing this documentation.

Please refer to the VSIPL standard for a complete function reference of the Core profile until we have completed work on this documentation.

Chapter 4
Vector and Elementwise Operations

4.1 Elementary Math Operations
4.1.1 vsip_vsin_p - Element-wise Sine of a Vector View
4.1.2 vsip_vasin_p - Element-wise Arcsine of a Vector View
4.1.3 vsip_vcos_p - Element-wise Cosine of a Vector View
4.1.4 vsip_vacos_p - Element-wise Arccosine of a Vector View
4.1.5 vsip_vtan_p - Element-wise Tangent of a Vector View
4.1.6 vsip_vatan_p - Element-wise Arctangent of a Vector View
4.1.7 vsip_vatan2_p - Element-wise Arctangent of Two Vector Views
4.1.8 vsip_dvexp_p - Element-wise Exponential of a Vector View
4.1.9 vsip_vexp10_p - Element-wise Base-10 Exponential of a Vector View
4.1.10 vsip_vlog_p - Element-wise Natural Logarithm of a Vector View
4.1.11 vsip_vlog10_p - Element-wise Base-10 Logarithm of a Vector View
4.1.12 vsip_dvsqrt_p - Element-wise Square Root of a Vector View
4.2 Unary Operations
4.2.1 vsip_dvneg_p - Negate Elements of a Vector View
4.2.2 vsip_vsumval_p - Compute the Sum of Elements in a Vector View
4.2.3 vsip_vsumsqval_p - Compute the Sum of Squares of Elements in a Vector View
4.2.4 vsip_dvmeanval_p - Compute Mean Value of Vector
4.2.5 vsip_dvmeansqval_p - Compute Mean of Squared Values
4.2.6 vsip_vsq_p - Square Elements of a Vector View
4.2.7 vsip_vrecip_p - Compute Reciprocal of Elements of a Vector View
4.2.8 vsip_dvmag_p - Compute Magnitude of Elements of a Vector View
4.2.9 vsip_vcmagsq_p - Element-wise Magnitude Squared of a Complex Vector View
4.2.10 vsip_cvconj_p - Element-wise Complex Conjugate of a Complex Vector View
4.2.11 vsip_veuler_p - Convert Real Vector to Complex Euler Representation
4.2.12 vsip_dvmodulate_p - Vector Modulation with Complex Carrier
4.2.13 vsip_dvrsqrt_p - Element-wise Reciprocal Square Root of a Vector View
4.3 Binary Operations
4.3.1 vsip_dvadd_p - Element-wise Addition of Two Vector Views
4.3.2 vsip_dvsub_p - Element-wise Subtraction of Two Vector Views
4.3.3 vsip_dvmul_p - Element-wise Multiplication of Two Vector Views
4.3.4 vsip_dvdiv_p - Element-wise Division of Two Vector Views
4.3.5 vsip_cvjmul_p - Element-wise Complex Conjugate Multiplication of Two Complex Vector Views
4.3.6 vsip_rcvadd_p - Element-wise Real-Complex Addition
4.3.7 vsip_rcvsub_p - Element-wise Real-Complex Subtraction
4.3.8 vsip_rcvmul_p - Element-wise Real-Complex Multiplication
4.3.9 vsip_crvsub_p - Element-wise Complex-Real Subtraction
4.3.10 vsip_dsvadd_p - Add a Scalar to a Vector View
4.3.11 vsip_dsvsub_p - Subtract a Scalar to a Vector View
4.3.12 vsip_dsvmul_p - Multiply a Scalar by a Vector View
4.3.13 vsip_dsvdiv_p - Divide a Scalar by a Vector View
4.3.14 vsip_rscvadd_p - Element-wise Real-Scalar-Complex Addition
4.3.15 vsip_rscvsub_p - Element-wise Real-Scalar-Complex Subtraction
4.3.16 vsip_rscvmul_p - Element-wise Real-Scalar-Complex Multiplication
4.3.17 vsip_dvmmul_p - Vector-Matrix Multiplication
4.3.18 vsip_rvcmmul_p - Real Vector-Complex Matrix Multiplication
4.3.19 vsip_dvexpoavg_p - Vector Exponential Average
4.3.20 vsip_vhypot_p - Vector Hypotenuse (Euclidean Norm)
4.4 Ternary Operations
4.4.1 vsip_dvam_p - Vector Add-Multiply
4.4.2 vsip_dvma_p - Vector Multiply-Add
4.4.3 vsip_dvmsb_p - Vector Multiply-Subtract
4.4.4 vsip_dvmsa_p - Vector Multiply-Scalar-Add
4.4.5 vsip_dvsam_p - Vector Vector-Add-Scalar-Multiply
4.4.6 vsip_dvsbm_p - Vector Subtract-Multiply
4.4.7 vsip_dvsma_p - Vector Vector-Scalar-Multiply-Add
4.4.8 vsip_dvsmsa_p - Vector Vector-Scalar-Multiply-Scalar-Add
4.5 Logical Operations
4.5.1 vsip_valltrue_p - Check if All Elements in Boolean Vector are True
4.5.2 vsip_vanytrue_p - Check if Any Element in Boolean Vector is True
4.5.3 vsip_vleq_p - Element-wise Equal Comparison
4.5.4 vsip_vlne_p - Element-wise Not-Equal Comparison
4.5.5 vsip_vllt_p - Element-wise Less-Than Comparison
4.5.6 vsip_vlle_p - Element-wise Lesser-Or-Equal-Than Comparison
4.5.7 vsip_vlgt_p - Element-wise Greater-Than Comparison
4.5.8 vsip_vlge_p - Element-wise Greater-Or-Equal-Than Comparison
4.6 Selection Operations
4.6.1 vsip_vclip_p - Clip Vector Elements Between Thresholds
4.6.2 vsip_vinvclip_p - Inverse Clip Vector Elements
4.6.3 vsip_vindexbool - Find Indices of True Elements in Boolean Vector
4.6.4 vsip_vmaxval_p - Find the Maximum Value in a Vector View
4.6.5 vsip_vminval_p - Find the Minimum Value in a Vector View
4.6.6 vsip_vmax_p - Element-wise Maximum of Two Vector Views
4.6.7 vsip_vmin_p - Element-wise Minimum of Two Vector Views
4.6.8 vsip_vmaxmg_p - Element-wise Maximum of Magnitudes
4.6.9 vsip_vminmg_p - Element-wise Minimum of Magnitudes
4.6.10 vsip_vmaxmgval_p - Find Maximum Magnitude Value in Vector
4.6.11 vsip_vminmgval_p - Find Minimum Magnitude Value in Vector
4.6.12 vsip_vcmaxmg_p - Element-wise Maximum of Complex Vector Magnitudes
4.6.13 vsip_vcminmg_p - Element-wise Minimum of Complex Vector Magnitudes
4.6.14 vsip_vcmaxmgsqval_p - Find Maximum Magnitude Squared Value in Complex Vector
4.6.15 vsip_vcminmgsqval_p - Find Minimum Magnitude Squared Value in Complex Vector
4.7 Bitwise and Boolean Logical Operations
4.7.1 vsip_vnot_p - Boolean Vector Logical NOT
4.7.2 vsip_vand_p - Boolean Vector Logical AND
4.7.3 vsip_vor_p - Boolean Vector Logical OR
4.7.4 vsip_vxor_p - Boolean Vector Logical XOR
4.8 Element Generation Functions
4.8.1 vsip_dvfill_p - Fill a Vector View with a Scalar Value
4.8.2 vsip_vramp_p - Fill a Vector View with a Ramp
4.9 Copying Functions
4.9.1 vsip_dvcopy_p_p - Copy Vector Views
4.9.2 vsip_dmcopy_p - Copy Matrix Views
4.10 Manipulation Operations
4.10.1 vsip_vreal_p - Extract Real Part of a Complex Vector View
4.10.2 vsip_vimag_p - Extract Imaginary Part of a Complex Vector View
4.10.3 vsip_vcmplx_p - Create a Complex Vector View from Real and Imaginary Parts
4.10.4 vsip_dvgather_p - Gather Elements from a Vector
4.10.5 vsip_dvscatter_p - Scatter Elements to a Vector
4.10.6 vsip_dvswap_p - Swap Elements Between two Vectors
4.10.7 vsip_vrect_p - Convert Cartesian Coordinates to Complex Numbers
4.10.8 vsip_vpolar_p - Convert Polar Coordinates to Cartesian