vsip_scalar_f vsip_vmodulate_f(const vsip_vview_f *a, vsip_scalar_f nu, vsip_scalar_f phi, const vsip_cvview_f *r); vsip_cscalar_f vsip_vmodulate_f(const vsip_cvview_f *a, vsip_scalar_f nu, vsip_scalar_f phi, const vsip_cvview_f *r);
This function modulates a real-valued baseband signal with a complex exponential carrier. The modulation is performed as:

for all
from 0 to
, where
is the length of the vectors,
is the input signal, and
is the complex modulated
output.
const vsip_dvview_p* a: Input real vector containing the baseband signal to be modulated.
vsip_scalar_f nu: Normalized frequency of the carrier in cycles per sample,
.
vsip_scalar_f phi: Initial phase of the carrier in radians,
.
const vsip_cvview_p* r: Output complex vector that will store the modulated signal.
Returns the final phase of the carrier (in radians) after modulation, which can be used for continuous phase modulation across multiple calls.
The input and output vectors must have the same length.