p (OptiVec Vektor-Funktion)">p">
VF_cosecrpiVD_cosecrpiVE_cosecrpi
VF_cosecrpi2VD_cosecrpi2VE_cosecrpi2
VF_cosecrpi3VD_cosecrpi3VE_cosecrpi3
FunktionCosecans 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/Delphiuses 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/Delphiuses 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;
BeschreibungYi = 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.
FehlerbehandlungSING-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, daß 0.0 nicht zum Wertebereich der Cosecans-Funktion gehört).
q muß ungleich 0 sein; dies wird allerdings nicht überprüft.
RückgabewertFALSE (0), wenn fehlerfrei, andernfalls TRUE (!= 0).
QuerverweisVF_cosec,   sin

VectorLib Inhaltsverzeichnis  OptiVec Home