6 research outputs found
Computing with functions in the ball
A collection of algorithms in object-oriented MATLAB is described for
numerically computing with smooth functions defined on the unit ball in the
Chebfun software. Functions are numerically and adaptively resolved to
essentially machine precision by using a three-dimensional analogue of the
double Fourier sphere method to form "ballfun" objects. Operations such as
function evaluation, differentiation, integration, fast rotation by an Euler
angle, and a Helmholtz solver are designed. Our algorithms are particularly
efficient for vector calculus operations, and we describe how to compute the
poloidal-toroidal and Helmholtz--Hodge decomposition of a vector field defined
on the ball.Comment: 23 pages, 9 figure
A sparse hierarchical -finite element method on disks and annuli
We develop a sparse hierarchical -finite element method (-FEM) for
the Helmholtz equation with rotationally invariant variable coefficients posed
on a two-dimensional disk or annulus. The mesh is an inner disk cell (omitted
if on an annulus domain) and concentric annuli cells. The discretization
preserves the Fourier mode decoupling of rotationally invariant operators, such
as the Laplacian, which manifests as block diagonal mass and stiffness
matrices. Moreover, the matrices have a sparsity pattern independent of the
order of the discretization and admit an optimal complexity factorization. The
sparse -FEM can handle radial discontinuities in the right-hand side and in
rotationally invariant Helmholtz coefficients. We consider examples such as a
high-frequency Helmholtz equation with radial discontinuities, the
time-dependent Schr\"odinger equation, and an extension to a three-dimensional
cylinder domain, with a quasi-optimal solve, via the Alternating Direction
Implicit (ADI) algorithm
Recommended from our members
Computing with functions in the ball
A collection of algorithms in object-oriented MATLAB is described for numerically computing with smooth functions defined on the unit ball in the Chebfun software. Functions are numerically and adaptively resolved to essentially machine precision by using a three-dimensional analogue of the double Fourier sphere method to form ``Ballfun"" objects. Operations such as function evaluation, differentiation, integration, fast rotation by an Euler angle, and a Helmholtz solver are designed. Our algorithms are particularly efficient for vector calculus operations, and we describe how to compute the poloidal-Toroidal and Helmholtz-Hodge decompositions of a vector field defined on the ball
Computing with functions in the ball
A collection of algorithms in object-oriented MATLAB is described for numerically computing with smooth functions defined on the unit ball in the Chebfun software. Functions are numerically and adaptively resolved to essentially machine precision by using a three-dimensional analogue of the double Fourier sphere method to form “Ballfun" objects. Operations such as function evaluation, differentiation, integration, fast rotation by an Euler angle, and a Helmholtz solver are designed. Our algorithms are particularly efficient for vector calculus operations, and we describe how to compute the poloidal-toroidal and Helmholtz--Hodge decompositions of a vector field defined on the ball