diff --git a/CHANGELOG.md b/CHANGELOG.md index 15f1840317a8..9e4a741cc3f5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ The release drops support for Python 3.9, making Python 3.10 the minimum require * Added implementation of `dpnp.linalg.lu_solve` for batch inputs (SciPy-compatible) [#2619](https://github.com/IntelPython/dpnp/pull/2619) * Added `dpnp.exceptions` submodule to aggregate the generic exceptions used by dpnp [#2616](https://github.com/IntelPython/dpnp/pull/2616) * Added implementation of `dpnp.scipy.special.erfcx` [#2596](https://github.com/IntelPython/dpnp/pull/2596) +* Added implementation of `dpnp.scipy.special.erfinv` and `dpnp.scipy.special.erfcinv` [#2624](https://github.com/IntelPython/dpnp/pull/2624) ### Changed diff --git a/dpnp/backend/extensions/ufunc/elementwise_functions/erf_funcs.cpp b/dpnp/backend/extensions/ufunc/elementwise_functions/erf_funcs.cpp index fbd2ac211980..5254e50d3faf 100644 --- a/dpnp/backend/extensions/ufunc/elementwise_functions/erf_funcs.cpp +++ b/dpnp/backend/extensions/ufunc/elementwise_functions/erf_funcs.cpp @@ -213,6 +213,8 @@ static void populate(py::module_ m, MACRO_DEFINE_IMPL(erf, Erf); MACRO_DEFINE_IMPL(erfc, Erfc); MACRO_DEFINE_IMPL(erfcx, Erfcx); +MACRO_DEFINE_IMPL(erfinv, Erfinv); +MACRO_DEFINE_IMPL(erfcinv, Erfcinv); } // namespace impl void init_erf_funcs(py::module_ m) @@ -236,5 +238,13 @@ void init_erf_funcs(py::module_ m) impl::populate( m, "_erfcx", "", impl::erfcx_contig_dispatch_vector, impl::erfcx_strided_dispatch_vector); + + impl::populate( + m, "_erfinv", "", impl::erfinv_contig_dispatch_vector, + impl::erfinv_strided_dispatch_vector); + + impl::populate( + m, "_erfcinv", "", impl::erfcinv_contig_dispatch_vector, + impl::erfcinv_strided_dispatch_vector); } } // namespace dpnp::extensions::ufunc diff --git a/dpnp/backend/extensions/vm/erf_funcs.cpp b/dpnp/backend/extensions/vm/erf_funcs.cpp index c443a7737750..4e84403eb061 100644 --- a/dpnp/backend/extensions/vm/erf_funcs.cpp +++ b/dpnp/backend/extensions/vm/erf_funcs.cpp @@ -134,6 +134,8 @@ using ew_cmn_ns::unary_contig_impl_fn_ptr_t; MACRO_DEFINE_IMPL(erf, Erf); MACRO_DEFINE_IMPL(erfc, Erfc); MACRO_DEFINE_IMPL(erfcx, Erfcx); +MACRO_DEFINE_IMPL(erfinv, Erfinv); +MACRO_DEFINE_IMPL(erfcinv, Erfcinv); template