◆ fsnm
Callable object computing the fused sub-negate-multiply operation. Required header: Members Functions
template< value T, value U, value V > auto operator()( T x, U y, V z ) const noexcept
requires compatible< T,U> && compatible< T, V >;
Parameters
Return value The call The result type is the common compatible type of the three parameters.
auto operator[]( conditional_expression auto cond ) const noexcept;
Higher-order function generating a masked version of eve::fsnm Parameters
Return value A Callable object so that the expression Supported decorators
ExampleSee it live on Compiler Explorer #include <eve/function/diff/fsnm.hpp>
#include <eve/wide.hpp>
#include <iostream>
using wide_ft = eve::wide <float, eve::fixed<4>>;
int main()
{
wide_ft rf = { 0.0f, 1.0f, -1.0f, -0.5f};
wide_ft qf = { 1.0f, -1.0f, -0.5f, 0.0f};
wide_ft pf = { 1.0f, 2.0f, -5.0f, 0.1f};
std::cout
<< "---- simd" << '\n'
<< "<- pf = " << pf << '\n'
<< "<- qf = " << qf << '\n'
<< "<- rf = " << rf << '\n'
float xf = 1.0f;
float yf = 0.5f;
float zf = 0.5f;
std::cout
<< "---- scalar" << '\n'
<< "<- xf = " << xf << '\n'
<< "<- yf = " << yf << '\n'
<< "<- zf = " << yf << '\n'
return 0;
}
constexpr callable_fsnm_ fsnm Callable object computing the fused sub-negate-multiply operation. Definition: fsnm.hpp:99 constexpr diff_type< 2 > const diff_2nd Higher-order Callable Object imbuing derivative semantics onto other Callable Objects. Definition: derivative.hpp:125 constexpr diff_type< 1 > const diff_1st Higher-order Callable Object imbuing derivative semantics onto other Callable Objects. Definition: derivative.hpp:92 constexpr diff_type< 3 > const diff_3rd Higher-order Callable Object imbuing derivative semantics onto other Callable Objects. Definition: derivative.hpp:158 |