Skip to main content
`Ctrl`+`K`

# scipy.special.itstruve0

scipy.special.itstruve0(x, out=None) = <ufunc 'itstruve0'>

  Integral of the Struve function of order 0.

  \[I = \int_0^x H_0(t)\,dt\]
  Parameters:
    x array_like

      Upper limit of integration (float).

    out ndarray, optional

      Optional output array for the function values

  Returns:
    I scalar or ndarray

      The integral of \(H_0\) from 0 to x.

  See also

  `struve`

    Function which is integrated by this function

  Notes

  Wrapper for a Fortran routine created by Shanjie Zhang and Jianming Jin [1].

  References

  [1]

  Zhang, Shanjie and Jin, Jianming. “Computation of Special Functions”, John Wiley and Sons, 1996. https://people.sc.fsu.edu/~jburkardt/f_src/special_functions/special_functions.html

  Examples

  Evaluate the function at one point.

      >>> import numpy as np
      >>> from scipy.special import itstruve0
      >>> itstruve0(1.)
      0.30109042670805547

  Evaluate the function at several points by supplying an array for x.

      >>> points = np.array([1., 2., 3.5])
      >>> itstruve0(points)
      array([0.30109043, 1.01870116, 1.96804581])

  Plot the function from -20 to 20.

      >>> import matplotlib.pyplot as plt
      >>> x = np.linspace(-20., 20., 1000)
      >>> istruve0_values = itstruve0(x)
      >>> fig, ax = plt.subplots()
      >>> ax.plot(x, istruve0_values)
      >>> ax.set_xlabel(r'$x$')
      >>> ax.set_ylabel(r'$\int_0^{x}H_0(t)\,dt$')
      >>> plt.show()