Abstract
In this current work an effective algorithm for the computation of volumes of several geometric figures (they form collisions in a hexahedral mesh cell) has been proposed. The main feature (particularity) of the algorithm is its high performance due to the use of several techniques: 1) points sputtering techniques in a cell; 2) the preparation of the special data structure to calculate the points belonging to geometric figures.
Introduction
Today in order to build 3D model of ground and localization of contamination source one can use geological examination data as well as plans of industrial buildings, anthropogenic constructions and earthfill. Thus, in order to generate correctly a computational mesh it is necessary to solve the problem of intersections and overlapping of geometric objects (collision problem of geometric objects) manually, i.e., for example, cut a layer of ground by foundation or pile. Manual collision solution is a time-consuming problem and the automation of this process is expensive and difficult to implement. Even the worldwide software leaders, such as Hydrus, GMS, COMSOL that are capable of solving heat and mass transfer problem, do lack such a possibility.
It is considered that such operations should be implemented on a specialized CAD software, such as Autodesk 3ds Max, AutoCAD, SolidWorks, T-FLEX and others. In these software special techniques to accelerate the implementation of Boolean operations are implemented.
For example, hierarchy trees are built for geometric objects, such as CSG [1, 2, 3], where new Boolean operations on more complex objects are reduced to a system of solutions for more simple composite objects. The obvious disadvantage of such approaches is their inapplicability for arbitrary geometries. Therefore, for general cases the solution of Boolean operations on arbitrary geometric objects is more time-consuming.
However, if it is known that the computational mechanism will be based on hexahedral computational mesh (finite element, finite difference numerical schemes), we can significantly speed up and automate the process of transporting correct geometrical objects to the computational mesh.
In order to solve this problem we introduce a fast way to compute the occupied volumes of any geometric objects, placed randomly in a hexahedral mesh cell. This will quickly and correctly process collisions cases of two or more geometric objects (Figure 1) when performing cells marking of the computational mesh by means of geometric objects.