1,826 research outputs found
An odyssey into local refinement and multilevel preconditioning III: Implementation and numerical experiments
In this paper, we examine a number of additive and multiplicative multilevel iterative methods and preconditioners in the setting of two-dimensional local mesh refinement. While standard multilevel methods are effective for uniform refinement-based discretizations of elliptic equations, they tend to be less effective for algebraic systems, which arise from discretizations on locally refined meshes, losing their optimal behavior in both storage and computational complexity. Our primary focus here is on Bramble, Pasciak, and Xu (BPX)-style additive and multiplicative multilevel preconditioners, and on various stabilizations of the additive and multiplicative hierarchical basis (HB) method, and their use in the local mesh refinement setting. In parts I and II of this trilogy, it was shown that both BPX and wavelet stabilizations of HB have uniformly bounded condition numbers on several classes of locally refined two- and three-dimensional meshes based on fairly standard (and easily implementable) red and red-green mesh refinement algorithms. In this third part of the trilogy, we describe in detail the implementation of these types of algorithms, including detailed discussions of the data structures and traversal algorithms we employ for obtaining optimal storage and computational complexity in our implementations. We show how each of the algorithms can be implemented using standard data types, available in languages such as C and FORTRAN, so that the resulting algorithms have optimal (linear) storage requirements, and so that the resulting multilevel method or preconditioner can be applied with optimal (linear) computational costs. We have successfully used these data structure ideas for both MATLAB and C implementations using the FEtk, an open source finite element software package. We finish the paper with a sequence of numerical experiments illustrating the effectiveness of a number of BPX and stabilized HB variants for several examples requiring local refinement
Block-adaptive Cross Approximation of Discrete Integral Operators
In this article we extend the adaptive cross approximation (ACA) method known
for the efficient approximation of discretisations of integral operators to a
block-adaptive version. While ACA is usually employed to assemble hierarchical
matrix approximations having the same prescribed accuracy on all blocks of the
partition, for the solution of linear systems it may be more efficient to adapt
the accuracy of each block to the actual error of the solution as some blocks
may be more important for the solution error than others. To this end, error
estimation techniques known from adaptive mesh refinement are applied to
automatically improve the block-wise matrix approximation. This allows to
interlace the assembling of the coefficient matrix with the iterative solution
- β¦