VF_flush0VD_flush0VE_flush0
VCF_flush0VCD_flush0VCE_flush0
FunktionElemente unterhalb eines Schwellenwertes auf 0 setzen
Syntax C/C++#include <VFmath.h>
void VF_flush0( fVector Y, fVector X, ui size, float AbsMin );
void VCF_flush0( fVector Y, fVector X, ui size, fComplex AbsMin );
C++ VecObj#include <OptiVec.h>
void vector<T>::flush0( const vector<T>& X, const T& AbsMin );
void vector<T>::flush0( const vector<T>& X, complex<T> AbsMin );
Pascal/Delphiuses VFmath;
procedure VF_flush0( Y, X:fVector; size:UIntSize; AbsMin:Single );
procedure VCF_flush0( Y, X:cfVector; size:UIntSize; AbsMin:fComplex );
CUDA-Funktion C/C++#include <cudaVFmath.h>
int cudaVF_flush0( fVector d_Y, fVector d_X, ui size, float AbsMin );
int cusdVF_flush0( fVector d_Y, fVector d_X, ui size, float *d_AbsMin );
void VFcu_flush0( fVector h_Y, fVector h_X, ui size, float AbsMin );
CUDA-Funktion Pascal/Delphiuses VFmath;
function cudaVF_flush0( d_Y, d_X:fVector; size:UIntSize; AbsMin:Single ): IntBool;
function cusdVF_flush0( d_Y, d_X:fVector; size:UIntSize; d_AbsMin:PSingle ): IntBool;
procedure VFcu_flush0( h_Y, h_X:fVector; size:UIntSize; AbsMin:Single );
BeschreibungYi = Xi, wenn | Xi | ≥ AbsMin,
Yi = 0, ansonsten
Diese Funktion ist nach Operationen anzuwenden, bei denen (wie beispielsweise nach VF_FFT) Elemente gleich 0 sein sollten, dies aber durch Rundungsfehler nicht exakt sind. Die komplexen Versionen behandeln Real- und Imaginärteil getrennt. Dabei werden die jeweiligen Schwellenwerte dem Real- und Imaginärteil von AbsMin entnommen. Wenn nur der Imaginärteil editiert werden soll, ist der Realteil von AbsMin gleich 0 zu setzen, z.B. (für C/C++):
VCF_flush0( Y, X, size, fcplx( 0, 1.e-6 ));
Fehlerbehandlungkeine
Rückgabewertkeiner
QuerverweisVF_limit,   VF_flushInv,   VF_absHuge,   VF_maxC

VectorLib Inhaltsverzeichnis  OptiVec Home