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

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