11.2 The Algorithm

The algorithm works by constructing approximating multivariate Bernstein polynomials in the neighborhood of the points of the unstructured, new grid. Let be the initial isotropic homogeneous grid, where values are associated with the volume cells, as is usually the case in Monte Carlo simulations of ion implantations, and the anisotropic inhomogeneous grid, which is to be used in following simulations, where values are associated with the grid points.

For each point of grid , neighboring points are used for constructing an approximation value for the point considered (cf. Figure 11.1), where , odd, and is the dimension. was chosen in the example below and provides good smoothing results. At the boundary the values of grid  are extended constantly. Thus points are used for constructing a multivariate Bernstein polynomial which is evaluated at the point in the middle in question. Note that it is not necessary to calculate the polynomial explicitly, since each polynomial is later evaluated at one point only. Additionally, it is not necessary to use an affine transformation by assuming that the convex hull of the neighboring points is and the middle point has coordinates .

Thus for three dimensions and setting , the values of the points of grid  are

where are the values of the corresponding cell of grid  and has coordinates and has coordinates .

One of the benefits of this algorithm is that it can be implemented in a straightforward manner in languages like C and Fortran using the expression for given above. In order to minimize computation time, the values of the binomial coefficients can be pre-calculated and stored in arrays.

Furthermore, it is fast so that it can be used for grids containing hundreds of thousands of points. Due to the theorems given in Chapter 7, its smoothing and approximating properties are outstanding. Thus it is faster, easier to implement, and approximates and smoothes better than the RSM approach of fitting polynomials of fixed degree.

Clemens Heitzinger 2003-05-08