gpuArray with besselj for non-integral order values

I'm trying to use gpuArray with the besselj function. However, it doesn't work with non-integral values. I get the following error: 'Error using gpuArray/besselj The NU input (first argument) must be a positive integral value.'
The requirement for the non-gpu besselj is that the order must be real but doesn't need to be an integer. Anybody knows why this is not implemented with the gpuArray version?
Thanks.

1 件のコメント

sbstn
sbstn 2015 年 11 月 23 日
Forgot to mention that I'm trying to run something like this: besselj(1.5,ones(1,3,'gpuArray')).

サインインしてコメントする。

 採用された回答

Joss Knight
Joss Knight 2015 年 11 月 24 日

0 投票

This is a limitation of the NVIDIA libraries MATLAB uses to compute the bessel functions.

2 件のコメント

sbstn
sbstn 2015 年 11 月 30 日
I was specifically trying to evaluate spherical bessel functions using gpuArrays. I haven't been able to find a fast MATLAB implementation for these functions. Since this is the slowest part of the computation in my application then I will have to implement a CUDA version of these. Thanks for your answer.
Joss Knight
Joss Knight 2015 年 12 月 3 日
I took your post as an enhancement request so we'll see whether that eventually filters through to an implementation. You should put in a request to NVIDIA to improve their math libraries too!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeStartup and Shutdown についてさらに検索

質問済み:

2015 年 11 月 23 日

コメント済み:

2015 年 12 月 3 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by