CN115618702B - Generation Method of 2D Numerical Simulation Model of Ultra-high Volume Fraction Mélange Using Overlapping Contact Cutting Algorithm - Google Patents

Generation Method of 2D Numerical Simulation Model of Ultra-high Volume Fraction Mélange Using Overlapping Contact Cutting Algorithm Download PDF

Info

Publication number
CN115618702B
CN115618702B CN202211294617.XA CN202211294617A CN115618702B CN 115618702 B CN115618702 B CN 115618702B CN 202211294617 A CN202211294617 A CN 202211294617A CN 115618702 B CN115618702 B CN 115618702B
Authority
CN
China
Prior art keywords
aggregates
aggregate
overlapping
contact
boundary
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202211294617.XA
Other languages
Chinese (zh)
Other versions
CN115618702A (en
Inventor
孟庆祥
杨为民
丁喻
宋杭天
薛浩宇
陈佳敏
朱淳
胡南翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hohai University HHU
Original Assignee
Hohai University HHU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hohai University HHU filed Critical Hohai University HHU
Priority to CN202211294617.XA priority Critical patent/CN115618702B/en
Publication of CN115618702A publication Critical patent/CN115618702A/en
Application granted granted Critical
Publication of CN115618702B publication Critical patent/CN115618702B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/25Design optimisation, verification or simulation using particle-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/10Numerical modelling
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T90/00Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The invention discloses a method for generating a two-dimensional ultra-high volume fraction mixed rock numerical simulation model by adopting an overlapped contact cutting algorithm, which comprises the steps of randomly generating a polygonal aggregate frame according to preconditions such as a given grain grading curve; recording coordinate information of a polygonal aggregate frame, introducing discrete meta-software, placing the aggregate frame into a boundary area wall, and realizing the conversion of aggregate particles into rigid clusters; performing DEM simulation to enable aggregates to collide freely until balance, and recording position information distributed after cluster collision in a geometric file; and then judging the contact property of aggregate entities in the geometric file by calling an aggregate contact judging algorithm developed by Python language, and cutting aggregates with contact and overlapping quantities to finally obtain the numerical simulation model of the high-volume-fraction mixed rock. The invention can generate the mixed rock numerical simulation model with extremely high volume fraction, avoid overlapping among aggregates, and better simulate the contact surface among aggregate particles.

Description

采用重叠接触切割算法的二维超高体积分数混杂岩数值模拟模型的生成方法Generation Method of 2D Numerical Simulation Model of Ultra-high Volume Fraction Mélange Using Overlapping Contact Cutting Algorithm

技术领域technical field

本发明属于不均匀岩土材料混杂岩数值模拟参数研究技术领域,具体涉及一种采用重叠接触切割算法的二维超高体积分数混杂岩数值模拟模型的生成方法。The invention belongs to the technical field of research on numerical simulation parameters of heterogeneous rock-soil materials mixed rocks, and in particular relates to a method for generating a two-dimensional ultra-high volume fraction mixed rock numerical simulation model using an overlapping contact cutting algorithm.

背景技术Background technique

由于实验方法的限制以及数值模拟方法的迅速兴起与发展,通过数值模拟的方法来研究混杂岩材料的力学参数和力学性能,能够较好地克服原位实验以及室内实验过程中试样完整度、试样的扰动、试样尺寸以及实验操作引起的误差等问题。Due to the limitations of experimental methods and the rapid rise and development of numerical simulation methods, the use of numerical simulation methods to study the mechanical parameters and mechanical properties of mélange materials can better overcome the problems of sample integrity and in-situ experiments and laboratory experiments. The disturbance of the sample, the size of the sample, and the errors caused by the experimental operation.

数值模拟研究存在一个重要的问题——实验模型的建立,即生成符合数值模拟要求的骨料级配与高骨料体积分数的数值模型试样。目前,基本没有研究者生成骨料体积分数大于90%的混杂岩模型;然而,在室内试验中,混杂岩试样的骨料体积分数已经达到90%,如Afifipour等人在Mechanical behavior of bimrocks having high rock blockproportion一文中就将混杂岩的骨料体积分数提高到90%。因此需要研究超高体积混杂岩数值模拟模型,来克服原位实验以及室内实验过程中存在误差等问题。There is an important problem in numerical simulation research—the establishment of experimental model, that is, to generate numerical model samples with aggregate gradation and high aggregate volume fraction that meet the requirements of numerical simulation. At present, there are basically no researchers who have generated mélange models with an aggregate volume fraction greater than 90%; however, in laboratory tests, the aggregate volume fraction of mélange samples has reached 90%, such as Afifipour et al. in Mechanical behavior of bimrocks having In the article "high rock block proportion", the aggregate volume fraction of melange is increased to 90%. Therefore, it is necessary to study the numerical simulation model of ultra-high-volume mélange to overcome problems such as errors in in-situ experiments and laboratory experiments.

在模型建立问题上,现有细观数值模拟模型生成方法主要有两种,一是图像处理法;二是随机块体投放法。图像处理法即对混杂岩试样的截面进行扫描和图象识别,以此来区分骨料和基质,并建立模型;但此方法没有办法研究混杂岩材料内部材质分布的随机性,具有一定局限性。随机块体投放法通过算法生成随机块体,运用投放算法在指定的模型边界区域内投放块体,但投放时要考虑接触,因此生成的混杂岩模型骨料体积分数很难达到需求,更难生成很超高体积分数的混杂岩模型。In terms of model establishment, there are mainly two methods for generating mesoscopic numerical simulation models, one is the image processing method; the other is the random block placement method. The image processing method is to scan and image the cross-section of the melange sample, so as to distinguish the aggregate and the matrix, and establish a model; but this method cannot study the randomness of the material distribution inside the melange material, and has certain limitations sex. The random block placement method generates random blocks through an algorithm, and uses the placement algorithm to place blocks within the specified model boundary area, but the contact must be considered when placing, so the aggregate volume fraction of the generated melange model is difficult to meet the requirements, and even more difficult Generates melange models with very high volume fractions.

发明内容Contents of the invention

本发明的目的在于提供一种采用重叠接触切割算法的二维超高体积分数混杂岩数值模拟模型的生成方法,解决现有技术中无法真正生成超高体积分数混杂岩模型和模拟骨料间面与面接触的技术问题。The purpose of the present invention is to provide a method for generating a two-dimensional ultra-high volume fraction melange numerical simulation model using an overlapping contact cutting algorithm, so as to solve the problem that the ultra-high volume fraction melange model and the simulated aggregate interface cannot be truly generated in the prior art Technical issues with surface contact.

为解决上述技术问题,本发明采用如下技术方案实现:In order to solve the above technical problems, the present invention adopts the following technical solutions to realize:

一种采用重叠接触切割算法的二维超高体积分数混杂岩数值模拟模型的生成方法,包括以下步骤:A method for generating a two-dimensional ultra-high volume fraction melange numerical simulation model using an overlapping contact cutting algorithm, comprising the following steps:

步骤1:根据颗粒级配曲线和骨料体积分数等信息生成所有的多边形骨料框架几何模型。Step 1: Generate all polygonal aggregate frame geometric models based on information such as particle size distribution curve and aggregate volume fraction.

步骤2:利用离散元软件,根据多边形骨料框架生成相同大小、形状的刚性簇clump,并将模型边界设定为墙边界;保证骨料颗粒能在模型边界内,同时可模拟骨料在边界上的分布;Step 2: Use discrete element software to generate rigid cluster clumps of the same size and shape according to the polygonal aggregate frame, and set the model boundary as the wall boundary; ensure that the aggregate particles can be within the model boundary, and at the same time simulate the aggregate in the boundary distribution on

步骤3:生成骨料刚性簇和设置边界后,运用离散元模拟刚性簇的碰撞,使骨料位置重新分布;待骨料颗粒碰撞达到平衡后获取重分布后骨料刚性簇轮廓的坐标信息,得到骨料颗粒随机分布的混杂岩几何模型,并保存为几何文件;该步骤可以模拟自然界中混杂岩中骨料颗粒的随机分布,允许骨料颗粒在任意位置以任意角度分布,贴近真实情况;Step 3: After generating rigid clusters of aggregates and setting boundaries, use discrete elements to simulate the collision of rigid clusters to redistribute the positions of aggregates; obtain the coordinate information of the outline of rigid clusters of aggregates after redistribution after the collision of aggregate particles reaches equilibrium, Obtain the melange geometric model with random distribution of aggregate particles and save it as a geometry file; this step can simulate the random distribution of aggregate particles in melange in nature, allowing aggregate particles to be distributed at any position and at any angle, close to the real situation;

步骤4:调用接触重叠判断算法,处理混杂岩模型几何文件;获得整个模型的所有骨料颗粒的多边形实体,通过上述算法,循环遍历所有骨料实体,寻找到与周围多边形骨料颗粒存在接触重叠量的骨料,并判别接触重叠类型。Step 4: Call the contact overlap judgment algorithm to process the melange model geometry file; obtain the polygonal entities of all aggregate particles in the entire model, through the above algorithm, loop through all aggregate entities, and find contact overlap with the surrounding polygonal aggregate particles amount of aggregate, and to identify the type of contact overlap.

步骤5:根据骨料接触重叠类型,采用不同的接触重叠切割算法对接触重叠的骨料进行切割,每次切割后将对应骨料信息更新到多边形骨料实体的列表中。Step 5: According to the type of aggregate contact overlap, different contact overlap cutting algorithms are used to cut the overlapped aggregates, and the corresponding aggregate information is updated to the list of polygonal aggregate entities after each cutting.

步骤6:对更新后的骨料实体列表重复步骤5,直至边界内所有产生接触重叠量的多边形骨料均被切割、更新。对于接触重叠的骨料颗粒切割后,如果不对骨料实体进行更新,一旦某一骨料与多个骨料接触重叠,在后期重新导出几何文件时,导致先切割重叠部分被重复绘制,导致切割失败;所以,每次进行步骤5后,需对骨料实体列表进行更新,直至任何两个骨料间无接触重叠量。Step 6: Repeat step 5 for the updated aggregate entity list until all polygonal aggregates within the boundaries that generate contact overlap are cut and updated. For aggregate particles that touch and overlap after cutting, if the aggregate entity is not updated, once a certain aggregate contacts and overlaps with multiple aggregates, when the geometry file is re-exported later, the first cut overlapping part will be drawn repeatedly, resulting in cutting Failed; therefore, after step 5 each time, the aggregate entity list needs to be updated until there is no contact overlap between any two aggregates.

步骤7:运用相应的几何图形导出算法,将进行切割后的多边形骨料重新写成几何文件并导出;并对导出的几何文件中骨料颗粒实体的面积进行累加,获得最终的二维混杂岩模型中骨料颗粒的总面积Sa,并与模型边界区域面积Sb进行比值计算,得出切割后骨料的体积分数。Step 7: Use the corresponding geometry export algorithm to rewrite the cut polygonal aggregate into a geometry file and export it; and accumulate the area of the aggregate particle entity in the exported geometry file to obtain the final 2D melange model The total area S a of the aggregate particles in the medium is calculated as a ratio of the area S b of the boundary area of the model to obtain the volume fraction of the aggregate after cutting.

进一步优化,所述步骤1中,生成所有的多边形骨料框架的过程如下:Further optimization, in step 1, the process of generating all polygonal aggregate frames is as follows:

步骤1.1:在极坐标系中,以原点为基点,通过随机函数获得一系列随机半径和角度值,根据随机半径和角度得到一系列随机点,将这些点顺序连接得到多边形骨料;Step 1.1: In the polar coordinate system, take the origin as the base point, obtain a series of random radius and angle values through random functions, obtain a series of random points according to the random radius and angle, and connect these points sequentially to obtain polygonal aggregates;

步骤1.2:通过累加得到模型边界内所有骨料的总面积;根据颗粒级配曲线的骨料粒径区间进行划分,按照对应粒径区间内骨料的面积与所有骨料的总面积的比值来控制相应的粒径区间内骨料在模型中的占比;Step 1.2: Obtain the total area of all aggregates within the model boundary by accumulating; divide according to the aggregate particle size interval of the particle gradation curve, and calculate according to the ratio of the area of the aggregate in the corresponding particle size interval to the total area of all aggregates Control the proportion of aggregate in the model in the corresponding particle size range;

步骤1.3:通过累加得到所有骨料的总面积,通过骨料的总面积与模型边界区域面积比值来控制混杂岩模型的体积分数。Step 1.3: The total area of all aggregates is obtained by summing up, and the volume fraction of the melange model is controlled by the ratio of the total area of aggregates to the area of the boundary area of the model.

进一步优化,所述步骤2中还包括如下步骤:采用明可夫斯基算法,以多边形骨料模型每个边的法向向外扩展,使所有骨料的轮廓向外延伸扩展;运用离散元模拟簇的碰撞,待骨料颗粒碰撞达到平衡后,再把骨料的外部轮廓恢复到扩展之前的状态。通过将骨料框架边界向外延展,相当于给骨料外包裹一个外壳,则部分骨料碰撞过程中产生的重叠量处于外壳部分,当把骨料的外部轮廓恢复到扩展之前的状态后,部分骨料之间的接触重叠会消失,即减少了骨料之间的重叠,通过控制扩展的距离可以初步控制骨料颗粒的接触和重叠。Further optimization, the step 2 also includes the following steps: using the Minkowski algorithm to expand outwards with the normal direction of each side of the polygonal aggregate model, so that the outlines of all aggregates are extended outwards; using discrete elements The collision of clusters is simulated, and after the collision of aggregate particles reaches equilibrium, the outer contour of the aggregate is restored to the state before expansion. By extending the boundary of the aggregate frame outward, it is equivalent to wrapping a shell around the aggregate, so that part of the overlap generated during the collision of the aggregate is in the shell part. When the outer contour of the aggregate is restored to the state before the expansion, The contact overlap between some aggregates will disappear, that is, the overlap between aggregates is reduced, and the contact and overlap of aggregate particles can be controlled initially by controlling the distance of expansion.

进一步优化,所述步骤2中,生成刚性簇的方法具体如下:以各个骨料颗粒的多边形框架生成刚性簇的模板,以此模板作为生成与多边形骨料具有相同形状刚性簇的基础,然后通过使用Bubble Pack算法,用Pebble颗粒自动填充刚性簇模板,得到刚性簇。刚性簇(clump)内部的Pebble颗粒间没有相对变形,因此不会破坏,这就保证骨料颗粒在碰撞中不发生变形和破环,保证原有骨料形状。Further optimization, in the step 2, the method for generating rigid clusters is as follows: generate a template for rigid clusters with the polygonal frame of each aggregate particle, use this template as the basis for generating rigid clusters with the same shape as the polygonal aggregate, and then pass Use the Bubble Pack algorithm to automatically fill the rigid cluster template with Pebble particles to obtain rigid clusters. There is no relative deformation between the Pebble particles inside the rigid cluster (clump), so it will not be damaged, which ensures that the aggregate particles will not be deformed or broken during the collision, and the original aggregate shape will be guaranteed.

进一步优化,所述步骤3中,刚性簇碰撞特性如下:在离散元软件中通过离散单元法模拟刚性簇之间的碰撞,将模型的边界设置成刚性的墙,并赋予刚度,同时给骨料刚性簇也赋予接触模型和刚度,由于墙和骨料都存在刚度,产生重叠时就会碰撞、弹开;通过骨料刚性簇之间的相互碰撞、弹开和骨料刚性簇与墙边界之间的碰撞,从而实现骨料颗粒的重分布,并允许边界上存在骨料颗粒。Further optimization, in the step 3, the collision characteristics of rigid clusters are as follows: in the discrete element software, the collision between rigid clusters is simulated by the discrete element method, the boundary of the model is set as a rigid wall, and stiffness is given, and aggregate The rigid cluster also endows the contact model and stiffness. Since both the wall and the aggregate have stiffness, they will collide and bounce apart when they overlap; Collision between them, so as to realize the redistribution of aggregate particles, and allow the presence of aggregate particles on the boundary.

进一步优化,为保证骨料颗粒在碰撞中不飞出边界,设置墙的刚度远大于骨料刚性簇的刚度;骨料与墙之间的接触会难于骨料刚性簇之间的接触;当体积分数设定较大时,由于离散元方法允许存在重叠量的特性,骨料刚性簇之间会产生一定的重叠量,与现实情况不符。For further optimization, in order to ensure that the aggregate particles do not fly out of the boundary during the collision, the stiffness of the wall is much greater than that of the aggregate rigid cluster; the contact between the aggregate and the wall will be more difficult than the contact between the aggregate rigid cluster; when the volume When the score is set larger, due to the characteristics of the overlapping amount allowed by the discrete element method, there will be a certain amount of overlap between the aggregate rigid clusters, which is inconsistent with the actual situation.

为保证模型要求的体积分数,针对位于一侧边界墙上的骨料颗粒,超出该侧边界的部分通过周期性边界被放置到与之对称的另一侧边界上;位于模型边界角点上的骨料颗粒被分为四部分,通过周期性边界分别放置到模型边界对应的四个角点内部。In order to ensure the volume fraction required by the model, for the aggregate particles located on one side of the boundary wall, the part beyond the side boundary is placed on the other side boundary that is symmetrical to it through the periodic boundary; Aggregate particles are divided into four parts, which are respectively placed inside the four corner points corresponding to the model boundary through periodic boundaries.

进一步优化,所述步骤4中,采用接触重叠判断算法判断骨料触重叠类型,具体如下:采用接触重叠判断算法判断骨料触重叠类型,具体如下:读取几何文件,获得每个骨料多边形的坐标点信息;然后调用多边形接触重叠判断算法对骨料多边形的接触重叠量进行判断。Further optimization, in the step 4, the contact overlap judgment algorithm is used to judge the aggregate contact overlap type, as follows: the contact overlap judgment algorithm is used to judge the aggregate contact overlap type, as follows: read the geometry file, and obtain each aggregate polygon The coordinate point information; then call the polygon contact overlap judgment algorithm to judge the contact overlap amount of the aggregate polygon.

骨料的接触重叠包括以下七种类型:The contact overlap of aggregates includes the following seven types:

1)相邻多边形骨料之间存在点与点接触;1) There is point-to-point contact between adjacent polygonal aggregates;

2)相邻多边形骨料之间存在点与线接触;2) There is point-to-line contact between adjacent polygonal aggregates;

3)相邻多边形骨料之间存在线与线接触;3) There is line-to-line contact between adjacent polygonal aggregates;

4)相邻多边形骨料之间存在重叠量,且重叠部分为一个多边形,重叠部分在模型边界内部,与边界没有接触;4) There is overlap between adjacent polygonal aggregates, and the overlapping part is a polygon, and the overlapping part is inside the model boundary and has no contact with the boundary;

5)相邻多边形骨料之间存在重叠量,且重叠部分为多个多边形,重叠部分在模型边界内部,与边界没有接触;5) There is overlap between adjacent polygonal aggregates, and the overlapping part is multiple polygons, and the overlapping part is inside the model boundary and has no contact with the boundary;

6)相邻多边形骨料之间存在重叠量,且重叠部分为一个多边形,同时重叠部分与模型边界接触,两个多边形骨料只有一个交点。6) There is an amount of overlap between adjacent polygonal aggregates, and the overlapping part is a polygon. At the same time, the overlapping part is in contact with the model boundary, and there is only one intersection point between the two polygonal aggregates.

7)相邻多边形骨料之间存在重叠量,且重叠部分为一个多边形,同时重叠部分与模型边界接触,两个多边形骨料有多个交点。7) There is an amount of overlap between adjacent polygonal aggregates, and the overlapping part is a polygon. At the same time, the overlapping part is in contact with the model boundary, and there are multiple intersection points between the two polygonal aggregates.

进一步优化,所述步骤5中,所述步骤5中,根据不同的接触重叠类型实行不同的切割方式,具体如下:Further optimization, in the step 5, in the step 5, different cutting methods are implemented according to different contact overlapping types, as follows:

1)相邻多边形骨料之间点与点接触,模拟现实情况下混杂岩中骨料颗粒之间存在的尖角与尖角的接触,允许存在,不用切割。1) Point-to-point contact between adjacent polygonal aggregates, simulating the contact between sharp corners and sharp corners between aggregate particles in melange in reality, which is allowed to exist without cutting.

2)相邻多边形骨料之间点与线接触,模拟现实情况下混杂岩中骨料颗粒之间存在的尖角与面的接触,允许存在,不用切割。2) Point-to-line contact between adjacent polygonal aggregates, simulating the contact between sharp corners and surfaces between aggregate particles in melange in reality, which is allowed and does not need to be cut.

3)相邻多边形骨料之间线与线接触,模拟现实情况下混杂岩中骨料颗粒之间存在的面与面的接触,允许存在,不用切割。3) The line-to-line contact between adjacent polygonal aggregates simulates the surface-to-surface contact between aggregate particles in melange in reality, which is allowed and does not need to be cut.

4)相邻多边形骨料之间存在重叠量,且重叠部分为一个多边形,重叠部分位于模型边界内部,与边界没有接触。4) There is overlap between adjacent polygonal aggregates, and the overlapping part is a polygon, and the overlapping part is located inside the model boundary and has no contact with the boundary.

针对此种情况的重叠骨料按照如下方法进行切割:The overlapping aggregates for this situation are cut as follows:

4.1)运用多个多边形重叠的高效联合算法,对存在接触重叠的两个骨料进行联合,重叠部分对应的多边形被合并,相交的线溶解并结于一点,重复的点被合并,形成一个联合多边形骨料,将重叠部分删除。4.1) Use the efficient joint algorithm of overlapping polygons to combine two aggregates with contact overlap, the polygons corresponding to the overlapping parts are merged, the intersecting lines are dissolved and joined at one point, and the repeated points are merged to form a joint Polygonal aggregates, with overlapping parts removed.

4.2)采用几何图形交集判别方法,得到存在重叠量的两个多边形骨料的交集;读取几何文件,读取相应几何图形的顶点信息,获得重叠部分所对应多边形各顶点坐标的集合,记为第一集合;以及产生重叠的两个骨料本身各顶点坐标的集合,记为第二集合;然后计算得到第一集合和第二集合的交集,记为第三集合;最后从第一集合中删除第三集合中的顶点坐标,剩余的两个顶点即为两个骨料的交点。由于交点位于多边形骨料的边线上,无法直接找到,因此需要通过上述方法进行查找。4.2) Adopt the geometric figure intersection discrimination method to obtain the intersection of two polygonal aggregates with overlapping amounts; read the geometric file, read the vertex information of the corresponding geometric figure, and obtain the set of coordinates of each vertex of the polygon corresponding to the overlapping part, which is recorded as The first set; and the set of the vertex coordinates of the two aggregates that overlap, which is recorded as the second set; then the intersection of the first set and the second set is calculated, which is recorded as the third set; finally, from the first set Delete the vertex coordinates in the third set, and the remaining two vertices are the intersection points of the two aggregates. Since the intersection point is located on the edge of the polygonal aggregate, it cannot be found directly, so it needs to be searched by the above method.

4.3)过这两个交点做切割线,沿着切割线将联合多边形骨料切割成两个没有重叠量的骨料。4.3) Make a cutting line through these two intersection points, and cut the combined polygonal aggregate into two aggregates without overlapping along the cutting line.

5)相邻多边形骨料之间存在重叠量,且重叠部分为多个多边形,在模型边界内部,与边界没有接触,针对此种情况的重叠骨料按照如下方法进行切割:5) There is overlap between adjacent polygonal aggregates, and the overlapping part is multiple polygons. It is inside the model boundary and has no contact with the boundary. In this case, the overlapping aggregates are cut according to the following method:

5.1)运用多个多边形重叠的高效联合算法,对存在接触重叠的两个骨料进行联合,重叠部分对应的多边形被合并,相交的线溶解并结于一点,重复的点被合并,形成一个联合多边形骨料,将重叠部分删除。5.1) Use the efficient joint algorithm of overlapping polygons to combine two aggregates with contact overlap, the polygons corresponding to the overlapping parts are merged, the intersecting lines are dissolved and joined at one point, and the repeated points are merged to form a joint Polygonal aggregates, with overlapping parts removed.

5.2)采用几何图形交集判别方法,得到存在重叠量的两个骨料的交集,该交集为多个多边形,无法直接获得交集交点坐标,需要进一步遍历交集,获得每个多边形的顶点坐标集合。5.2) Using the intersection discrimination method of geometric figures, the intersection of two aggregates with overlapping amounts is obtained. The intersection is a plurality of polygons, and the coordinates of the intersection point cannot be obtained directly. It is necessary to further traverse the intersection to obtain the vertex coordinate set of each polygon.

5.3)计算该交集中任意两个顶点坐标点之间的距离,找到两个距离最大的坐标点即为骨料的交点,过这两个交点做切割线,沿着切割线将联合多边形骨料切割成两个没有重叠量的骨料。5.3) Calculate the distance between any two vertex coordinate points in the intersection, find the two coordinate points with the largest distance as the intersection point of the aggregate, make a cutting line through these two intersection points, and combine polygonal aggregates along the cutting line Cut into two aggregates with no overlapping amounts.

6)相邻多边形骨料之间存在重叠量,且重叠部分为一个多边形,同时重叠部分与模型边界接触,则重叠部分被该侧的边界分割为两部分,一部分位于该侧边界附近,另一部分通过周期性边界被放置到与之对称的另一侧边界附近;每一部分中两个形骨料只有一个交点,针对此种情况的重叠骨料按照如下方法进行切割:6) There is an overlapping amount between adjacent polygonal aggregates, and the overlapping part is a polygon, and at the same time the overlapping part is in contact with the model boundary, the overlapping part is divided into two parts by the boundary of this side, one part is located near the side boundary, and the other part The periodical boundary is placed near the boundary on the other side that is symmetrical to it; there is only one intersection point between the two shaped aggregates in each part, and the overlapping aggregates for this case are cut as follows:

6.1)运用多个多边形重叠的高效联合算法,对存在接触重叠的两个骨料进行联合,重叠部分对应的多边形被合并,相交的线溶解并结于一点,重复的点被合并,形成一个联合多边形骨料,将重叠部分删除。6.1) Use the efficient joint algorithm of overlapping polygons to combine two aggregates with contact overlap, the polygons corresponding to the overlapping parts are merged, the intersecting lines are dissolved and joined at one point, and the repeated points are merged to form a joint Polygonal aggregates, with overlapping parts removed.

6.2)采用几何图形交集判别方法,得到存在重叠量的两个骨料的交集,由于重叠部分与边界存在接触,所以重叠部分只有一个交点,采用与步骤4.2)相似的方法找到该交点;接着对交集的顶点坐标进行遍历和判断,找到任何一个在边界上的顶点作为另一交点。6.2) Use the geometrical figure intersection discrimination method to obtain the intersection of two aggregates with overlapping amounts. Since the overlapping part is in contact with the boundary, there is only one intersection point in the overlapping part. Use a method similar to step 4.2) to find the intersection point; then The vertex coordinates of the intersection are traversed and judged, and any vertex on the boundary is found as another intersection point.

6.3)过这两个交点做切割线,沿着切割线将联合多边形骨料切割成两个没有重叠量的骨料;位于对称边界附近的另一部分重叠量,采用与上述相同的方法进行切割。6.3) Make a cutting line through these two intersection points, and cut the combined polygonal aggregate into two aggregates without overlapping along the cutting line; the other part of the overlapping amount located near the symmetrical boundary is cut using the same method as above.

7)相邻多边形骨料之间存在重叠量,且重叠部分为多个多边形,同时重叠部分与模型边界接触,则重叠部分被该侧的边界分割为两部分,一部分位于该侧边界附近,另一部分通过周期性边界被放置到与之对称的另一侧边界附近;每一部分中两个形骨料只有多个交点,针对此种情况的重叠骨料按照如下方法进行切割:7) There is overlap between adjacent polygonal aggregates, and the overlapping part is multiple polygons. At the same time, the overlapping part is in contact with the model boundary, then the overlapping part is divided into two parts by the boundary of this side, one part is located near the side boundary, and the other One part is placed near the border on the other side which is symmetrical to it through the periodic boundary; the two shaped aggregates in each part only have multiple intersections, and the overlapping aggregates for this case are cut as follows:

7.1)运用多个多边形重叠的高效联合算法,对存在接触重叠的两个骨料进行联合,重叠部分对应的多边形被合并,相交的线溶解并结于一点,重复的点被合并,形成一个联合多边形骨料,将重叠部分删除。7.1) Use the efficient joint algorithm of overlapping polygons to combine two aggregates with contact overlap, the polygons corresponding to the overlapping parts are merged, the intersecting lines are dissolved and joined at one point, and the repeated points are merged to form a joint Polygonal aggregates, with overlapping parts removed.

7.2)采用几何图形交集判别方法,得到存在重叠量的两个骨料的交集,由于重叠部分与边界存在接触,所以重叠部分有多个交点,无法直接获得交集交点坐标,需要进一步遍历交集,获得每个多边形的顶点坐标集合。7.2) Using the intersection discrimination method of geometric figures, the intersection of two aggregates with overlapping amounts is obtained. Since the overlapping part is in contact with the boundary, there are multiple intersection points in the overlapping part, and the coordinates of the intersection point cannot be obtained directly. It is necessary to further traverse the intersection to obtain A collection of vertex coordinates for each polygon.

7.3)计算该交集中任意两个顶点坐标点之间的距离,找到两个距离最大的坐标点即为骨料的交点,过这两个交点做切割线,沿着切割线将联合多边形骨料切割成两个没有重叠量的骨料;位于对称边界附近的另一部分重叠量,采用与上述相同的方法进行切割。7.3) Calculate the distance between any two vertex coordinate points in the intersection, find the two coordinate points with the largest distance as the intersection point of the aggregate, make a cutting line through these two intersection points, and combine polygonal aggregates along the cutting line Cut into two aggregates with no overlapping amount; the other overlapping amount located near the symmetrical boundary is cut in the same way as above.

进一步优化,所述步骤7中,计算切割后混杂岩模型骨料的体积分数方法具体为:Further optimization, in the step 7, the method for calculating the volume fraction of the cut melange model aggregate is specifically:

步骤7.1:读取切割后的多边形骨料的几何模型文件;Step 7.1: read the geometric model file of the cut polygonal aggregate;

步骤7.2:计算每个切割后骨料颗粒多边形的面积,并累加切割后所有骨料的总面积SaStep 7.2: Calculate the polygonal area of each aggregate particle after cutting, and add up the total area S a of all aggregates after cutting;

步骤7.3:将切割后所有骨料的总面积Sa与模型边界区域面积Sb进行比值计算,得出进行切割后骨料的体积分数。由于该模型为二维模型,转换成三维模型后为等厚度的片状结构,因此能够用面积比值表示体积含量。Step 7.3: Calculate the ratio of the total area S a of all aggregates after cutting to the area S b of the boundary area of the model to obtain the volume fraction of aggregates after cutting. Since the model is a two-dimensional model, after being converted into a three-dimensional model, it becomes a sheet-like structure of equal thickness, so the volume content can be expressed by the area ratio.

与现有技术相比,本发明具有如下有益效果:Compared with the prior art, the present invention has the following beneficial effects:

本发明很好的解决了现有超高体积分数混杂岩模型难以生成以及骨料存在接触重叠的问题。通过骨料间接触重叠切割算法,实现骨料间面与面接触以及超高体积分数混杂岩模型生成的要求。此方法将超高体积分数混杂岩数值模型难以生成以及骨料间接触重叠的问题,通过切割算法将其转化为骨料间面与面的接触,生成的模型更加符合实际,可提高数值模拟模型的体积分数与真实性。The invention well solves the problems that the existing ultra-high volume fraction melange model is difficult to generate and the aggregates have contact overlap. Through the contact overlap cutting algorithm between aggregates, the requirements of surface-to-surface contact between aggregates and ultra-high volume fraction melange model generation are realized. This method converts the problem of the difficulty in generating the numerical model of ultra-high volume fraction melange and the contact overlap between aggregates into surface-to-surface contact between aggregates through a cutting algorithm. The generated model is more realistic and can improve the numerical simulation model. volume fraction and authenticity.

附图说明Description of drawings

图1为本发明所述采用重叠接触切割算法的二维超高体积混杂岩数值模拟模型的生成方法的流程图;Fig. 1 is the flow chart of the generation method of the two-dimensional ultra-high volume melange numerical simulation model that adopts overlapping contact cutting algorithm according to the present invention;

图2为实施例1中骨料框架的模拟图;Fig. 2 is the simulation figure of aggregate frame in embodiment 1;

图3为实施例1中骨料包裹明可夫斯基壳的模拟图;Fig. 3 is the simulated diagram of aggregate wrapping Minkowski shell in embodiment 1;

图4为实施例1中将骨料转化为刚性簇,并进行离散元碰撞后的模拟图;Fig. 4 is that aggregate is converted into rigid cluster in embodiment 1, and the simulation figure after carrying out discrete element collision;

图5为实施例1中碰撞后,骨料分散平衡后的模拟图;Fig. 5 is after the collision in embodiment 1, the simulated figure after aggregate dispersion equilibrium;

图6为图5中A部,混杂岩模型中骨料之间点与点接触的局部放大图;Fig. 6 is part A in Fig. 5, a partial enlarged view of the point-to-point contact between the aggregates in the melange model;

图7为图5中B部,混杂岩模型中骨料之间点与线接触的局部放大图;Fig. 7 is part B in Fig. 5, a partial enlarged view of point-to-line contact between aggregates in the melange model;

图8为图5中C部,混杂岩模型中骨料之间接触重叠部分为单个多边形且在边界内部的局部放大图;Figure 8 is a partial enlarged view of part C in Figure 5, where the contact overlap between the aggregates in the melange model is a single polygon and inside the boundary;

图9为混杂岩模型中骨料之间接触重叠部分为一个多边形且在边界内部的切割步骤示意图;Fig. 9 is a schematic diagram of the cutting steps in which the contact overlap between the aggregates in the melange model is a polygon and is inside the boundary;

图10为图5中D部,混杂岩模型中骨料之间接触重叠部分为多个多边形且在边界内部的局部放大图;Fig. 10 is part D in Fig. 5, the partial enlarged view of the contact overlapping part between the aggregates in the melange model is a plurality of polygons and inside the boundary;

图11为实施例1中针对混杂岩模型中骨料之间接触重叠部分为多个多边形且在边界内部的切割步骤示意图;Fig. 11 is a schematic diagram of the cutting steps in Example 1 for the contact overlap between the aggregates in the melange model as multiple polygons and inside the boundary;

图12为为图5中E部,混杂岩模型中骨料之间接触重叠部分在边界上的局部放大图;Fig. 12 is part E in Fig. 5, a partial enlarged view of the contact overlapping part between the aggregates in the melange model on the boundary;

图13为实施例1中针对混杂岩模型中骨料之间接触重叠部分在边界上的切割步骤示意图;Fig. 13 is a schematic diagram of the cutting steps on the boundary of the contact overlapping part between the aggregates in the melange model in Example 1;

图14为实施例1中对混杂岩模型进行接触重叠判断和切割处理后的最终模型图;Fig. 14 is the final model diagram after the contact overlap judgment and cutting processing are performed on the melange model in embodiment 1;

图15为实施例2中设定骨料体积分数为95%的混杂岩模型,骨料分散平衡后的模拟图;Fig. 15 is set aggregate volume fraction as 95% mélange model in embodiment 2, the simulated figure after aggregate dispersion balance;

图16为实施例2中对混杂岩模型进行接触重叠判断和切割处理后的最终模型图;Fig. 16 is the final model figure after the contact overlap judgment and cutting processing are performed on the melange model in embodiment 2;

图17为实施例3中设定骨料体积分数为100%的混杂岩模型,骨料分散平衡后的模拟图;Fig. 17 is that the aggregate volume fraction is set to be 100% mélange model in embodiment 3, the simulated figure after aggregate dispersion balance;

图18为实施例3中对混杂岩模型进行接触重叠判断和切割处理后的最终模型图。Fig. 18 is the final model diagram after performing contact overlap judgment and cutting processing on the melange model in embodiment 3.

具体实施方式Detailed ways

下面将结合附图对本发明的技术方案进行清晰、完整地描述;显然,下列所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The technical solutions of the present invention will be clearly and completely described below in conjunction with the accompanying drawings; obviously, the embodiments described below are some, not all, embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without making creative efforts belong to the protection scope of the present invention.

实施例1:Example 1:

如图1所示,一种采用重叠接触切割算法的二维超高体积分数混杂岩数值模拟模型的生成方法,包括以下步骤:As shown in Figure 1, a method for generating a numerical simulation model of a two-dimensional ultra-high volume fraction melange using the overlapping contact cutting algorithm includes the following steps:

步骤1:使用Matlab软件,根据级配曲线、骨料体积分数信息生成多边形骨料的几何模型。Step 1: Use Matlab software to generate a polygonal aggregate geometric model based on the grading curve and aggregate volume fraction information.

在本实施例中,设定二维混杂岩模型的边界尺寸为10cm*20cm,骨料的体积分数90%。颗粒级配的粒径分布为以下4个区间:[6.0,9.0]、[9.0,10.5]、[10.5,11.2]、[11.2,12],单位为mm。对应粒径区间内的骨料占总骨料的体积百分数分别为:19.6%、 47.9%、24.5%、8.0%,如图2所示,多边形为骨料的几何模型。本方法对骨料的颗粒级配没有特殊要求,可以随意设置。In this embodiment, the boundary size of the two-dimensional mixed rock model is set to be 10cm*20cm, and the volume fraction of aggregate is 90%. The particle size distribution of particle gradation is the following four intervals: [6.0, 9.0], [9.0, 10.5], [10.5, 11.2], [11.2, 12], the unit is mm. The volume percentages of the aggregate in the corresponding particle size range to the total aggregate are: 19.6%, 47.9%, 24.5%, 8.0%, as shown in Figure 2, the polygon is the geometric model of the aggregate. This method has no special requirements on the particle gradation of the aggregate, which can be set arbitrarily.

步骤2:采用明可夫斯基算法,以多边形骨料模型每个边的法向向外扩展,使所有骨料的轮廓向外延伸扩展相当于给骨料外包裹一个外壳,如图3所示。利用离散元软件,以各个骨料颗粒的多边形框架生成相同大小、形状的刚性簇(clump)生成刚性簇的模板,以此模板作为生成与多边形骨料具有相同形状刚性簇的基础,然后通过Bubble Pack算法,用Pebble颗粒自动填充刚性簇模板,得到刚性簇(clump),如图4所示,并将模型边界设定为周期性刚性墙边界,可模拟骨料在边界上的分布。Step 2: Use the Minkowski algorithm to expand outward with the normal direction of each side of the polygonal aggregate model, so that the outline of all aggregates extends outward, which is equivalent to wrapping the aggregate with a shell, as shown in Figure 3 Show. Use discrete element software to generate rigid clusters (clumps) of the same size and shape with the polygonal framework of each aggregate particle to generate a template for rigid clusters, and use this template as the basis for generating rigid clusters with the same shape as polygonal aggregates, and then use Bubble The Pack algorithm automatically fills the rigid cluster template with Pebble particles to obtain a rigid cluster (clump), as shown in Figure 4, and sets the model boundary as a periodic rigid wall boundary, which can simulate the distribution of aggregates on the boundary.

步骤3:运用离散元模拟刚性簇的碰撞,使骨料位置重新分布,如图5所示。再把骨料的外部轮廓恢复到扩展之前的状态。设置模型边界墙的刚度远大于骨料刚性簇的刚度;保证骨料颗粒在碰撞过程中不会飞出边界;针对位于一侧边界墙上的骨料颗粒,超出该侧边界的部分通过周期性边界被放置到与之对称的另一侧边界上;位于模型边界角点上的骨料颗粒被分为四部分,通过周期性边界分别放置到模型边界对应的四个角点内部。然后获取重分布后骨料刚性簇轮廓的坐标信息,得到骨料颗粒随机分布的混杂岩几何模型,并保存为dxf文件。Step 3: Use discrete elements to simulate the collision of rigid clusters to redistribute the aggregate positions, as shown in Figure 5. Then restore the external profile of the aggregate to the state before expansion. Set the stiffness of the boundary wall of the model to be much greater than the rigidity of the aggregate rigid cluster; ensure that the aggregate particles will not fly out of the boundary during the collision; The boundary is placed on the other side of the boundary that is symmetrical to it; the aggregate particles located at the corners of the model boundary are divided into four parts, and are placed inside the four corresponding corners of the model boundary through periodic boundaries. Then obtain the coordinate information of the aggregate rigid cluster outline after redistribution, obtain the melange geometric model with random distribution of aggregate particles, and save it as a dxf file.

步骤4:运用Python接触重叠判断算法,处理混杂岩几何模型dxf文件;获得整个模型的所有骨料颗粒的多边形实体,通过上述算法,循环遍历所有骨料实体,寻找到与周围多边形骨料颗粒存在接触重叠量的骨料,并判别接触重叠类型。Step 4: Use the Python contact overlap judgment algorithm to process the dxf file of the melange geometric model; obtain the polygonal entities of all aggregate particles in the entire model, and use the above algorithm to loop through all aggregate entities to find out the existence of polygonal aggregate particles with the surrounding polygons. Aggregate with contact overlap amount, and identify contact overlap type.

步骤5:根据骨料接触重叠类型,采用不同的接触重叠切割算法对接触重叠的骨料进行切割,每次切割后将对应骨料信息更新到多边形骨料实体的列表中。Step 5: According to the type of aggregate contact overlap, different contact overlap cutting algorithms are used to cut the overlapped aggregates, and the corresponding aggregate information is updated to the list of polygonal aggregate entities after each cutting.

根据不同的接触重叠类型实行不同的切割方式,具体如下:Different cutting methods are implemented according to different contact overlapping types, as follows:

1)相邻多边形骨料之间点与点接触,模拟现实情况下混杂岩中骨料颗粒之间存在的尖角与尖角的接触,允许存在,不用切割,如图6所示。1) Point-to-point contact between adjacent polygonal aggregates, simulating the contact between sharp corners and sharp corners between aggregate particles in melange in reality, which is allowed to exist without cutting, as shown in Figure 6.

2)相邻多边形骨料之间点与线接触,模拟现实情况下混杂岩中骨料颗粒之间存在的尖角与面的接触,允许存在,不用切割,如图7所示。2) Point-to-line contact between adjacent polygonal aggregates, simulating the contact between sharp corners and surfaces between aggregate particles in melange in reality, which is allowed to exist without cutting, as shown in Figure 7.

3)相邻多边形骨料之间线与线接触,模拟现实情况下混杂岩中骨料颗粒之间存在的面与面的接触,允许存在,不用切割。3) The line-to-line contact between adjacent polygonal aggregates simulates the surface-to-surface contact between aggregate particles in melange in reality, which is allowed and does not need to be cut.

4)相邻多边形骨料之间存在重叠量,且重叠部分为一个多边形,重叠部分位于模型边界内部,与边界没有接触,如图8所示,针对此种情况的重叠骨料按照如下方法进行切割:4) There is an overlapping amount between adjacent polygonal aggregates, and the overlapping part is a polygon. The overlapping part is located inside the model boundary and has no contact with the boundary. As shown in Figure 8, the overlapping aggregates for this situation are performed according to the following method cutting:

运用Python中的shapely库的高效联合方法,对接触重叠的骨料进行联合,形成一个联合多边形骨料,中间接触重叠部分被删除;同时,通过shapely库中的intersection 方法,得到存在重叠量的两个多边形骨料的所的交集;通过dxfgrabber库中实体的 ponits方法,获得重叠部分所对应多边形各顶点坐标的集合,记为第一集合;以及产生重叠的两个骨料本身各顶点坐标的集合,记为第二集合;然后计算得到第一集合和第二集合的交集,记为第三集合;最后从第一集合中删除第三集合中的顶点坐标,剩余的两个顶点即为两个骨料的交点;然后以这两个交点做切割线,用shapely库中的split的方法将联合多边形骨料切割成两个没有重叠量的骨料,如图9所示。Using the efficient combination method of the shapely library in Python, the overlapping aggregates are combined to form a combined polygonal aggregate, and the intermediate contact overlapping part is deleted; at the same time, through the intersection method in the shapely library, the two overlapped The intersection of all polygonal aggregates; through the ponits method of the entity in the dxfgrabber library, obtain the set of coordinates of each vertex of the polygon corresponding to the overlapping part, which is recorded as the first set; and the set of coordinates of each vertex of the two aggregates that overlap , recorded as the second set; then calculate the intersection of the first set and the second set, and record it as the third set; finally delete the vertex coordinates in the third set from the first set, and the remaining two vertices are two The intersection point of the aggregate; then use these two intersection points as the cutting line, and use the split method in the shapely library to cut the joint polygon aggregate into two aggregates without overlapping, as shown in Figure 9.

5)相邻多边形骨料之间存在重叠量,且重叠部分为多个多边形,在模型边界内部,与边界没有接触,如图10所示,针对此种情况的重叠骨料按照如下方法进行切割:5) There is overlap between adjacent polygonal aggregates, and the overlapping part is multiple polygons. It is inside the model boundary and has no contact with the boundary. As shown in Figure 10, the overlapping aggregates in this case are cut according to the following method :

运用Python中的shapely库的高效联合方法,对接触重叠的骨料进行联合,形成一个联合多边形骨料,中间接触重叠部分被删除;同时,通过shapely库中的intersection 的方法,返回此骨料与另一个骨料的交集,但此时的交集为多个多边形,无法直接获得交集顶点坐标,需要进一步遍历交集,获得每个单个多边形的顶点坐标;然后,调用 scipy库和numpy库计算交集中每个坐标点之间的距离,找到两个距离最大的坐标点即为骨料的交点,以这两个交点做切割线,用shapely库中的split的方法将联合多边形骨料切割成两个没有重叠量的骨料,如图11所示。Use the efficient combination method of the shapely library in Python to combine the overlapping aggregates to form a combined polygonal aggregate, and the intermediate contact overlapping part is deleted; at the same time, through the intersection method in the shapely library, return this aggregate and The intersection of another aggregate, but at this time the intersection is multiple polygons, and the intersection vertex coordinates cannot be obtained directly. It is necessary to further traverse the intersection to obtain the vertex coordinates of each single polygon; then, call the scipy library and numpy library to calculate each intersection in the intersection. The distance between two coordinate points, find the two coordinate points with the largest distance as the intersection point of the aggregate, use these two intersection points as the cutting line, and use the split method in the shapely library to cut the joint polygon aggregate into two without Overlapping amounts of aggregates, as shown in Figure 11.

6)相邻多边形骨料之间存在重叠量,且重叠部分为一个多边形,同时重叠部分与模型边界接触,则重叠部分被该侧的边界分割为两部分,一部分位于该侧边界附近,另一部分通过周期性边界被放置到与之对称的另一侧边界附近;每一部分中两个形骨料只有一个交点,如图12所示,针对此种情况的重叠骨料按照如下方法进行切割:6) There is an overlapping amount between adjacent polygonal aggregates, and the overlapping part is a polygon, and at the same time the overlapping part is in contact with the model boundary, the overlapping part is divided into two parts by the boundary of this side, one part is located near the side boundary, and the other part The periodical boundary is placed near the boundary on the other side that is symmetrical to it; there is only one intersection point between the two shaped aggregates in each part, as shown in Figure 12, and the overlapping aggregates for this situation are cut as follows:

运用Python中的shapely库的高效联合方法,对存在接触重叠的骨料进行联合,形成一个联合多边形骨料,将重叠部分删除;通过shapely库中的intersection方法,得到存在重叠量的两个骨料的交集,由于重叠部分与边界存在接触,所以重叠部分只有一个交点,通过dxfgrabber库中实体的ponits方法,采用与步骤4.2)相似的方法找到该交点;接着对交集的顶点坐标进行遍历和判断,找到任何一个在边界上的顶点作为另一交点;过这两个交点做切割线,用shapely库中的split的方法将联合多边形骨料切割成两个没有重叠量的骨料,如图13所示。位于对称边界附近的另一部分重叠量,采用与上述相同的方法进行切割。Use the efficient combination method of the shapely library in Python to combine aggregates with contact overlap to form a combined polygonal aggregate, and delete the overlapping part; use the intersection method in the shapely library to obtain two aggregates with overlapping amounts The intersection of , because the overlapping part is in contact with the boundary, there is only one intersection point in the overlapping part, through the ponits method of the entity in the dxfgrabber library, use a method similar to step 4.2) to find the intersection point; then traverse and judge the vertex coordinates of the intersection, Find any vertex on the boundary as another intersection point; make a cutting line through these two intersection points, and use the split method in the shapely library to cut the joint polygon aggregate into two aggregates without overlapping, as shown in Figure 13 Show. Another part of the overlapping volume located near the symmetric boundary is cut in the same way as above.

7)相邻多边形骨料之间存在重叠量,且重叠部分为多个多边形,同时重叠部分与模型边界接触,则重叠部分被该侧的边界分割为两部分,一部分位于该侧边界附近,另一部分通过周期性边界被放置到与之对称的另一侧边界附近;每一部分中两个形骨料只有多个交点,针对此种情况的重叠骨料按照如下方法进行切割:7) There is overlap between adjacent polygonal aggregates, and the overlapping part is multiple polygons. At the same time, the overlapping part is in contact with the model boundary, then the overlapping part is divided into two parts by the boundary of this side, one part is located near the side boundary, and the other One part is placed near the border on the other side which is symmetrical to it through the periodic boundary; the two shaped aggregates in each part only have multiple intersections, and the overlapping aggregates for this case are cut as follows:

运用Python中的shapely库的高效联合方法,对存在接触重叠的骨料进行联合,形成一个联合多边形骨料,将重叠部分删除;通过shapely库中的intersection方法,得到存在重叠量的两个骨料的交集,由于重叠部分与边界存在接触,所以重叠部分有多个交点,无法直接获得交集交点坐标,需要进一步遍历交集,通过dxfgrabber库中实体的 ponits方法,获得每个多边形的顶点坐标集合;调用scipy库和numpy库,计算该交集中任意两个顶点坐标点之间的距离,找到两个距离最大的坐标点即为骨料的交点,过这两个交点做切割线,用shapely库中的split的方法将联合多边形骨料切割成两个没有重叠量的骨料;位于对称边界附近的另一部分重叠量,采用与上述相同的方法进行切割。Use the efficient combination method of the shapely library in Python to combine aggregates with contact overlap to form a combined polygonal aggregate, and delete the overlapping part; use the intersection method in the shapely library to obtain two aggregates with overlapping amounts Since the overlapping part is in contact with the boundary, there are multiple intersection points in the overlapping part, and the coordinates of the intersection point cannot be obtained directly. It is necessary to further traverse the intersection, and obtain the vertex coordinate set of each polygon through the ponits method of the entity in the dxfgrabber library; call The scipy library and the numpy library calculate the distance between any two vertex coordinate points in the intersection, find the two coordinate points with the largest distance as the intersection point of the aggregate, and make a cutting line through these two intersection points, using the shapely library The split method cuts the joint polygon aggregate into two aggregates with no overlapping volume; the other part of the overlapping volume located near the symmetrical boundary is cut using the same method as above.

步骤6:对更新后的骨料实体列表重复步骤5,直至边界内所有产生接触重叠量的多边形骨料均被切割、更新。经过接触重叠切割算法处理后,两个拥有接触重叠量的多边形骨料被切割成两个只有一条线重合接触的多边形骨料。Step 6: Repeat step 5 for the updated aggregate entity list until all polygonal aggregates within the boundaries that generate contact overlap are cut and updated. After being processed by the contact overlap cutting algorithm, two polygonal aggregates with contact overlap are cut into two polygonal aggregates with only one line coincident contact.

步骤7:在Python中运用相应的dxfgrabber库,将进行切割后的多边形骨料重新写成dxf文件并导出,最终的几何模型如图14所示(图14与图5的区别在于图5中某些相邻的骨料之间存在接触重叠量,而图14中相邻骨料之间的已经重叠部分已经进行了切割);然后,调用Python相应的shapely库,使用多边形的area方法,对导出的dxf 文件中骨料颗粒实体进行面积的累加,获得最终的二维混杂岩模型中骨料颗粒的总面积 Sa,并与模型边界区域面积Sb进行比值计算,得出进行切割后骨料的体积分数。由于切割后骨料对应的对变形成顶点坐标已知,因此每个骨料的面积也已知。此实例模型切割后的骨料体积分数为89.17%,理论和实际之间的误差为0.83%,小于设定的误差值1%,因此满足模型设定的体积分数。Step 7: Use the corresponding dxfgrabber library in Python to rewrite the cut polygonal aggregate as a dxf file and export it. The final geometric model is shown in Figure 14 (the difference between Figure 14 and Figure 5 is that some There is a contact overlap between adjacent aggregates, and the overlapping parts between adjacent aggregates in Figure 14 have been cut); then, call the corresponding shapely library of Python, use the area method of the polygon, and export The total area of aggregate particles in the dxf file is accumulated to obtain the total area S a of aggregate particles in the final two-dimensional melange model, and the ratio calculation is performed with the area S b of the boundary area of the model to obtain the aggregate area after cutting Volume fraction. Since the coordinates of the vertex corresponding to the deformation of the aggregate after cutting are known, the area of each aggregate is also known. The volume fraction of the aggregate in this example model after cutting is 89.17%, and the error between theory and practice is 0.83%, which is less than the set error value of 1%, so it meets the volume fraction set by the model.

实施例二:Embodiment two:

采用与实施例一相同的方法,生成骨料体积分数设定为95%的混杂岩模型,骨料分散平衡后的模拟图如图15所示;分通过切割算法处理后,得到骨料体积分数为92.26%的混杂岩几何模型,如图16所示。Using the same method as in Example 1, generate a melange model in which the aggregate volume fraction is set to 95%, and the simulation diagram after the aggregate dispersion and balance is shown in Figure 15; after processing through the cutting algorithm, the aggregate volume fraction is obtained The geometric model of the mélange is 92.26%, as shown in Fig. 16.

实施例三:Embodiment three:

采用与实施例一相同的方法,生成骨料体积分数设定为100%的混杂岩模型,骨料分散平衡后的模拟图如图17所示;分通过切割算法处理后,得到骨料体积分数为95.25%的混杂岩几何模型,如图18所示。只要随着设定体积分数的提高,采用本发明所述方法可以生成骨料体积分数接近100%的几何模型。Using the same method as in Example 1, generate a mélange model with the aggregate volume fraction set to 100%, and the simulation diagram after the aggregate dispersion and balance is shown in Figure 17; after the points are processed by the cutting algorithm, the aggregate volume fraction is obtained is 95.25% of the melange geometric model, as shown in Figure 18. As long as the set volume fraction increases, the method of the present invention can generate a geometric model with an aggregate volume fraction close to 100%.

本发明不仅仅适用于超高体积分数混杂岩数值模拟模型的生成,还适用于混凝土、土石混合体等不均匀岩土材料。The invention is not only applicable to the generation of the numerical simulation model of super-high volume fraction mixed rock, but also applicable to heterogeneous rock and soil materials such as concrete and earth-rock mixture.

以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。The above is only an embodiment of the present invention, and does not limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made by using the description of the present invention and the contents of the accompanying drawings, or directly or indirectly used in other related technologies fields, are all included in the scope of patent protection of the present invention in the same way.

Claims (9)

1.采用重叠接触切割算法的二维超高体积分数混杂岩数值模拟模型的生成方法,其特征在于,包括以下步骤:1. The generation method of the two-dimensional ultra-high volume fraction melange numerical simulation model adopting the overlapping contact cutting algorithm is characterized in that, comprising the following steps: 步骤1:根据颗粒级配曲线和骨料体积分数信息生成所有的多边形骨料的二维框架几何模型;Step 1: Generate the two-dimensional framework geometric models of all polygonal aggregates according to the particle gradation curve and aggregate volume fraction information; 步骤2:利用离散元软件,根据多边形骨料框架生成相同大小、形状的刚性簇,并将模型边界设定为墙边界,保证骨料颗粒能在模型边界内,同时可模拟骨料在边界上的分布;Step 2: Use discrete element software to generate rigid clusters of the same size and shape according to the polygonal aggregate frame, and set the model boundary as the wall boundary to ensure that the aggregate particles can be within the model boundary and simulate the aggregate on the boundary Distribution; 步骤3:运用离散元模拟刚性簇的碰撞,使骨料位置重新分布;待骨料颗粒碰撞达到平衡后获取重分布后骨料刚性簇轮廓的坐标信息,得到骨料颗粒随机分布的混杂岩几何模型,并保存为几何文件;Step 3: Use discrete elements to simulate the collision of rigid clusters to redistribute the aggregate positions; obtain the coordinate information of the outline of the redistributed aggregate rigid clusters after the collision of aggregate particles reaches equilibrium, and obtain the melange geometry with random distribution of aggregate particles model, and save it as a geometry file; 步骤4:采用接触重叠判断算法,处理混杂岩模型几何文件,获得整个模型的所有骨料颗粒的多边形实体,循环遍历所有骨料实体,寻找与周围多边形骨料颗粒存在接触重叠量的骨料,并判别接触重叠类型;Step 4: Use the contact overlap judgment algorithm to process the melange model geometry file, obtain the polygonal entities of all aggregate particles in the entire model, loop through all aggregate entities, and find aggregates that have contact overlap with the surrounding polygonal aggregate particles, And distinguish the type of contact overlap; 步骤5:根据骨料接触重叠类型,采用不同的接触重叠切割算法对接触重叠的骨料进行切割,每次切割后将对应骨料信息更新到多边形骨料实体的列表中;Step 5: According to the type of aggregate contact overlap, use different contact overlap cutting algorithms to cut the contact overlap aggregates, and update the corresponding aggregate information to the list of polygon aggregate entities after each cut; 步骤6:对更新后的骨料实体列表重复步骤5,直至边界内所有产生接触重叠量的多边形骨料均被切割、更新;Step 6: Repeat step 5 for the updated aggregate entity list until all polygonal aggregates within the boundaries that generate contact overlap are cut and updated; 步骤7:将进行切割后的多边形骨料重新写成几何文件并导出;并对导出的几何文件中骨料颗粒实体的面积进行累加,获得最终的二维混杂岩模型中骨料颗粒的总面积Sa,并与模型边界区域面积Sb进行比值计算,得出切割后骨料的体积分数。Step 7: rewrite the polygonal aggregate after cutting into a geometry file and export it; and accumulate the area of the aggregate particle entity in the exported geometry file to obtain the total area S of the aggregate particle in the final two-dimensional hybrid rock model a , and calculate the ratio with the model boundary area S b to obtain the volume fraction of the aggregate after cutting. 2.根据权利要求1所述的采用重叠接触切割算法的二维超高体积分数混杂岩数值模拟模型的生成方法,其特征在于,所述步骤1中,生成所有的多边形骨料框架的过程如下:2. the generation method of the two-dimensional ultra-high volume fraction melange numerical simulation model adopting overlapping contact cutting algorithm according to claim 1, it is characterized in that, in the described step 1, the process of generating all polygonal aggregate frames is as follows : 步骤1.1:在极坐标系中,以原点为基点,通过随机函数获得一系列随机半径和角度值,根据随机半径和角度得到一系列随机点,将这些点顺序连接得到多边形骨料;Step 1.1: In the polar coordinate system, take the origin as the base point, obtain a series of random radius and angle values through random functions, obtain a series of random points according to the random radius and angle, and connect these points sequentially to obtain polygonal aggregates; 步骤1.2:通过累加得到模型边界内所有骨料的总面积;根据颗粒级配曲线的骨料粒径区间进行划分,按照对应粒径区间内骨料的面积与所有骨料的总面积的比值来控制相应的粒径区间内骨料在模型中的占比;Step 1.2: Obtain the total area of all aggregates within the model boundary by accumulating; divide according to the aggregate particle size interval of the particle gradation curve, and calculate according to the ratio of the area of the aggregate in the corresponding particle size interval to the total area of all aggregates Control the proportion of aggregate in the model in the corresponding particle size range; 步骤1.3:通过累加得到所有骨料的总面积,通过骨料的总面积与模型边界区域面积比值来控制混杂岩模型的体积分数。Step 1.3: The total area of all aggregates is obtained by summing up, and the volume fraction of the melange model is controlled by the ratio of the total area of aggregates to the area of the boundary area of the model. 3.根据权利要求2所述的采用重叠接触切割算法的二维超高体积分数混杂岩数值模拟模型的生成方法,其特征在于,所述步骤2中还包括如下步骤:采用明可夫斯基算法,以多边形骨料模型每个边的法向向外扩展,使所有骨料的轮廓向外延伸扩展;运用离散元模拟簇的碰撞,待骨料颗粒碰撞达到平衡后,再把骨料的外部轮廓恢复到扩展之前的状态。3. the generation method of the two-dimensional ultra-high volume fraction melange numerical simulation model adopting overlapping contact cutting algorithm according to claim 2, it is characterized in that, in described step 2, also comprise the following steps: adopt Minkowski The algorithm uses the normal direction of each side of the polygonal aggregate model to expand outward, so that the outline of all aggregates extends outward; uses discrete elements to simulate the collision of clusters, and after the collision of aggregate particles reaches equilibrium, the aggregate The outer contour reverts to what it was before the extension. 4.根据权利要求3所述的采用重叠接触切割算法的二维超高体积分数混杂岩数值模拟模型的生成方法,其特征在于,所述步骤2中,生成刚性簇的方法具体如下:以各个骨料颗粒的多边形框架生成刚性簇的模板,以此模板作为生成与多边形骨料具有相同形状刚性簇的基础,然后采用Bubble Pack算法,用Pebble颗粒自动填充刚性簇模板,得到刚性簇。4. the generation method of the two-dimensional ultra-high volume fraction melange numerical simulation model adopting overlapping contact cutting algorithm according to claim 3, it is characterized in that, in described step 2, the method for generating rigid cluster is specifically as follows: with each The polygonal framework of aggregate particles generates a rigid cluster template, which is used as the basis for generating rigid clusters with the same shape as the polygonal aggregate, and then uses the Bubble Pack algorithm to automatically fill the rigid cluster template with Pebble particles to obtain rigid clusters. 5.根据权利要求4所述的采用重叠接触切割算法的二维超高体积分数混杂岩数值模拟模型的生成方法,其特征在于,所述步骤3中,刚性簇碰撞特性如下:5. the generation method of the two-dimensional ultra-high volume fraction melange numerical simulation model adopting overlapping contact cutting algorithm according to claim 4, it is characterized in that, in described step 3, rigid cluster collision characteristic is as follows: 在离散元软件中通过离散单元法模拟刚性簇之间的碰撞,所述模型的边界为矩形,将模型的边界设置成刚性的墙,并赋予刚度,同时给骨料刚性簇也赋予接触模型和刚度,由于墙和骨料都存在刚度,产生重叠时就会碰撞、弹开;通过骨料刚性簇之间的相互碰撞、弹开和骨料刚性簇与墙边界之间的碰撞,实现骨料颗粒的重分布,并允许模型的边界上存在骨料颗粒。In the discrete element software, the collision between the rigid clusters is simulated by the discrete element method. The boundary of the model is a rectangle, and the boundary of the model is set as a rigid wall, and the stiffness is given. At the same time, the rigid cluster of the aggregate is also given a contact model and Stiffness, due to the stiffness of both the wall and the aggregate, they will collide and bounce when overlapping occurs; through the mutual collision and bounce between the aggregate rigid clusters and the collision between the aggregate rigid cluster and the wall boundary, the aggregate Particle redistribution and allow for the presence of aggregate particles on the boundaries of the model. 6.根据权利要求5所述的采用重叠接触切割算法的二维超高体积分数混杂岩数值模拟模型的生成方法,其特征在于,6. the generation method of the two-dimensional ultra-high volume fraction melange numerical simulation model adopting overlapping contact cutting algorithm according to claim 5, is characterized in that, 设置模型边界墙的刚度远大于骨料刚性簇的刚度;针对位于一侧边界墙上的骨料颗粒,超出该侧边界的部分通过周期性边界被放置到与之对称的另一侧边界上;位于模型边界角点上的骨料颗粒被分为四部分,通过周期性边界分别放置到模型边界对应的四个角点内部。Set the stiffness of the model boundary wall to be much greater than that of the aggregate rigid cluster; for the aggregate particles on one side of the boundary wall, the part beyond the side boundary is placed on the other side of the boundary that is symmetrical to it through the periodic boundary; Aggregate particles located at the corner points of the model boundary are divided into four parts, which are respectively placed inside the four corresponding corner points of the model boundary through periodic boundaries. 7.根据权利要求6所述的采用重叠接触切割算法的二维超高体积分数混杂岩数值模拟模型的生成方法,其特征在于,所述步骤4中,采用接触重叠判断算法判断骨料触重叠类型,具体如下:读取几何文件,获得每个骨料多边形的坐标点信息;然后调用多边形接触重叠判断算法对骨料多边形的接触重叠量进行判断;7. The generation method of the two-dimensional ultra-high volume fraction melange numerical simulation model adopting the overlapping contact cutting algorithm according to claim 6, characterized in that, in the step 4, the contact overlapping judging algorithm is used to judge the overlapping of the aggregate Type, specifically as follows: read the geometry file to obtain the coordinate point information of each aggregate polygon; then call the polygon contact overlap judgment algorithm to judge the contact overlap of the aggregate polygon; 骨料的接触重叠包括以下七种类型:The contact overlap of aggregates includes the following seven types: 1)相邻多边形骨料之间存在点与点接触;1) There is point-to-point contact between adjacent polygonal aggregates; 2)相邻多边形骨料之间存在点与线接触;2) There is point-to-line contact between adjacent polygonal aggregates; 3)相邻多边形骨料之间存在线与线接触;3) There is line-to-line contact between adjacent polygonal aggregates; 4)相邻多边形骨料之间存在重叠量,且重叠部分为一个多边形,重叠部分在模型边界内部,与边界没有接触;4) There is overlap between adjacent polygonal aggregates, and the overlapping part is a polygon, and the overlapping part is inside the model boundary and has no contact with the boundary; 5)相邻多边形骨料之间存在重叠量,且重叠部分为多个多边形,重叠部分在模型边界内部,与边界没有接触;5) There is overlap between adjacent polygonal aggregates, and the overlapping part is multiple polygons, and the overlapping part is inside the model boundary and has no contact with the boundary; 6)相邻多边形骨料之间存在重叠量,且重叠部分为一个多边形,同时重叠部分与模型边界接触,两个多边形骨料只有一个交点;6) There is overlap between adjacent polygonal aggregates, and the overlapping part is a polygon, and the overlapping part is in contact with the model boundary, and there is only one intersection point between the two polygonal aggregates; 7)相邻多边形骨料之间存在重叠量,且重叠部分为多个多边形,同时重叠部分与模型边界接触,两个多边形骨料有多个交点。7) There is overlap between adjacent polygonal aggregates, and the overlapping part is multiple polygons. At the same time, the overlapping part is in contact with the model boundary, and there are multiple intersection points between the two polygonal aggregates. 8.根据权利要求7所述的采用重叠接触切割算法的二维超高体积分数混杂岩数值模拟模型的生成方法,其特征在于,所述步骤5中,根据不同的接触重叠类型实行不同的切割方式,具体如下:8. The method for generating a two-dimensional ultra-high volume fraction melange numerical simulation model using an overlapping contact cutting algorithm according to claim 7, characterized in that, in the step 5, different cutting methods are implemented according to different contact overlapping types method, as follows: 1)相邻多边形骨料之间点与点接触,模拟现实情况下混杂岩中骨料颗粒之间存在的尖角与尖角的接触,允许存在,不用切割;1) Point-to-point contact between adjacent polygonal aggregates, simulating the contact between sharp corners and sharp corners between aggregate particles in melange in reality, which is allowed to exist without cutting; 2)相邻多边形骨料之间点与线接触,模拟现实情况下混杂岩中骨料颗粒之间存在的尖角与面的接触,允许存在,不用切割;2) Point-to-line contact between adjacent polygonal aggregates, simulating the contact between sharp corners and surfaces between aggregate particles in melange in reality, which is allowed to exist without cutting; 3)相邻多边形骨料之间线与线接触,模拟现实情况下混杂岩中骨料颗粒之间存在的面与面的接触,允许存在,不用切割;3) Line-to-line contact between adjacent polygonal aggregates, simulating the surface-to-surface contact between aggregate particles in melange in reality, which is allowed and does not need to be cut; 4)相邻多边形骨料之间存在重叠量,且重叠部分为一个多边形,重叠部分位于模型边界内部,与边界没有接触,针对此种情况的重叠骨料按照如下方法进行切割:4) There is an amount of overlap between adjacent polygonal aggregates, and the overlapping part is a polygon. The overlapping part is located inside the model boundary and has no contact with the boundary. The overlapping aggregates in this case are cut according to the following method: 4.1)运用多个多边形重叠的高效联合算法,对存在接触重叠的两个骨料进行联合,重叠部分对应的多边形被合并,相交的线溶解并结于一点,重复的点被合并,形成一个联合多边形骨料,将重叠部分删除;4.1) Use the efficient joint algorithm of overlapping polygons to combine two aggregates with contact overlap, the polygons corresponding to the overlapping parts are merged, the intersecting lines are dissolved and joined at one point, and the repeated points are merged to form a joint For polygonal aggregates, the overlapping parts are deleted; 4.2)采用几何图形交集判别方法,得到存在重叠量的两个多边形骨料的交集;读取几何文件,获得重叠部分所对应多边形各顶点坐标的集合,记为第一集合;以及产生重叠的两个骨料本身各顶点坐标的集合,记为第二集合;然后计算得到第一集合和第二集合的交集,记为第三集合;最后从第一集合中删除第三集合中的顶点坐标,剩余的两个顶点即为两个骨料的交点;4.2) Adopt the geometric figure intersection discrimination method to obtain the intersection of two polygonal aggregates with overlapping amounts; read the geometric file, obtain the set of coordinates of each vertex of the polygon corresponding to the overlapping part, and record it as the first set; The set of the coordinates of each vertex of the aggregate itself is recorded as the second set; then the intersection of the first set and the second set is calculated, which is recorded as the third set; finally, the vertex coordinates in the third set are deleted from the first set, The remaining two vertices are the intersection points of the two aggregates; 4.3)过这两个交点做切割线,沿着切割线将联合多边形骨料切割成两个没有重叠量的骨料;4.3) Make a cutting line through these two intersection points, and cut the combined polygonal aggregate into two aggregates without overlapping along the cutting line; 5)相邻多边形骨料之间存在重叠量,且重叠部分为多个多边形,在模型边界内部,与边界没有接触,针对此种情况的重叠骨料按照如下方法进行切割:5) There is overlap between adjacent polygonal aggregates, and the overlapping part is multiple polygons. It is inside the model boundary and has no contact with the boundary. In this case, the overlapping aggregates are cut according to the following method: 5.1)运用多个多边形重叠的高效联合算法,对存在接触重叠的两个骨料进行联合,重叠部分对应的多边形被合并,相交的线溶解并结于一点,重复的点被合并,形成一个联合多边形骨料,将重叠部分删除;5.1) Use the efficient joint algorithm of overlapping polygons to combine two aggregates with contact overlap, the polygons corresponding to the overlapping parts are merged, the intersecting lines are dissolved and joined at one point, and the repeated points are merged to form a joint For polygonal aggregates, the overlapping parts are deleted; 5.2)采用几何图形交集判别方法,得到存在重叠量的两个骨料的交集,该交集为多个多边形,无法直接获得交集交点坐标,需要进一步遍历交集,获得每个多边形的顶点坐标集合;5.2) The intersection of two aggregates with an overlapping amount is obtained by using the geometric figure intersection discrimination method. The intersection is a plurality of polygons, and the coordinates of the intersection point cannot be obtained directly. It is necessary to further traverse the intersection to obtain the vertex coordinate set of each polygon; 5.3)计算该交集中任意两个顶点坐标点之间的距离,找到两个距离最大的坐标点即为骨料的交点,过这两个交点做切割线,沿着切割线将联合多边形骨料切割成两个没有重叠量的骨料;5.3) Calculate the distance between any two vertex coordinate points in the intersection, find the two coordinate points with the largest distance as the intersection point of the aggregate, make a cutting line through these two intersection points, and combine polygonal aggregates along the cutting line Cut into two aggregates with no overlapping amount; 6)相邻多边形骨料之间存在重叠量,且重叠部分为一个多边形,同时重叠部分与模型边界接触,则重叠部分被该侧的边界分割为两部分,一部分位于该侧边界附近,另一部分通过周期性边界被放置到与之对称的另一侧边界附近;每一部分中两个形骨料只有一个交点,针对此种情况的重叠骨料按照如下方法进行切割:6) There is an overlapping amount between adjacent polygonal aggregates, and the overlapping part is a polygon, and at the same time the overlapping part is in contact with the model boundary, the overlapping part is divided into two parts by the boundary of this side, one part is located near the side boundary, and the other part The periodical boundary is placed near the boundary on the other side that is symmetrical to it; there is only one intersection point between the two shaped aggregates in each part, and the overlapping aggregates for this case are cut as follows: 6.1)运用多个多边形重叠的高效联合算法,对存在接触重叠的两个骨料进行联合,重叠部分对应的多边形被合并,相交的线溶解并结于一点,重复的点被合并,形成一个联合多边形骨料,将重叠部分删除;6.1) Use the efficient joint algorithm of overlapping polygons to combine two aggregates with contact overlap, the polygons corresponding to the overlapping parts are merged, the intersecting lines are dissolved and joined at one point, and the repeated points are merged to form a joint For polygonal aggregates, the overlapping parts are deleted; 6.2)采用几何图形交集判别方法,得到存在重叠量的两个骨料的交集,由于重叠部分与边界存在接触,所以重叠部分只有一个交点,采用与步骤4.2)相似的方法找到该交点;接着对交集的顶点坐标进行遍历和判断,找到任何一个在边界上的顶点作为另一交点;6.2) Use the geometrical figure intersection discrimination method to obtain the intersection of two aggregates with overlapping amounts. Since the overlapping part is in contact with the boundary, there is only one intersection point in the overlapping part. Use a method similar to step 4.2) to find the intersection point; then The vertex coordinates of the intersection are traversed and judged, and any vertex on the boundary is found as another intersection point; 6.3)过这两个交点做切割线,沿着切割线将联合多边形骨料切割成两个没有重叠量的骨料;位于对称边界附近的另一部分重叠量,采用与上述相同的方法进行切割;6.3) Make a cutting line through these two intersection points, and cut the combined polygonal aggregate into two aggregates without overlapping along the cutting line; the other part of the overlapping amount located near the symmetrical boundary is cut using the same method as above; 7)相邻多边形骨料之间存在重叠量,且重叠部分为多个多边形,同时重叠部分与模型边界接触,则重叠部分被该侧的边界分割为两部分,一部分位于该侧边界附近,另一部分通过周期性边界被放置到与之对称的另一侧边界附近;每一部分中两个形骨料有多个交点,针对此种情况的重叠骨料按照如下方法进行切割:7) There is overlap between adjacent polygonal aggregates, and the overlapping part is multiple polygons. At the same time, the overlapping part is in contact with the model boundary, then the overlapping part is divided into two parts by the boundary of this side, one part is located near the side boundary, and the other One part is placed near the border on the other side that is symmetrical to it through the periodic boundary; there are multiple intersections between the two shaped aggregates in each part, and the overlapping aggregates for this case are cut as follows: 7.1)运用多个多边形重叠的高效联合算法,对存在接触重叠的两个骨料进行联合,重叠部分对应的多边形被合并,相交的线溶解并结于一点,重复的点被合并,形成一个联合多边形骨料,将重叠部分删除;7.1) Use the efficient joint algorithm of overlapping polygons to combine two aggregates with contact overlap, the polygons corresponding to the overlapping parts are merged, the intersecting lines are dissolved and joined at one point, and the repeated points are merged to form a joint For polygonal aggregates, the overlapping parts are deleted; 7.2)采用几何图形交集判别方法,得到存在重叠量的两个骨料的交集,由于重叠部分与边界存在接触,所以重叠部分有多个交点,无法直接获得交集交点坐标,需要进一步遍历交集,获得每个多边形的顶点坐标集合;7.2) Using the intersection discrimination method of geometric figures, the intersection of two aggregates with overlapping amounts is obtained. Since the overlapping part is in contact with the boundary, there are multiple intersection points in the overlapping part, and the coordinates of the intersection point cannot be obtained directly. It is necessary to further traverse the intersection to obtain A collection of vertex coordinates for each polygon; 7.3)计算该交集中任意两个顶点坐标点之间的距离,找到两个距离最大的坐标点即为骨料的交点,过这两个交点做切割线,沿着切割线将联合多边形骨料切割成两个没有重叠量的骨料;位于对称边界附近的另一部分重叠量,采用与上述相同的方法进行切割。7.3) Calculate the distance between any two vertex coordinate points in the intersection, find the two coordinate points with the largest distance as the intersection point of the aggregate, make a cutting line through these two intersection points, and combine polygonal aggregates along the cutting line Cut into two aggregates with no overlapping amount; the other overlapping amount located near the symmetrical boundary is cut in the same way as above. 9.根据权利要求8所述的采用重叠接触切割算法的二维超高体积分数混杂岩数值模拟模型的生成方法,其特征在于,所述步骤7中,计算切割后混杂岩模型骨料的体积分数方法具体为:9. the generation method of the two-dimensional ultra-high volume fraction melange numerical simulation model adopting overlapping contact cutting algorithm according to claim 8, it is characterized in that, in described step 7, calculate the volume of melange model aggregate after cutting The scoring method is as follows: 步骤7.1:读取切割后的多边形骨料的几何模型文件;Step 7.1: read the geometric model file of the cut polygonal aggregate; 步骤7.2:计算每个切割后骨料颗粒多边形的面积,并累加切割后所有骨料的总面积SaStep 7.2: Calculate the polygonal area of each aggregate particle after cutting, and add up the total area S a of all aggregates after cutting; 步骤7.3:将切割后所有骨料的总面积Sa与模型边界区域面积Sb进行比值计算,得出进行切割后骨料的体积分数。Step 7.3: Calculate the ratio of the total area S a of all aggregates after cutting to the area S b of the boundary area of the model to obtain the volume fraction of aggregates after cutting.
CN202211294617.XA 2022-10-21 2022-10-21 Generation Method of 2D Numerical Simulation Model of Ultra-high Volume Fraction Mélange Using Overlapping Contact Cutting Algorithm Active CN115618702B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211294617.XA CN115618702B (en) 2022-10-21 2022-10-21 Generation Method of 2D Numerical Simulation Model of Ultra-high Volume Fraction Mélange Using Overlapping Contact Cutting Algorithm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211294617.XA CN115618702B (en) 2022-10-21 2022-10-21 Generation Method of 2D Numerical Simulation Model of Ultra-high Volume Fraction Mélange Using Overlapping Contact Cutting Algorithm

Publications (2)

Publication Number Publication Date
CN115618702A CN115618702A (en) 2023-01-17
CN115618702B true CN115618702B (en) 2023-05-09

Family

ID=84865066

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211294617.XA Active CN115618702B (en) 2022-10-21 2022-10-21 Generation Method of 2D Numerical Simulation Model of Ultra-high Volume Fraction Mélange Using Overlapping Contact Cutting Algorithm

Country Status (1)

Country Link
CN (1) CN115618702B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118886258A (en) * 2024-07-11 2024-11-01 哈尔滨工业大学 Method, electronic device and storage medium for establishing high volume ratio target polyhedral aggregate model

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105512436A (en) * 2016-01-15 2016-04-20 东南大学 Bituminous mixture compaction simulation method based on discrete elements
CN112114370A (en) * 2020-06-28 2020-12-22 中铁第一勘察设计院集团有限公司 Multi-scale analysis method for applying three-dimensional inversion result of airborne geophysical prospecting to traffic corridor
CN113221431A (en) * 2021-05-14 2021-08-06 湖北理工学院 Compression penetration test numerical simulation method based on particle discrete element and lattice Boltzmann
CN114048663A (en) * 2021-09-30 2022-02-15 河海大学 A method for generating a geometric model of a two-dimensional high volume fraction soil-rock mixture material
CN114462124A (en) * 2022-01-18 2022-05-10 东南大学 Establishment and numerical simulation method of a three-dimensional multiphase mesoscopic model of concrete

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105512436A (en) * 2016-01-15 2016-04-20 东南大学 Bituminous mixture compaction simulation method based on discrete elements
CN112114370A (en) * 2020-06-28 2020-12-22 中铁第一勘察设计院集团有限公司 Multi-scale analysis method for applying three-dimensional inversion result of airborne geophysical prospecting to traffic corridor
CN113221431A (en) * 2021-05-14 2021-08-06 湖北理工学院 Compression penetration test numerical simulation method based on particle discrete element and lattice Boltzmann
CN114048663A (en) * 2021-09-30 2022-02-15 河海大学 A method for generating a geometric model of a two-dimensional high volume fraction soil-rock mixture material
CN114462124A (en) * 2022-01-18 2022-05-10 东南大学 Establishment and numerical simulation method of a three-dimensional multiphase mesoscopic model of concrete

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于3D打印技术的柱状节理岩体试样力学特性试验研究;张涛 等;《岩土力学》;第第43卷卷;第245-254+264页 *

Also Published As

Publication number Publication date
CN115618702A (en) 2023-01-17

Similar Documents

Publication Publication Date Title
Sederberg et al. Watertight trimmed NURBS
EP1710720B1 (en) Method of computer-aided design of a modeled object having several faces
JP4381743B2 (en) Method and program for generating volume data from boundary representation data
JP6721332B2 (en) Generating a bounding box on a 3D modeled assembly
CN102194253B (en) Method for generating tetrahedron gridding for three-dimensional geological structure
Chen et al. Elasto-plastic fine-scale damage failure analysis of metro structures based on coupled SBFEM-FEM
CN110008495B (en) Design of 3D finite element mesh comprising 3D components of lattice structure
CN103093036A (en) Simulation of the machining of a workpiece
US20080162090A1 (en) System, methods, and computer readable media, for product design using t-spline deformation
CN110059332B (en) Design of 3D finite element mesh comprising 3D components of lattice structure
Wang et al. From computer-aided design (CAD) toward human-aided design (HAD): an isogeometric topology optimization approach
CN112214921B (en) A 3D Slope Stability Evaluation Method Based on Stress Vector
CN106934826A (en) A kind of modeling of rock side slope fine structure and block identification method
CN103150416B (en) The modeling body that design is represented by depth elements
CN107818196A (en) The expression of the skeleton of mechanical part
CN115618702B (en) Generation Method of 2D Numerical Simulation Model of Ultra-high Volume Fraction Mélange Using Overlapping Contact Cutting Algorithm
CN103631981A (en) Designing a modeled volume represented by dexels
CN101329700A (en) A method for simulating fluid flow
CN106204748A (en) The CAD volume mesh model editing of a kind of feature based, optimized algorithm
CN113536617B (en) Method for rapidly generating fine finite element model with complex structure
CN109242965B (en) A c#-based model conversion method imported from Midas to 3DEC
CN110349262A (en) A kind of tunnel geological forecast three-dimensional modeling method and system based on BIM
Guo et al. Adaptive surface mesh remeshing based on a sphere packing method and a node insertion/deletion method
Wang et al. A New Local Grid Reconstruction Algorithm for Cracking Simulation in Rock-Like Material
CN109472046A (en) Three-dimensional finite element tetrahedral mesh automatic segmentation method for complex dam foundation arch dam

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant