| Common mathematical functions | |||||||||||||||||||||||||||||||
| Mathematical special functions(C++17) | |||||||||||||||||||||||||||||||
| Mathematical constants(C++20) | |||||||||||||||||||||||||||||||
| Basic linear algebra algorithms(C++26) | |||||||||||||||||||||||||||||||
| Data-parallel types (SIMD)(C++26) | |||||||||||||||||||||||||||||||
| Floating-point environment(C++11) | |||||||||||||||||||||||||||||||
| Complex numbers | |||||||||||||||||||||||||||||||
Numeric array (valarray) | |||||||||||||||||||||||||||||||
| Pseudo-random number generation | |||||||||||||||||||||||||||||||
| Bit manipulation(C++20) | |||||||||||||||||||||||||||||||
| Saturation arithmetic(C++26) | |||||||||||||||||||||||||||||||
| Factor operations | |||||||||||||||||||||||||||||||
|
| ||||||||||||||||||||||||||||||
| Interpolations | |||||||||||||||||||||||||||||||
|
| ||||||||||||||||||||||||||||||
| Generic numeric operations | |||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
| C-style checked integer arithmetic | |||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||
Defined in header <valarray> | ||
template<class T> valarray<T> tan(const valarray<T>& va); | ||
For each element inva computes tangent of the value of the element.
Contents |
| va | - | value array to apply the operation to |
Value array containing tangents of the values inva.
Unqualified function (tan) is used to perform the computation. If such function is not available,std::tan is used due toargument-dependent lookup.
The function can be implemented with the return type different fromstd::valarray. In this case, the replacement type has the following properties:
template<class T>valarray<T> tan(const valarray<T>& va){ valarray<T> other= va;for(T& i: other) i= tan(i); return other;// proxy object may be returned} |
#include <cmath>#include <iostream>#include <valarray> auto show=[](charconst* title,conststd::valarray<double>& va){std::cout<< title<<" :";for(auto x: va)std::cout<<" "<<std::fixed<< x;std::cout<<'\n';}; int main(){conststd::valarray<double> x={.0,.1,.2,.3};conststd::valarray<double> y=std::tan(x);conststd::valarray<double> z=std::atan(y); show("x ", x); show("y = tan(x) ", y); show("z = atan(y)", z);}
Output:
x : 0.000000 0.100000 0.200000 0.300000y = tan(x) : 0.000000 0.100335 0.202710 0.309336z = atan(y) : 0.000000 0.100000 0.200000 0.300000
| applies the functionstd::sin to each element of valarray (function template)[edit] | |
| applies the functionstd::cos to each element of valarray (function template)[edit] | |
| applies the functionstd::atan to each element of valarray (function template)[edit] | |
(C++11)(C++11) | computes tangent (\({\small\tan{x}}\)tan(x)) (function)[edit] |
| computes tangent of a complex number (\({\small\tan{z}}\)tan(z)) (function template)[edit] |