| ||||||||||||||
| ||||||||||||||
| CUDA-Funktion C/C++ | #include <cudaVFmath.h>
int cudaVF_abs( fVector d_Y, fVector d_X, ui size ); int VFcu_abs( fVector h_Y, fVector h_X, ui size ); |
||||||||||||
CUDA-Funktion Pascal/Delphi | uses VFmath;
function cudaVF_abs( d_Y, d_X:fVector; size:UIntSize ): IntBool; function VFcu_abs( h_Y, h_X:fVector; size:UIntSize ): IntBool; |
Beschreibung | Reelle und Ganzzahl-Versionen: Yi = | Xi |
VBI_, VSI_-, VI_- und VLI_-Versionen: Durch die implizite modulo-2n-Arithmetik der Ganzzahlen wird der Absolutwert der "negativsten" möglichen Zahlen (also −128 für byte/ByteInt, -32768 für short/SmallInt, -2147483648 für long/LongInt) als dieselbe negative(!) Zahl -32768 bzw. -2147483648 gespeichert. Komplexe Versionen: Yi = sqrt( Xi.Re2 + Xi.Im2 ) Man beachte bei den komplexen Versionen, dass der Ergebnis-Vektor reell ist. Dieselbe Operation der Bildung des Absolutwertes wird für cartesisch-komplexe Vektoren etwas schneller, dafür ohne Fehlerbehandlung, von VF_CtoAbs durchgeführt. |
Fehlerbehandlung | Reelle und Ganzzahl-Versionen: Es sollten keine Fehler auftreten.
Komplexe Versionen: OVERFLOW-Fehler ergeben +HUGE_VAL. |
Rückgabewert | Fließkomma-Versionen: FALSE (0), wenn fehlerfrei, andernfalls TRUE (≠ 0).
Die Ganzzahl-Versionen haben keinen Rückgabewert. |
Querverweis | VF_neg, VCF_conj |