| Syntax C/C++ | #include <VFmath.h>
 void VF_subrV( fVector Z, fVector X, fVector Y, ui size );
 void VFx_subrV( fVector Z, fVector X, fVector Y, ui size, float A, float B );
 void VCF_subrV( cfVector Z, cfVector X, cfVector Y, ui size );
 void VCF_subrReV( cfVector Z, cfVector X, fVector Y, ui size );
 void VCFx_subrV( cfVector Z, cfVector X, cfVector Y, ui size, fComplex A, fComplex B );
 void VCFx_subrReV( cfVector Z, cfVector X, fVector Y, ui size, fComplex A, fComplex B ); |  
| C++ VecObj | #include <OptiVec.h>
 void vector<T>::subrV( const vector<T>& X, const vector<T>& Y );
 void vector<T>::x_subrV( const vector<T>& X, const vector<T>& Y, const T& A, const T& B );
 void vector<complex<T>>::subrV( const vector<complex<T>>& X, const vector<complex<T>>& Y );
 void vector<complex<T>>::subrReV( const vector<complex<T>>& X, const vector<T>& Y );
 void vector<complex<T>>::x_subrV( const vector<complex<T>>& X, const vector<complex<T>>& Y, complex<T> A, complex<T> B );
 void vector<complex<T>>::x_subrReV( const vector<complex<T>>& X, const vector<T>& Y, complex<T> A, complex<T> B ); |  
| Pascal/Delphi | uses VFmath;
 procedure VF_subrV( Z, X, Y:fVector; size:UIntSize );
 procedure VFx_subrV( Z, X, Y:fVector; size:UIntSize; A, B:Single);
 procedure VCF_subrV( Z, X, Y:cfVector; size:UIntSize );
 procedure VCF_subrReV( Z, X:cfVector; Y:fVector; size:UIntSize );
 procedure VCFx_subrV( Z, X, Y:cfVector; size:UIntSize; A, B:fComplex );
 procedure VCFx_subrReV( Z, X:cfVector; Y:fVector; size:UIntSize; A, B:fComplex ); |  
  | 
| CUDA function C/C++ | #include <cudaVFmath.h>
 #include <cudaVCFmath.h>
 int cudaVF_subrV( fVector d_Z, fVector d_X, fVector d_Y,ui size );
 int cudaVFs_subrV( fVector d_Z, fVector d_X, fVector d_Y, ui size, float C );
 int cusdVFs_subrV( fVector d_Z, fVector d_X, fVector d_Y, ui size, float *d_C );
 int cudaVFx_subrV( fVector d_Z, fVector d_X, fVector d_Y, ui size, float A, float B );
 int cusdVFx_subrV( fVector d_Z, fVector d_X, fVector d_Y, ui size, float *d_A, float *d_B );
 int cudaVCF_subrReV( cfVector d_Z, cfVector d_X, fVector d_Y, ui size );
 int cudaVCFx_subrReV( cfVector d_Z, cfVector d_X, fVector d_Y, ui size, fComplex A, fComplex B );
 int cusdVCFx_subrReV( cfVector d_Z, cfVector d_X, fVector d_Y, ui size, fComplex *d_A, fComplex *d_B );
 void VFcu_subrV( fVector h_Z, fVector h_X, fVector h_Y,ui size );
 void VFscu_subrV( fVector h_Z, fVector h_X, fVector h_Y, ui size, float C );
 void VFxcu_subrV( fVector h_Z, fVector h_X, fVector h_Y, ui size, float A, float B );
 void VCFcu_subrReV( cfVector h_Z, cfVector h_X, fVector h_Y, ui size );
 void VCFxcu_subrV( cfVector h_Z, cfVector h_X, cfVector h_Y, ui size, fComplex A, fComplex B );
 void VCFxcu_subrReV( cfVector h_Z, cfVector h_X, fVector h_Y, ui size, fComplex A, fComplex B );
 |  
| CUDA function Pascal/Delphi | uses VFmath, VCFmath;
 function cudaVF_subrV( d_Z, d_X, d_Y:fVector; size:UIntSize ): IntBool;
 function cudaVFs_subrV( d_Z, d_X, d_Y:fVector; size:UIntSize; C:Single ): IntBool;
 function cusdVFs_subrV( d_Z, d_X, d_Y:fVector; size:UIntSize; d_C:PSingle ): IntBool;
 function cudaVFx_subrV( d_Z, d_X, d_Y:fVector; size:UIntSize; A, B:Single ): IntBool;
 function cusdVFx_subrV( d_Z, d_X, d_Y:fVector; size:UIntSize; d_A, d_B:PSingle ): IntBool;
 function cudaVCF_subrReV( d_Z, d_X:cfVector; d_Y:fVector; size:UIntSize ): IntBool;
 function cudaVCFx_subrReV( d_Z, d_X:cfVector; d_Y:fVector; size:UIntSize; A, B:fComplex ): IntBool;
 function cusdVCFx_subrReV( d_Z, d_X:cfVector; d_Y:fVector; size:UIntSize; d_A, d_B:PfComplex ): IntBool;
 procedure VFcu_subrV( h_Z, h_X, h_Y:fVector; size:UIntSize );
 procedure VFscu_subrV( h_Z, h_X, h_Y:fVector; size:UIntSize; C:Single );
 procedure VFxcu_subrV( h_Z, h_X, h_Y:fVector; size:UIntSize; A, B:Single );
 procedure VCFcu_subrReV( h_Z, h_X:cfVector; h_Y:fVector; size:UIntSize );
 procedure VCFxcu_subrReV( h_Z, h_X:cfVector; h_Y:fVector; size:UIntSize; A, B:fComplex );
 |  
  |