VCF_divrC | VCD_divrC | VCE_divrC |
VCF_divrReC | VCD_divrReC | VCE_divrReC |
VFx_divrC | VDx_divrC | VEx_divrC |
VCFx_divrC | VCDx_divrC | VCEx_divrC |
VPF_divrC | VPD_divrC | VPE_divrC |
VPF_divrReC | VPD_divrReC | VPE_divrReC |
VI_divrC | VBI_divrC | VSI_divrC | VLI_divrC | VQI_divrC | |
VU_divrC | VUB_divrC | VUS_divrC | VUL_divrC | VUQ_divrC | VUI_divrC |
|
Function | Reverse division: divide a constant by a vector |
|
Syntax C/C++ | #include <VFmath.h>
void VF_divrC( fVector Y, fVector X, ui size, float C );
void VFx_divrC( fVector Y, fVector X, ui size, float A, float B, float C );
void VCF_divrC( cfVector Y, cfVector X, ui size, fComplex C );
void VCFx_divrC( cfVector Y, cfVector X, ui size, fComplex A, fComplex B, fComplex C );
void VCF_divrReC( cfVector Y, cfVector X, ui size, float CRe ); |
C++ VecObj | #include <OptiVec.h>
void vector<T>::divrC( const vector<T>& X, const T& C );
void vector<T>::x_divrC( const vector<T>& X, const T& A, const T& B, const T& C );
void vector<complex<T>>::divrC( const vector<complex<T>>& X, complex<T> C );
void vector<complex<T>>::x_divrC( const vector<complex<T>>& X, complex<T> A, complex<T> B, complex<T> C );
void vector<complex<T>>::divrReC( const vector<complex<T>>& X, const T& CRe ); |
Pascal/Delphi | uses VFmath;
procedure VF_divrC( Y, X:fVector; size:UIntSize; C:Single );
procedure VFx_divrC( Y, X:fVector; size:UIntSize; A, B, C:Single );
procedure VCF_divrC( Y, X:cfVector; size:UIntSize; C:fComplex );
procedure VCFx_divrC( Y, X:cfVector; size:UIntSize; A, B, C:fComplex );
procedure VCF_divrReC( Y, X:cfVector; size:UIntSize; CRe:Single ); |
|
CUDA function C/C++ | #include <cudaVFmath.h>
int cudaVF_divrC( fVector d_Y, fVector d_X, ui size, float C );
int cusdVF_divrC( fVector d_Y, fVector d_X, ui size, float *d_C );
void VFcu_divrC( fVector d_Y, fVector d_X, ui size, float C );
int cudaVFx_divrC( fVector d_Y, fVector d_X, ui size, float A, float B, float C );
int cusdVFx_divrC( fVector d_Y, fVector d_X, ui size, float *d_A, float *d_B, float *d_C );
void VFxcu_divrC( fVector h_Y, fVector h_X, ui size, float A, float B, float C );
#include <cudaVCFmath.h>
int cudaVCF_divrReC( cfVector d_Y, cfVector d_X, ui size, float CRe );
int cusdVCF_divrReC( cfVector d_Y, cfVector d_X, ui size, float *d_CRe );
void VCFcu_divrReC( cfVector h_Y, cfVector h_X, ui size, float CRe );
|
CUDA function Pascal/Delphi | uses VFmath, VCFmath;
function cudaVF_divrC( d_Y, d_X:fVector; size:UIntSize; C:Single ): IntBool;
function cusdVF_divrC( d_Y, d_X:fVector; size:UIntSize; d_C:PSingle ): IntBool;
procedure VFcu_divrC( h_Y, h_X:fVector; size:UIntSize; C:Single );
function cudaVFx_divrC( d_Y, d_X:fVector; size:UIntSize; A, B, C:Single );
function cusdVFx_divrC( d_Y, d_X:fVector; size:UIntSize; d_A, d_B, d_C:PSingle );
procedure VFxcu_divrC( h_Y, h_X:fVector; size:UIntSize; A, B, C:Single );
function cudaVCF_divrReC( d_Y, d_X:cfVector; size:UIntSize; CRe:Single );
function cusdVCF_divrReC( d_Y, d_X:cfVector; size:UIntSize; d_CRe:PSingle );
procedure VCFcu_divrReC( h_Y, h_X:cfVector; size:UIntSize; CRe:Single );
|
|
Description | simple versions: Yi = C / Xi
expanded versions: Yi = C / (A*Xi+B)
The complex floating-point versions exist in two variants, one for complex constants C, the other for real-valued constants CRe which are divided by the complex vector. |
|
Error handling | none; for the floating-point versions, there are related functions that calculate 1.0 / Xi and 1.0 / (A*Xi+B): VF_inv and VFx_inv, respectively; both of these detect and handle SING errors. |
|
|
|