  In this paper we present a locally and dimension-adaptive sparse grid method
for interpolation and integration of high-dimensional functions with
discontinuities. The proposed algorithm combines the strengths of the
generalised sparse grid algorithm and hierarchical surplus-guided local
adaptivity. A high-degree basis is used to obtain a high-order method which,
given sufficient smoothness, performs significantly better than the
piecewise-linear basis. The underlying generalised sparse grid algorithm
greedily selects the dimensions and variable interactions that contribute most
to the variability of a function. The hierarchical surplus of points within the
sparse grid is used as an error criterion for local refinement with the aim of
concentrating computational effort within rapidly varying or discontinuous
regions. This approach limits the number of points that are invested in
`unimportant' dimensions and regions within the high-dimensional domain. We
show the utility of the proposed method for non-smooth functions with hundreds
of variables.
