A high-volume-fraction two-dimensional random polygon aggregate fast generation method
By generating polygonal aggregates from large to small particle size and combining this with Matlab functions to determine intersections, the problem of low efficiency in generating two-dimensional random polygonal aggregates in existing technologies is solved. This enables rapid generation and accurate placement of high volume fraction aggregates, improving the numerical simulation effect of asphalt mixtures.
Patent Information
- Application Number
- CN202211312130.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-10-25
- Publication Date
- 2025-11-11
- Estimated Expiration
- 2042-10-25
AI Technical Summary
Existing technologies suffer from low computational efficiency when generating two-dimensional random polygonal aggregates, making it difficult to achieve aggregate models with high volume fractions. Furthermore, the methods for determining the intersection of polygonal aggregates result in a high probability of placement failures, failing to effectively characterize the impact of aggregate angularity on asphalt mixture performance.
Polygonal aggregates are generated by dividing the particle size into large and small sizes. By filtering out polygonal aggregates that are far from the random placement point and accurately determining their internal position, and combining the built-in Matlab functions inpolygon and intersect to determine the intersection between polygonal aggregates, the randomness and efficient placement of polygonal aggregates are ensured.
It improves the success rate and computational efficiency of polygonal aggregate placement, significantly reduces the number of calculations in the intersection algorithm, realizes the rapid generation of two-dimensional random polygonal aggregates with high volume fraction, approximates the shape of real aggregates, and improves the numerical simulation accuracy of asphalt mixtures.
Smart Images

Figure CN115906412B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of microscopic numerical simulation technology for asphalt mixtures, and in particular to a method for rapidly generating two-dimensional random polygonal aggregates with high volume fraction. Background Technology
[0002] Asphalt mixture is an aggregate-reinforced asphalt-based composite material. The shape, size, and spatial distribution of the aggregates have a significant impact on the mechanical properties of asphalt mixture. Currently, numerical simulation techniques such as finite element method and discrete element method are being used to study the low-temperature crack resistance, high-temperature rutting resistance, and fatigue performance of asphalt mixture at the microscale. This research aims to optimize gradation design and select suitable materials to improve the road performance of asphalt mixture and extend the service life of asphalt pavement.
[0003] Generating coarse aggregate models is the foundation for performing micro-numerical simulation calculations. Currently, most methods use circles or ellipses to replace real aggregates to generate two-dimensional random aggregate models. However, this aggregate generation method cannot characterize the influence of aggregate angularity on asphalt mixture performance in numerical simulations. Therefore, polygons are now being used to replace real aggregates.
[0004] When randomly placing polygonal aggregates, the intersection of aggregates is generally determined by whether their circumcircles intersect. If the circumcircles do not intersect, the polygonal aggregates are considered not to intersect; if they do intersect, the polygonal aggregates intersect. The drawback of this method is that even if the circumcircles intersect, the polygonal aggregates may still not intersect. This is because this method of determining the intersection of polygonal aggregates results in a large gap between the placed aggregates, which leads to non-intersecting aggregates being judged as intersecting. This increases the probability of program placement failure, and the final volume fraction of the placed aggregates is low, generally not exceeding 60%.
[0005] In addition, determining whether the added aggregate intersects with the already generated aggregate often involves traversing and calculating all the generated aggregates. When the asphalt mixture specimen is large, the number of aggregate particles is very large. Although the traversal intersection identification method has good stability, the number of times the aggregate particles are judged to intersect in each cycle is large, resulting in low calculation efficiency. This leads to low efficiency in the generation of the entire two-dimensional aggregate. When the volume fraction is high, it may even be impossible to generate two-dimensional aggregate random specimens that meet the volume fraction requirements.
[0006] To address the aforementioned issues, a more efficient method for random generation of two-dimensional aggregates is needed to achieve rapid generation of two-dimensional aggregate models with high volume fractions. Summary of the Invention
[0007] To address the above technical problems, this invention provides a method for rapidly generating high-volume-fraction two-dimensional random polygonal aggregates, comprising the following steps:
[0008] S1. Generate polygonal aggregates in descending order of particle size;
[0009] S2. Generate random placement points for polygonal aggregates. First, filter out polygonal aggregates that are far from the random placement points. Then, determine whether the random placement points are within the already placed polygonal aggregates, so that the random placement points are not within any of the already placed polygonal aggregates.
[0010] S3. Place polygonal aggregates. First, filter out polygonal aggregates that are far away from the random placement point, and then determine whether the polygonal aggregate to be placed intersects with the polygonal aggregates that have already been placed.
[0011] S4. Determine whether to generate polygonal aggregates of the next particle size, and determine whether the polygonal aggregates have been generated.
[0012] The technical solution further defined in this invention is:
[0013] Furthermore, step S1 includes the following steps:
[0014] S1.1 Generate a regular polygon. The number of vertices of the regular polygon is a random integer between 6 and 20. The centroid of the regular polygon is the center of the polygon aggregate. The diameter of the circumcircle of the regular polygon is any random number between the upper and lower limits of the actual aggregate sieve size.
[0015] S1.2 Randomly change the coordinates of the vertices of a regular polygon to form a polygon of random shape;
[0016] S1.3 Calculate the minimum convex hull of a polygon of random shape;
[0017] S1.4. Using the center of the polygonal aggregate as the base point, randomly stretch the convex hull in any direction, and set the stretching ratio to a random number between 1 and 3 to form a polygonal aggregate with a certain slenderness ratio.
[0018] S1.5 If the number of polygonal aggregates already deployed is i, then record the polygonal aggregate number as i+1, record the farthest distance from the vertex of the polygonal aggregate to the center, and set this farthest distance as the longest radius of the polygonal aggregate.
[0019] The aforementioned method for rapid generation of high volume fraction two-dimensional random polygonal aggregates includes the following steps in step S2:
[0020] S2.1. Randomly generate a placement point within the boundary of the asphalt mixture specimen;
[0021] S2.2 Calculate the distance from the random placement point to the center of the placed polygonal aggregate. If the distance from the random placement point to the center of the polygonal aggregate is less than the longest radius of the polygonal aggregate, it is considered that there is a possibility that the random placement point of the polygonal aggregate is inside itself. Record the numbers of these polygonal aggregates to form a sequence.
[0022] S2.3. Determine whether the sequence used to record the polygon aggregate number is empty. If the sequence is not empty, proceed to step S3. If the sequence is not empty, continue to determine whether the random placement point is within any of the recorded polygon aggregates. If it is, return to step S2.1. If it is not, proceed to step S3.
[0023] In the aforementioned method for rapid generation of high volume fraction two-dimensional random polygonal aggregates, step S2.3, the method for determining whether a random placement point is within any of the recorded numbered polygonal aggregates is set as follows:
[0024] Input the coordinates of the random placement point and the vertex coordinates of the polygon aggregate into the built-in Matlab function inpolygon. The inpolygon function identifies the positional relationship between the random placement point and the polygon aggregate. If the random placement point is inside the polygon aggregate, the function returns 1; if the random placement point is outside the polygon aggregate, the function returns 0.
[0025] The aforementioned method for rapid generation of high volume fraction two-dimensional random polygonal aggregates includes the following steps in step S3:
[0026] S3.1. Place the polygonal aggregate generated in step S1 into the asphalt mixture specimen, and place the center of the polygonal aggregate at the random placement point generated in step S2.
[0027] S3.2 Calculate the distance from the random placement point to the center of the placed polygonal aggregate. If the distance is less than the sum of the longest radii of the polygonal aggregate to be placed and the polygonal aggregates already placed, then it is considered that the polygonal aggregate to be placed may intersect with the polygonal aggregates already placed. Record the numbers of these polygonal aggregates to form a sequence.
[0028] S3.3. Determine whether the sequence used to record the polygon aggregate number is empty. If the sequence is empty, directly place the polygon aggregate and execute step S4. If the sequence is not empty, determine whether the polygon aggregate to be placed intersects with the polygon aggregate with the recorded number that has already been placed. If they intersect, return to step S1. If they do not intersect, place the polygon aggregate and execute step S4.
[0029] In the aforementioned method for rapid generation of high volume fraction two-dimensional random polygonal aggregates, step S3.3, the method for determining whether the deployed polygonal aggregate intersects with the previously deployed polygonal aggregates with recorded numbers, is set as follows:
[0030] Input the vertex coordinates of the two polygonal aggregates into the built-in Matlab function `intersect`. The `intersect` function identifies the positional relationship between the two polygonal aggregates. If the two polygonal aggregates intersect, the function returns 1; if the two polygonal aggregates do not intersect, the function returns 0.
[0031] In the aforementioned method for rapid generation of high volume fraction two-dimensional random polygonal aggregates, step S4, the method for determining whether to generate polygonal aggregates of the next particle size and whether the polygonal aggregate generation is complete, is set as follows:
[0032] Determine whether the total area of the polygonal aggregate to be added and all the polygonal aggregates already added within its particle size range exceeds the target value. If it does not exceed the target value, continue to generate polygonal aggregates of the same particle size and continue to execute step S1.
[0033] If the target value is exceeded, the process continues to determine whether the particle size of the polygonal aggregate to be added is the minimum particle size. If not, the generation of polygonal aggregate with the next particle size is started, and step S1 is executed. If it is, the random addition of polygonal aggregate is completed, and the program execution is finished.
[0034] The beneficial effects of this invention are:
[0035] (1) In this invention, the polygonal aggregate is derived from a regular polyhedron with multiple vertices by random evolution, thereby ensuring the randomness of the polygonal aggregate shape. At the same time, the slenderness ratio parameter is introduced to make the polygonal aggregate more closely resemble the shape of real aggregate particles.
[0036] (2) In this invention, when determining the random placement point of the polygon aggregate, the random placement point is used to filter out a large number of random placement points that would cause the polygon aggregate to be placed to intersect with the polygon aggregate that has been placed, by accurately judging whether the random placement point is inside the polygon aggregate. This ensures that the random placement point is not inside the boundary of any polygon aggregate that has been placed, avoids unnecessary placement, and thus greatly improves the probability of successful placement of polygon aggregate and the computational efficiency.
[0037] (3) In this invention, when placing polygonal aggregates, the distance from the random placement point to the center of the placed polygonal aggregates is judged, thereby filtering out a large number of polygonal aggregates that cannot intersect. Only the numbers of the placed polygonal aggregates that may intersect with the polygonal aggregates to be placed are recorded, which greatly reduces the number of calculations of the precise intersection algorithm between polygonal aggregates and significantly improves the calculation efficiency.
[0038] (4) In this invention, a precise polygon intersection identification method is used to determine whether polygon aggregates intersect. Compared with the conservative aggregate particle intersection judgment method, the gap between the polygon aggregates in this method can be infinitely small, thereby enabling more convenient random placement of high volume fraction polygon aggregates. Attached Figure Description
[0039] Figure 1 This is a flowchart illustrating the generation of two-dimensional random polygonal aggregates in an embodiment of the present invention;
[0040] Figure 2 This is a schematic diagram illustrating the generation of polygonal aggregates in an embodiment of the present invention;
[0041] Figure 3 This is a schematic diagram of the random distribution points in an embodiment of the present invention;
[0042] Figure 4 This is a schematic diagram of the placement of polygonal aggregates in an embodiment of the present invention;
[0043] Figure 5 This refers to the random polygonal aggregate model generated in this embodiment of the invention. Detailed Implementation
[0044] This embodiment provides a method for rapid generation of high volume fraction two-dimensional random polygonal aggregates. Taking AC-13 asphalt mixture gradation as an example, the aggregate with a particle size greater than 1.18 mm is coarse aggregate, and the total volume fraction of coarse aggregate is 80%. The particle size range of coarse aggregate is 16 mm-13.2 mm, 13.2 mm-9.5 mm, 9.5 mm-4.75 mm, 4.75 mm-2.36 mm, and 2.36 mm-1.18 mm, respectively, with corresponding volume fractions of 5%, 20%, 30%, 40%, and 50%. The specimen is a 100 mm square.
[0045] like Figure 1 As shown, a method for rapid generation of high volume fraction two-dimensional random polygonal aggregates includes the following steps:
[0046] S1. Generate polygonal aggregates in descending order of particle size, which includes the following steps:
[0047] S1.1 Generate a regular polygon. The number of vertices of the regular polygon is a random integer between 6 and 20. The centroid of the regular polygon is the center of the polygon aggregate. The diameter of the circumcircle of the regular polygon is any random number between the upper and lower limits of the actual aggregate sieve size.
[0048] S1.2 Randomly change the coordinates of the vertices of a regular polygon to form a polygon of random shape;
[0049] S1.3 Calculate the minimum convex hull of a polygon of random shape;
[0050] S1.4. Using the center of the polygonal aggregate as the base point, randomly stretch the convex hull in any direction, and set the stretching ratio to a random number between 1 and 3 to form a polygonal aggregate with a certain slenderness ratio.
[0051] S1.5 If the number of polygonal aggregates already deployed is i, then record the polygonal aggregate number as i+1, record the farthest distance from the vertex of the polygonal aggregate to the center, and set this farthest distance as the longest radius of the polygonal aggregate.
[0052] like Figure 2 The process of generating polygonal aggregates with a particle size of 16mm-13.2mm is shown as an example.
[0053] First, a regular polygon with 15 vertices is generated. The centroid of the regular polygon is the center of the aggregate. The diameter of the circumcircle of the regular polygon is 14.7 mm, which is between the upper and lower limits of the actual aggregate sieve aperture size. This generates a polygon as shown below. Figure 2 (a) shows the polygon;
[0054] Then, by randomly changing the coordinates of the vertices of the regular polygon, a shape like this was generated. Figure 2 (b) shows a polygon with a random shape;
[0055] Next, the minimum convex hull of the randomly shaped polygon is calculated, generating, for example... Figure 2 (c) shows the polygon;
[0056] Then, the aggregate is stretched in a randomly selected direction. Here, the randomly selected direction makes an angle of 44.2° with the horizontal direction, and the stretching ratio is 1.82, thus generating an aggregate as shown in the image. Figure 2 (d) shows the polygon;
[0057] Finally, the farthest distance from the vertex to the center of the polygonal aggregate was calculated to be 26.64 mm. Figure 2 As shown in (e).
[0058] S2. Generate random placement points for polygonal aggregates. First, filter out polygonal aggregates that are far from the random placement points. Then, determine whether the random placement point is within any of the already placed polygonal aggregates, ensuring that the random placement point is not within any of the already placed polygonal aggregates. This includes the following sub-steps:
[0059] S2.1. Randomly generate a placement point within the boundary of the asphalt mixture specimen;
[0060] S2.2 Calculate the distance from the random placement point to the center of the placed polygonal aggregate. If the distance from the random placement point to the center of the polygonal aggregate is less than the longest radius of the polygonal aggregate, it is considered that there is a possibility that the random placement point of the polygonal aggregate is inside itself. Record the numbers of these polygonal aggregates to form a sequence.
[0061] S2.3. Judge the sequence used to record the polygon aggregate number. If the sequence is empty, proceed to step S3. If the sequence is not empty, continue to judge whether the random placement point is inside any of the polygon aggregates with the recorded number. If it is, return to step S2.1. If it is not, proceed to step S3.
[0062] The method for determining whether a randomly placed point is inside any of the recorded numbered polygonal aggregates is as follows: input the coordinates of the randomly placed point and the vertex coordinates of the polygonal aggregate into the Matlab built-in function inpolygon. The inpolygon function identifies the positional relationship between the randomly placed point and the polygonal aggregate. If the randomly placed point is inside the polygonal aggregate, the function returns 1; if the randomly placed point is outside the polygonal aggregate, the function returns 0.
[0063] by Figure 3 For example, Figure 3 The polygons in the image represent the polygonal aggregates that have already been deposited.
[0064] If the generated random placement point is p1, the distance from the random placement point p1 to the center of the polygon aggregates poly1 and poly2 is greater than the longest radius of the polygon aggregates. Therefore, there are no polygon aggregates that need to be numbered, so the sequence used to record the polygon aggregate numbers is empty. Execute step S3.
[0065] If the generated random drop point is p2, and the distance from the random drop point p2 to the center of the polygon aggregate poly1 is less than the longest radius of the polygon aggregate, then it is considered that the random drop point p2 may be inside the polygon aggregate poly1. However, if the distance from the random drop point p2 to the center of the polygon aggregate poly2 is greater than the longest radius of the polygon aggregate, then it is considered that the random drop point p2 cannot be inside the polygon aggregate poly2. In this case, it is necessary to record the number of the polygon aggregate poly1, but not the number of the polygon aggregate poly2. Therefore, the sequence used to record the number of the polygon aggregate is not empty. Further, it is determined whether the random drop point p2 is inside the polygon aggregate poly1 with the recorded number. If the result is that the random drop point p2 is not inside the polygon aggregate poly1 with the recorded number, then step S3 is executed.
[0066] If the generated random drop point is p3, and the distance from random drop point p3 to the center of polygon aggregate poly1 is less than the longest radius of polygon aggregate, then it is considered that random drop point p3 may be inside polygon aggregate poly1. However, the distance from random drop point p3 to the center of polygon aggregate poly2 is greater than the longest radius of polygon aggregate, then it is considered that random drop point p3 cannot be inside polygon aggregate poly2. Therefore, only the number of polygon aggregate poly1 is recorded, and the number of polygon aggregate poly2 is not recorded. So at this time, the sequence used to record the number of polygon aggregate is not empty. Further, it is determined whether random drop point p3 is inside the numbered polygon aggregate poly1. If the result is that random drop point p3 is indeed inside the numbered polygon aggregate poly1, return to step S2.1 to regenerate random drop point.
[0067] S3. Place polygonal aggregates. First, filter out polygonal aggregates that are far from the random placement point. Then, determine whether the polygonal aggregate to be placed intersects with the already placed polygonal aggregates. This includes the following steps:
[0068] S3.1. Place the polygonal aggregate generated in step S1 into the asphalt mixture specimen, and place the center of the polygonal aggregate at the random placement point generated in step S2.
[0069] S3.2 Calculate the distance from the random placement point to the center of the placed polygonal aggregate. If the distance is less than the sum of the longest radii of the polygonal aggregate to be placed and the polygonal aggregates already placed, then it is considered that the polygonal aggregate to be placed may intersect with the polygonal aggregates already placed. Record the numbers of these polygonal aggregates to form a sequence.
[0070] S3.3. Judge the sequence used to record the polygon aggregate number. If the sequence is empty, directly put the polygon aggregate and execute step S4. If the sequence is not empty, judge whether the polygon aggregate to be put intersects with the polygon aggregate with the recorded number that has already been put. If they intersect, return to step S1. If they do not intersect, put the polygon aggregate and execute step S4.
[0071] The method for determining whether a deployed polygonal aggregate intersects with a previously deployed polygonal aggregate with a recorded number is set as follows: input the vertex coordinates of the two polygonal aggregates into the Matlab built-in function intersect, and use the intersect function to identify the positional relationship between the two polygonal aggregates. If the two polygonal aggregates intersect, the function returns 1; if the two polygonal aggregates do not intersect, the function returns 0.
[0072] by Figure 4 For example, Figure 4In the diagram, poly1 and poly2 represent the polygonal aggregates that have already been placed.
[0073] If the location of the random placement point p1 in step S2 is as follows: Figure 4 As shown in (a), the distance from the random placement point p1 to the center of the already placed polygon aggregates poly1 and poly2 is greater than the sum of the longest radii of the polygon aggregate to be placed and the already placed polygon aggregates. Therefore, it is considered that the polygon aggregate to be placed does not have the possibility of intersecting with the already placed polygon aggregates poly1 and poly2. There are no polygon aggregates that need to be numbered. At this time, the sequence used to record the polygon aggregate numbers is empty, so the polygon aggregate is placed directly, and step S4 is executed.
[0074] If the location of the random placement point p1 in step S2 is as follows: Figure 4 As shown in (b), the distance from the random placement point p1 to the center of the already placed polygon aggregate poly2 is less than the sum of the longest radii of the polygon aggregate to be placed and the already placed polygon aggregates. Therefore, it is considered that the polygon aggregate to be placed may intersect with the already placed polygon aggregate poly2, and the number of polygon aggregate poly2 is recorded. On the other hand, the distance from the random placement point p1 to the center of the already placed polygon aggregate poly1 is greater than the sum of the longest radii of the polygon aggregate to be placed and the already placed polygon aggregates. Therefore, it is considered that the polygon aggregate to be placed may not intersect with the already placed polygon aggregate poly1, and the number of polygon aggregate poly1 is not recorded. At this time, the sequence used to record the polygon aggregate numbers is not empty. Continue to judge whether the polygon aggregate to be placed intersects with the polygon aggregate poly2 with the recorded number. The judgment result is no, so the aggregate is placed, and step S4 is executed.
[0075] If the location of the random placement point p1 in step S2 is as follows: Figure 4 As shown in (c), the distance from the random placement point p1 to the center of the already placed polygon aggregate poly2 is less than the sum of the longest radii of the polygon aggregate to be placed and the already placed polygon aggregates. Therefore, it is considered that the polygon aggregate to be placed may intersect with the already placed polygon aggregate poly2, and the number of polygon aggregate poly2 is recorded. On the other hand, the distance from the random placement point p1 to the center of the already placed polygon aggregate poly1 is greater than the sum of their longest radii. Since the distance from the random placement point p1 to the center of the already placed polygon aggregate poly1 is greater than the sum of the longest radii of the polygon aggregate to be placed and the already placed polygon aggregates, it is considered that the polygon aggregate to be placed does not intersect with the already placed polygon aggregate poly1, and the number of polygon aggregate poly1 is not recorded. At this time, the sequence used to record the polygon aggregate numbers is not empty. Continue to judge whether the polygon aggregate to be placed intersects with the polygon aggregate poly2 with the recorded number. The judgment result is yes, so return to step S1.
[0076] S4. Determine whether to generate polygonal aggregates for the next particle size, and determine whether the polygonal aggregate generation is complete. Specifically:
[0077] Determine whether the total area of the polygonal aggregate to be added and all the polygonal aggregates already added within its particle size range exceeds the target value. If it does not exceed the target value, continue to generate polygonal aggregates of the same particle size and continue to execute step S1.
[0078] If the target value is exceeded, the process continues to determine whether the particle size of the polygonal aggregate to be added is the minimum particle size. If not, the generation of polygonal aggregate with the next particle size is started, and step S1 is executed. If it is, the random addition of polygonal aggregate is completed, and the program execution is finished.
[0079] Figure 5 The final AC-13 two-dimensional random polygonal aggregate model shows that the total volume fraction of the polygonal aggregate accounts for 80% of the total area of the asphalt mixture specimen. The total running time for generating the asphalt mixture specimen is 124 seconds. In actual asphalt concrete, the total volume fraction of coarse aggregate larger than 1.18 mm will not exceed 75%, which shows that this method can realize the generation of a two-dimensional aggregate model of coarse aggregate with full gradation in asphalt concrete.
[0080] In addition to the embodiments described above, the present invention may have other implementations. All technical solutions formed by equivalent substitution or equivalent transformation fall within the protection scope claimed by the present invention.
Claims
1. A method for rapid generation of high volume fraction two-dimensional random polygonal aggregates, characterized in that: Includes the following steps S1. Generate polygonal aggregates in descending order of particle size; Step S1 includes the following steps: S1.1 Generate a regular polygon. The number of vertices of the regular polygon is a random integer between 6 and 20. The centroid of the regular polygon is the center of the polygon aggregate. The diameter of the circumcircle of the regular polygon is any random number between the upper and lower limits of the actual aggregate sieve size. S1.2 Randomly change the coordinates of the vertices of a regular polygon to form a polygon of random shape; S1.3 Calculate the minimum convex hull of a polygon of random shape; S1.
4. Using the center of the polygonal aggregate as the base point, randomly stretch the convex hull in any direction, and set the stretching ratio to a random number between 1 and 3 to form a polygonal aggregate with a certain slenderness ratio. S1.5 If the number of polygonal aggregates already deployed is i, then record the polygonal aggregate number as i+1, record the farthest distance from the vertex of the polygonal aggregate to the center, and set this farthest distance as the longest radius of the polygonal aggregate. S2. Generate random placement points for polygonal aggregates. First, filter out polygonal aggregates that are far from the random placement points. Then, determine whether the random placement points are within the already placed polygonal aggregates, so that the random placement points are not within any of the already placed polygonal aggregates. Step S2 includes the following steps: S2.
1. Randomly generate a placement point within the boundary of the asphalt mixture specimen; S2.2 Calculate the distance from the random placement point to the center of the placed polygonal aggregate. If the distance from the random placement point to the center of the polygonal aggregate is less than the longest radius of the polygonal aggregate, it is considered that there is a possibility that the random placement point of the polygonal aggregate is inside itself. Record the numbers of these polygonal aggregates to form a sequence. S2.
3. Determine if the sequence used to record the polygonal aggregate numbers is empty, then proceed to step S3. If the sequence is not empty, continue to determine whether the random placement point is within any of the recorded numbered polygonal aggregates. If it is, return to step S2.1; otherwise, execute step S3. S3. Place polygonal aggregates. First, filter out polygonal aggregates that are far away from the random placement point, and then determine whether the polygonal aggregate to be placed intersects with the polygonal aggregates that have already been placed. S4. Determine whether to generate polygonal aggregates of the next particle size, and determine whether the polygonal aggregates have been generated.
2. The method for rapid generation of high volume fraction two-dimensional random polygonal aggregates according to claim 1, characterized in that: In step S2.3, the method for determining whether the random placement point is within any of the recorded polygonal aggregates is set as follows: Input the coordinates of the random placement point and the vertex coordinates of the polygon aggregate into the built-in Matlab function inpolygon. The inpolygon function identifies the positional relationship between the random placement point and the polygon aggregate. If the random placement point is inside the polygon aggregate, the function returns 1; if the random placement point is outside the polygon aggregate, the function returns 0.
3. The method for rapid generation of high volume fraction two-dimensional random polygonal aggregates according to claim 1, characterized in that: Step S3 includes the following steps: S3.
1. Place the polygonal aggregate generated in step S1 into the asphalt mixture specimen, and place the center of the polygonal aggregate at the random placement point generated in step S2. S3.2 Calculate the distance from the random placement point to the center of the placed polygonal aggregate. If the distance is less than the sum of the longest radii of the polygonal aggregate to be placed and the polygonal aggregates already placed, then it is considered that the polygonal aggregate to be placed may intersect with the polygonal aggregates already placed. Record the numbers of these polygonal aggregates to form a sequence. S3.
3. Determine whether the sequence used to record the polygon aggregate number is empty. If the sequence is empty, directly place the polygon aggregate and execute step S4. If the sequence is not empty, determine whether the polygon aggregate to be placed intersects with the polygon aggregate with the recorded number that has already been placed. If they intersect, return to step S1. If they do not intersect, place the polygon aggregate and execute step S4.
4. The method for rapid generation of high volume fraction two-dimensional random polygonal aggregates according to claim 3, characterized in that: In step S3.3, the method for determining whether the deployed polygonal aggregate intersects with the previously deployed polygonal aggregate whose number has been recorded is set as follows: Input the vertex coordinates of the two polygonal aggregates into the built-in Matlab function `intersect`. The `intersect` function identifies the positional relationship between the two polygonal aggregates. If the two polygonal aggregates intersect, the function returns 1; if the two polygonal aggregates do not intersect, the function returns 0.
5. The method for rapid generation of high volume fraction two-dimensional random polygonal aggregates according to claim 1, characterized in that: In step S4, the methods for determining whether to generate polygonal aggregate of the next particle size and whether the polygonal aggregate generation is complete are set as follows: Determine whether the total area of the polygonal aggregate to be added and all the polygonal aggregates already added within its particle size range exceeds the target value. If it does not exceed the target value, continue to generate polygonal aggregates of the same particle size and continue to execute step S1. If the target value is exceeded, it is further determined whether the particle size of the polygonal aggregate to be added is the minimum particle size. If not, the generation of polygonal aggregate with the next particle size is started, and step S1 is executed. If so, the random placement of polygonal aggregates is completed, and the program execution is finished.