E.V.E  0.1-beta

◆ betainc_inv

eve::betainc_inv = {}
inlineconstexpr

Callable object computing the inverse relative to the first parameter of the beta incomplete function.

Required header: #include <eve/function/betainc_inv.hpp>

Members Functions

Member Effect
operator() the betainc_inv operation
operator[] Construct a conditional version of current function object

template< floating_value T, floating_value U, floating_value V > auto operator()( T s, U x, V y ) const noexcept requires compatible< T, U >;

Parameters

x, y: values.

Return value

Returns elementwise the value of the inverse of incomplete beta function relative to the first parameter.

The result type is the common compatible type of the two parameters.


auto operator[]( conditional_expression auto cond ) const noexcept;

Higher-order function generating a masked version of eve::betainc_inv

Parameters

cond : conditional expression

Return value

A Callable object so that the expression betainc_inv[cond](x, ...) is equivalent to if_else(cond,betainc_inv(x, ...),x)


Supported decorators

: Required header: #include <eve/function/diff/betainc_inv.hpp>

: The expression diff(betainc_inv)(s,x,y) computes the partial diff of \(f\), where \(f\) is the function \(s \rightarrow \ \mbox{B}(s,x,y)\).

Example

See it live on Compiler Explorer

#include <eve/function/betainc_inv.hpp>
#include <eve/wide.hpp>
#include <iostream>
int main()
{
wide_ft pf = { 0.0f, 0.1f, 0.5f, 2.0f};
wide_ft qf = { 1.0f, 1.0f, 3.0f, 5.0f};
wide_ft rf = { 4.0f, 2.0f, 1.0f, 0.2f};
std::cout
<< "---- simd" << '\n'
<< "<- pf = " << pf << '\n'
<< "<- qf = " << qf << '\n'
<< "<- rf = " << rf << '\n'
<< "-> betainc_inv(pf, qf, rf) = " << eve::betainc_inv(pf, qf, rf) << '\n';
float xf = 0.2f;
float yf = 0.5f;
float zf = 2.0f;
std::cout
<< "---- scalar" << '\n'
<< "<- xf = " << xf << '\n'
<< "<- yf = " << yf << '\n'
<< "<- zf = " << zf << '\n'
<< "-> betainc_inv(xf, yf, zf) = " << eve::betainc_inv(xf, yf, zf) << '\n';
return 0;
}
constexpr callable_betainc_inv_ betainc_inv
Callable object computing the inverse relative to the first parameter of the beta incomplete function...
Definition: betainc_inv.hpp:81
Wrapper for SIMD registers.
Definition: wide.hpp:65