7,541 research outputs found
A fast, simple, and stable Chebyshev-Legendre transform using an asymptotic formula
A fast, simple, and numerically stable transform for converting between Legendre and Chebyshev coefficients of a degree polynomial in operations is derived. The basis of the algorithm is to rewrite a well-known asymptotic formula for Legendre polynomials of large degree as a weighted linear combination of Chebyshev polynomials, which can then be evaluated by using the discrete cosine transform. Numerical results are provided to demonstrate the efficiency and numerical stability. Since the algorithm evaluates a Legendre expansion at an Chebyshev grid as an intermediate step, it also provides a fast transform between Legendre coefficients and values on a Chebyshev grid
Accurate and Efficient Evaluation of Chebyshev Tensor Product Surface
A Chebyshev tensor product surface is widely used in image analysis and numerical approximation. This article illustrates an accurate evaluation for the surface in form of Chebyshev tensor product. This algorithm is based on the application of error-free transformations to improve the traditional Clenshaw Chebyshev tensor product algorithm. Our error analysis shows that the error bound is u+Ou2×condP,x,y in contrast to classic scheme u×cond(P,x,y), where u is working precision and condP,x,y is a condition number of bivariate polynomial P(x,y), which means that the accuracy of the computed result is similar to that produced by classical approach with twice working precision. Numerical experiments verify that the proposed algorithm is stable and efficient
A fast and well-conditioned spectral method for singular integral equations
We develop a spectral method for solving univariate singular integral
equations over unions of intervals by utilizing Chebyshev and ultraspherical
polynomials to reformulate the equations as almost-banded infinite-dimensional
systems. This is accomplished by utilizing low rank approximations for sparse
representations of the bivariate kernels. The resulting system can be solved in
operations using an adaptive QR factorization, where is
the bandwidth and is the optimal number of unknowns needed to resolve the
true solution. The complexity is reduced to operations by
pre-caching the QR factorization when the same operator is used for multiple
right-hand sides. Stability is proved by showing that the resulting linear
operator can be diagonally preconditioned to be a compact perturbation of the
identity. Applications considered include the Faraday cage, and acoustic
scattering for the Helmholtz and gravity Helmholtz equations, including
spectrally accurate numerical evaluation of the far- and near-field solution.
The Julia software package SingularIntegralEquations.jl implements our method
with a convenient, user-friendly interface
An algorithm for the rapid numerical evaluation of Bessel functions of real orders and arguments
We describe a method for the rapid numerical evaluation of the Bessel
functions of the first and second kinds of nonnegative real orders and positive
arguments. Our algorithm makes use of the well-known observation that although
the Bessel functions themselves are expensive to represent via piecewise
polynomial expansions, the logarithms of certain solutions of Bessel's equation
are not. We exploit this observation by numerically precomputing the logarithms
of carefully chosen Bessel functions and representing them with piecewise
bivariate Chebyshev expansions. Our scheme is able to evaluate Bessel functions
of orders between and 1\sep,000\sep,000\sep,000 at essentially any
positive real argument. In that regime, it is competitive with existing methods
for the rapid evaluation of Bessel functions and has several advantages over
them. First, our approach is quite general and can be readily applied to many
other special functions which satisfy second order ordinary differential
equations. Second, by calculating the logarithms of the Bessel functions rather
than the Bessel functions themselves, we avoid many issues which arise from
numerical overflow and underflow. Third, in the oscillatory regime, our
algorithm calculates the values of a nonoscillatory phase function for Bessel's
differential equation and its derivative. These quantities are useful for
computing the zeros of Bessel functions, as well as for rapidly applying the
Fourier-Bessel transform. The results of extensive numerical experiments
demonstrating the efficacy of our algorithm are presented. A Fortran package
which includes our code for evaluating the Bessel functions as well as our code
for all of the numerical experiments described here is publically available
- …