VF_cosecrpi | VD_cosecrpi | VE_cosecrpi |
VF_cosecrpi2 | VD_cosecrpi2 | VE_cosecrpi2 |
VF_cosecrpi3 | VD_cosecrpi3 | VE_cosecrpi3 |
|
Funktion | Cosecans von gebrochenzahligen Vielfachen von p |
|
Syntax C/C++ | #include <VFmath.h>
int VF_cosecrpi( fVector Y, iVector P, ui size, int q );
int VF_cosecrpi2( fVector Y, iVector P, ui size, int q );
int VF_cosecrpi3( fVector Y, iVector P, ui size, int q ); |
C++ VecObj | #include <OptiVec.h>
int vector<T>::cosecrpi( const vector<int>& P, int q );
int vector<T>::cosecrpi2( const vector<int>& P, int q );
int vector<T>::cosecrpi3( const vector<int>& P, int q ); |
Pascal/Delphi | uses VFmath;
function VF_cosecrpi( Y:fVector; P:iVector; size:UIntSize; q:Integer ): IntBool;
function VF_cosecrpi2( Y:fVector; P:iVector; size:UIntSize; q:Integer ): IntBool;
function VF_cosecrpi3( Y:fVector; P:iVector; size:UIntSize; q:Integer ): IntBool; |
|
CUDA-Funktion C/C++ | #include <cudaVFmath.h>
int cudaVF_cosecrpi( fVector d_Y, iVector d_P, ui size, int q );
int cudaVF_cosecrpi2( fVector d_Y, iVector d_P, ui size, int q );
int cudaVF_cosecrpi3( fVector d_Y, iVector d_P, ui size, int q );
int VFcu_cosecrpi( fVector h_Y, iVector h_P, ui size, int q );
int VFcu_cosecrpi2( fVector h_Y, iVector h_P, ui size, int q );
int VFcu_cosecrpi3( fVector h_Y, iVector h_P, ui size, int q );
|
CUDA-Funktion Pascal/Delphi | uses VFmath;
function cudaVF_cosecrpi( d_Y:fVector; d_P:iVector; size:UIntSize; q:Integer ): IntBool;
function cudaVF_cosecrpi2( d_Y:fVector; d_P:iVector; size:UIntSize; q:Integer ): IntBool;
function cudaVF_cosecrpi3( d_Y:fVector; d_P:iVector; size:UIntSize; q:Integer ): IntBool;
function VFcu_cosecrpi( h_Y:fVector; h_P:iVector; size:UIntSize; q:Integer ): IntBool;
function VFcu_cosecrpi2( h_Y:fVector; h_P:iVector; size:UIntSize; q:Integer ): IntBool;
function VFcu_cosecrpi3( h_Y:fVector; h_P:iVector; size:UIntSize; q:Integer ): IntBool;
|
|
Beschreibung | Yi = cosec( (Pi / q) * p )
Es gibt drei Versionen. VF_cosecrpi ist für den allgemeinen Gebrauch mit beliebigem Nenner q bestimmt. Wenn q eine ganzzahlige Potenz von 2 ist, sollte die hierfür optimierte Funktion VF_cosecrpi2 eingesetzt werden, die viele Funktionswerte einer Tabelle entnimmt. Wenn q ein Vielfaches von 3 ist, sollte VF_cosecrpi3 gebraucht werden. VF_cosecrpi2 und VF_cosecrpi3 funktionieren auch mit Werten von q, für die sie nicht optimiert sind. Es wird allerdings Speicherplatz für die dann nutzlosen Tabellen vergeudet. |
|
Fehlerbehandlung | SING-Fehler entstehen, wenn Pi exakt durch q teilbar ist. Das Resultat ist in diesem Fall 0.0 (der Mittelwert zwischen +HUGE_VAL und -HUGE_VAL; anders als bei VF_cosec wird hier keine Rücksicht darauf genommen, dass 0.0 nicht zum Wertebereich der Cosecans-Funktion gehört).
q muss ungleich 0 sein; dies wird allerdings nicht überprüft. |
|
Rückgabewert | FALSE (0), wenn fehlerfrei, andernfalls TRUE (≠ 0). |
|
|