VF_sec2VD_sec2VE_sec2
VFx_sec2VDx_sec2VEx_sec2
FunctionSquare of the secant function
Syntax C/C++#include <VFmath.h>
int VF_sec2( fVector Y, fVector X, ui size );
int VFx_sec2( fVector Y, fVector X, ui size, float A, float B, float C );
C++ VecObj#include <OptiVec.h>
int vector<T>::sec2( const vector<T>& X );
int vector<T>::x_sec2( const vector<T>& X, const T& A, const T& B, const T& C );
Pascal/Delphiuses VFmath;
function VF_sec2( Y, X:fVector; size:UIntSize ): IntBool;
function VFx_sec2( Y, X:fVector; size:UIntSize; A, B, C:Single ): IntBool;
CUDA function C/C++#include <cudaVFmath.h>
int cudaVF_sec2( fVector d_Y, fVector d_X, ui size );
int cudaVFx_sec2( fVector d_Y, fVector d_X, ui size, float A, float B, float C );
int cusdVFx_sec2( fVector d_Y, fVector d_X, ui size, float *d_A, float *d_B, float *d_C );
int VFcu_sec2( fVector h_Y, fVector h_X, ui size );
int VFxcu_sec2( fVector h_Y, fVector h_X, ui size, float A, float B, float C );
CUDA function Pascal/Delphiuses VFmath;
function cudaVF_sec2( d_Y, d_X:fVector; size:UIntSize ): IntBool;
function cudaVFx_sec2( d_Y, d_X:fVector; size:UIntSize; A, B, C:Single ): IntBool;
function cusdVFx_sec2( d_Y, d_X:fVector; size:UIntSize; d_A, d_B, d_C:PSingle ): IntBool;
function VFcu_sec2( h_Y, h_X:fVector; size:UIntSize ): IntBool;
function VFxcu_sec2( h_Y, h_X:fVector; size:UIntSize; A, B, C:Single ): IntBool;
Descriptionsimple versions: Yi = sec2( Xi )
expanded versions: Yi = C * sec2( A*Xi+B )
Calculating the squared trigonometric functions directly is faster and sometimes more accurate than first calculating the trigonometric function itself and squaring it afterwards.
Error handlingFor SING and OVERFLOW errors, the default result is HUGE_VAL (multiplied by the sign of C in the expanded versions); TLOSS errors lead to a default result of 1.0 or C, resp. (as if the input were 0.0).
Return valueFALSE (0), if no error occurred, otherwise TRUE (non-zero).
See alsoVF_sec,   VF_secrpi

VectorLib Table of Contents  OptiVec home