VF_tanVD_tanVE_tan
VCF_tanVCD_tanVCE_tan
VFx_tanVDx_tanVEx_tan
VCFx_tanVCDx_tanVCEx_tan
FunctionTangent function
Syntax C/C++#include <VFmath.h>
int VF_tan( fVector Y, fVector X, ui size );
int VFx_tan( fVector Y, fVector X, ui size, float A, float B, float C );
C++ VecObj#include <OptiVec.h>
int vector<T>::tan( const vector<T>& X );
int vector<T>::x_tan( const vector<T>& X, const T& A, const T& B, const T& C );
Pascal/Delphiuses VFmath;
function VF_tan( Y, X:fVector; size:UIntSize ): IntBool;
function VFx_tan( Y, X:fVector; size:UIntSize; A, B, C:Single ): IntBool;
CUDA function C/C++#include <cudaVFmath.h>
int cudaVF_tan( fVector d_Y, fVector d_X, ui size );
int cudaVFx_tan( fVector d_Y, fVector d_X, ui size, float A, float B, float C );
int cusdVFx_tan( fVector d_Y, fVector d_X, ui size, float *d_A, float *d_B, float *d_C );
int VFcu_tan( fVector h_Y, fVector h_X, ui size );
int VFxcu_tan( fVector h_Y, fVector h_X, ui size, float A, float B, float C );
CUDA function Pascal/Delphiuses VFmath;
function cudaVF_tan( d_Y, d_X:fVector; size:UIntSize ): IntBool;
function cudaVFx_tan( d_Y, d_X:fVector; size:UIntSize; A, B, C:Single ): IntBool;
function cusdVFx_tan( d_Y, d_X:fVector; size:UIntSize; d_A, d_B, d_C:PSingle ): IntBool;
function VFcu_tan( h_Y, h_X:fVector; size:UIntSize ): IntBool;
function VFxcu_tan( h_Y, h_X:fVector; size:UIntSize; A, B, C:Single ): IntBool;
Descriptionnormal versions: Yi = tan ( Xi )
expanded versions: Yi = C * tan( A*Xi+B )
For large values of Xi, round-off error becomes appreciable; if the Xi values are representable as rational multiples of p, it is better to use VF_tanrpi than VF_tan.
Error handlingSING and OVERFLOW errors (for arguments very close to p/2) lead to a default result of ±HUGE_VAL. Precision errors lead to a default result of 0.0.
Return valueFALSE (0), if no error occurred, otherwise TRUE (non-zero).
See alsoVF_tan2,   VF_tanrpi,   VF_sin,   VF_tanh,   VF_atan,   VF_atan2,   tan

VectorLib Table of Contents  OptiVec home