The model is topologically described by a boundary representation consisting of vertices, curves, surfaces, and regions. These entities are geometrically based on rational Bezier tensor product polynomial entities. The advantage of this model representation consists in the existence of a unique mapping between the parametric and real spaces of each of the model entities. This significantly contributes to a unified handling of individual model entities. On the other hand, restrictions on the model topology, induced by the adopted geometrical representation, result in some reduction of modelling flexibility.
The individual model entities are discretized using a tree based approach. On each model entity, a parametric tree is built separately. This tree is implemented as a generalized one to enable building of a relatively isotropic tree (in the real space) even if a significant stretching induced by the mapping exists. The actual discretization of model entities is based on templates fitted into individual tree cells. In order to limit the total number of templates to a reasonable number, the one-level difference rule is applied. As a consequence, there is no more than one midside node per tree edge. Note that there are no all-hexahedral templates available and that some of the model entities may be degenerated. Therefore the final mesh is of a mixed nature.
In the presented approach, the parallelization strategy is based on the domain decomposition concept, in which each model entity forms a separate subdomain. The compatibility of the mesh inside a subdomain is guaranteed by the use of appropriate templates. On the subdomain (processor) interface, the application of appropriate templates will ensure the compatibility only under the assumption that the trees are compatible along that interface. This is, however, not the case because each parametric tree is built independently. To resolve this incompatibility the following approach has been proposed. Once the tree has been built in a given subdomain, a boundary parametric tree is extracted from the basic tree of that subdomain for each boundary which also forms boundary of another subdomain. These extracted boundary trees are then sent to the subdomain, boundary of which corresponds to the extracted tree. Each subdomain then updates its basic tree structure along the boundary according to the received boundary tree structure. This concept is applied iteratively to those subdomains which have recorded a change in their parametric tree in the previous run, until the basic parametric tree of all subdomains remains unchanged.