generate_x_w#

jeanspy.dequad.generate_x_w

jeanspy.dequad.generate_x_w(a, b, n, xp=<module 'numpy' from '/home/runner/work/jeanspy/jeanspy/.venv/lib/python3.12/site-packages/numpy/__init__.py'>)[source]#

Construct nodes and weights for fixed double-exponential quadrature.

Parameters:
  • a (float) – Scalar interval endpoints in the integration coordinate’s units. Supported intervals are finite (a, b), (a, +inf) and (-inf, +inf). Vector-valued endpoints are not a supported contract.

  • b (float) – Scalar interval endpoints in the integration coordinate’s units. Supported intervals are finite (a, b), (a, +inf) and (-inf, +inf). Vector-valued endpoints are not a supported contract.

  • n (int) – Number of nodes, at least two. Refine this count to check convergence.

  • xp (module, optional) – Array namespace for the coordinate transform; NumPy by default. Node selection and interval checks still use NumPy.

Returns:

x, w (ndarray) – Nodes and weights, each shape (n,) for scalar endpoints. Weights include the coordinate transformation and integration step. Both arrays have the integration coordinate’s units.

Notes

Invalid interval combinations or orders are not uniformly validated. This host-side node generator is not an end-to-end JAX tracing contract. Hashable arguments reuse cached arrays; returned arrays must not be mutated if that cache is to remain valid. See examples/docs_numerics.py.