std::cosh(std::valarray)
Min standard notice:
Header: <valarray>
For each element in va computes hyperbolic cosine of the value of the element.
# Declarations
template< class T >
valarray<T> cosh( const valarray<T>& va );
# Parameters
va: value array to apply the operation to
# Return value
Value array containing hyperbolic cosine of the values in va.
# Notes
Unqualified function (cosh) is used to perform the computation. If such function is not available, std::cosh is used due to argument-dependent lookup.
The function can be implemented with the return type different from std::valarray. In this case, the replacement type has the following properties:
# Example
#include <cmath>
#include <iomanip>
#include <iostream>
#include <valarray>
void show(const char* title, const std::valarray<float>& data)
{
const int w{9};
std::cout << std::setw(w) << title << " | ";
for (float x : data)
std::cout << std::setw(w) << x << " | ";
std::cout << '\n';
}
int main()
{
const std::valarray<float> x{.1, .2, .3, .4};
const auto sinh = std::sinh(x);
const auto cosh = std::cosh(x);
const auto z = (cosh * cosh) - (sinh * sinh);
show("x", x);
show("sinh(x)", sinh);
show("cosh(x)", cosh);
show("z", z);
}