Since complete information about the anisotropic etch rates in all possible directions have been published for only very few combinations of crystals and etch solutions, we also had to write a rudimentary generator that would produce plausible and self-consistent direction-dependent etch rate functions. This modeling proceeds in stages: From the geometry of the crystal lattice, its atom spacings and angles between bonds, some inferences are made about the probability that certain more or less exposed atoms get attacked and removed by the etchant. With this model the etch rates for several key directions, i.e., for the simple crystallographic planes (100), (110), (210), (111), (211), and (221), have been calculated. The etch rates for the direction in between these key orientations are found by interpolation.
The etching simulator then uses such an artificially generated function or any function that may come from experimental observations and applies it to arbitrary polyhedral shapes. For all edges and vertices it first determines what new bevel faces might form because of strong local maxima and minima in the etch rate function. Then all the faces, the original ones as well as the bevel faces, are advanced at their corresponding etch rates and combined into a new consistent surface description of a solid object. The user can specify the total etching time and the number of intermediate states that should be displayed. The shapes obtained from the etching simulator programs are in good qualitative agreement with the kinds of shapes actually observed in the laboratory.