| VI_accV | VBI_accV | VSI_accV | VLI_accV | VQI_accV |
| VU_accV | VUB_accV | VUS_accV | VUL_accV | VUI_accV |
| VCD_accVCF | VCE_accVCF | VCE_accVCD |
| VLI_accVBI | VLI_accVSI | VLI_accVI |
| VUL_accVUB | VUL_accVUS | VUL_accVU |
| VUI_accVUB | VUI_accVUS | VUI_accVU | VUI_accVUL |
| VQI_accVBI | VQI_accVSI | VQI_accVI | VQI_accVLI |
| VQI_accVUB | VQI_accVUS | VQI_accVU | VQI_accVUL | VQI_accVUI |
| ...accVI | ...accVBI | ...accVSI | ...accVLI | ...accVQI |
| ...accVU | ...accVUB | ...accVUS | ...accVUL | ...accVUI |
|
| Function | Accumulation (corresponds to the += operator) |
|
| Syntax C/C++ | #include <VFmath.h>
void VF_accV( fVector Y, fVector X, ui size );
void VD_accVF( dVector Y, fVector X, ui size ); |
| C++ VecObj | #include <OptiVec.h>
void vector<T>::accV( const vector<T>& X );
void vector<double>::accVF( const vector<float>& X ); |
| Pascal/Delphi | uses VFmath;
procedure VF_accV( Y, X:fVector; size:UIntSize );
procedure VD_accVF( Y:dVector; X:fVector; size:UIntSize ); |
|
| Description | Yi += Xi
This family of functions consists of two groups. The first group is made up of the normal, same-type versions, like VF_accV.
The much larger second group allows to add a lower-accuracy type vector to a higher-accuracy type vector, like VD_accVF. For the integer types, only the highest one, quad, is used to accumulate both signed and unsigned types. The 16-bit and 32-bit integer types can accumulate only the lower types of the same sort, signed or unsigned. All integer types can be accumulated in any of the three floating-point types. |
|
|
|
|