Adaptation algorithm for the finite element mesh in the problems of the fracture of solids under dynamic loads
Представлен алгоритм эрозионного разрушения, позволяющий адекватно описывать разрушение материалов в области контактного взаимодействия. В результате работы данного алгоритма в области контактного взаимодействия происходит перестроение конечно-элементной сетки и пересчет сосредоточенных масс в узлах расчетной сетки в соответствии с законом сохранения массы. Представлена методика ускорения данного алгоритма путем использования параллельных вычислений. Результаты численного моделирования качественно и количественно хорошо согласуются с экспериментальными данными. The present work suggests algorithm enabling to adequately describe fracture of materials and structures under impulse loading. The methodology of reconfiguration finite element mesh with recomputation of concentrated masses in nodes is considered. The algorithm uses all the capabilities of modern parallel computing to the full extent and can be easily scaled for all possible objectives. There are various approaches to implement surface erosion of interacting bodies under high-velocity loading. Authors used the approach for which in the case when one or several nodes of the fractured element no longer belong to the other elements, then their mass is equally distributed between the remaining nodes of this element (erosion fracture algorithm). The most time-consuming part of the algorithm of erosion fracture is searching of adjacent planes of elements. In order to accelerate data, preparation for erosion fracture algorithm searching algorithm of adjacent planes of elements was optimized. Optimization was performed using the method of sorting of all planes for all elements and their correlation with each other. The exact optimization of the algorithm includes the following steps: initially all finite element mesh is divided into N areas and searching for the adjacent plane for the element i is at first performed in the area it belongs to and then it proceeds to adjacent areas, the maximum number of areas where the search of adjacent element can be performed is 27. The areas for search were defined according to the maximum capability of an adjacent plane to get into it. Unfortunately, not the entire program code can be realized simultaneously, there are some areas which require consequent calculation, therefore, improvement of the performance with the increased number of cores is non-linear. However, along with the increase in the size of computation mesh the efficiency of using larger number of cores grows significantly. Application of erosion fracture algorithm is required for appropriate description of the processes of fracture propagation under high-velocity interaction of solid bodies. Dividing the computation mesh into areas provides significant performance improvement for erosion fracture algorithm during the data preparation stage. Decrease in the size of area results in reduced relative number of elements getting into the main area, which influences negatively the processing time. Time which the processor spends on data preparation should be taken into account, it still contributes to the total time to the less extent as compared to the iterations on searching the adjacent planes of finite elements.