Method and computing device for explosive blasting modeling

Through the advanced discrete unit modeling method, polygonal units with arc and line connections are generated to simulate contact and force calculations during the blasting process, solving the problem of complexity of blasting planning in the prior art, and achieving more accurate blasting effect prediction and rock movement simulation.

CN120467121APending Publication Date: 2025-08-12DYNO NOBEL INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510559158.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2021-05-19
Filing Date
2021-05-20
Publication Date
2025-08-12

AI Technical Summary

Technical Problem

The existing technology faces the complexity of multiple factors when designing blasting plans, which leads to difficulties in blasting planning. In particular, the diversity of factors such as blasting hole spacing, layout, depth, geological properties, explosive type and time makes the planning complex and it is difficult to accurately predict the blasting effect.

Method used

The advanced discrete unit modeling method is used to generate a site model by receiving blasting hole data and geological data, and use arc and line connection to form a polygonal unit with rounded corners to simulate the contact and force calculation of adjacent units during blasting, and gradually iterate the time step for simulation.

Benefits of technology

Improve the accuracy and computing efficiency of blasting simulation, and can predict rock movement and uplifts after blasting more accurately, assisting ore management to reduce the mixing of waste ore and target ore.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120467121A_ABST
    Figure CN120467121A_ABST
Patent Text Reader

Abstract

A method, computing device and corresponding storage medium for explosive blasting modeling, the method comprising: receiving input data, the input data comprising blasthole data, step information, and geological input data; generating a venue model based on the blast plan, the venue model including a set of blast holes, identifying zones around each blast hole in the set of blast holes, where each zone includes a perimeter that is a target distance from the associated blast hole; the site model is partitioned into a plurality of units, and a first group of units in the zone are smaller than a second group of units outside the zone; and simulating blasting using the plurality of cells, where simulating blasting includes: detecting contact between adjacent cells.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of the invention patent application filed on May 20, 2021, with application number 2021800366919 and invention name “Discrete unit rock blasting movement method, device and system”.

[0002] CROSS-REFERENCE TO RELATED APPLICATIONS

[0003] This application claims the benefit of U.S. patent application Ser. No. 17 / 324,704, filed May 19, 2021, entitled “DISTINCT ELEMENT ROCK BLASTING MOVEMENT METHODS, APPARATUSES, AND SYSTEMS,” U.S. Provisional Patent Application Ser. No. 63 / 124,412, filed Dec. 11, 2020, entitled “DISTINCT ELEMENT ROCK BLASTING MOVEMENT METHODS, APPARATUSES, AND SYSTEMS,” and U.S. Provisional Patent Application Ser. No. 63 / 124,412, filed May 21, 2020, entitled “DISTINCT ELEMENT ROCK BLASTING MOVEMENT [Methods, Apparatus, and Systems for Discrete Unit Rock Blasting Movement]," the contents of which are incorporated herein by reference in their entirety. Technical Field

[0004] The present disclosure relates generally to explosives and, more particularly, to methods, systems, and apparatus for designing blast plans. Background Art

[0005] Explosives are commonly used in the mining, quarrying, and extraction industries to break rock and ore. Typically, holes, called blastholes, are drilled into a surface, such as the ground. Explosives can then be placed inside the blastholes. Typically, multiple blastholes are used to break up large quantities of rock and ore. The use of multiple blastholes introduces complexity into blast planning. For example, blasting can vary based on a number of factors, including blasthole spacing, blasthole row spacing, blasthole depth, blasthole placement, number of blastholes, geological conditions, explosive type, explosive charge, and blasthole detonation timing. This multitude of possibilities makes blast planning difficult, even for highly trained blasting engineers. Summary of the Invention

[0006] According to one aspect of the present invention, a method for explosive blasting modeling is provided, the method comprising: receiving a blasting plan including blasthole data and blasting site data; generating a site model based on the blasting plan, the site model comprising a plurality of cells, wherein each cell has a shape formed by connecting endpoints of one or more lines with arcs such that the endpoints of the one or more lines are indirectly connected via the arcs; and simulating a blast using the site model and the plurality of cells.

[0007] In some embodiments, the radius of each arc increases and the length of each of the one or more lines decreases based on one or more of a movement of the corresponding unit, a rotation of the corresponding unit, and a collision of the corresponding unit.

[0008] In some embodiments, simulating the blast includes detecting contact between adjacent cells, wherein detecting contact includes: detecting arc-arc contact between the adjacent cells; and detecting arc-line contact between the adjacent cells.

[0009] In some embodiments, detecting arc-arc contact between the adjacent cells comprises comparing a distance between arc center points of the two arcs of the adjacent cells with a sum of radii of the two arcs of the adjacent cells, wherein contact is detected when the sum is greater than the distance.

[0010] In some embodiments, detecting arc-line contact between the adjacent cells comprises comparing a distance between the line of the first cell and the arc center of the arc of the second cell with a radius of the arc of the second cell, wherein contact is detected when the radius is greater than the distance.

[0011] In some embodiments, simulating the explosion includes calculating a force applied to each cell by contacting adjacent cells, wherein the force is calculated based on contact overlap and applied to an arc center point.

[0012] In some embodiments, the shape of each cell is a polygon with rounded corners.

[0013] In some embodiments, at least some of the cells have different shapes.

[0014] In some embodiments, at least some of the cells of the same shape have different sizes.

[0015] In some embodiments, simulating the blast includes a time-step simulation that is iterated over time, wherein, for each time step of the simulation, the method further includes: searching for arc-arc contacts and arc-line contacts in the site model; determining forces generated by these arc-arc contacts and these arc-line contacts; determining the moments for each element; summing the moments and forces for each element; and moving each element to new positions based on the resultant forces and resultant moments, wherein the new positions are used during the next time step.

[0016] According to another aspect of the present invention, a computing device is provided, comprising: a processor; and a memory storing instructions that, when executed by the processor, configure the device to: receive a blasting plan comprising blasthole data and blasting site data; generate a site model based on the blasting plan, the site model comprising a plurality of cells, wherein each cell has a shape formed by connecting endpoints of one or more lines with arcs such that the endpoints of the one or more lines are indirectly connected via the arcs; and simulate blasting using the site model and the plurality of cells.

[0017] In some embodiments, the radius of each arc increases based on one or more of a movement of the corresponding unit, a rotation of the corresponding unit, and a collision of the corresponding unit.

[0018] In some embodiments, simulating the blast includes detecting contact between adjacent cells, wherein detecting contact includes: detecting arc-arc contact between the adjacent cells; and detecting arc-line contact between the adjacent cells.

[0019] In some embodiments, detecting arc-arc contact between the adjacent cells comprises comparing a distance between arc center points of the two arcs of the adjacent cells with a sum of radii of the two arcs of the adjacent cells, wherein contact is detected when the sum is greater than the distance.

[0020] In some embodiments, detecting arc-line contact between the adjacent cells comprises comparing a distance between the line of the first cell and the arc center of the arc of the second cell with a radius of the arc of the second cell, wherein contact is detected when the radius is greater than the distance.

[0021] In some embodiments, simulating the explosion includes calculating a force applied to each cell by contacting adjacent cells, wherein the force is calculated based on contact overlap and applied to an arc center point.

[0022] In some embodiments, the shape of each cell is a polygon with rounded corners.

[0023] In some embodiments, at least some of the cells have different shapes.

[0024] In some embodiments, at least some of the cells of the same shape have different sizes.

[0025] In some embodiments, simulating the blast includes a time-step simulation that is iterated over time, wherein, for each time step of the simulation, the method further includes: searching for arc-arc contacts and arc-line contacts in the site model; determining forces generated by these arc-arc contacts and these arc-line contacts; determining the moments for each element; summing the moments and forces for each element; and moving each element to new positions based on the resultant forces and resultant moments, wherein the new positions are used during the next time step.

[0026] According to another aspect of the present invention, a non-transitory computer-readable storage medium is provided, which includes instructions that, when executed by a computer, cause the computer to perform the following operations: receive a blasting plan including blasthole data and blasting site data; generate a site model based on the blasting plan, the site model including a plurality of cells, wherein each cell has a shape formed by connecting endpoints of one or more lines with arcs such that the endpoints of the one or more lines are indirectly connected via the arcs; and simulate blasting using the site model and the plurality of cells.

[0027] In some embodiments, the radius of each arc increases based on one or more of movement of the corresponding unit, rotation of the corresponding unit, and collision of the corresponding unit.

[0028] In some embodiments, simulating the blast includes detecting contact between adjacent cells, wherein detecting contact includes: detecting arc-arc contact between the adjacent cells; and detecting arc-line contact between the adjacent cells.

[0029] In some embodiments, detecting arc-arc contact between the adjacent cells comprises comparing a distance between arc center points of the two arcs of the adjacent cells with a sum of radii of the two arcs of the adjacent cells, wherein contact is detected when the sum is greater than the distance.

[0030] In some embodiments, detecting arc-line contact between the adjacent cells comprises comparing a distance between the line of the first cell and the arc center of the arc of the second cell with a radius of the arc of the second cell, wherein contact is detected when the radius is greater than the distance.

[0031] In some embodiments, simulating the explosion includes calculating a force applied to each cell by contacting adjacent cells, wherein the force is calculated based on contact overlap and applied to an arc center point.

[0032] In some embodiments, the shape of each cell is a polygon with rounded corners.

[0033] In some embodiments, at least some of the cells have different shapes.

[0034] In some embodiments, at least some of the cells of the same shape have different sizes.

[0035] In some embodiments, simulating the blast includes a time-step simulation that is iterated over time, wherein, for each time step of the simulation, the method further includes: searching for arc-arc contacts and arc-line contacts in the site model; determining forces generated by these arc-arc contacts and these arc-line contacts; determining the moments for each element; summing the moments and forces for each element; and moving each element to new positions based on the resultant forces and resultant moments, wherein the new positions are used during the next time step.

[0036] According to another aspect of the present invention, a method for explosive blasting modeling is provided, the method comprising: receiving a blasting plan comprising blast hole data and blasting site data; generating a site model based on the blasting plan, the site model comprising a plurality of cells; and simulating blasting using the site model and the plurality of cells, wherein simulating the blasting comprises: detecting arc-arc contact between adjacent cells; and detecting arc-line contact between the adjacent cells.

[0037] In some embodiments, the radius of the arcs of the cells increases based on one or more of a movement of the corresponding cell, a rotation of the corresponding cell, and a collision of the corresponding cell.

[0038] In some embodiments, each cell has a shape formed by connecting endpoints of one or more lines with arcs such that two or more lines are indirectly connected via the arcs.

[0039] In some embodiments, detecting arc-arc contact between the adjacent cells comprises comparing a distance between arc center points of the two arcs of the adjacent cells with a sum of radii of the two arcs of the adjacent cells, wherein contact is detected when the sum is greater than the distance.

[0040] In some embodiments, detecting arc-line contact between the adjacent cells comprises comparing a distance between the line of the first cell and the arc center of the arc of the second cell with a radius of the arc of the second cell, wherein contact is detected when the radius is greater than the distance.

[0041] In some embodiments, simulating the explosion includes calculating a force applied to each cell by contacting adjacent cells, wherein the force is calculated based on contact overlap and applied to an arc center point.

[0042] In some embodiments, each cell is a polygon with rounded corners.

[0043] In some embodiments, at least some of the cells have different shapes.

[0044] In some embodiments, at least some of the cells of the same shape have different sizes.

[0045] In some embodiments, simulating the blast further includes a time-step simulation that is iterated over time, wherein, for each time step of the simulation, the method further includes: searching for arc-arc contacts and arc-line contacts in the site model; determining the forces generated by these arc-arc contacts and these arc-line contacts; determining the moments for each element; summing the moments and forces for each element; and moving each element to new positions based on the resultant forces and resultant moments, wherein the new positions are used during the next time step.

[0046] According to another aspect of the present invention, a computing device is provided, comprising: a processor; and a memory storing instructions that, when executed by the processor, configure the device to: receive a blasting plan comprising blasthole data and blasting site data; generate a site model based on the blasting plan, the site model comprising a plurality of cells; and simulate blasting using the site model and the plurality of cells, wherein simulating the blasting comprises: detecting arc-arc contact between adjacent cells; and detecting arc-line contact between the adjacent cells.

[0047] In some embodiments, the radius of the arcs of the cells increases based on one or more of a movement of the corresponding cell, a rotation of the corresponding cell, and a collision of the corresponding cell.

[0048] In some embodiments, each cell has a shape formed by connecting endpoints of one or more lines with arcs such that two or more lines are indirectly connected via the arcs.

[0049] In some embodiments, detecting arc-arc contact between the adjacent cells comprises comparing a distance between arc center points of the two arcs of the adjacent cells with a sum of radii of the two arcs of the adjacent cells, wherein contact is detected when the sum is greater than the distance.

[0050] In some embodiments, detecting arc-line contact between the adjacent cells comprises comparing a distance between the line of the first cell and the arc center of the arc of the second cell with a radius of the arc of the second cell, wherein contact is detected when the radius is greater than the distance.

[0051] In some embodiments, simulating the explosion includes calculating a force applied to each cell by contacting adjacent cells, wherein the force is calculated based on contact overlap and applied to an arc center point.

[0052] In some embodiments, each cell is a polygon with rounded corners.

[0053] In some embodiments, at least some of the cells have different shapes.

[0054] In some embodiments, at least some of the cells of the same shape have different sizes.

[0055] In some embodiments, simulating the blast further includes a time-step simulation that is iterated over time, wherein, for each time step of the simulation, the method further includes: searching for arc-arc contacts and arc-line contacts in the site model; determining the forces generated by these arc-arc contacts and these arc-line contacts; determining the moments for each element; summing the moments and forces for each element; and moving each element to new positions based on the resultant forces and resultant moments, wherein the new positions are used during the next time step.

[0056] According to another aspect of the present invention, a non-transitory computer-readable storage medium is provided, which includes instructions that, when executed by a computer, cause the computer to perform the following operations: receive a blasting plan including blast hole data and blasting site data; generate a site model based on the blasting plan, the site model including multiple units; and use the site model and the multiple units to simulate blasting, wherein simulating the blasting includes: detecting arc-arc contact between adjacent units; and detecting arc-line contact between the adjacent units.

[0057] In some embodiments, the radius of the arcs of the cells increases based on one or more of a movement of the corresponding cell, a rotation of the corresponding cell, and a collision of the corresponding cell.

[0058] In some embodiments, each cell has a shape formed by connecting endpoints of one or more lines with arcs such that two or more lines are indirectly connected via the arcs.

[0059] In some embodiments, detecting arc-arc contact between the adjacent cells comprises comparing a distance between arc center points of the two arcs of the adjacent cells with a sum of radii of the two arcs of the adjacent cells, wherein contact is detected when the sum is greater than the distance.

[0060] In some embodiments, detecting arc-line contact between the adjacent cells comprises comparing a distance between the line of the first cell and the arc center of the arc of the second cell with a radius of the arc of the second cell, wherein contact is detected when the radius is greater than the distance.

[0061] In some embodiments, simulating the explosion includes calculating a force applied to each cell by contacting adjacent cells, wherein the force is calculated based on contact overlap and applied to an arc center point.

[0062] In some embodiments, each cell is a polygon with rounded corners.

[0063] In some embodiments, at least some of the cells have different shapes.

[0064] In some embodiments, at least some of the cells of the same shape have different sizes.

[0065] In some embodiments, simulating the blast further includes a time-step simulation that is iterated over time, wherein, for each time step of the simulation, the method further includes: searching for arc-arc contacts and arc-line contacts in the site model; determining the forces generated by these arc-arc contacts and these arc-line contacts; determining the moments for each element; summing the moments and forces for each element; and moving each element to new positions based on the resultant forces and resultant moments, wherein the new positions are used during the next time step.

[0066] According to another aspect of the present invention, a method for modeling explosive blasting is provided, the method comprising: receiving input data comprising blasthole data, step information, and geological input data; generating a site model based on the input data, wherein the site model comprises a set of blastholes; identifying a zone around each blasthole in the set of blastholes, wherein each zone comprises a perimeter that is a target distance from the associated blasthole; dividing the site model into a plurality of non-circular cells comprising arcs and lines, wherein a first set of non-circular cells within the zones are smaller than a second set of non-circular cells outside the zones; and simulating a blast using the plurality of non-circular cells.

[0067] In some embodiments, further comprising offsetting the layers of the plurality of non-circular cells.

[0068] In some embodiments, the method further includes cutting off a unit across a step slope or a blast hole.

[0069] In some embodiments, further comprising determining a mass of each of the plurality of non-circular cells by multiplying the area of the cell by the spacing and the rock density.

[0070] In some embodiments, the method further includes rotating the site model to create a geological dip.

[0071] In some embodiments, the method further includes identifying a load release time of the plurality of non-circular units.

[0072] In some embodiments, if the blast holes are ultra-deep blast holes, the non-circular units are extended below the blast pit to a length of the first row distance beyond the step slope.

[0073] According to another aspect of the present invention, a computing device is provided, comprising: a processor; and a memory storing instructions that, when executed by the processor, configure the device to: receive input data comprising blasthole data, step information, and geological input data; generate a site model based on the input data, wherein the site model comprises a set of blastholes; identify a zone around each blasthole in the set of blastholes, wherein each zone comprises a perimeter that is a target distance from the associated blasthole; block the site model into a plurality of non-circular cells comprising arcs and lines, wherein a first set of non-circular cells within the zones are smaller than a second set of non-circular cells outside the zones; and simulate blasting using the plurality of non-circular cells.

[0074] In some embodiments, the instructions further configure the apparatus to offset the layers of the plurality of non-circular cells.

[0075] In some embodiments, the instructions further configure the apparatus to intercept cells across a bench face or blast hole.

[0076] In some embodiments, the instructions further configure the apparatus to determine the mass of each of the plurality of non-circular cells by multiplying the area of the cell by the spacing and the rock density.

[0077] In some embodiments, the instructions further configure the apparatus to rotate the site model to create geological dip.

[0078] In some embodiments, the instructions further configure the apparatus to identify a load release time for the plurality of non-circular units.

[0079] In some embodiments, if the blast holes are ultra-deep blast holes, the non-circular units are extended below the blast pit to a length of the first row distance beyond the step slope.

[0080] According to another aspect of the present invention, a non-transitory computer-readable storage medium is provided, which includes instructions that, when executed by a computer, cause the computer to perform the following operations: receive input data including blasthole data, step information, and geological input data; generate a site model based on the input data, wherein the site model includes a group of blastholes; identify a zone around each blasthole in the group of blastholes, wherein each zone includes a perimeter that is a target distance from the associated blasthole; block the site model into a plurality of non-circular cells including arcs and lines, wherein a first group of non-circular cells within the zones are smaller than a second group of non-circular cells outside the zones; and use the plurality of non-circular cells to simulate blasting.

[0081] In some embodiments, the instructions further configure the computer to offset the layers of the plurality of non-circular cells.

[0082] In some embodiments, the instructions further configure the computer to intercept cells that cross bench faces or blast holes.

[0083] In some embodiments, the instructions further configure the computer to determine the mass of each of the plurality of non-circular cells by multiplying the area of the cell by the spacing and the rock density.

[0084] In some embodiments, the instructions further configure the computer to rotate the site model to create geological dip.

[0085] In some embodiments, the instructions further configure the computer to identify a load release time for the plurality of non-circular cells.

[0086] According to another aspect of the present invention, a method for modeling a moving object is provided, the method comprising: generating a model comprising a plurality of units, wherein each unit has a shape formed by connecting the endpoints of one or more lines with arcs so that the endpoints of the one or more lines are indirectly connected via the arcs; and simulating the movement of the plurality of units by: detecting arc-arc contact between adjacent units; and detecting arc-line contact between the adjacent units.

[0087] In some embodiments, simulating the movement includes performing a time-step simulation that is iterated stepwise over time, wherein, for each time step of the simulation, the method further includes: searching for arc-arc contacts and arc-line contacts in the model; determining the forces generated by these arc-arc contacts and these arc-line contacts; determining the moments of each unit; summing the moments and forces of each unit; and moving each unit to new positions based on the resultant forces and the resultant moments, wherein the new positions are used during the next time step. BRIEF DESCRIPTION OF THE DRAWINGS

[0088] To facilitate identification of the discussion of any particular element or act, the most significant digit(s) in a reference number refers to the figure number in which the element is first introduced.

[0089] Figure 1 A high-order discrete element for blasting simulation is presented according to one embodiment.

[0090] Figure 2 An arc-to-arc contact detection technique is presented that may be used by a modeling system to determine contact between arcs of adjacent cells, according to one embodiment.

[0091] Figure 3 An arc-line contact detection technique according to one embodiment is presented.

[0092] Figure 4 A method of detecting line-line contact using arc-line contact technology according to one embodiment is presented.

[0093] Figure 5 A force calculation is presented according to one embodiment that a modeling system can use to determine the forces applied to higher-order discrete elements through contact elements.

[0094] Figure 6 A moment calculation for determining moments applied to higher-order discrete elements through contact elements is presented according to one embodiment.

[0095] Figure 7 A flow chart of a method for explosive blast modeling according to one embodiment is presented.

[0096] Figure 8 A flow chart of a method for simulating blasting according to one embodiment is shown.

[0097] Figure 9 Parameters of an input file that may be received by a modeling system according to one embodiment are shown.

[0098] Figure 10 Geological input data according to one embodiment is presented.

[0099] Figure 11 A blast model divided into multiple zones according to one embodiment is shown.

[0100] Figure 12 A partially segmented blast model according to one embodiment is shown.

[0101] Figure 13 A partially segmented blast model according to one embodiment is shown.

[0102] Figure 14A blast crater is shown according to one embodiment.

[0103] Figure 15 A customized blast model according to one embodiment is presented.

[0104] Figure 16 Shown is a top view of a blasting arrangement according to one embodiment.

[0105] Figure 17 A blasting model with ultra-deep blast holes according to one embodiment is shown.

[0106] Figure 18 A rotation process for incorporating geological dip into a blast model is presented according to one embodiment.

[0107] Figure 19 is the load release timing of discrete modeling elements in a blasting model according to one embodiment.

[0108] Figure 20 A model for simulation of a buffer blast or a rock plug blast is presented according to one embodiment.

[0109] Figure 21 A flow chart of a method for creating a model simulating a blast is presented according to one embodiment.

[0110] Figure 22 A project according to one embodiment is presented.

[0111] Figure 23 The process used to change the shape of a cell during a blasting simulation is demonstrated.

[0112] Figure 24 Two types of circular elements are shown that may be used by the modeling systems and methods described herein.

[0113] Figure 25 Three potential three-dimensional shapes are shown that can be used as cells by the modeling systems and methods described herein. DETAILED DESCRIPTION

[0114] Blasting simulations performed by the modeling system can be used to predict the outcomes of blasting. The modeling system simulates blasting to predict rock movement and blast-induced uplift. The blasting modeling system can be used to determine the location of ore in the final blast pile after the blast occurs, assisting ore management with waste ore disposal and minimizing mixing of waste ore with target ore.

[0115] Some blast modeling systems use discrete elements to simulate blasts. Discrete element modeling systems generate a collection of elements representing the blast site and track the movement of these elements over time to simulate the blast. The movement of individual elements is caused by forces acting on the collection and, often, by gravity.

[0116] Some modeling systems use circular elements to represent rock. Blasts are simulated using a collection of two-dimensional circular elements that move over time due to blast loads and gravity. Circles are computationally efficient because contact between particles can be determined by comparing the distance between the centers of two circles to the sum of the circle's radii. However, circular elements oversimplify the rock mass, resulting in a loss of simulation accuracy. For example, circular elements do not experience friction between the elements and do not interact with each other as in an inhomogeneous rock mass. Another challenge associated with spherical discrete elements is that they have no aspect ratio, which limits the ability to predict expansion or porosity generation in a collection of spherical discrete elements. Consequently, circular elements cannot accurately represent the expansion that may occur in the final blast pile after a blast.

[0117] Some modeling systems use straight-sided discrete elements (such as quadrilateral elements or triangular elements) to represent rock masses. A straight-sided discrete element is a series of lines that are connected to form a shape profile with a set of angled corners. Systems using straight-sided elements provide more accurate simulations than systems using circular elements. For example, unlike circular elements, straight-sided discrete elements can have an aspect ratio. However, detecting contacts between straight-sided elements (e.g., contact between a corner of a first element and an edge of a second element, contact between a corner of a first element and an edge of a second element, and contact between an edge of a first element and an edge of a second element) is a very complex and computationally intensive process. Furthermore, simulations using these types of discrete elements require several orders of magnitude more computational time to complete than simulations using spherical elements. In addition, straight-sided elements are often too rigid, too bulky, and do not represent rock flow properties well.

[0118] Described herein are embodiments for simulating blasting using discrete elements with high-order geometric paradigms to represent rock movement following blasting. High-order discrete elements geometrically comprise arcs and lines that define the outline of a single discrete element. Each line is connected by an arc, such that the lines do not intersect. Alternatively, arcs and lines are used to create two-dimensional discrete elements with one or more straight edges and rounded corners. Rounded corners can be formed by one or more arcs. These high-order discrete elements improve simulation accuracy compared to circular elements and are more computationally efficient than straight-edge discrete elements.

[0119] While the embodiments described herein relate to two-dimensional modeling, these embodiments may be scalable to three dimensions, where inherently higher fidelity and computational efficiency provide even greater advantages over currently available spherical and brick element methods. For example, higher-order discrete elements in three dimensions may include bricks with rounded corners.

[0120] It will be readily understood that the components of the embodiments, as generally described below and illustrated in the accompanying drawings, can be arranged and designed in a wide variety of different configurations. For example, the steps of the method do not necessarily require that they be performed in any specified order or even sequentially, nor do they require that they be performed only once. Therefore, the following more detailed description of various embodiments, as described below and as presented in the accompanying drawings, is not intended to limit the scope of the present disclosure, but is merely representative of various embodiments. Although various aspects of the embodiments are presented in the accompanying drawings, the drawings are not necessarily drawn to scale unless otherwise indicated.

[0121] The embodiments and implementations of the blast planning systems and methods described herein may include various steps, which may be embodied in machine-executable instructions to be executed by a computer system. The computer system may include one or more general-purpose or special-purpose computers (or other electronic devices). The computer system may include hardware components, or a combination of hardware, software, and / or firmware, including specific logic for executing the steps.

[0122] Embodiments may be provided as a computer program product including a computer-readable medium having stored thereon instructions that can be used to program a computer system or other electronic device to perform the processes described herein. The computer-readable medium may include, but is not limited to, a hard drive, a floppy disk, an optical disk, a CD-ROM, a DVD-ROM, a ROM, a RAM, an EPROM, an EEPROM, a magnetic or optical card, a solid-state memory device, or other types of media / computer-readable media suitable for storing electronic instructions.

[0123] The computer system and the computers in the computer system can be connected via a network. Suitable networks for configuration and / or purposes as described herein include one or more local area networks, wide area networks, metropolitan area networks, and / or the Internet or IP networks, such as the World Wide Web, a dedicated Internet, a secure Internet, a value-added network, a virtual private network, an extranet, an intranet, or even a stand-alone machine that communicates with other machines via the physical transmission of a medium. In particular, suitable networks can be formed in part or in whole by two or more other networks (including networks using different hardware and network communication technologies).

[0124] One suitable network includes a server and several clients; other suitable networks may contain other combinations of servers, clients, and / or peer nodes, and a given computer system may act as both a client and a server. Each network includes at least two computers or computer systems, such as servers and / or clients. The computer systems may include workstations, laptops, disconnectable mobile computers, servers, mainframes, clusters, so-called "network computers" or "thin clients," tablets, smartphones, personal digital assistants or other handheld computing devices, "smart" consumer electronics or appliances, medical devices, or combinations thereof.

[0125] Suitable networks may include communications or networking software, such as and other vendors, and may operate using TCP / IP, SPX, IPX, and other protocols over twisted pair, coaxial or fiber optic cable, telephone line, radio waves, satellite, microwave relay, modulated AC power line, physical media transmission, and / or other data transmission "wires" known to those skilled in the art. The network may encompass smaller networks and / or may be connected to other networks through gateways or similar mechanisms.

[0126] Each computer system includes one or more processors and / or memory; the computer system may also include various input devices and / or output devices. The processor may include general-purpose devices such as or other "off-the-shelf" microprocessor. The processor may include a dedicated processing device, such as an ASIC, SoC, SiP, FPGA, PAL, PLA, FPLA, PLD, or other custom or programmable device. The memory may include static RAM, dynamic RAM, flash memory, one or more flip-flops, ROM, CD-ROM, disk, tape, magnetic storage media, optical storage media, or other computer storage media. The input device(s) may include a keyboard, mouse, touch screen, light pen, tablet computer, microphone, sensor, or other hardware with accompanying firmware and / or software. The output device(s) may include a monitor or other display, printer, speech or text synthesizer, switch, signal line, or other hardware with accompanying firmware and / or software.

[0127] The computer system may be able to read storage media using a floppy disk drive, a tape drive, an optical drive, a magneto-optical drive, or other means. Suitable storage media include magnetic storage devices, optical storage devices, or other computer-readable storage devices having a specific physical configuration. Suitable storage devices include floppy disks, hard disks, magnetic tapes, CD-ROMs, DVDs, PROMs, RAMs, flash memories, and other computer system storage devices. The physical configuration represents the data and instructions that cause the computer system to operate in a specific and predefined manner as described herein.

[0128] Those skilled in the relevant art(s) will readily be able to provide suitable software to assist in implementing the present invention using the teachings presented herein and programming languages and tools (e.g., modern Fortran, Java, Pascal, C++, C, PHP, .Net, database languages, APIs, SDKs, assembly, firmware, microcode, and / or other languages and tools. Suitable signal formats may be embodied in analog or digital form, with or without error detection bits and / or error correction bits, packet headers, specially formatted network addresses, and / or other supporting data readily provided by those skilled in the relevant art(s).

[0129] Aspects of certain embodiments can be implemented as software modules or components. As used herein, a software module or component can include any type of computer instruction or computer executable code located in or on a computer-readable storage medium. For example, a software module can include one or more physical or logical blocks of computer instructions that can be organized into routines, programs, objects, components, data structures, etc. that perform one or more tasks or implement specific abstract data types. A specific software module can include irrelevant instructions stored in different locations of a computer-readable storage medium that implement the described functions of the module together. In fact, a module can include a single instruction or many instructions and can be distributed across several different code segments, in different programs, and across several computer-readable storage media.

[0130] Some embodiments may be practiced in a distributed computing environment, where multiple tasks are performed by remote processing devices connected via a communications network. In a distributed computing environment, software modules may be located in local and / or remote computer-readable storage media. In addition, data linked or rendered together in a database record may reside in the same computer-readable storage medium or across several computer-readable storage media, and may be linked together in fields of records in a database across a network. According to one embodiment, a database management system (DBMS) allows a user to interact with one or more databases and provides access to the data contained in the databases.

[0131] Figure 1A high-order discrete element 100 according to one embodiment is shown. A discrete element modeling system using the high-order discrete element 100 segments a two-dimensional site model into a plurality of elements. The high-order discrete element 100 has a shape formed by connecting the endpoints of one or more lines with arcs such that the endpoints of two or more lines are indirectly connected via the arcs, and such that the arcs form rounded corners of the shape. The illustrated embodiment of the high-order discrete element 100 includes a first line 102, a second line 104, and a third line 106 connected by four arcs (i.e., a first arc 108, a second arc 112, a third arc 116, and a fourth arc 122).

[0132] The illustrated embodiment includes two parallel lines. Other embodiments may include one or more lines, and these lines may be at angles relative to each other. Each line includes two endpoints, each of which is connected to an arc, resulting in a shape with rounded corners or edges. Each rounded corner can be created using one or more arcs. For example, a rounded corner or edge can be created by connecting first arc 108 and second arc 112.

[0133] Each arc is a differentiable curve. In the illustrated embodiment, the arc is an arc that outlines a portion of the circumference of a circle. The illustrated embodiment includes four arcs. Other embodiments may include different numbers of arcs. Each arc includes an arc center point (i.e., a first center point 126, a second center point 128, a third center point 130, and a fourth center point 132). The arc center point represents a point equidistant from all points on the arc. Each arc further includes a radius (i.e., a first radius 110, a second radius 114, a third radius 118, and a fourth radius 124). Because the arc is circular, the radius of each arc is the same at all points along the arc. In addition, each arc includes an arc angle (e.g., a third arc angle 120). The arc angle is the angle formed by the arc at the center point. As shown in the figure, the endpoints of the arc can be connected to another arc as shown by the connection between the first arc 108 and the second arc 112, or the endpoints of the arc can be connected to a line as shown by the connection between the first line 102 and the third arc 116.

[0134] The intersections between arcs and lines, and between arcs and arcs, form smooth transitions between contour elements of different shapes. Each line can be tangent to the endpoints of the arc it connects to for a smooth transition. Similarly, the transition from arc to arc can also be smoothly transitioned. The intersections do not form sharp angles, such as the sharp angles formed when two straight lines are directly connected and form a vertex. The resulting shape has a contour with rounded corners, rather than a shape with angled corners. Therefore, the lines of the high-order discrete element 100 are not directly connected, but are indirectly connected via arcs to prevent angled corners. Rounded corners are more computationally efficient than sharp angles and can be created using one or more arcs.

[0135] The higher-order discrete elements 100 are created from arcs and lines that define the outline of a single discrete element. Figure 1 This illustrates one of many possible cell shapes that can be created using arcs and lines. Other embodiments of higher-order discrete cells can use arcs and lines to create non-spherical shapes without angled corners. Other shapes that can be created using combinations of arcs and lines include rounded polygons, such as rounded triangles, rounded trapezoids, rounded rectangles, rounded squares, rounded hexagons, or rounded octagons.

[0136] In some embodiments, the shape of the cells used in the simulation model can be based on geological data, such as rock hardness. In some embodiments, at least some of the cells in the simulation model have different shapes. For example, different types of rock can be modeled using cells of different shapes. For example, coal can be modeled using rounded quadrilaterals, while another rock in the same simulation can be modeled using rounded hexagons. In some embodiments, at least some of the cells of the same shape have different sizes.

[0137] Discrete element shapes formed with discontinuous lines connected indirectly via arcs provide better accuracy than circular elements and offer computational efficiency advantages over discrete elements with only straight lines. Straight lines and varying arc radii provide more realistic aspect ratios than circles, while arcs provide a more efficient way to detect contact between adjacent elements than elements with only straight lines.

[0138] Each high-order discrete element 100 in the blasting simulation model can be stored in the memory of the modeling system. For example, the high-order discrete element 100 can be a data structure including line endpoint node coordinates, specified arc endpoints, arc center points, arc radius and arc angle.

[0139] Figures 2 to 4 Various methods for detecting contacts between high-order discrete cells are presented. The two key inter-cell interaction mechanisms for detecting contacts between adjacent cells are: 1) Figure 2 The arc-arc shown and Figure 3 Another possible interaction mechanism is as follows Figure 4 However, as discussed in more detail below, line-line contact can be detected by an arc-line interaction mechanism.

[0140] Detecting these cell interactions between higher-order discrete elements is computationally very efficient, much more efficient than detecting interactions between straight-edge discrete elements. Higher-order discrete elements also have aspect ratios greater than one, resulting in more natural expansion and inter-particle friction than circular elements.

[0141] The described higher-order discrete elements will enable simulations to increase fidelity in discrete element modeling of rock blasting because these elements have aspect ratios that circular elements do not have and will naturally exhibit more of the natural properties of the rock during blast-induced movement (such as expansion and inter-element friction).

[0142] Furthermore, due to the computational simplicity, speed, and resolution of arc-arc and arc-line contact detection, higher-fidelity simulations can be completed with considerably less computational time. This means significantly more realistic blasting simulations can be completed on cheaper and more portable laptop computers.

[0143] Figure 2 Arc-arc contact detection techniques are presented that can be used by a modeling system to determine contact between arcs of adjacent cells. As shown, a first cell 202 having a first arc 216 is adjacent to a second cell 204 having a second arc 218 .

[0144] To detect whether the arcs of the two cells touch each other during a simulated time step, the modeling system can determine whether there is overlap between the first arc 216 and the second arc 218. Such overlapping arcs can be referred to as arc-to-arc contact. Detecting arc-to-arc contact between adjacent cells includes comparing the distance 214 between the arc center points (i.e., the first center point 206 and the second center point 208) of the first arc 216 and the second arc 218 of the adjacent cells to the sum of the first radius 210 and the second radius 212 of the two arcs of the adjacent cells. For example, in some embodiments, arc-to-arc contact is detected when the sum of the radii is greater than the distance 214.

[0145] Figure 3 An arc-line contact detection technique is shown that can be used by a modeling system to determine contact between an arc 310 and a line 312 of adjacent cells. In this figure, a first cell 302 and a second cell 304 are adjacent cells, where the closest points along the perimeters of these cells are arc 310 of second cell 304 and line 312 of first cell 302. R1 represents the radius 308 of arc 310, and D represents the shortest distance 306 between arc center point 314 and line 312. The modeling system can use a dot product to determine distance 306.

[0146] When arc 310 and line 312 overlap in a simulation, this is referred to as arc-line contact. The modeling system can detect arc-line contact between adjacent cells by comparing the radius 308 of arc 310 to the distance 306 between line 312 of first cell 302 and arc center point 314 of arc 310 of second cell 304. For example, contact can be detected when radius 308 is greater than distance 306.

[0147] Figure 4 Demonstrates how references are used by the modeling system Figure 3Line-line contact is detected using the arc-line contact technique described above. Line-line contact occurs when first line 402 of first element 406 overlaps second line 404 of second element 408. Direct line-line contact detection is computationally less efficient than arc-arc contact detection and arc-line contact detection. Therefore, in some embodiments, line-line contact can be detected indirectly using the arc-line contact detection technique because when lines overlap, one or both of first arc 410 and second arc 412 will overlap first line 402.

[0148] Therefore, to determine the contact of adjacent cells, the modeling system may use a reference on one or both of the first arc 410 and the second arc 412. Figure 3 For example, the system can compare the radius of the first arc 410 to the distance between the first line 402 and the center point of the first arc 410 and the radius of the second arc 412 to the distance between the first line 402 and the center point of the second arc 412.

[0149] Figure 5 A force calculation is shown that the modeling system can use to determine the forces applied to higher-order discrete elements by contact elements. The modeling system can calculate the magnitude and direction of the forces applied to each element. The system detects contact between a first element 502 and a second element 504 when the perimeters of the two discrete elements overlap 506 during a simulated time step. The modeling system resolves or eliminates the overlap by applying restoring forces calculated to eliminate the overlap 506. These restoring forces are applied to the first element 502 and the second element 504.

[0150] As part of the simulation, the modeling system can determine contact and calculate the force applied to each element by contacting adjacent elements. The force is calculated based on the overlap 506 caused by the contact. For arc-arc contact, the force is applied through the arc center points (i.e., the first arc center point 508 and the second arc center point 510) to make arc-arc contact. For arc-line contact, the force is applied perpendicular to the line and through the center of the arc. The magnitude of this restoring force is equal to the specified spring constant of the material multiplied by the overlap 506.

[0151] Figure 6A moment calculation is shown that the modeling system can use to determine the moment 604 applied to the higher-order discrete element 600 by the contact element. As shown, each force 606 applied to the higher-order discrete element 600 will also produce a moment 604, M, on the higher-order discrete element 600. The moment is applied to the element center 602 by all forces applied to the higher-order discrete element 600 (including the force 606 applied to the arc center point 608 caused by the contact element). In some embodiments, the modeling system calculates the moment of each force separately and then sums the moments to determine the total moment of the higher-order discrete element 600.

[0152] The modeling system can calculate the torque 604 by calculating the following formula:

[0153] M=F×r

[0154] in:

[0155] F is force 606; and

[0156] r 610 is the shortest distance between the vector representing force 606 and the cell center 602 .

[0157] The resultant moment (ie, the sum of the moments) is calculated to determine the rotation of the higher-order discrete element 600 .

[0158] Figure 7 A flow chart of a method 700 for explosive blasting modeling according to one embodiment is shown. A modeling system executing method 700 receives 702 a blasting plan including blasthole data and blastsite data. The blasthole data may include blasthole parameters such as blasthole spacing, blasthole row spacing, blasthole depth, blasthole diameter, blasthole layout, number of blastholes, packing information, explosive properties, blasthole angle, blasthole top coordinates, blasthole bottom coordinates, and layering information. A blasting layout can be geometrically defined in a 3D coordinate system of X (longitude), Y (latitude), and Z (vertical). The 3D coordinate system can be a local coordinate system with an origin near a location within the blasting layout, or it can be located within a mine coordinate system, which is typically a larger 3D local coordinate system encompassing all of the mine. In blasting layout design, lines representing blastholes can be defined by top and bottom coordinates. Most blasting layouts rarely have flat top surfaces, and the angles of each blasthole in the layout may vary slightly or significantly. Therefore, the top and bottom coordinates can be used to define the blasthole.

[0159] The blast site data may include bench information, geological properties, geological features, and geological factors of the site. Non-limiting examples of bench information include slope angle, bench height, bench inclination, pit inclination, spoil angle, and the number of slope units. Non-limiting examples of geological properties include mineralogy (elemental and / or mineral), lithologic structure (primary, secondary, and / or textural), porosity, hardness, attenuation, Young's modulus, shear modulus, bulk modulus, Poisson's ratio, P-wave velocity, S-wave velocity, rock density, rock type, rock strength, rock condition, rock description, joint condition, joint angle, joint orientation, joint spacing standard deviation, cohesion, vertical joint spacing, horizontal joint spacing, unconfined compressive strength (UCS), sonic velocity, borehole standard deviation, impact velocity, rock fracture toughness, rock reflectivity, rock tensile strength, internal friction angle, Hugoniot data (e.g., minimum Up, maximum Up, minimum Us, maximum Us), and ground stress (σ1, σ2, σ3, stress orientation, dip, direction, and roll angle). "Texture" refers to the size, shape, and arrangement of interlocking mineral crystals that form a rock or other material. Geological data can be used to determine additional geological characteristics, such as brittleness and crushability.

[0160] The modeling system generates a site model (e.g., a two-dimensional site model) based on the blasting plan by generating a plurality of high-order discrete elements 704. Each high-order discrete element has a shape formed by connecting the endpoints of one or more lines with arcs so that the endpoints of the one or more lines are indirectly connected via the arcs and the arcs form rounded corners of the shape. The modeling system 706 further simulates blasting using the site model and the plurality of elements.

[0161] Figure 8 A flow chart of a method 800 for simulating a blast, according to one embodiment, is shown. The discrete element simulation method tracks the movement and interactions of thousands of discrete elements by advancing over time at a stable time step (typically 1.0E-4 seconds or less) that is precalculated based on the mass and stiffness of each element. At each time step, the following method steps are used.

[0162] System usage reference for using Method 800 Figures 2 to 4 The described technique searches for arc-arc contacts and arc-line contacts throughout the set of discrete elements in the site model 806. The system can use reference Figure 5 The described technique further determines 808 the forces generated by the arc-arc contact and the arc-line contact. The system can also use reference Figure 6 The described technique 810 determines the moment for each element.

[0163] The system using method 800 sums the moments and forces for each element 812. At each time step, each element may have multiple restoring forces and moments applied to it due to multiple contacts with surrounding elements. The multiple forces and moments are summed to calculate the resultant force and moment.

[0164] The system of implant method 800 moves 814 each unit to a new position based on the resultant force and resultant moment. These new positions are used during the next time step. Contact between units can cause overlap. This overlap is resolved or eliminated by applying reaction forces and moments to each of these units. The system applies the resultant force and resultant moment to each unit to translate and rotate each unit a small distance so that it reaches the new position at the end of the small time step.

[0165] The system using method 800 then determines 804 whether the total execution time of the simulation has completed. If the duration of the simulation has ended, method 800 ends 802. Otherwise, method 800 adds 816 a time step to the current time period and executes the simulation again with the new position of the discrete unit.

[0166] In some embodiments, method 800 includes additional steps. For example, when two arcs cross, they do not generate much friction. Therefore, part of method 800 may include placing a temporary adhesive to simulate the friction caused by rough rock. This enhanced friction property may vary depending on the rock type.

[0167] Figures 9 to 20 The various processes that the modeling system can perform to simulate blasting are shown. Any of these processes can be used with Figure 7 and Figure 8 Use in combination with the methods described in .

[0168] Figure 9 Parameters 900 of an input file that a modeling system can receive are shown. The input file is used by the modeling system to create a model for blasting simulation. The model shown is a free-surface two-dimensional model. The model includes a plurality of blast holes (e.g., blast hole 902 and blast hole 904) shown in a two-dimensional XY plane. The model, including the location, size, and angle of the blast holes, is defined by the input file.

[0169] The input file can be a blasting plan that includes blasthole data and blastsite data. Blasthole data can include row number, row spacing, spacing, packing information, layering information, explosive properties, blasthole diameter, blasthole angle, top coordinates, and bottom coordinates. Blasting site data can include step information such as slope angle, step height, step inclination, pit inclination, spoil angle, and number of slope units.

[0170] Figure 10The geological input data 1000 that the modeling system can receive is shown. The geological input data 1000 can be included in the blast site data of the input file received by the modeling system. The geological input data includes the geological properties, geological characteristics and geological factors of the site.

[0171] For example, geological input data 1000 may include step inclination 1002, pit inclination 1012, and geological inclination 1004. Step inclination 1002 indicates the slope of the terrace of the step. Pit inclination 1012 indicates the slope of the pit. Geological inclination 1004 indicates the slope of the geological layer of the step. In some embodiments, step inclination 1002, pit inclination 1012, and geological inclination 1004 may have different angles. In some embodiments, two or all three of step inclination 1002, pit inclination 1012, and geological inclination 1004 may have the same angle. For example, step inclination and geological inclination 1004 may have the same angle.

[0172] In addition, the geological input data may also include properties of the stepped geological layers (e.g., the first layer 1006, the second layer 1004, and the third layer 1010). The properties of the geological layers may include the rock type, density, Young's modulus, Poisson's ratio, rock impact velocity, and crack velocity coefficient of each layer. These properties may be used to determine the shape, size, and / or radius of the arcs of the discrete elements used to model the geological layer.

[0173] Figure 11 A blast model 1100 is shown divided into a plurality of zones (ie, zones 1102-1110, referred to herein as zones) based on blast hole locations. The modeling system can identify these zones to represent the ranges where cells of different sizes will be used for simulation.

[0174] Different sized cells can be used to represent different fragment sizes. The modeling system can use smaller cells within a zone to represent that the rock closest to the blastholes 1112-1120 will be broken into smaller pieces due to its position relative to the blasting force. Additionally, in some embodiments, these zones can be defined based on the location of the explosive within the blastholes 1112-1120, without considering components such as fill.

[0175] In some embodiments, the rock within a zone will be represented by cells that are proportional to the size of the rest of the step. For example, in the illustrated embodiment, the cells within a zone are half the size of the other cells in the model. In other embodiments, the cells within a zone may have different proportions based on the energy density, type, and / or amount of explosives in the blastholes associated with that zone. For example, a first zone may be segmented into half-sized cells, while a second zone may be segmented into quarter-sized cells.

[0176] In some embodiments, the size of the cells can be graded based on their relative position relative to the charge in the blasthole, rather than two sizes. In these embodiments, zones may or may not be used. A gradient in cell size will result in the smallest cells being located near the charge in the blasthole, with the cell size increasing based on the distance from the charge in the blasthole.

[0177] Figure 12 A partially segmented blast model 1200 is shown. As shown, the modeling system segments the blast model 1200 by segmenting or forming a cell grid representing the rock of the model. The cells in the illustrated embodiment are quadrilateral cells with rounded corners. Similar segmentation can be performed using other non-spherical cells without sharp corners.

[0178] In the illustrated embodiment, the modeling system predicts that the blast pattern 1200 will break at 60% of the desired pass size in areas outside of the first zone 1202 and the second zone 1204. Larger cells at the step slope can be truncated to align with the step slope.

[0179] The modeling system uses smaller cells in first zone 1202 and second zone 1204 to represent larger fragments near the explosive within the blasthole. In the illustrated embodiment, the smaller cells are 30% of the desired pass size and half the size of the larger cells. Cells that span the blasthole can be split and represented as two cells.

[0180] Figure 13 A burst model 1300 is shown that is partially partitioned into a plurality of cells using various partitioning techniques. The cells used in the illustrated embodiment represent a type of high-order discrete cell, namely a rounded quadrilateral cell.

[0181] In the first region 1302, the modeling system has divided the top of the step into four layers. As shown, each layer in the first region 1302, as well as the second region 1306 and the third region 1304 is offset. For example, in some embodiments, each successive layer can be offset by half a unit.

[0182] Second region 1306 illustrates how the modeling system segments blast model 1300 near blastholes. The modeling system can identify cells that span blastholes and truncate these cells to match the cells surrounding the blastholes. In the illustrated embodiment, these cells at the blastholes terminate or are cut off with vertical edges at the blastholes. However, in other embodiments, these cells can be cut at the same angle as the blastholes. Furthermore, in some embodiments, if a truncated cell is smaller than a threshold size or width, the modeling system can simply delete the cell.

[0183] Third region 1304 illustrates how the modeling system segments blast model 1300 near the step slope. The modeling system can identify cells that cross the step slope and truncate such cells to fit within the step. In the illustrated embodiment, these cells at the step slope terminate or are cut off with a vertical edge at the step slope. However, in other embodiments, these cells can be cut at the same angle as the step slope. Additionally, in some embodiments, if a truncated cell is smaller than a threshold size or width, the modeling system can simply delete the cell.

[0184] The modeling system may chunk the remainder of the blast model 1300 according to the techniques described above.

[0185] Figure 14 This example illustrates how the modeling system can create a blast pit 1400. Blasting pit 1400 can be formed using fixed elements 1402. Fixed elements 1402 will not move during simulation. Fixed elements 1402 can also be formed using elements formed from arcs and lines. For example, fixed elements 1402 can have the same shape as the same elements used to model a step. Therefore, the interaction between fixed elements 1402 and the blasting moving elements can be determined by the modeling system using arc-arc contact and arc-line segment contact.

[0186] Figure 15 A blast model 1500 is shown with blastholes having different parameters. During blast design, parameters may vary across the blast site. For example, blast design parameters may vary for each row. Some parameters that may vary within a blast plan include row spacing, spacing, fill, hole angle, hole depth, hole diameter, and explosive type, which can be customized for each row. Row spacing and spacing are defined relative to the location of the blastholes on the top of the step, while hole depth and fill are defined from the top of the step (e.g., distance from the top of the step). A modeling system as described herein can generate and execute blast simulations on a customized model with varying blast design parameters.

[0187] Figure 16 A top view of a blasting arrangement 1600 is shown. A two-dimensional computational plane 1602 is a two-dimensional discrete element blasting model (e.g., Figures 9 to 15 The modeling system can use the blast arrangement 1600 to take the three-dimensional dimensions of the steps into account.

[0188] For example, the modeling system can account for the three-dimensional nature of the steps by determining the mass of the cells based on the spacing 1604. By accounting for the spacing 1604, the modeling system determines the true mass displaced by each blast hole and assigns this mass to the cells in the two-dimensional computational plane 1602. Therefore, the simulated cell displacement will be a function of the spacing. Additionally, increasing the cell mass can increase the time step of the simulation.

[0189] The element mass can be calculated as follows:

[0190] Unit mass = area × spacing × rock density

[0191] in:

[0192] Area is the unit area in the two-dimensional calculation plane 1602;

[0193] Spacing is the distance between blast holes in a row; and

[0194] Rock density is the density of the geological material represented by the unit.

[0195] Figure 17 A blast pattern 1700 is shown with an extra-deep blast hole (e.g., blast hole 1706). Extra-deep occurs when the blast hole is drilled below the bottom of the pit 1704. In other words, the blast hole depth plus the fill is greater than the bench height.

[0196] To simulate blasting with extra-deep holes, some embodiments of the modeling system may extend the mobile unit area 1702 below the pit 1704. For example, the discrete units that move during the blasting simulation may extend beyond the step slope by a length of the first row spacing width 1708. The first row spacing width 1708 is the spacing between the first blast hole row and the slope. When the modeling system simulates the blasting, the entire mobile unit area 1702 is used as the calculation area for the system to determine the movement of the units. Therefore, the extra-deep extends the calculation area below the pit 1704. In some embodiments, the modeling system may use the units to simulate inter-row delays. For example, the modeling system may simulate a series of delay planes that feed data into the location of the units and the detonation time of the second row. For example, Figure 16 The volume of rock displaced by a single blasthole is shown. The (out-of-plane) spacing between blastholes can control the mass of rock displaced by the blastholes and ultimately the velocity of the GEM units affected by the blastholes.

[0197] Figure 18 A rotation process is shown that a modeling system can use to create a geological dip for a blast model 1800. In some embodiments, the modeling system creates the model 1800 with a zero geological dip. The system can then rotate the model 1800 from a horizontal position 1802 to an angled position 1804. The system can rotate the model 1800 so that the model 1800 in the angled position 1804 has an angle that is consistent with the geological dip.

[0198] Figure 19The process of load release timing for discrete modeling elements in blasting model 1900 is illustrated. As shown, the modeling system can divide blasting model 1900 into multiple detonation sections (e.g., first detonation section 1902, second detonation section 1904, third detonation section 1906, fourth detonation section 1908, and fifth detonation section 1910). Before the explosive in the blasthole is detonated, the discrete elements are not released. In other words, these discrete elements cannot move.

[0199] When the simulation detonates explosives in blastholes within the detonation section, the discrete elements within the detonation section experience a load release. This load release causes the discrete elements to begin moving. The simulation can include a time delay between detonations within a row of blastholes, as each row may be delayed. During the initialization of the simulation, the modeling system can set a load release time, or "live time," for each element based on the row delay time.

[0200] Each firing section may include units located in the rear third of the load in each row of blastholes and units located in front of the blastholes. Thus, when each firing section reaches the time for load release, the rear third of the load in the blastholes is fragmented and free to move along with the fragmented and free-moving load in the front of the blastholes.

[0201] The modeling system advances the simulation over time at a steady time step. When the detonation time for a row is reached, the modeling system releases the elements in the load at the front of the row, plus the last 1 / 3 of the load, which are also released and moved because all of these elements have reached their "survival time." The modeling system releases the elements in each detonation section sequentially until a new free surface 1912 is reached.

[0202] Figure 20 A discrete element model 2000 generated by a modeling system for simulating free-face blasting (e.g., buffer blasting or rock plug blasting) is presented. Buffer blasting or rock plug blasting is a blasting technique without free faces. Simulating buffer blasting or rock plug blasting using hexahedrons predicts whether ore has moved during blasting. This prediction can enable more accurate ore extraction.

[0203] This blasting technique can be used in gold and copper mining. Gold and copper mining rely on high-resolution simulations. Due to the need for high resolution and the lithology and properties of the gold ore, hexahedral elements can be used.

[0204] Hexahedral cells can include dimension lines that are indirectly connected to arcs to form polygons with rounded corners. Hexahedral cells can be cut in half to form a flat surface. In addition, hexahedral cells that interact with blastholes (such as blasthole 2002) can be decomposed into two parts or truncated.

[0205] Figure 21 A flow chart of method 2100 for creating a model for simulating a blast is shown. In block 2102, method 2100 receives input data including blasthole data, bench information, and geological input data. In block 2104, method 2100 generates a site model based on the input data, wherein the site model includes a set of blastholes. In block 2106, method 2100 identifies a zone around each blasthole in the set of blastholes, wherein each zone includes a perimeter that is a target distance from the associated blasthole. In block 2108, method 2100 segments the site model into a plurality of non-circular cells including arcs and lines, wherein a first set of non-circular cells within the zone is smaller than a second set of non-circular cells outside the zone. In block 2110, method 2100 simulates a blast using the plurality of non-circular cells.

[0206] Figure 22 2 is a block diagram of a blast modeling system 2200 according to one embodiment. Blasting modeling system 2200 can perform methods and use techniques described with reference to other figures in the specification. Blasting modeling system 2200 can include a memory 2203, one or more processors 2204, a network interface 2206, an input / output interface 2208, and a system bus 2209.

[0207] The one or more processors 2204 may include one or more general purpose devices, such as or other standard microprocessors. The one or more processors 2204 may include dedicated processing devices, such as ASICs, SoCs, SiPs, FPGAs, PALs, PLAs, FPLAs, PLDs, or other custom or programmable devices. The one or more processors 2204 may perform distributed (e.g., parallel) processing to execute or otherwise implement the functionality of the presently disclosed embodiments. The one or more processors 2204 may run a standard operating system and perform standard operating system functions. It is recognized that any standard operating system, such as Disk Operating System (DOS), UNIX, IRJX, Solaris, SunOS, FreeBSD, Operating system, etc.

[0208] Memory 2203 may include static RAM, dynamic RAM, flash memory, one or more flip-flops, ROM, CD-ROM, DVD, magnetic disk, tape, or magnetic storage media, optical storage media, or other computer storage media. Memory 2203 may include multiple program modules 2210 and program data 2220. Memory 2203 may be local memory of blast modeling system 2200, as shown, or may be distributed memory and / or remote memory relative to blast modeling system 2200.

[0209] Memory 2203 may include data 2220. Data generated or used by blast modeling system 2200 (such as generated or used by program module 2210 or other modules) may be stored on memory 2203, for example, as stored program data 2220. Data 2220 may be organized into one or more databases.

[0210] Data 2220 may include blast input data, a cell data structure 2222, positioning information 2224, and contact, force, and torque data 2226. The blast input data may be input by a user via the input / output interface 2208. In some embodiments, the blast input data may include blasthole data, step information, and geological input data. The cell data structure 2222 may include information related to the shape of each cell of the blast model. For example, the cell data structure 2222 may include line endpoint node coordinates, specify arc endpoints, arc center points, arc radius, and arc angle. Positioning information 2224 may include location information for each cell of the blast model. For example, the positioning information 2224 may include the coordinates of each cell and the orientation of each cell. The contact, force, and torque data 2226 may include the contact, force, and torque of each cell at the current time step.

[0211] Program module 2210 may include all or part of the other elements of blast modeling system 2200. Program module 2210 may execute multiple operations concurrently or in parallel via one or more processors 2204 or on one or more processors. In some embodiments, portions of the disclosed modules, components, and / or facilities are embodied as executable instructions embodied in hardware or firmware or stored on a non-transitory machine-readable storage medium. These executable instructions may include computer program code that, when executed by a processor and / or computing device, causes the computing system to perform certain processing steps, procedures, and / or operations as disclosed herein. The modules, components, and / or facilities disclosed herein may be implemented and / or embodied as drivers, libraries, interfaces, APIs, FPGA configuration data, firmware (e.g., stored on EEPROM), and the like. In some embodiments, portions of the disclosed modules, components, and / or facilities are embodied as machine components, such as general-purpose and / or specialized devices, including but not limited to circuits, integrated circuits, processing components, interface components, hardware controller(s), storage controller(s), programmable hardware, FPGAs, ASICs, and the like. Therefore, the modules disclosed herein may be referred to as controllers, layers, services, engines, facilities, drivers, circuits, subsystems, etc.

[0212] Module 2210 may include a model generator 2212, a simulation model 2214, and a mass calculator 2216. Model generator 2212 may generate a site model based on blasting input data and divide the site model into a plurality of cells. Mass calculator 2216 may calculate the mass of each cell.

[0213] Simulation model 2214 can perform blasting simulations across multiple time steps. For example, simulation model 2214 can search for arc-arc and arc-line contact in the site model and determine the forces and moments generated by these arc-arc and arc-line contacts. Simulation model 2214 can also change the position coordinates and orientation of each element to a new location based on the resultant forces and moments. The new location will be used during the next time step.

[0214] The input / output interface 2208 can facilitate user interaction with one or more input devices and / or one or more output devices. The input device(s) can include a keyboard, a mouse, a touch screen, a light pen, a tablet computer, a microphone, a sensor, or other hardware with accompanying firmware and / or software. The output device(s) can include a monitor or other display, a printer, a speech or text synthesizer, a switch, a signal line, or other hardware with accompanying firmware and / or software. For example, in one embodiment, the input / output interface 2208 includes a display for providing a graphical user interface (GUI) that displays potential ablation perimeters. The input / output interface 2208 can receive user input data 2222. In some embodiments, the input / output interface 2208 is a touch screen and receives size input via the touch screen. In some embodiments, the input / output interface 2208 can superimpose the target ablation perimeter on an image of the tissue.

[0215] The network interface 2206 can facilitate communications with other computing devices and / or networks and / or other computing and / or communications networks. The network interface 2206 can be equipped with a conventional network connection, such as Ethernet (IEEE 1102.3), Token Ring (IEEE 1102.5), Fiber Distributed Data Link Interface (FDDI), or Asynchronous Transfer Mode (ATM). Further, the network interface 2206 can be configured to support various network protocols, such as Internet Protocol (IP), Transmission Control Protocol (TCP), Network File System based on UDP / TCP, Server Message Block (SMB), Common Internet File System (CIFS), Hypertext Transfer Protocol (HTTP), Direct Access File System (DAFS), File Transfer Protocol (FTP), Real-Time Publish Subscribe (RTPS), Open Systems Interconnection (OSI) protocol, Simple Mail Transfer Protocol (SMTP), Secure Shell (SSH), Secure Sockets Layer (SSL), etc.

[0216] The system bus 2209 may facilitate communication and / or interaction between the other components of the blast modeling system 2200 , including one or more processors 2204 , memory 2203 , input / output interface 2208 , and network interface 2206 .

[0217] Figure 23A process 2300 is shown for changing the shape of a cell 2302 during a blasting simulation. During a blast, as the rock rolls, slides, and breaks, it becomes more rounded. The modeling system can approximate the effect on the cell 2300 by increasing the radius of each arc based on one or more of the corresponding cell's movement, the corresponding cell's rotation, and the corresponding cell's collision during the simulation. In other words, as the cell 2300 moves and interacts with other cells, the endpoints of the line are moved closer together, and the arc radius increases.

[0218] Cell 2300 may begin as a polygon (e.g., a square) with tightly rounded corners (e.g., corners formed by arcs with small radii). These tightly rounded corners allow the cells to fit together well in a step. However, the movement of cells with such tightly rounded corners caused by the explosion may appear somewhat unnatural. Therefore, the modeling system may track the movement, rotation, and collision of cell 2300 during the simulation and change the shape of cell 2300. As the cell moves, collides, and rotates, the modeling system may increase the arc radius at the corners.

[0219] Figure 24 Two circular elements (i.e., first elements 2404 and 2410) that can be used by the modeling systems and methods described herein are shown. While the shapes used by the modeling system may have straight lines, the modeling system may also be able to use circular elements in a similar manner to model rock in blasting simulations.

[0220] For example, the modeling system can process a circular cell by creating a circular cell with an arc center point 2408 and two 180-degree arcs (e.g., first arcs 2402 and 2404). As shown, first cell 2404 overlaps second cell 2410. By using an arc center point and two arcs, the modeling system can determine the movement of the cell using the methods described above.

[0221] Figure 25 Three potential three-dimensional shapes that can be used as cells by the modeling systems and methods described herein are shown. The illustrated embodiments include a spherical cell 2502, a quadrilateral cell 2504, and a cuboid cell 2506. The methods and systems described herein can use these shapes to simulate three-dimensional explosions. As shown, each of these cells can include rounded edges and corners. The radii of the rounded edges and corners can be used to determine the movement of the cell using the methods described herein.

[0222] In some embodiments, the spherical unit 2502 can be modeled using a three-dimensional hexahedron shape with rounded corners and edges. The contact characteristics of a three-dimensional hexahedron shape with rounded surfaces may not be significantly different from those of a sphere.

[0223] Although the examples and embodiments disclosed herein specifically mention blasting simulations, these high-order discrete elements and simulation methods can be applied to a variety of different simulation applications. For example, the elements described herein can be used to simulate the movement of liquids, solutions, gases, materials in storage silos, and powders. The simulation methods can be used in a variety of applications and multiple industries. For example, the simulation methods can be used to simulate earthquakes, oil and gas drilling and mining, and mineral processing. The embodiments of the discrete elements disclosed herein can also be used to model, understand, and design the milling of mineral ores using grinding entities (such as high-strength steel rods or steel balls in a milling barrel). Both the ore and the grinding entities can be more accurately represented by high-order discrete elements. Embodiments related to discrete element corner rounding based on movement and collision may be particularly helpful for milling modeling.

[0224] Some embodiments of a more general method for simulating moving objects can include generating a model that includes multiple high-order discrete elements as described with reference to the above figure. Each element can have a shape that is formed by connecting the endpoints of one or more lines with arcs so that the endpoints of the one or more lines are indirectly connected via these arcs. Simulating the movement of multiple elements can be accomplished by performing a time-step simulation that is gradually iterated over time. For each time step of the simulation, the method can search for and detect arc-arc contact and arc-line contact between adjacent elements. The method can also determine the forces and moments generated by the arc-arc contact and arc-line contact. The forces and moments can be summed and used to move each element to a new position to be used during the next time step.

[0225] The examples and embodiments disclosed herein are to be construed as merely illustrative and exemplary, and are not to be construed as limiting the scope of the present disclosure in any way. It will be apparent to those skilled in the art and those having the benefit of the present disclosure that many changes may be made to the details of the embodiments described above without departing from the underlying principles of the present disclosure.

Claims

1. A method for explosive blasting modeling, the method comprising: receiving input data, the input data including blasthole data, bench information, and geological input data; Generate a site model based on the blasting plan, which includes a set of blast holes. identifying a zone around each blasthole in the set of blastholes, wherein each zone includes a perimeter that is a target distance from the associated blasthole; Dividing the site model into a plurality of cells, wherein a first group of cells within the zone is smaller than a second group of cells outside the zone; and Simulating a blast using the plurality of units, wherein simulating the blast comprises: Detect contact between adjacent cells.

2. The method according to claim 1, wherein Each cell has a shape formed by connecting endpoints of one or more lines with arcs such that the endpoints of the one or more lines are indirectly connected via the arcs.

3. The method according to claim 2, wherein: Detection contacts include: detecting arc-arc contact between the adjacent cells; and Arc-line contact between the adjacent cells is detected.

4. The method according to claim 2 or 3, wherein: The radius of the arc of the cell increases based on one or more of a movement of the corresponding cell, a rotation of the corresponding cell, and a collision of the corresponding cell.

5. The method according to claim 3, wherein: Detecting arc-arc contact between adjacent cells includes comparing a distance between arc center points of two arcs of adjacent cells with a sum of radii of the two arcs of the adjacent cells, wherein contact is detected when the sum is greater than the distance.

6. The method of claim 3, wherein: Detecting arc-line contact between adjacent cells includes comparing a distance between a line of a first cell and an arc center of an arc of a second cell with a radius of the arc of the second cell, wherein contact is detected when the radius is greater than the distance.

7. The method according to any one of claims 3, 5 and 6, wherein Simulating the explosion includes calculating a force applied to each cell by contacting adjacent cells, wherein the force is calculated based on contact overlap and applied to the arc center point.

8. The method according to any one of claims 1 to 7, wherein Each cell is a polygon with rounded corners.

9. The method of claim 8, wherein: At least some of the cells have different shapes.

10. The method of claim 8, wherein: At least some of the cells of the same shape have different sizes.

11. The method according to any one of claims 1 to 10, wherein: Simulating the explosion further comprises a time-step simulation that is iterated over time, wherein for each time step of the simulation, the method further comprises: Search for contacts in the site model; determining a force resulting from the contact; Determine the moment of each element; Summing the moments and forces for each element; and Each element is moved to a new position based on the resultant force and moment, where the new position is used during the next time step.

12. The method of any one of claims 1 to 11, further comprising offsetting the layers of the plurality of cells.

13. The method of any one of claims 1 to 12, further comprising cutting off the unit across the bench face or blast hole.

14. The method of any one of claims 1 to 13, further comprising determining the mass of each of the plurality of cells by multiplying the area of the cell by the spacing and the rock density.

15. The method of any one of claims 1 to 14, further comprising rotating the site model to create geological dips.

16. The method of any one of claims 1 to 15, further comprising identifying load release times for the plurality of units.

17. The method according to any one of claims 1 to 15, wherein if the blast hole is an ultra-deep blast hole, the unit is extended to a length of a first row distance below the blast pit beyond the step slope.

18. A computing device, comprising: processor; as well as A memory storing instructions which, when executed by the processor, configure the computing device to perform the method of any one of claims 1 to 17.

19. A non-transitory computer-readable storage medium comprising instructions that, when executed by a computer, cause the computer to perform the method of any one of claims 1 to 17.