Topology optimization using reaction-diffusion equations
The method uses reaction-diffusion equations to optimize topology for 3D modeled objects, improving the robustness and efficiency of mechanical part designs by ensuring candidate material distributions align with these equations' patterns, thus avoiding local minima and enhancing performance under varying loads.
Patent Information
- Application Number
- JP2021206867
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-12-21
- Filing Date
- 2021-12-21
- Publication Date
- 2026-02-10
- Estimated Expiration
- 2041-12-21
AI Technical Summary
Existing methods for designing 3D modeled objects representing mechanical parts formed in materials lack efficiency in exploring the space of possible 3D shapes and are prone to converging to local minima, especially when optimizing topology for robustness against applied forces and kinematic constraints.
A computer-implemented method that performs topology optimization using reaction-diffusion equations, where candidate material distributions correspond to solutions of these equations, ensuring a shape-preserving function maps the patterns onto material densities, thereby enhancing the robustness and efficiency of the design process.
This approach allows for more efficient exploration of 3D shapes and reduces the risk of converging to local minima, resulting in more robust porous structures that perform better under varying loads and kinematic constraints.
Smart Images

Figure 0007812656000117 
Figure 0007812656000118 
Figure 0007812656000119
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to the field of computer programs and systems, and more particularly to methods, systems and programs for designing 3D modeled objects representing mechanical parts formed in materials. [Background technology]
[0002] Numerous systems and programs are available on the market for designing, engineering, and manufacturing objects. CAD is an acronym for computer-aided design, e.g., software solutions for designing objects. CAE is an acronym for computer-aided engineering, e.g., software solutions for simulating the physical behavior of future products. CAM is an acronym for computer-aided manufacturing, e.g., software solutions for defining manufacturing processes and operations. In such computer-aided design systems, the graphical user interface plays a key role in the efficiency of the technique. These technologies may be incorporated into product lifecycle management (PLM) systems. PLM refers to a business strategy that helps companies share product data, apply common processes, and leverage enterprise knowledge to help develop products from concept to life, across long-term enterprise concepts. PLM solutions offered by Dassault Systèmes (under the trademarks CATIA, ENOVIA, and DELMIA) provide an engineering hub that organizes product engineering knowledge, a manufacturing hub that manages manufacturing engineering knowledge, and an enterprise hub that enables connections to both the enterprise hub and the engineering and manufacturing hubs. Overall, the system provides an open object model that links products, processes, and resources to enable dynamic, knowledge-based product creation and decision support that drives optimized product definition, manufacturing preparation, production, and service.
[0003] Some of these systems offer the ability to employ topology optimization. Topology optimization is a computer-implemented technique that bridges the fields of product design and physical simulation. This technique is applied to design modeled objects representing mechanical parts formed in materials, subjected to loads in use, and having one or more constraint boundaries. This technique focuses on automatically generating optimized generative designs based on modifying their physical properties and behavior, which are typically simulated through finite element analysis (FEA). More specifically, topology optimization works by providing a finite element (FE) mesh, for example, by discretizing the design space in small elements and the data associated with the mesh. This technique then finds the optimal distribution and layout of material in the given discrete space by iteratively finding the most efficient elements with respect to a given objective function (e.g., related to the stiffness of the design) and a set of constraints (e.g., related to the total amount of allowable material).
[0004] The following documents are relevant to this field and are incorporated herein by reference: [1] Andreassen, Erik, et al. "Efficient topology optimization in MATLAB using 88 lines of code." Structural and Multidisciplinary Optimization 43.1 (2011): 1-16. [2] Allaire, Gregoire. “Shape optimization by the homogenization method.” Vol. 146. Springer Science & Business Media, 2009. [3] Bendsoe, Martin Philip, and Ole Sigmund. “Topology optimization: theory, methods, and applications.” Springer Science & Business Media, 2004.
[0005] Within this context, there remains a need for improved methods for designing 3D modeled objects representing machine parts formed in materials. Summary of the Invention
[0006] Accordingly, a computer-implemented method for designing a 3D modeled object is proposed. The 3D modeled object represents a mechanical part formed of a material. The method includes providing a 3D finite element mesh and data associated with the 3D finite element mesh. The data associated with the 3D finite element mesh includes one or more forces, one or more boundary conditions, and one or more parameters associated with the material. Each force forms a respective load case. The data associated with the 3D finite element mesh further includes a global quantity constraint relative to a global quantity of material within the finite element mesh. The method further includes performing a topology optimization based on the finite element mesh and the data associated with the finite element mesh. The topology optimization is performed among candidate material distributions. Each candidate material distribution corresponds to a solution of a system of reaction-diffusion equations.
[0007] The method may include one or more of the following. Each candidate substance distribution is equal to the application of a mapping function to the solution of the reaction-diffusion equation system. The mapping function is a shape-preserving function that maps solutions to the system of reaction-diffusion equations onto an interval of material densities, and the candidate material distributions take values within the interval. The reaction-diffusion equation system has state variables, and the shape-preserving function is a monotonic function of at least one of the state variables. The shape-preserving function is a linear function of one of the state variables. The reaction-diffusion equation system is a free variable of the topology optimization, and each of the free variables is a limit interval (U ad ) contains one or more parameters belonging to the For each value of the one or more parameters, the system of reaction-diffusion equations describes the evolution of state variables from an initial state at an initial time to a final state at a final time, and a solution of the system of equations is equal to the final state of the state variables. The value of each of said one or more parameters is time and / or space dependent. The system of reaction-diffusion equations has state variables, and the topology optimization includes multiple iterations until convergence, each iteration including: setting initial state values of the state variables at an initial time; and calculating values of the state variables and conjugate state variables on the 3D finite element mesh over multiple time steps between an initial time and a final time. In the first iteration, the initial state value of each state variable is set to a predetermined value, and in iterations other than the first, the initial state value of each variable is set to the final state value of the corresponding state variable in the previous iteration. The Gray-Scott model is a system of reaction-diffusion equations. The Gray-Scott model has a reaction term, and at least one parameter of the reaction term in the Gray-Scott model is a free variable of the topology optimization.
[0008] There is further provided a computer program comprising instructions for carrying out the method.
[0009] Additionally, a computer readable storage medium having a computer program recorded thereon is provided.
[0010] Additionally, a system is provided that includes a processor coupled to a memory and a graphical user interface, the memory having a computer program recorded thereon. [Brief explanation of the drawings]
[0011] [Figure 1] 1 shows an example of a graphical user interface of the system. [Figure 2] An example of a system is shown below. [Figure 3] This method is shown below. [Figure 4] This method is shown below. [Figure 5] This method is shown below. [Figure 6] This method is shown below. DETAILED DESCRIPTION OF THE INVENTION
[0012] A computer-implemented method for designing a 3D modeled object is thus proposed. The 3D modeled object represents a mechanical part formed of a material. The method includes providing a 3D finite element mesh and data associated with the 3D finite element mesh. The data associated with the 3D finite element mesh includes one or more forces, one or more boundary conditions, and one or more parameters associated with the material. Each force forms a respective load case. The data associated with the 3D finite element mesh further includes a global quantity constraint relative to a global quantity of material within the finite element mesh. The method further includes performing a topology optimization based on the finite element mesh and the data associated with the finite element mesh. The topology optimization is performed among candidate material distributions. Each candidate material distribution corresponds to a solution of a system of reaction-diffusion equations.
[0013] This constitutes an improved method for designing 3D modeled objects representing machine parts formed in a material, and in particular achieves an improved structure of the machine part. Topology optimization methods are based on data representing the operating conditions of a machine part, including one or more forces and one or more boundary conditions, which improve the physical performance of the machine part in response to the forces and kinematic constraints that are actually applied. This is particularly relevant and objective in industrial design, allowing designed 3D modeled objects to be manufactured in the real world.
[0014] Furthermore, this method optimizes topology with respect to certain mechanical properties by searching among candidates that have the same pattern as the solution of a system of reaction-diffusion equations. As is known per se in the fields of mathematics and biology, systems of reaction-diffusion equations can generate complex patterns as their solutions. Therefore, obtaining a structure with the pattern of the solution of a system of reaction-diffusion equations can produce a porous structure as the output of topology optimization. Porous structures are known to be more robust to perturbations in one or more applied forces or one or more kinematic constraints. This forms an improved solution for practical applications of mechanical components. In other words, restricting topology optimization to candidates that correspond (i.e., exhibit the same pattern) to the solution of a system of reaction-diffusion equations allows arriving at a structure that is more robust, in terms of porosity and pattern, to variations around load cases and to the applied kinematic constraints represented by the provided data (forces and boundary conditions).
[0015] Furthermore, by performing topology optimization among candidate material distributions corresponding to the solution of a reaction-diffusion system, the space of possible 3D shapes can be explored more efficiently compared to standard topology optimization, in particular reducing the risk of converging to a local minimum.
[0016] The method is computer-implemented, meaning that the steps (or substantially all steps) of the method are performed by at least one computer or any system. Thus, the steps of the method are performed by a computer, possibly fully automatically or semi-automatically. In an example, triggering of at least some of the steps of the method may be performed via user / computer interaction. The level of user / computer interaction required depends on the expected level of automation and may be balanced against the need to implement user preferences. In an example, this level may be user-defined and / or predefined.
[0017] A typical example of a computer implementation of the method is to perform the method using a system adapted for this purpose. The system may include a processor coupled to a memory and a graphical user interface (GUI), the memory having recorded thereon a computer program including instructions for performing the method. The memory may also store a database. The memory is any hardware adapted for such storage, and may optionally comprise several physically separate parts (e.g., a part for the program and optionally a part for the database).
[0018] The method generally manipulates modeled objects. A modeled object is any object defined by data stored, for example, in a database. By extension, the expression "modeled object" also designates the data itself. Depending on the type of system, the modeled object may be defined by different types of data. A system may actually be any combination of a CAD system, a CAE system, a CAM system, a PDM system, and / or a PLM system. In these different systems, the modeled object is defined by corresponding data. Thus, one can speak of CAD objects, PLM objects, PDM objects, CAE objects, CAM objects, CAD data, PLM data, PDM data, CAM data, and CAE data. However, these systems are not exclusive of one another, as a modeled object may be defined by data corresponding to any combination of these systems. Thus, a system may be both a CAD system and a PLM system, as will become apparent from the definitions of such systems provided below.
[0019] A CAD system further refers to any system, such as CATIA, adapted to at least design a modeled object based on a graphical representation of the modeled object. In this case, data defining the modeled object includes data enabling the representation of the modeled object. For example, a CAD system may provide a representation of a CAD modeled object using edges or lines, in some cases with faces or surfaces. The lines, edges, or surfaces may be represented in various ways, for example, with non-uniform rational B-splines (NURBS). Specifically, a CAD file contains specifications from which geometry can be generated, thereby generating a representation. The specifications of a modeled object may be stored in a single CAD file or multiple CAD files. Typical sizes of files representing modeled objects in a CAD system are in the range of one megabyte per part. A modeled object may then typically be an assembly of thousands of parts.
[0020] In the context of CAD, a modeled object can typically be, for example, a 3D modeled object representing a product, such as a part or assembly of parts, or possibly an assembly of products. A "3D modeled object" means any object modeled by data that allows for its 3D representation. A 3D representation allows for viewing of the part from all angles. For example, a 3D modeled object, when represented in 3D, can be manipulated and rotated around any of its axes or around any axis within the screen on which the representation is displayed. This notably excludes 2D icons that are not 3D modeled. Displaying 3D representations facilitates design (i.e., increases the speed at which designers statistically accomplish their tasks). This speeds up the manufacturing process in industry, since product design is part of the manufacturing process.
[0021] The 3D modeled object can represent the shape of a product that will be manufactured in the real world after completion of the virtual design using, for example, a CAD software solution or CAD system, such as a (e.g., machine) part or assembly of parts (or equivalently, an assembly of parts can be considered the part itself from the perspective of the method, or the method can be applied independently to each part of the assembly), or more generally, any rigid assembly (e.g., a moving mechanism). CAD software solutions enable the design of products in various industries, including aerospace, architecture, construction, consumer goods, high-tech equipment, industrial equipment, transportation, marine, and offshore oil and gas production and transportation. The 3D modeled object designed using this method is an industrial product and can be any mechanical part, such as: land vehicle parts (e.g., including automobiles and light truck equipment, racing cars, motorcycles, trucks and motor equipment, trucks and buses, and trains); and aircraft parts (e.g., airframe equipment, aerospace equipment, propulsion equipment, defense products, aviation equipment, space equipment, etc.). Naval parts (including naval equipment, commercial vessels, offshore equipment, yachts and workboats, and marine equipment). General mechanical parts (including, for example, industrial manufacturing machinery, heavy machinery or equipment, installation equipment, industrial equipment products, metal fabrication products, and tire manufacturing products). Electrical mechanical or electronic components (including, for example, consumer electronics products, security and / or control and / or instrumentation products, computing and communications equipment, semiconductors, and medical equipment and devices). Consumer goods (including, for example, furniture, home and garden products, leisure products, fashion products, hard goods retail products, and soft goods retail products). Packaging (including, for example, food and beverage, tobacco, beauty and personal care, and household product packaging).
[0022] FIG. 1 shows an example of a GUI for a system, which is a CAD system. In particular, the output of a topology optimization method can be imported into the GUI 2100 so that a user can perform design editions thereon. The GUI 2100 can be a typical CAD-like interface with standard menu bars 2110, 2120 and bottom and side toolbars 2140, 2150. Such menu bars and toolbars include a set of user-selectable icons, each associated with one or more operations or functions, as known in the art. Some of these icons are associated with software tools adapted to edit and / or manipulate the 3D modeled object 2000 displayed in the GUI 2100. The software tools can be grouped into workbenches. Each workbench includes a subset of software tools. In particular, one of the workbenches is an editing workbench suitable for editing geometric features of the modeled product 2000. In operation, a designer can, for example, pre-select a portion of the object 2000 and then edit its behavior (e.g., change dimensions, color, etc.) or geometric constraints by selecting the appropriate icon. For example, a typical CAD operation might be modeling a stamping or folding of a 3D modeled object displayed on the screen. The GUI can, for example, display data 2500 related to a displayed product 2000. In the illustrated example, the data 2500, displayed as a "feature tree," and their 3D representation 2000, relate to a brake assembly including a brake caliper and disc. The GUI can further present various types of graphic tools 2130, 2070, 2080 to, for example, facilitate 3D orientation of objects, to trigger a simulation of the edited product's behavior, or to render various attributes of the displayed product 2000. A cursor 2060 can be controlled by a haptic device to allow a user to interact with the graphic tools.
[0023] A computer program containing instructions for carrying out the method is also proposed. The computer program may contain computer-executable instructions, which include means for causing the device to carry out the method. The program may be recordable on any data storage medium, including the system's memory. The program may be implemented, for example, in digital electronic circuitry, or in computer hardware, firmware, software, or a combination thereof. The program may also be implemented as an apparatus, e.g., an article tangibly embodied in a machine-readable storage device for execution by a programmable processor. The method steps may be performed by a programmable processor executing a program of instructions to perform the functions of the method by operating on input data and generating output. The processor is thus programmable and may be coupled to receive data and instructions from, and transmit data and instructions to, a data storage system, at least one input device, and at least one output device. The application program may be implemented in a high-level procedural or object-oriented programming language, or in assembly or machine language as appropriate. In either case, the language may be a compiled or interpreted language. The program may be a full installation program or an update program. Applying the program to a system, in either case, provides instructions for carrying out the method.
[0024] FIG. 2 illustrates an example of a system in which the system is a client computer system, e.g., a user's workstation. The client computer in this example includes a central processing unit (CPU) 1010 connected to an internal communications bus 1000 and a random access memory (RAM) 1070 also connected to the bus. The client computer further includes a graphical processing unit (GPU) 1110 associated with a video random access memory 1100 connected to the BUS. The video RAM 1100 is also known in the art as a frame buffer. A mass storage controller 1020 manages access to mass storage devices, such as a hard drive 1030. Mass memory devices suitable for tangibly embodying computer program instructions and data include all forms of non-volatile memory, including, by way of example, semiconductor memory devices such as EPROM, EEPROM, and flash memory devices; magnetic disks, such as internal hard disks and removable disks; and magneto-optical disks; and a CD-ROM disk 1040. Any of the foregoing may be supplemented by, or incorporated in, specially designed ASICs (application-specific integrated circuits). A network adapter 1050 manages access to a network 1060. The client computer may also include a tactile device 1090, such as a cursor control device, keyboard, etc. A cursor control device is used in the client computer to allow a user to selectively position a cursor at any desired location on the display 1080. Furthermore, the cursor control device allows a user to select various commands and input control signals. The cursor control device includes a number of signal generators for inputting control signals to the system. Typically, the cursor control device may be a mouse, with buttons on the mouse used to generate signals. Alternatively or additionally, the client computer system may include a sensitive pad and / or a sensitive screen.
[0025] "Designing a 3D modeled object" refers to any action or series of actions that are at least part of a process of creating a 3D modeled object. Thus, the method can include creating a 3D modeled object from scratch. Alternatively, the method can include providing a previously created 3D modeled object and then modifying the 3D modeled object. For example, the method can include performing topology optimization to obtain a 3D modeled object and then adding the 3D modeled object to an existing assembly.
[0026] The method may be included in a manufacturing process, which may include, after performing the method, generating a physical product corresponding to the modeled object. In either case, the modeled object designed by the method may represent a manufacturing object. Thus, the modeled object may be a modeled solid (i.e., a modeled object representing a solid). The manufacturing object may be a product, such as a part, or an assembly of parts. Because the method improves the design of the modeled object, the method also improves the manufacturing of the product, thus increasing the productivity of the manufacturing process.
[0027] In fact, this method designs as a modeled object that is three-dimensional. Thus, this method is for solid modeling, i.e., it produces a solid (e.g., a 3D enclosed volume) that represents the mechanical part in 3D, as it will be in the real world once manufactured. This method therefore belongs to the field of manufacturing CAD, in that it does not simply perform 2D design of an object that will never be manufactured in industry, but outputs a solid that represents the 3D mechanical part, which output is suitable for use in subsequent steps of the manufacturing process (e.g., further design work, testing, simulation, and / or manufacturing).
[0028] The method includes providing input for topology optimization, for example, via user interaction.
[0029] The input for topology optimization includes a 3D finite element (FE) mesh or FEM. The 3D FE mesh represents a space containing modeled objects to be designed. The space containing the modeled objects is called the "design space." The FE mesh may be regular or irregular. A regular FE mesh allows for easier calculations during topology optimization. The FE mesh may be of any type; for example, each finite element is a tetrahedron or a hexahedron. Providing the FE mesh may include defining a design space and defining a mesh of the design space. The method may also include displaying the FE mesh to a user and defining other inputs for the topology optimization by the user, including, for example, graphical user interaction on the displayed FE mesh.
[0030] "Graphical user interaction" with respect to defining an element herein means any user interaction in which a designer uses a haptic system (e.g., a mouse or a touch device such as a sensitive / touch screen or a sensitive / touch pad) to activate one or more locations on a display unit, resulting in the placement of an element. Activating a location in the scene may include positioning a mouse cursor over it or performing a touch on it. A representation of the defined element may be displayed substantially in real time after activation.
[0031] The input for topology optimization further includes data related to the FE mesh that depends on the mechanical part the user wants to design.
[0032] These associated data include one or more parameters related to the material, i.e., data describing the material from which the mechanical part is formed (e.g., including the Young's modulus and / or Poisson's ratio of the material, or any information that allows its calculation, such as the material's specifications). The user can specify the material, e.g., by selecting from a list, and / or the system can automatically determine the material parameters and / or suggest a selection of material parameters to the user, e.g., based on one or more formulas and / or databases. The material may be any material, e.g., a solid and / or isotropic material, such as a metal (e.g., steel, silver, gold, titanium), a plastic (nylon, ABS, polycarbonate, resin), a ceramic, or a composite material.
[0033] The associated data may further include a global quantity constraint. The global quantity constraint is for the global quantity of material in the 3D FE mesh. In other words, the global quantity constraint limits the value of the total quantity of material in the entire 3D FE mesh. The global quantity constraint may, for example, be provided as a boundary for the fraction of the (entire) 3D FE mesh that can be filled with material, e.g., an upper limit for said fraction. Alternatively, the global quantity constraint may not be a boundary but rather provide a value that must be reached. However, topology optimization optimizes an objective function that tends to use as much material as possible in the optimized result, and such an equality constraint may be equivalent to an upper limit constraint. In all cases, the fraction may be a volume fraction (also referred to as a GVC, in some cases as a "global volume constraint"). In another example, the global quantity constraint may include a value representing the weight of the material.
[0034] As known per se from the field of topology optimization, the relevant data further comprise data representative of the use conditions of the machine part, on the basis of which the topology optimization can optimize the machine part model taking into account such foreseen use.
[0035] The associated data includes, among other things, one or more forces. Each force forms a respective load case. In other words, the associated (digital) data includes (digital) vectors (with magnitudes in Newtons or multiples thereof), each of which can be applied to and linked to one or more finite elements of the FE mesh. These (digital / virtual) forces represent real-world loads that the mechanical component experiences during use. In other words, for each finite element or elements of the FE mesh for which a respective force is present in the data, the data represents the fact that the material of the mechanical component at the corresponding position in the real world will experience a corresponding load. However, because a mechanical component can theoretically experience an infinite number of loads, not all loads are represented by the digital forces present in the data. The digital forces represent only the constraints of the entire set of loads, e.g., the most important and / or most representative loads. The digital forces are determined for each modeling problem and can be selected to be the highest (i.e., highest magnitude) real-world forces that the object can experience during its lifetime, since these real-world forces tend to cause the highest deformations and mechanical stresses. As is known per se from the CAD manufacturing field, a set of one or more real-world forces acting on the same object can be grouped into a so-called load case. When two or more load cases exist, they are not necessarily applied simultaneously to the machine part and cannot accumulate / compensate for each other. An industrial problem may have, for example, one to a dozen load cases. For example, a user can select via a graphical user-interactive finite element of an FE mesh and then specify the forces applicable to it.
[0036] In other words, a load case can contain a set of real-world loads / forces acting on a physical object at one time. A model can experience different load cases at different times (e.g., think of a building experiencing a wind gust). Thus, a digital force in the associated data can represent several real-world forces, or load cases, applied to a physical object at the same time.
[0037] The associated data also includes one or more boundary conditions. A boundary condition is a constraint on the boundary of the 3D modeled object. Each boundary condition is applied to and linked with one or more finite elements of the mesh, representing a respective constraint on the boundary at which the mechanical part is used. A boundary condition may also be referred to as a kinematic constraint.
[0038] In other words, each boundary condition represents the fact that the material of a machine component at a location corresponding to the one or more finite elements is constrained in its displacement, for example, using Dirichlet boundary conditions. An element may be constrained in its displacement along a plane, along a curve, along / around an axis, or at / around a point (among other things), and / or its displacement may be constrained in translation only, rotation only, or both translation and rotation. In the case of point-constrained displacements in both translation and rotation, the element is said to be fixed and "clamped" in 3D space. However, an element may have a displacement constrained in translation along a plane but move freely on that plane (e.g., if it belongs to an object mounted on a bearing), in translation along an axis but free on that axis (e.g., in a piston), or in rotation around an axis (e.g., a joint in a robot arm).
[0039] In the example, boundary conditions represent all constraint boundaries. In other words, for each finite element of the FE mesh that is intended to eventually contain constrained (e.g., held fixed) material, a boundary (e.g., clamp) condition can be associated, integrating this fact into the topology optimization. In the example, the user can select via a graphical user-interactive finite element of the FE mesh and then specify that boundary conditions are applicable to it.
[0040] In an example, one or more constraint boundaries of a mechanical part include or consist of one or more fixed boundaries (i.e., material at said one or more boundaries cannot move), and the corresponding one or more boundary conditions are clamping conditions.
[0041] The forces and boundary conditions can be obtained by mechanical testing, for example by measuring the values of forces applied to a machine part over an area, or a user, for example a designer, can calculate them based on static or dynamic calculations, based on recommendations from design standards, or based on numerical simulations known in the field of engineering design.
[0042] Topology optimization, as it is commonly known, can involve optimizing (e.g., automatically) an objective function based on inputs. When performing topology optimization, "input-based" means that the optimization takes into account inputs including a 3D finite element mesh and data related to the 3D finite element mesh. For example, topology optimization can take forces and boundary conditions for a given input specification and apply them to the elements and nodes of an FE mesh. The topology optimization can assemble a global stiffness matrix and solve for nodal displacements for structural equilibrium. In other words, topology optimization can calculate the deformation of a structure in its current state for applied forces and boundary conditions.
[0043] The objective function can represent any mechanical property to be optimized. Topology optimization, in particular, can maximize stiffness. The objective function can therefore be a compliance function. For a structure, compliance is the inverse of the structure's stiffness. Thus, compliance encapsulates the amount of deformation of a structure given a specified load scenario and fixed boundary conditions. Equivalently, compliance represents the strain energy stored in a structure given the load scenario and boundary conditions. Thus, when the optimization process minimizes compliance, this corresponds to maximizing the stiffness of the design for a given mass.
[0044] Topology optimization is performed among candidate material distributions. Each candidate material distribution corresponds to a solution of a system of reaction-diffusion equations. Each candidate material distribution may be a distribution (i.e., layout) of material amounts (e.g., volume fractions) on an FE mesh. "Corresponding to a solution of a system of reaction-diffusion equations" means that each candidate material distribution depends on the solution of the system of reaction-diffusion equations. The system of reaction-diffusion equations is defined in a space represented by an FE mesh and may be discretized on the FE mesh. The discretization of the system of equations on the FE mesh may be performed according to any known method in the literature, for example, by first- or higher-order finite element or finite difference discretization. The solution of the system of equations may be obtained as a discretized numerical solution of the reaction-diffusion system on the FE mesh according to any well-known method of numerical solution of equations.
[0045] As is known, topology optimization can explore candidate material distributions by varying the amount of material (e.g., volume fraction) in each element of an FE mesh as a design variable to optimize an objective function. In an example, a free variable of the objective function may be the distribution (i.e., layout) of the amount of material (e.g., volume fraction) on the FE mesh. The objective function may depend on material parameters (i.e., the fixed variables of the objective function may include material parameters), and the optimization may be performed under constraints (i.e., constrained optimization) including global quantity constraints. Each element of the FE mesh has a given relative density value that defines whether it is empty or filled with material, defined by the values "0" and "1," respectively. Furthermore, to make the optimization problem continuous, general topology optimization may allow elements to take any value between 0 and 1. This can be called "relaxation." Because the interpretation of elements with intermediate densities can be ambiguous, a general topology optimization workflow may introduce a penalization approach that forces intermediate element densities to be less efficient overall in terms of structural behavior than elements with lower and upper bounds of 0 or 1, respectively. The optimization may be performed according to any algorithm, such as an iterative algorithm.
[0046] If the material quantity is a volume fraction of the material, the optimization process results in a distribution of material volume fractions for the finite element method. In such cases, the topology optimization or method may include a further step of filtering (e.g., automatically), i.e., determining for each finite element whether it is (completely) filled with material based on such volume fraction distribution. For example, this may be based on a comparison with a (e.g., predetermined) threshold (e.g., higher than 0.1 or 0.2 and / or lower than 0.9 or 0.8, e.g., around 0.5), and if the volume fraction resulting from the optimization is higher (respectively lower) than the threshold, the finite element is considered to be completely filled with material (respectively completely empty). In an example, the method may further include (e.g., automatically) calculating a 3D modeling object, such as a boundary representation (B-Rep) model, based on the results. For example, the method may calculate a swept volume based on and along the set of finite elements resulting from the optimization and / or filtering. The output of the topology optimization is the geometry of the optimized design that meets the input specifications as closely as possible.
[0047] This method goes beyond such general topology optimization by performing topology optimization among candidate material distributions, where each material distribution corresponds to a solution to a system of reaction-diffusion equations. "Corresponding" means that the candidate material distribution must exhibit a similar pattern structure to the solution to the system of reaction-diffusion equations.
[0048] The correspondences may be included in general topology optimization using constrained optimization, where the correspondences are added as constraints. This limits the search space of the optimization problem. Thanks to this constraint, the topology optimization better avoids getting stuck in a local minimum, thus improving accuracy. Furthermore, this specific constraint allows for a more porous final structure to be reached. This improves the performance of the structure under perturbations around the data provided to the topology optimization method, for example, under one or more applied forces or one or more kinematic constraints. This forms an improved solution for practical application of mechanical parts.
[0049] Each candidate substance distribution may be equivalent to the application of a mapping function to a solution of the reaction-diffusion system of equations. The reaction-diffusion system may be transient, i.e., a time-dependent system of equations. A transient system of equations may reach a steady state over a sufficiently long time. "Steady state" means a state in which the solution of the system of equations is a terminal state that does not change over time. The mapping function may accept one or more input arguments. The input arguments may be one or more values of the solution of the reaction-diffusion system of equations at a particular time point in the transient system of reaction-diffusion equations, or one or more values of the solution of the transient system of reaction-diffusion equations after a steady state has been reached.
[0050] In an example, the mapping function can be a shape-preserving function that maps solutions to a system of one or more reaction-diffusion equations to an interval of material densities. Thus, the candidate material distributions take values within the interval. The interval may be, for example, the unit interval [0, 1]. The shape-preserving function significantly preserves the pattern of the input variables. Therefore, the use of the shape-preserving function itself ensures that each candidate material distribution corresponds to a solution of the system. By "pattern," we mean the shape created by mapping the solution of the system of equations in the spatial domain. The shape-preserving function is smooth, but does not have too strong a smoothing, i.e., homogenizing, effect so as not to destroy the pattern of the inputs. In an example, the shape-preserving function can include applying a rotation and / or a translation to one or more of the input variables.
[0051] A reaction-diffusion system has state variables that are obtained from the study of the reaction-diffusion system. In other words, the state variables are the unknowns of the reaction-diffusion system. For partial differential equations (PDEs), the state variables are functions in the spatial domain, and in the time domain if the system is transient. This method can be provided by some initial and / or boundary conditions for the system of reaction-diffusion equations. The state variables define a solution to the system of equations if the equations satisfy the initial and / or boundary conditions as well. In an example, the boundary conditions for the system of equations can be any combination of Decryle, Neumann, or Robin boundary conditions. The solution to this system can be made unique by setting the initial and / or boundary conditions.
[0052] In an example, the shape-preserving function may be a monotonic function of at least one state variable. Alternatively, or additionally, the shape-preserving function may comprise a linear combination of one or more functions, each function belonging to one of the following classes of functions: - A linear combination of one or more state variables. -Polynomial functions for each state variable. -Trigonometric functions for each state variable. - Hyperbolic functions, preferably the tanh function. - Rational functions.
[0053] In a particularly efficient example, the shape-preserving function is a linear function of one of the state variables. Indeed, a non-zero linear function is shape-preserving, as is known. The linear function value may be proportional to the value of said state variable with coefficients. The coefficients may be selected so that the candidate material distribution takes on values on an interval of material densities. The interval may be the unit interval, and the state variable values may lie on the interval (e.g., [u min ,u max ]), the coefficients may be expressed in units of the interval length (e.g.,
number
[0054] An example of this method will now be described.
[0055] This method can find the best material distribution over a spatial region Ω as the design space. The best material distribution can minimize the energy function J subject to the constraint C as follows:
number
number
number
number
[0056] This material has an elastic tensor
number
number
[0057] In the example, one of the phases (e.g., B) can be considered "weak" and is assumed to model the void. The mechanical properties of the weak phase are set, for example, according to Young's modulus, e.g., 10 -9 is set small.
[0058] The energy function can include the compliance of a material composed of two phases:
number
number
number
number
number
number
number
[0059] The characteristic function only takes values of {0,1}, making the optimization problem discontinuous and difficult to converge to a solution, for example, when the optimization problem is solved by an iterative algorithm. Therefore, the method can include the Solid Isotropic Material with Penalization (SIMP) method to mitigate the rapid changes in the characteristic function. The SIMP method converts the characteristic function into a density function
number
number
[0060] Such density functions can be called volume fractions on each FE mesh, as mentioned above. The SIMP method calculates intermediate densities by polynomial interpolation of the Young's moduli with two phases with order p>0.
number
number
[0061] This order p is called the penalty. In the example, the penalization is chosen so that the solution of (TO-SIMP) improves the smoothness properties of the solution of SIMP so that the solution of (TO-SIMP) optimizes without significant changes compared to (TO).
[0062] The SIMP method still does not provide control over the type of optimized layout of materials obtained by this method, and the resulting layouts are usually not very complex. Furthermore, it is unable to efficiently explore a large space of topologies and may get stuck in local minima.
[0063] An example of a system of reaction-diffusion equations is discussed here.
[0064] In particular, the reaction-diffusion system is given by the variable vector
number
number
[0065]
number
number
[0066] In a particular example, a reaction-diffusion system may contain two equations (and correspondingly two state variables) and can be written under this dimensionless general form:
number
[0067] The reaction-diffusion equation system can be expressed as the Gray-Scott model, which can be written in the following form:
number
[0068] As mentioned above, reaction-diffusion equation systems can lead to complex patterns from simple models. Complex patterns can be directly used to represent material distributions that represent 3D structures, for example, using mapping functions such as those described above. However, these structures do not necessarily offer acceptable mechanical properties, such as low compliance.
[0069] A system of reaction-diffusion equations may include one or more parameters. Each system of reaction-diffusion equations can be completely defined by setting the values of one or more parameters. Therefore, a candidate material distribution can be completely defined by the values of one or more parameters. Analogous to optimal control terminology, such parameters are sometimes equivalently referred to as "control parameters." These parameters are sometimes equivalently referred to as "control functions" in terms of known terminology in the field of optimal control, as explained below. Each of the one or more parameters can be a free variable in topology optimization. In other words, topology optimization may involve finding an optimized value for each of one or more parameters in the system of reaction-diffusion equations corresponding to the material distribution obtained by topology optimization. Topology optimization can vary each of the free variables to optimize the objective function. Each parameter can belong to a restricted interval. The interval represents the allowable values of the corresponding parameter. The method can define each interval before performing topology optimization. The method can set each interval automatically based on some mathematical criteria or physical constraints, or according to values entered by the user. The value of each parameter can be a single value or a set of values on an FE mesh. Each value may correspond to a single element of the FE mesh.
[0070] In an example, for each value of one or more parameters, a system of reaction-diffusion equations can represent the evolution of a state variable from an initial state at an initial time (e.g., 0) to a final state at a final time (e.g., 1). The solution of the system of equations may be equal to the final state of the state variable. The initial state may be set as the initial condition described above. The final time may be set to a large value so that the state variable no longer changes at its instantaneous value, i.e., a steady state of the reaction-diffusion equation system is reached.
[0071] The value of each of the one or more parameters may be time and / or space dependent, in other words, each of the one or more parameters may be a function of the time between the initial time and the final time and / or a function of the position within the FE mesh.
[0072] Next, an example of performing topology optimization will be described.
[0073] The topology optimization method considers one or more boundary conditions, global quantity constraints, and the correspondence of candidate material distributions to the solution of a system of reaction-diffusion equations. The topology optimization method can include methods known in the literature, particularly the correspondence to the solution of a system of reaction-diffusion equations by optimal control and PDE constraint optimization.
[0074] Topology optimization can involve multiple iterations until convergence. Each iteration can include setting initial state values for the state variables at an initial time. The iteration can further include calculating values of the state variables and cosine variables across a 3D finite element mesh and across multiple time steps between the initial time and the final time. Hereinafter, co-state variables can be equivalently referred to as "dual variables." Furthermore, due to the large number of design variables in the process, topology optimization can perform a gradient-based calculation of the values of the state variables and cosine variables. Therefore, this method can also calculate the derivative of the objective function with respect to each free variable. In other words, the topology optimization method can calculate how to change each free variable to reduce the objective function. This can be performed using the well-known classical "adjoint sensitivity analysis." In particular, the free variables can be one or more parameters in a system of reaction-diffusion equations.
[0075] As described above, topology optimization can include calculating values of excess variables. Each conjugate state variable can correspond to one of one or more boundary conditions and / or global quantity constraints and / or a correspondence to a solution of a candidate reaction-diffusion equation. The method can calculate values of the conjugate state variables to satisfy the one or more boundary conditions and / or global quantity constraints and / or a correspondence to a solution of a candidate reaction-diffusion equation. The calculation of each cosine variable can be performed according to a corresponding adjoint equation. The corresponding adjoint equation can be obtained according to any known method in the literature. In particular, the method can obtain the adjoint equation using Pontryagin's maximum principle.
[0076] An example of the Pontryagin maximum principle will now be described with reference to a general problem. An explicit application of the Pontryagin maximum principle in topology optimization methods will be discussed later.
[0077] Final time (>0), time I = [0,T], acceptable control
number
number
number
[0078] According to the Cauchy-Lipschitz theorem, given the above considerations for all ∈U, the problem P(u) has a unique solution
number
number
number
[0079] A typical optimal control problem can then be formulated as follows:
number
number
[0080] To solve (OCP), we can define the Hamiltonian H as follows:
number
number
number
number
number
number
[0081] The topology optimization method may include calculating one or more sensitivities to the objective function based on a finite element mesh and data associated with the finite element mesh using the SIMP method. The algorithm may further include calculating updated values of the state variables and excess variables over multiple time steps. The topology optimization method may include discretizing the system of reaction-diffusion equations in the time variable domain according to any known method in the field of numerical solution, such as the Forward Euler method, the Backward Euler method, or other advanced implicit-explicit schemes.
[0082] Convergence may be achieved if at least one of the following is satisfied: The number of iterations reaches a predetermined maximum number of iterations (for example, 1000 or 10000). - The absolute difference between the obtained objective function values in two successive iterations is a predetermined value (e.g., 10 -3 or 10 -6 ) smaller than - the ratio of the absolute difference between the obtained values of the objective function in two successive iterations and the absolute value of one of the two iterations is greater than a predetermined value (for example, 10 -2 or 10 -3 ) smaller than - The absolute difference between the final state values of at least one of the state variables in two consecutive iterations is less than a predetermined value. The ratio of the absolute difference between the final state value of at least one of the state variables in two consecutive iterations and the absolute value of the corresponding state variable in one of the two iterations is less than a predetermined value.
[0083] In the first iteration, the method may set the initial state values of the state variables to predetermined values. The predetermined values may be selected so that the corresponding values after application of the mapping function to the initial states remain within the interval, e.g., [0, 1]. In particular, all state variables may be set to a constant value across the FE mesh. In iterations other than the first iteration, the initial state value of each state variable may be set to the final state value of the corresponding state variable in the preceding iteration. Such initialization forms an improved method by performing each iteration with a relatively short time interval (i.e., the difference between the initial and final times of each iteration) and adding the ability to reach larger final times by increasing the number of iterations. Large final times are useful for obtaining Turing patterns in the solution of reaction-diffusion equations.
[0084] Once convergence is achieved, topology optimization can present a final design in the design space where each element has an optimized relative density value. Through a simple thresholding process, the overall topology optimization workflow can extract the geometry defined by the set of elements whose relative density value exceeds a certain threshold (e.g., chosen to be 0.5).
[0085] In a particularly efficient example of the method discussed herein, the system of reaction-diffusion equations may be the Gray-Scott model presented above. In particular, the Gray-Scott model may have a reaction term, and at least one parameter of the reaction term in the Gray-Scott model may be a free variable in the topology optimization. The selected parameter may be parameter k in the (GS) system described above. The initial conditions of the Gray-Scott model may be set to a predetermined value, and therefore the solution at a given time may be completely defined by the value of the parameter in the reaction term. That is, the other coefficients of the Gray-Scott model, namely D u ,D v , and F may be chosen according to known literature to provide a Turing pattern for at least one possible value of the parameter.
[0086] The implementation of this method will now be described.
[0087] These implementations use a bounded rectangular region everywhere to minimize the total compliance of a 3D modeled object formed according to the material distribution.
number
number
number
number
[0088] The reaction-diffusion system is set to the Gray-Scott model with a free parameter θ in the reaction term, which leads to the following system of reaction-diffusion equations:
number
[0089] In another example, the boundary conditions may be set in the form of Dirichlet conditions as follows:
number
[0090] The allowable control parameter [θ m ,θ M ], diffusion coefficient D u and D v , and the set of coefficients F are set so that the set of parameters always allows for the formation of Turing patterns as known in the art. The coefficient F is set to 0.035 and [θ m ,θ M ]=[0.0615;0.076]. The ratio d=D v / D u is set to 0.5 at the discrete level, and therefore D u and D v Explicit values of are set in relation to the following spatial and temporal discretization parameters: Furthermore, the initial condition (u0, v0) is set to (0.5, 0.5) / β, where β is a real number with β<0. However, this factor may vary around this exemplary value, for example, between 0.1 and 15, between 0.5 and 10, or especially between 2.5 and 3.5.
[0091] Next, we solve the following optimization problem to obtain the minimum compliance:
number
number
number
number
number
number
number
number
number
[0092] strain tensor
number
number
[0093] The mapping function for (OC) is given by
number
number
[0094] The problem is then spatially discretized. The dimension Ω is divided into three intervals
number
number
number
number
number
number
number
number
number
[0095] moreover,
number
number
number
number
number
[0096] As a specific option,
number
number
number
[0097] Using the discrete Laplacian operator defined above, we can define a system of reaction-diffusion equations P θ can be transformed into a system of ODEs in terms of the time variables as follows:
number
number
number
number
[0098] ODE
number
number
number
[0099] R u Since (u,v) does not depend on the parameter θ,
number
number
[0100]
number
number
number
[0101] Therefore, at each time, the optimal control parameters
number
number
number
[0102] Pontryagin's maximum principle gives the adjoint equation:
number
number
number
number
number
number
number
[0103] The Pontryagin maximum principle also states that the set of admissible final states M1 is a constraint on the global quantity
number
number
number
number
number
[0104] where λ denotes the Lagrange variables (or Lagrange multipliers) used to impose global quantity constraints, and ∇J is calculated by sensitivity calculations such as adjoint methods known in the art.
[0105] And P satisfies the following:
number
[0106] In this equation, θ(s) still depends on the value of P(s), and U(s) depends on θ(v), and therefore U(s) depends on all P(v) for 0 ≤ v ≤ s. Instead of solving the duration problem, the implementation can solve the problem by solving the time series (t0, t1, …, t N )∈I N+1 By setting
number
[0107] The time variable is used as a dummy variable, and other time intervals can be transformed to start at t0 = 0. In particular, the implementation
number
number
[0108] In particular, the diffusion parameter is
number
[0109] Time-related derivatives can be defined as follows: Using the whole-body Euler method.
number
[0110] Therefore, the changes in the state variables are:
number
number
[0111] In (DRD), (p n ,q n ) n is (u n ,v n ) n In (DCE), it is required to calculate (p n ,q n ) n is (u n ,v n ) n To resolve this interdependence, the final time T, i.e., the time interval [0, T], is chosen to be fairly small, so that u and v do not vary much across I, and in (DCE), (u n ,v n ) n (u 0 ,v 0 ) This version of (DCE) can be written in compact form as
number
[0112] Furthermore, due to the assumption of small changes, ∇C(U(T)) is 0 ) is approximated by
[0113] The implementation repeats the calculation over several small time intervals of the form [0,T], where the final value obtained for one of those intervals is used as the initialization for the next interval.
[0114] In summary, the implementation algorithm may be summarized as follows: 1.3DFE mesh setup a.Ω: cubic space area b.(K i ) 1≦i≦3 :spatial discretization integer 2. Setting up data associated with the FE mesh aF, the set of forces applied to the structure bC, set of boundary conditions c. E0, base Young's modulus and Poisson's ratio ν 3. Setting the time discretization parameters and initial values of the reaction-diffusion system aT: the size of the interval bN: Time discretization integer 4. Setting the Lagrange multiplier parameters a. Set λ as the initial "Lagrangian" variable (λ>0) b. Set η as the Lagrangian variable growth rate (η>0) 5. Using the SIMP method, calculate ∇J(γ(U 0 )) 6.(**) to P N inference 7.For n=N to 1: a.θ n ←f(P n )((*)from)
number
number
[0115] The Lagrangian variable increase rate η may be set between 0.05 and 1, particularly between 0.05 and 0.2. Larger η leads to faster convergence, while smaller η leads to better exploration of the optimization space.
[0116] Some results obtained by the discussed implementation of the topology optimization method are now presented with respect to Figs.
[0117] FIG. 3 shows the applied forces (represented by arrows) and boundary conditions (represented by plates) for designing a turning tripod according to the present method.
[0118] Figure 4(a)-(g) show the time evolution of the 3D modeled object obtained according to the force and boundary condition based method presented in Figure 3 from t = 20 s to t = 250 s. Figure 4(h) shows different views of the obtained 3D modeled object of Figure 4(g).
[0119] FIG. 5 shows the applied forces (represented by arrows) and boundary conditions (represented by plates) for designing a scooter part according to the present method.
[0120] Figure 6 compares in various views a 3D modeled object obtained according to the prior art (left side) with the approach according to the present implementation (right side) for the forces and boundary conditions shown in Figure 5. As can be seen, the implementation of the present method can provide an overall shape of the structure with finer and more porous local patterns, like the prior art method.
Claims
1. 1. A computer-implemented method for designing a 3D modeled object representing a mechanical part formed in a material, comprising: providing: a 3D finite element mesh (Ωind) and Data related to said 3D finite element mesh, including: One or more forces (F), each forming a respective load case; one or more boundary conditions (C); one or more parameters related to the material (E); Global quantity constraint (Equation 1) on the global quantity (V0) of material within the finite element mesh [Equation 1] performing a topology optimization (Equation 2) based on the finite element mesh and data associated with the finite element mesh, the topology optimization being performed among candidate (ρ) material distributions, each candidate material distribution corresponding to a solution of a system of reaction-diffusion equations (Equation 3); [Equation 2] [Equation 3] The reaction-diffusion equation system includes one or more parameters (θ), each of which is a free variable of the topology optimization and each of which belongs to a restricted interval (Uad). method.
2. Each candidate species distribution is equal to the application of a mapping function (γ) to the solution of the reaction-diffusion equation system. The method of claim 1.
3. The mapping function is a shape-preserving function that maps solutions to the system of reaction-diffusion equations onto the interval ([0, 1]) of material densities, and the candidate material distributions take values within the interval. The method of claim 2.
4. The reaction-diffusion equation system has state variables (u, v), and the shape-preserving function is a monotonic function of at least one of the state variables. The method of claim 3.
5. The shape preserving function is a linear function of one of the state variables (u): γ(u,v)=βu The method of claim 4.
6. For each value (θ∈[θ, θ]) of the one or more parameters, the system of reaction-diffusion equations describes the evolution of state variables (u, v) from an initial state (u, v) at an initial time (0) to a final state (u, v) at a final time (T), and a solution to the system of reaction-diffusion equations is equal to the final state of the state variables. The method of claim 1.
7. The value of each of the one or more parameters (θ) is time and / or space dependent. The method according to claim 1 or 6.
8. a system of reaction-diffusion equations having state variables, and the topology optimization includes multiple iterations until convergence, each iteration including: Setting initial state values (u0, v0) of the state variables at an initial time; Calculating values of the state variables (u, v) and the conjugate state variables on the 3D finite element mesh over a number of time steps (ti) between an initial time (0) and a final time (T). The method according to any one of claims 1 to 7.
9. In the first iteration, the initial state value of each state variable is set to a predetermined value, In all iterations except the first, the initial state value of each variable is set to the final state value of the corresponding state variable in the previous iteration. The method of claim 8.
10. The system of reaction-diffusion equations is the Gray-Scott model (Equation 4). [Equation 4] The method according to claims 1 to 9.
11. The Gray-Scott model has a reaction term (F+θ), and at least one parameter (θ) of the reaction term in the Gray-Scott model is a free variable of the topology optimization. The method of claim 10.
12. A computer program comprising instructions for carrying out the method according to any one of claims 1 to 11.
13. A computer-readable storage medium having the computer program according to claim 12 recorded thereon.
14. 13. A system comprising: a processor coupled to a memory; and a graphical user interface, the memory having the computer program of claim 12 recorded thereon.
Citation Information
Patent Citations
Deformation of computer creation model
JP2006031715A
Structure optimization computing device having periodic pattern forming function
JP2019114012A
Methods for making tailored permeability fuel cell bipolar plates
US20200266453A1