Struve functions

Version 1.4.0.0 (5.84 KB) by Theo2
Struve functions H0(z), H1(z), H0(z)-Y0(z), H1(z)-Y1(z) amd modified Struve functions L0(z), L1(z).
2.8K Downloads
Updated 28 Jun 2012

View License

Struve functions are usually encountered when computing Bessel function integrals.
In this submission, the first two orders of the Struve function H0(z) and H1(z) are computed for vector/matrix complex arguments. Additionally, routines are provided for the corresponding functions H0(z)-Y0(z) and H1(z)-Y1(z), useful for large z, and for the modified functions L0(z) and L1(z).
These are high precision routines. They were tested against mfun and the hypergeometric function of Matlab and agreement is 14 significant digits. Regarding computation time they are orders of magnitude faster for large matrix arguments. When comparing to Mathematica results, please note that in some arguments regions, different Mathematica versions give different results.
The method used was Chebyshev expansions for abs(z)<=16 and rational approximations for abs(z)>16 with mapping on the right half complex plane for the latter case. Matlab routines bessely and besselh are used. A relevant Chebyshev routine is also included.

I would be grateful to receive any comments for further expanding the routines.

Cite As

Theo2 (2024). Struve functions (https://www.mathworks.com/matlabcentral/fileexchange/37302-struve-functions), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2010b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on Bessel functions in Help Center and MATLAB Answers

Community Treasure Hunt

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

Start Hunting!
Version Published Release Notes
1.4.0.0

Simplified StruveH1 and added modified Struve functions StruveL0 and StruveL1.

1.2.0.0

Deleted the file Test_Struve01.m

1.0.0.0