VF_flush0 | VD_flush0 | VE_flush0 |
VCF_flush0 | VCD_flush0 | VCE_flush0 |
|
Funktion | Elemente 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/Delphi | uses 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/Delphi | uses 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 );
|
|
Beschreibung | Yi = 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 )); |
|
|
|
|