Design of 3D Modeling Objects by Alignment Optimization
The method optimizes the orientation field of 3D finite element meshes to align with dominant force directions, addressing the inaccuracies and unfeasibility of existing designs for machine parts with anisotropic materials, and achieves improved physical performance and manufacturability.
Patent Information
- Application Number
- JP2020204397
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2019-12-16
- Filing Date
- 2020-12-09
- Publication Date
- 2025-06-17
- Estimated Expiration
- 2040-12-09
AI Technical Summary
Existing methods for designing 3D modeled objects representing machine parts with anisotropic materials lack accuracy and fail to produce industrially feasible designs, often resulting in unrealistic or unmanufacturable parts.
A computer-implemented method that optimizes the orientation field of a 3D finite element mesh to align with dominant force directions, using an objective function that rewards orientation continuity and is based on angular variables defined on the mesh.
The method generates 3D modeled objects with improved physical performance by ensuring the orientation field is continuous and aligned with applied forces, resulting in more realistic and manufacturable designs for machine parts with anisotropic materials.
Smart Images

Figure 0007693301000132 
Figure 0007693301000133 
Figure 0007693301000134
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer programs and systems, and more particularly, to a method, system, and program for designing 3D modeling objects representing machine parts.
Background Art
[0002] For the design, engineering, and manufacturing of objects, many systems and programs are available on the market. CAD is an abbreviation for Computer-Aided Design and relates to, for example, software solutions for designing objects. CAE is an abbreviation for Computer-Aided Engineering and relates to, for example, software solutions for simulating the physical behavior of future products. CAM is an abbreviation for Computer-Aided Manufacturing and relates to, for example, software solutions for defining manufacturing processes and operations. In such computer-aided design systems, the graphical user interface plays an important role with respect to the efficiency of the technology. These technologies can be incorporated into a Product Lifecycle Management (PLM) system. PLM refers to a business strategy that helps companies share product data, apply common processes, and leverage corporate knowledge for product development that starts with an idea and ends with the end of the product's life across the concept of the extended enterprise. The PLM solutions provided by Dassault Systèmes (product names CATIA, ENOVIA, DELMIA) provide an engineering hub that organizes product engineering knowledge, a manufacturing hub that manages product engineering knowledge, and an enterprise hub that enables enterprise integration and connection to both the engineering hub and the manufacturing hub. Overall, the system provides an open object model that connects products, processes, and resources, enabling dynamic knowledge-based product creation and decision-making support that drives optimized product definition, manufacturing preparation, production, and service.
[0003] In this context of industrial design, it is becoming increasingly important to design 3D modeled objects that represent mechanical parts formed of materials with anisotropic behavior with respect to physical properties.
[0004] The following papers are relevant to the field and are referenced below.
[0005] [1]: R.Hoglund and D.E.Smith, “Continuous Fiber Angle Topology Optimization for polymer Fused Filament,” 2016, [2]: A.A.Safonov, “3D topology optimization of continuous fiber-reinforced structures vulia natural evolution method,” 2019, [3]: J.Lee, D.Kim, T.Nomura, E.M.Dede and J.Yoo, “Topology optimization for continuous and discrete orientation design of functionally graded fiber-reinforced composite structures,” 2018, [4]: N.Ranaivomiarana, F.-X.Irisarri, D.Bettebghor and B. Desmorat, “Optimal orthotropy and density distribution of two-dimensional structures,” Mathematics and Mechanics of Complex Systems, 2018, [5]: T.Nomura, E.M.Dede, T.Matsumori and A.Kawamoto, “Simultaneous Optimization of Topology and Orientation of Anisotropic Material using Isoparametric Projection Method,” 2015, [6]: B.S. Lazarov, F. Wang and O. Sigmund, “Length scale and manufacturability in density-based topology optimization,” 2016, [7]: O. Sigmund and J. Petersson, “Numerical instabilities in topology optimization: a survey on procedures dealing whith checkerboards, mesh-dependencies and local minima,” 1998, [8]: M. Zhou, B.S. Lazarov, F. Wang and O. Sigmund, “Minimum length skale in topology optimization by geometric constraints,” 2015, [9]: T. Nomura and E.M. Dede, “METHODS FOR ORIENTING MATERIAL PHYSICAL PROPERTIES USING CONSTRAINT TRANSFORMATION AND ISOPARAMETRIC SHAPE FUNCTIONS”. 2014. Pending Patent,
[10] : Felipe Fernandeza, W. Scott Compelb, James P. Lewickib and Daniel A. Tortorellia, “Optimal design of fiber reinforced composite structures and their direct ink write fabrication”. Comput. Methods Appl. Mech. Engrg. 353(2019)277 - 307,
[11] : Jiuchun Gao, “Optimal Motion Planning in Redundant Robotic Systems for Automated Composite Lay-up Process”. Comput. Methods Appl. Mech. Engrg. 353 (2019) 277-307., and
[12] : M.P. Bendsoe and O. Sigmund, Topology Optimization - Theory, Methods, and Applications, 2004.
Summary of the Invention
Problems to be Solved by the Invention
[0006] These methods lack accuracy and / or do not generate designs that represent realistically manufacturable machine parts. Some of them produce results that are not industrially feasible and / or are industrially unrealistic.
[0007]
Means for Solving the Problems
[0008] Accordingly, a computer-implemented method for designing a 3D modeled object is provided. The 3D modeled object represents a mechanical part formed of a material having anisotropic behavior with respect to physical properties. 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 a plurality of forces and boundary conditions. The plurality of forces form a plurality of load cases. The method further includes optimizing an orientation field distributed over the 3D finite element mesh with respect to an objective function. The objective function rewards orientation continuity with respect to physical properties. The optimizing is based on the 3D finite element mesh and the data associated with the 3D finite element mesh.
[0009] The method can include one or more of the following.
[0010] The objective function depends on angular variables defined on the 3D finite element mesh, and the angular functions respectively describe the orientations on each element of the 3D finite element mesh. The objective function is a non-convex function, and the optimizing includes applying an optimization method based on non-convex sensitivity. The optimization method based on non-convex sensitivity has angular iteration steps, and the angular iteration steps are initialized with values greater than 30 degrees and less than 90 degrees. The angular iteration steps decrease in each iteration of the optimization method based on non-convex sensitivity. The optimizing includes filtering the orientation field in each iteration of the optimization method based on non-convex sensitivity. The filtering of the orientation field includes filtering the angular variables that describe the orientations on each element of the 3D finite element mesh. The filtering of the angular variables includes mapping the angular variables onto a 3D orientation vector represented in Cartesian coordinates, and filtering the 3D orientation vector. remapping the filtered 3D orientation vectors into angular variables, filtering the 3D orientation vectors includes calculating a linear combination of other 3D orientation vectors, and the contribution of each of the other 3D orientation vectors in the linear combination is a decreasing function of the distance between the element of the finite mesh corresponding to the other 3D orientation vector and the element of the finite mesh corresponding to the 3D orientation vector, the decreasing function quantifies the difference between a predetermined radius and the distance, the predetermined radius is greater than 1.5 elements, or greater than 2 elements, or greater than 3 elements, and / or, the anisotropic behavior is orthotropic behavior.
[0011] A computer program including instructions for executing the method is further provided.
[0012] A computer-readable storage medium having the computer program recorded thereon is further provided.
[0013] A system including a processor coupled to a memory and a graphical user interface is further provided, and the memory stores the computer program. Embodiments of the present invention will be described by way of non-limiting examples with reference to the accompanying drawings BRIEF DESCRIPTION OF THE DRAWINGS
[0014]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
DETAILED DESCRIPTION OF THE INVENTION
[0015] Accordingly, a computer-implemented method for designing a 3D modeled object is provided. The 3D modeled object represents a mechanical part formed of a material having anisotropic behavior with respect to physical properties. 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 a plurality of forces and boundary conditions. The plurality of forces form a plurality of load cases. The method further includes optimizing an orientation field distributed over the 3D finite mesh with respect to an objective function. The objective function rewards orientation continuity with respect to physical properties. The optimization is based on the 3D finite element mesh and the data associated with the 3D finite element mesh.
[0016] This constitutes an improved method for designing a 3D modeled object representing a mechanical part formed of a material having anisotropic behavior with respect to physical properties.
[0017] This constitutes an improved method for designing a 3D modeled object representing a mechanical part formed of a material having anisotropic behavior with respect to physical properties.
[0018] In particular, the method optimizes an orientation field distributed over a 3D finite element mesh. The orientation field represents the field of orientation of the physical properties of the material forming the mechanical part. The method optimizes the orientation field with respect to an objective function. In other words, the method determines a representation of the field of orientation of the physical properties of the material forming the mechanical part (i.e., the optimized orientation field) that conforms to the objective function as much as possible. The objective function compensates for the continuity of the orientation, such that the optimized orientation field tends to be continuous. Further, the optimization is based on a plurality of forces, which represent the forces exerted on the mechanical part and form constraints on the orientation field to be optimized. In other words, the method determines a representation of the field of orientation of the physical properties of the material (i.e., the optimized orientation field) that is continuous and tends to conform to the plurality of forces. In particular, the orientation of the optimized field tends to be continuously aligned with the dominant direction of the forces. Thereby, the physical properties of the mechanical part are improved according to the forces. This is particularly and objectively relevant in industrial design.
[0019] In fact, since the material has anisotropic behavior with respect to physical properties, optimizing the orientation field of the material as in this method is particularly relevant to designing mechanical parts. Indeed, the physical properties vary according to the direction / orientation within the material. Thus, when designing a 3D modeled object representing a mechanical part formed of such a material, optimizing the field of orientation of the physical properties of the material improves the realism of the design. In other words, it results in a 3D modeled object that is a realistic 3D visual representation of the mechanical part as it is in the real world, i.e., when manufactured. Ultimately, this enables the designed 3D modeled object to be manufactured in the real world.
[0020] The method can design 3D modeling objects, in particular, representing continuous fiber manufacturing parts (sometimes referred to as "structures") formed, for example, in composite materials or laminates. Examples of such parts are those manufactured by continuous fiber 3D printing, continuous fiber winding, or continuous fiber tape laying. Such parts are widely present in industries such as automotive, wind power, aerospace, and consumer goods. The orientation field optimized for such continuous fiber designs (i.e., 3D modeling objects representing continuous fiber manufacturing parts) directly defines the material orientation of anisotropic (e.g., orthotropic) constituent materials applied in a given manufacturing process for manufacturing the parts represented by the 3D modeling object. The material orientation of anisotropic (e.g., orthotropic) constituent materials plays an important role in the physical performance and characteristics of the manufactured parts when it is a single constituent element and / or when it is a sub-constituent element assembled into a complete structure, for example, for stiffness, strength, stability, robustness, dynamics, heat conduction, or magnetic fields. In that regard, the method improves the design of 3D modeling objects representing continuous fiber manufacturing parts because the orientation field optimized by the method tends to be continuous and has an orientation that tends to align with the dominant direction of the force. This results in fibers that tend to align with the dominant direction of the force and tend to be continuous, whereby the method generates 3D modeling objects representing continuous fiber manufacturing parts that exhibit improved physical performance when responding to multiple applied forces.
[0021] Furthermore, as described above, the optimized orientation field tends to follow as closely as possible the forces applied to the mechanical part, and the orientation tends to align continuously with the dominant direction of the forces. The multiple forces form multiple load cases. As is known in the field of industrial design, a load case is a set of one or more forces applied simultaneously to a mechanical part. The forces form multiple load cases when there are two or more sets, and each of one or more of these forces is not applied simultaneously to the mechanical part and cannot accumulate / compensate for each other. Based on the multiple forces forming multiple load cases, by optimizing the orientation field such that the orientation tends to follow the load cases and align with their dominant directions, the method enables the realistic design of 3D modeled objects subject to multiple load cases. The ability of the method to handle multiple load cases is an improvement in industrial design as it results in 3D modeled objects representing parts that are not industrially feasible to handle with just one load case. In reality, in the real world, mechanical parts are subject to multiple load cases.
[0022] Furthermore, the method can be executed in a topology optimization context.
[0023] For example, the method can be performed on a topologically optimized 3D modeled object, i.e., a 3D modeled object obtained from a topology optimization process / method / program. As is known per se from the field of mechanical design, topology optimization aims to design a 3D modeled object representing a mechanical part that exhibits improved mechanical performance in response to applied forces. Topology optimization takes, as input, a finite element mesh, forces, and spatial and / or mechanical constraints on the mechanical part. Then, topology optimization determines an optimized distribution of the material forming the mechanical part in order for the mechanical part to achieve improved physical performance in response to the forces. In other words, topology optimization outputs a modeled object representing a mechanical part formed of a material exhibiting such improved physical performance. For example, the mechanical part can exhibit improved mechanical stiffness. The method can be performed on such a 3D modeled object. As a result, the method takes as input a 3D modeled object having an optimized distribution of material with respect to the applied forces and constraints. Then, the method, as described above, optimizes the orientation of the physical properties on the modeled object with respect to a plurality of forces (which may or may not be different from the forces associated with the topology optimization). In other words, the 3D modeled object output by the method can exhibit an optimized distribution of the material forming the mechanical part with respect to the applied forces, and a relatively continuous orientation field of the physical properties of the material with respect to the same or other forces. Further, this all means that the method separately and independently handles variables related to topology optimization (i.e., distribution of material) and variables related to orientation optimization (i.e., orientation field). This separation of variables enables the use of various techniques of topology optimization for providing the input 3D modeled object, for example, any technique of topology optimization characterized by additional constraints such as geometric local volume constraints (e.g., for enhancing porosity).
[0024] In yet other examples, the method can perform topology optimization and orientation field optimization. In such examples, the physical property is stiffness. In such cases, the method determines both a distribution of material that enables a mechanical component to exhibit improved stiffness in response to a plurality of forces and a continuous orientation of the stiffness of the material that aligns with the dominant direction of the forces, thereby further improving the stiffness.
[0025] Thus, when the method is integrated into a topology optimization context, the method provides a choice for optimizing both the orientation field and the density field simultaneously (i.e., when the method performs topology and orientation optimization together) or non-simultaneously (e.g., when the method performs orientation optimization after topology optimization). This is made possible by the orientation and density, which each form a separate variable field with its own sensitivity.
[0026] The method is performed by a computer. This means that the steps of the method (or substantially all steps) are similarly performed by at least one computer or any system. Thus, the steps of the method are, in some cases, fully automatically or semi-automatically performed by a computer. Exemplarily, the trigger for at least some of the steps of the method can be performed via an interaction between the user and the computer. The level of user-computer interaction required depends on the expected level of automation and can be balanced with the need to fulfill the user's wishes. Exemplarily, this level can be user-defined and / or pre-defined.
[0027] A typical example of the computer execution of this method is to execute this method using a system adapted for this purpose. The system can include a processor coupled to a memory and a graphical user interface (GUI), and the memory stores a computer program containing instructions for executing this method. The memory may also store a database. The memory is any hardware adapted for such storage, which in some cases may comprise several physically distinct components (for example, one for the program and, in some cases, one for the database).
[0028] This method generally operates on modeled objects. A modeled object is any object defined, for example, by data stored in a database. Consequently, the expression "modeled object" refers to the data itself. Depending on the type of system, the modeled object may be defined by different types of data. The system may in fact be any combination of CAD systems, CAE systems, CAM systems, PDM systems, and / or PLM systems. In these different systems, the modeled object is defined by the corresponding data. Therefore, they can be called CAD objects, PLM objects, PDM objects, CAE objects, CAD data, PLM data, PDM data, CAM data, CAE data. However, since the modeled object can be defined by data corresponding to any combination of these systems, these systems are not mutually exclusive. Therefore, the system may be both a CAD system and a PLM system.
[0029] A CAD system further means any system adapted to design modeled objects based on a graphical representation of the modeled objects, at least such as CATIA. In this case, the data defining the modeled objects includes data enabling the representation of the modeled objects. A CAD system can provide a representation of CAD modeled objects, for example, using edges or lines, and in some cases, using faces or surfaces. Lines, edges, or surfaces can be represented in various ways, such as 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 the modeled objects can be stored in a single CAD file or multiple CAD files. The typical size of a file representing a modeled object in a CAD system is in the range of 1 megabyte per part. Also, a modeled object can typically be an assembly of thousands of parts.
[0030] In the context of CAD, a modeled object can typically be a 3D modeled object representing a product, such as, for example, a part or an assembly of parts, or in some cases, an assembly of products. A "3D modeled object" means any object modeled by data enabling its 3D representation. The 3D representation enables viewing the part from all angles. For example, when a 3D modeled object is represented, it can be manipulated and rotated around any of its axes or around any axis within the screen on which the representation is displayed. This specifically excludes 2D icons that are not 3D modeled. The display of the 3D representation facilitates the design (i.e., increases the speed at which a designer can statistically achieve the task). This speeds up the manufacturing process in the industry since the design of the product is part of the manufacturing process.
[0031] The 3D modeled objects designed by this method can represent, for example, (mechanical, for example) parts or assemblies of parts (or an assembly of parts may be regarded as a part itself from the perspective of this method, or this method may be applied independently to each part of the assembly, so equivalently an assembly of parts), or more generally any rigid body assembly (e.g., a movable mechanism), etc., the geometric shape of a product manufactured in the real world following the completion of virtual design using, for example, CAD software solutions or CAD systems. CAD software solutions enable the design of products in various unrestricted industrial fields, including aerospace, architecture, construction, consumer goods, high-tech devices, industrial equipment, transportation, ships, and / or offshore oil / gas production or transportation. Therefore, the 3D modeled objects designed by this method can be part of a ground vehicle (including, for example, automobiles and light truck equipment, racing cars, motorcycles, trucks and motor equipment, trucks and buses, trains), part of an aircraft (including, for example, airframe equipment, aerospace equipment, propulsion equipment, defense products, aircraft equipment, space equipment), part of a naval vehicle (including, for example, naval equipment, civilian ships, offshore facilities, yachts and workboats, marine equipment), part of general mechanical parts (including, for example, industrial manufacturing machinery, large mobile machinery or equipment, installed equipment, industrial equipment products, processed metal products, tire manufacturing products), electromechanical or electronic parts (including, for example, consumer electronics, security and / or control and / or instrumentation products, computing and communication equipment, semiconductors, medical devices and equipment), consumer goods (including, for example, furniture, household and garden products, leisure products, fashion products, products of hard goods retailers, products of soft goods retailers), packaging (including, for example, food and beverage and tobacco, beauty and personal care, household product packaging), etc., and can represent industrial products that can be any mechanical parts.
[0032] Figure 1 shows an example of a system, and the system is a client computer, for example, the user's workstation.
[0033] The client computer in this example includes a central processing unit (CPU) 1010 connected to an internal communication bus 1000, and a random access memory (RAM) 1070 also connected to the bus. The client computer is further connected to a graphics processing unit (GPU) 1110 associated with a video random access memory 1100 connected to the bus. The video RAM 1100 is also known as a frame buffer in the art. A mass storage controller 1020 manages access to a mass storage device such as a hard drive 1030. Mass memory devices suitable for tangibly embodying computer program instructions and data include, 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, magneto-optical disks, and all forms of non-volatile memory including CD-ROM disks 1040. Any of the foregoing may be stored in or incorporated by a specially designed application specific integrated circuit (ASIC). A network adapter 1050 manages access to a network 1060. The client computer may also include tactile devices 1090 such as a cursor control device, a keyboard, etc. The cursor control device is used in the client computer to enable a user to selectively position a cursor at any desired location on a display 1080. Further, the cursor control device enables 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, and the buttons of the mouse are used to generate signals. Alternatively or additionally, the client computer system may include a sensing pad and / or a sensing screen.
[0034] A computer program can include instructions executable by a computer, and the instructions include means for causing the above system to execute the present method. The program may be recordable on any data storage medium including the system's memory. The program may be executed, for example, in digital electronic circuits, or in computer hardware, firmware, software, or combinations thereof. The program may be implemented as a product tangibly embodied in a machine-readable storage device for execution by, for example, a programmable processor. Method steps may be executed by a programmable processor that operates on input data and generates output by executing a program of instructions for performing the functions of the present method. Accordingly, the processor may be programmable and coupled to receive data and instructions from a data storage system, at least one input device, and at least one output device, and to transmit instructions. An application program may be executed in a high-level procedural programming language or an object-oriented programming language, or, if desired, in an assembly language or machine language. In any case, the language may be a compiled language or an interpreted language. The program may be a full installation program or an update program. The application of the program on the system, in any case, results in instructions for performing the present method. "Design of 3D modeled object" designates any action or series of actions that are at least part of the process of creating a 3D modeled object. Accordingly, the present method can include creating a 3D modeled object from scratch. Alternatively, the present method can include providing a previously created 3D modeled object and then modifying that 3D modeled object.
[0035] This method may be included in the manufacturing process, and the manufacturing process may include manufacturing a physical product corresponding to the modeled object after executing this method. In either case, the modeled object designed by this method can represent the manufacturing object. Therefore, the modeled object can 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. Since this method improves the design of the modeled object, it also improves the manufacturing of the product and thus enhances the productivity of the manufacturing process.
[0036] In fact, this method designs a modeled object that is three-dimensional. Therefore, this method is for solid modeling, that is, this method results in a solid (e.g., a 3D closed volume) representing a mechanical part in 3D as in the real world once manufactured. Thus, this method does not perform just a 2D design of an object that is never manufactured in the industry, but outputs a solid representing a 3D mechanical part, and this output is suitable for use in subsequent steps of the manufacturing process (e.g., further design actions, tests, simulations, and / or manufacturing), so it belongs to the field of manufacturing CAD.
[0037] This method is for designing a 3D modeled object representing a mechanical part formed of a material having anisotropic behavior with respect to physical properties.
[0038] The physical property may be any physical property. For example, the physical property may be any one of rigidity, strength, stability, robustness, dynamics, heat / heat conduction, magnetism / magnetic field, electrical conduction, conductor, diffusion or flow in a porous medium.
[0039] The material forming the mechanical component has anisotropic behavior with respect to physical properties, i.e., the physical properties of the material are direction-dependent (i.e., vary according to direction). That is, the physical properties change when measured from different directions. The anisotropic behavior may be orthotropic behavior, i.e., the material has three mutually perpendicular symmetry planes and the physical properties of the material are different along three principal directions. For the sake of brevity, the material may simply be referred to as an "anisotropic material".
[0040] In an example where the physical property is stiffness, if the stiffness of the material is direction-dependent, the material has anisotropic behavior with respect to stiffness. In other words, the stiffness of the material is not the same depending on the direction in which the material is measured. If the material has orthotropic behavior with respect to stiffness, the material has three principal / principal stiffness directions, including the direction of greater stiffness.
[0041] In an example where the physical property is heat / heat conduction, the material has anisotropic behavior with respect to heat / heat conduction when the heat / heat conduction within the material is direction-dependent. That is, the heat conduction varies by direction. If the material has orthotropic behavior with respect to heat / heat conduction, the material has three principal / principal directions of heat / heat conduction, including the direction of greater heat / heat conduction.
[0042] In an example where the physical property is flow in a porous medium, the material has anisotropic behavior with respect to flow when the flow within the material is direction-dependent. That is, the fluid flows through the material differently depending on the direction. If the material has orthotropic behavior with respect to flow, the material has three principal / principal flow directions, including the direction of greater flow.
[0043] The mechanical part may be any mechanical part formed of an anisotropic material, such as an automotive part or an aerospace part formed of a composite material or a laminate. Exemplarily, the mechanical part is a continuous fiber manufactured part / structure. In examples of these examples, the mechanical part may in particular be a continuous fiber structure manufactured by continuous fiber 3D printing, continuous fiber winding, or continuous fiber tape laying. Such mechanical parts are widely present in industries such as automotive, wind power, aerospace and consumer goods. FIGS. 2 to 4 show examples of such mechanical parts. FIG. 2 shows a continuous fiber structure manufactured by continuous fiber 3D printing. FIG. 3 shows a continuous fiber structure manufactured by continuous fiber winding. FIG. 4 shows a continuous fiber structure manufactured by continuous fiber tape laying.
[0044] This method is for designing a 3D modeled object by orientation optimization. By "by orientation optimization" it means that the method includes the optimization of the orientation field. Thus, the optimization of the orientation field may hereinafter simply be referred to as "orientation optimization". Thus, this method includes providing an input to the orientation optimization, for example via user interaction.
[0045] The input to the orientation optimization includes a 3D finite element mesh, also referred to as 3D FEM for brevity. The 3D FEM represents the space including the 3D modeled object to be designed. The 3D FEM may be regular or irregular. A regular 3D FEM enables easier calculations during orientation optimization. The 3D FEM may be of any type, for example where each finite element is a tetrahedron or a hexahedron. Providing the 3D FEM may include defining the design space and the meshing of the design space. This method may include displaying the 3D FEM to the user and defining other inputs to the topology optimization, including, for example, graphical user interaction on the displayed FEM by the user.
[0046] As used herein, "graphical user interaction" for defining an element means any user interaction in which a designer uses a tactile system (e.g., a mouse or a touch device such as a sensing / touch screen or a sensing / touch pad) to activate one or more positions on a display unit and the location where the element is placed. Activating the position of a scene can include placing the cursor of the mouse thereon or performing a touch thereon. After activation, the representation of the defined element can be displayed substantially in real time.
[0047] The input for orientation optimization is further associated with the FEM and includes data that depends on the mechanical part that the user wants to design.
[0048] These associated data can include parameters related to the material, in other words, data representing the material from which the mechanical part is formed. These material parameters can represent, in particular, the physical properties of the material, for example, the properties of the material related to its physical characteristics. The material parameters can be related to, for example, the constitutive law of the material related to its physical characteristics. For example, the material parameters can include any physical quantity related to the constitutive law. Exemplarily, the user can specify the material (e.g., a laminate and / or composite material such as wood, glass fiber, carbon fiber, ceramic matrix material or alumina matrix material) by, for example, selection from a list, and / or the system can automatically determine the material parameters and / or propose the selection to the user based on, for example, one or more formulas and / or databases.
[0049] The constitutive law is a matrix that provides a constitutive relationship representing the anisotropic behavior of the material
Number
Number
Number
Number
[0050] In an example where the physical property is rigidity, the constitutive law
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
[0051] In the example where the physical property is electrical conductivity, the constitutive law
Number
Number
Number
[0052] In the example where the physical property is a dielectric, the constitutive law
Number
Number
Number
[0053] In the example where the physical property is magnetic, the constitutive law
Number
Number
Number
[0054] In the example where the physical property is heat conduction, the constitutive law
Number
Number
Number
[0055] In the example where the physical property is diffusion, the constitutive law
Number
Number
Number
[0056] In an example where the physical property is the flow in a porous medium, the constitutive law [Number] is fluid permeability, and the vectors [Number] and [Number] represent a pressure gradient and a gravity flux, respectively, as is known per se from the field of hydrodynamics.
[0057] The associated data can further include global quantity constraints. The global quantity constraints are for the global quantity of the material within the 3D FEM. In other words, the global quantity constraints limit the value of the total amount of the material throughout the 3D FEM. The global quantity constraints can be provided, for example, as the boundary of the part of the 3D FEM that can be filled with the material (the whole part), for example, as the upper limit of the part. Alternatively, the global quantity constraints can provide a value that must be reached rather than a boundary. However, orientation optimization can optimize an objective function that tends to use as much material as possible available in the optimized result, making such an equality constraint equivalent to an upper bound constraint. In all cases, the ratio can be a volume fraction (also called GVC in such cases, like "global volume constraint"). In other examples, the global quantity constraints can include a value representing the weight of the material.
[0058] The data associated with the 3D finite element mesh includes data representing the usage conditions of the machine part, based on which orientation optimization can optimize the orientation of the physical properties of the material forming the machine part model considering such predicted usage.
[0059] The associated data includes, in particular, a plurality of forces forming a plurality of load cases. In other words, the associated data includes vectors (e.g., having a magnitude in Newtons or multiples thereof) each applicable and linked to one or more finite elements of the 3D FEM. These forces partially represent the loads that the machine part undergoes during use. In other words, for each one or more finite elements of the 3D FEM for which each force exists in the data, the data represents the fact that the material of the machine part at the position corresponding to the one or more finite elements will undergo the corresponding load. However, since a machine part can theoretically undergo an infinite number of loads, not all loads are represented by the forces present in the data. The forces only represent a limitation of the entire set of loads, such as, for example, the most important loads and / or the most representative loads. The forces may be determined for each modeling problem or may be selected to be the maximum (i.e., of the largest magnitude) forces that the object can undergo during its lifetime. This is because these forces tend to have the most significant impact on the structure, for example, causing the largest deformations and mechanical stresses. The plurality of forces form a plurality of load cases, i.e., the forces are grouped into one or more sets of forces called load cases. As is known per se from the field of CAD manufacturing, a load case is a set of one or more forces applied simultaneously to a machine part. The forces form a plurality of load cases when there are two or more sets, and each of one or more of these forces is not applied simultaneously to the machine part and cannot accumulate / compensate for each other. Exemplarily, the user can select the finite elements of the 3D FEM via a graphical user interaction and then specify the forces applicable thereto.
[0060] The associated data includes boundary conditions. Boundary conditions are constraints on the boundaries of 3D modeled objects. Each boundary condition is applied to and linked with one or more finite elements of the mesh, representing each constraint on the boundaries that the mechanical part undergoes during use. In other words, each boundary condition represents the fact that the material of the mechanical part at the position corresponding to the one or more finite elements is subject to constraints on its displacement, for example, using Dirichlet boundary conditions. The element may have its displacement constrained (among other things) along a plane, along a curve, along an axis / around an axis, or around a point, and / or its displacement may be constrained only in translation, only in rotation, and both in translation and rotation. In the case of displacement constrained at a point both in translation and rotation, the element is fixed in 3D space and is said to be "clamped". However, the element may have a displacement that is constrained in translation along a plane but is free to move on said plane (for example, if it belongs to an object mounted on a bearing), constrained in translation along an axis but is free to move on said axis (for example, inside a piston), or constrained in rotation around an axis (for example, the joint of a robotic arm).
[0061] In an example where the physical property is heat conduction, finite element analysis (FEA) predicts the temperature of each element within the part. In these examples, the boundary condition can be to lock a subset of the elements to a given temperature and thus act as what is generally called a "heat sink". An example of these examples is when simulating the temperature of an electrical component during use. The microprocessor within the component generates heat that diffuses within the component and is "exhausted" by the heat sink. Note that, similar to the stiffness that constrains the displacement of an element, in heat conduction, the boundary condition constrains the temperature of the element.
[0062] Exemplarily, the boundary conditions represent all constrained boundaries. In other words, boundary (e.g., clamp) conditions can be associated to integrate this fact in the orientation optimization for each finite element of the 3D FEM that is ultimately intended to include the constrained material (e.g., such that it remains fixed). Exemplarily, the user can select the finite elements of the 3D FEM via a graphical user interaction and then specify that boundary conditions are applicable thereto.
[0063] Exemplarily, one or more constrained boundaries of a machine part include or consist of one or more fixed boundaries (i.e., the material at the one or more boundaries cannot move), and the corresponding one or more boundary conditions are clamp conditions.
[0064] Based on the input, the orientation optimization (e.g., automatically) optimizes an orientation field distributed over a 3D finite element mesh with respect to an objective function. "Based on the input" means that the optimization takes into account the input including the 3D finite element mesh and the data associated with the 3D finite element mesh when optimizing the orientation field. For example, the optimization takes into account multiple forces such that the orientation of the optimized orientation field tends to align with the dominant direction of the forces. The method can optimize the objective function itself, i.e., solve an optimization problem regarding an objective function having the orientation field as a free variable. The optimization problem is, for example, to minimize the objective function with respect to constraints. The orientation field is a set of orientations, each on a finite element of the mesh, and the orientations consist of, for example, a set of (e.g., two) direction variables (e.g., angles). The orientation field is distributed over the 3D finite element mesh in that each finite element of the 3D element mesh includes an orientation. Thus, the orientation field forms a vector field over the 3D finite element mesh. The orientation field represents the field of the orientation of the physical properties of the material.
[0065] Orientation optimization optimizes the orientation field with respect to an objective function. The objective function depends on the orientation on the finite elements (i.e., it is that function), and the orientation optimization optimizes (e.g., minimizes) the value of the function by modifying the orientation. The objective function can represent any physical property to be optimized with respect to physical properties.
[0066] For example, when the physical property is stiffness, the objective function can represent the compliance of the mechanical part, which is the reciprocal of the stiffness. Compliance includes the amount of deformation of the structure considering a specific load case and fixed boundary conditions. Thus, when the optimization minimizes the compliance, this corresponds to maximizing the stiffness of the design for a given mass. In such cases, the method tends to be continuous and can determine an optimized orientation field such that the orientation aligns with the dominant direction of the force. As a result, the mechanical part exhibits improved stiffness performance depending on the applied load case.
[0067] In another example where the physical property is heat conduction, the function may be the thermal conductivity. Thermal conductivity includes the amount of heat diffusion in the structure considering a specific load case and fixed boundary conditions. The optimization tends to maximize the thermal conductivity in such examples. In other words, the method tends to be continuous and results in an orientation field where the orientation tends to align with the temperature gradient direction. As a result, the mechanical part diffuses heat in a specific orientation. In these examples of the examples, the optimization of the orientation field maximizes the heat diffusion to lower the temperature of the mechanical part. This can be useful to prevent overheating of electrical components.
[0068] The objective function rewards orientation continuity with respect to physical properties. In other words, modifying the orientation such that the value of the objective function tends to be optimized (e.g., minimized) results in the orientation field tending to be continuous with respect to physical properties. It should be understood that "continuous" means that the orientation field, which is a vector field, has or at least tends to have a specific continuity, such as G1 continuity. The concept of G1 continuity is known from the field of mathematics and will not be elaborated further here. In other words, the orientation of the physical properties of the material tends to form a continuous orientation field when optimizing the value of the objective function.
[0069] The free variables of the objective function include, as described above, variables representing orientations distributed on the 3D FEM. Thus, orientation optimization changes / modifies the orientation in each finite element of the 3D FEM to optimize the objective function by modifying the variables representing the orientation. Thus, orientation optimization results in (e.g., outputs) an orientation field formed by the modified orientation, and the orientation field is continuous as described above and tends to align with the dominant direction of the force. The free variables of the objective function can further include the distribution (i.e., layout) of the amount of material (e.g., volume fraction) across the 3D FEM. In such a case, the optimization may vary the amount of material (e.g., volume fraction) in each finite element of the mesh to optimize the objective function. Alternatively, the distribution of the amount of material across the 3D FEM may be a fixed variable of the objective function instead of a free variable. In such a case, the optimization may only change the orientation on the finite elements and not change the amount of material within the finite elements. 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 including global quantity constraints. The free variables of orientation optimization are also referred to as "design variables".
[0070] Orientation optimization can in any case be carried out according to an arbitrary algorithm, for example an iterative algorithm. The method can further include, for example, calculating (e.g., automatically) 3D modeling objects such as boundary condition (B-Rep) models based on an optimized orientation field, for example, the distribution of materials. For example, the method can calculate a swept volume based on and along a series of finite elements obtained from the optimization. Such 3D modeling objects represent mechanical parts having an optimized orientation of the physical properties of the material, i.e., an orientation that tends to form a continuous orientation field and align with the dominant direction of the force.
[0071] The method can integrate steps of a general optimization orientation workflow, such steps being described here through examples of a general topology optimization workflow.
[0072] As shown in FIG. 5 showing the specification of an orientation optimization scenario, a general orientation optimization workflow requires, as input, a design space 52 (here subdivided into small square elements), a set of load cases with an example 54 shown in FIG. 5, and boundary conditions 56 (here the entire left side of the design space where the design is constrained for deformation, e.g., a "clamped" position). As mentioned above, additional parameters can be defined.
[0073] If the goal of orientation optimization is to generate an optimized design from an empty canvas (which is the design space), the design workflow can exclude the provision of an initial geometry from outside the design space definition. Alternatively, the design workflow can include the provision of an initial geometry of the modeling object. The initial geometry can, for example, result from topology optimization, and in this case the goal of orientation optimization is to optimize the orientation of the physical properties with respect to the topologically optimized initial geometry.
[0074] The output of a general topology optimization workflow is the geometry of a 3D modeled object whose physical property orientations conform to the input specifications as closely as possible.
[0075] As shown in Figure 6, a general orientation optimization workflow can, by way of example, follow the nine steps described below.
[0076] 1. Mesh the design space Create a discretization of the design space as shown in Figure 5. This means subdividing the space into small, simple, connected elements, such as tetrahedra, hexahedra. These small elements will later serve both as a finite element mesh for simulation and as design variables for optimization.
[0077] 2. Apply load cases and boundary conditions Here, a general orientation optimization workflow can take a number of forces and clamped boundary conditions for a given input specification and apply them to the nodes of a 3D FEM. Figure 5 shows a mesh where the design space is regularly subdivided into square elements. Clamp the left - hand nodes (fix them in 3D space) and apply a downward force to the center - right of the design space.
[0078] 3. Initialize the design variables Each element has a given orientation that defines the orientation of the physical properties of the material on the element. The orientation may include specifications of one or more directions of the physical properties of the material. If the anisotropic behavior is orthotropic, the specification may consist of angles that describe the principal directions of the physical properties of the material. FIG. 7 shows a mesh in which the design space 72 is divided into regular square elements. The left nodes 76 are clamped and a downward force 74 is applied to the upper right of the center of the design space. FIG. 7 further shows an initialized orientation field 78, where each orientation is represented by an arrow on the corresponding finite element. Each element has a given relative density value that defines whether the element is empty or filled with material, each defined by the values "0" and "1". A general topology optimization workflow may allow the elements to take any value between 0 and 1. This is often referred to as relaxation.
[0079] 4. Solve for equilibrium At this point, a general orientation optimization workflow can have a fully defined finite element model that is meshed and attached with forces and boundary conditions, where each element has an orientation and a relative density value. Thereby, a general orientation optimization workflow can assemble a global physical property matrix that includes the material constitutive law and solve for the nodal displacements of the orientation equilibrium. In other words, a general orientation optimization workflow can calculate the orientation field of the structure in its current state for the applied forces and boundary conditions.
[0080] 5. Calculate objective function values and derivatives The objective function that can be used in orientation optimization can be based on constitutive laws. Such a function captures the physical performance of the structure with respect to physical properties and associates multiple forces with their effects on the structure with respect to this physical property. Further, due to the large number of design variables in the process, the optimization may be performed in a gradient-based method. Thus, a general orientation optimization workflow can also calculate the derivative of the objective function with respect to each design variable. A general orientation optimization workflow can calculate how to change the relative orientation of each element in order to improve the physical performance of the mechanical part with respect to physical properties and satisfy the constraints. This can be done using the well-known and classical "adjoint sensitivity analysis". Further, after the derivatives are calculated, these derivatives can be smoothed by filtering to improve numerical stability. A general orientation optimization workflow can reduce the incorrect checkerboard pattern and introduce a length scale into the optimization to make it well-defined.
[0081] 6. Calculate constraint values and derivatives The constraint function in a general orientation optimization workflow can include the global volume fraction of the structure. Such a GVC defines the maximum volume of material that can be used and thus the maximum mass of the material that makes up the design. Thus, the optimizer must find an optimized orientation field of the physical properties with respect to this mass in the design space. Since volume is independent of direction, the derivative of this constraint with respect to the orientation variable is 0. The derivative of this constraint with respect to density is equal to the element volume, and when the element sizes are equal, the derivative is constant for each element and thus easy to calculate.
[0082] 7. Update design variables using mathematical programming When the objective function and constraint values and their derivatives are known, a general optimization workflow can use gradient-based mathematical programming to modify the relative orientation on each element and improve the continuity of the orientation field without violating the specified constraints. For this problem, the simplest and most commonly used mathematical programming is the so-called Optimality Criterion (OC). A more general mathematical programming is MMA (Method of Moving Asymptotes, first described in “The method of movuling asymptotes - a new method for structural optimization“, Krister Svanberg, International Journal for Numerical Methods in Engineering, February 1987, and incorporated herein by reference). MMA can, in particular, handle multiple non-linear constraints, which makes it particularly efficient in the case of this method. However, other mathematical programming algorithms can also be used. If the relative orientation of each element is modified by mathematical programming and a given modified design in the optimization process has not yet converged, loop back to step 4.
[0083] 8. Various Filtering of Computational Variables Filtering the design variables specifies any method suitable for regularizing the design variables, i.e., improving the continuity and / or regularity of the design variables. Filtering may be performed during the update of the design variables, i.e., in step 7, for example, in each iteration of the mathematical programming. Alternatively or additionally, filtering may be performed after step 7, i.e., after the design variables have been updated.
[0084] 9. Output the Final Design Once convergence is achieved, a general orientation optimization workflow can present the final design in a design space where each element has an optimized relative orientation. Here, the general orientation optimization workflow can present the geometry of the optimized design, which is the output of the general orientation optimization workflow.
[0085] The optimization of the orientation field by this method can perform all or at least some of the steps of this general orientation optimization workflow.
[0086] Exemplarily, the objective function depends on angular variables defined on 3D FEM. That is, the objective function is a function of the angular function. The angular variables describe the orientation of each physical property on each element of the 3D FEM. In other words, the angular variables form a set of (e.g., two) angles, and each orientation of the orientation field corresponds to the value of this set of angles (i.e., the set consisting of the values of the angles). The angular variables form a simple and efficient way to describe the orientation. These examples are illustrated.
[0087] The angular variables are design variables that describe angles respectively. The angular variables can form two angles. Exemplarily, especially in the example where the anisotropic behavior is orthotropic behavior, the angles represent the principal directions of the physical properties of the material. Exemplarily, the angular variables form a kind of spherical coordinate system. Specifically,
Number
Number
Number
Mathematics
Mathematics
Mathematics
Mathematics
Mathematics
Mathematics
Mathematics
Mathematics
Mathematics
Mathematics
Mathematics
Mathematics
Number
Number
Number
Number
Number
Number
Number
[0088] Referring further to FIG. 6, in step 4 of the optimization process, the method can calculate the objective function using the angle variables. Specifically, it can include defining a series of transformations
Number
Number
Number
[0089] Furthermore, referring to FIG. 6, in step 4, the method can include defining the following types of local physical property matrices for each finite element [Number] in which [Number] can be included. [Number] (2) Here, [Number] is the density variable in the finite element [Number] in which [Number] is the penalty index, [Number] (3) and where
Number
Number
[0090] Further referring to FIG. 6, in step 4, the method can include assembling the global physical property matrix by accumulating the local physical property matrix
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
number
number
number
[0091] Still referring to FIG. 6, in step 5 of the optimization process, the method may calculate the derivative of the objective function as follows:
number
number
number
number
[0092] Regarding the angular variables, the following can be said: The method optimizes the orientation field in the context of multiple load cases, as described above. In these contexts, there are multiple different directions of forces, and the orientation cannot be aligned with all of them simultaneously. The above equation (5) of the orientation problem with the angular variables alpha and theta allows the orientation to be aligned with the dominant direction of the forces.
[0093] Referring further to FIG. 6, in step 7 of the optimization process, in the aforementioned example where the objective function depends on the angular variables, the objective function may be a non-convex function. The constraints may also be non-convex functions. In such a case, the optimization includes applying an optimization method based on non-convex sensitivity. The application of the non-convex optimization method is part of step 7.
[0094] The function may be non-convex because it depends on angular variables that represent the orientation at each element. Thus, the function has periodicity with respect to each angular variable. Here, orientation optimization varies the angular variables within each element such that the objective function reaches an overall minimum (or, if the problem is to maximize the objective function, a maximum). However, due to the periodicity of the function in the angular variables, the function may have two or more minima. This complicates step 7 because many standard mathematical programming methods for performing step 7 can only correct the angular variables within each element until the objective function reaches a local minimum rather than a global minimum. Thus, these standard mathematical programming methods may not be suitable for performing step 7. This is especially true when the anisotropic behavior is orthotropic, and the optimization problem (1) is non-convex in such cases.
[0095] However, the present method avoids these difficulties by performing an optimization method based on non-convex sensitivity as in step 7 to vary the angular variables in each element such that the objective function reaches a global minimum.
[0096] As is known per se from the field of mathematical programming for optimization, an optimization method based on non-convex sensitivity can include gradient descent along angular variables, including the derivative of the objective function with respect to the angular variables. "Based on sensitivity" refers in particular to the fact that the optimization calculates the derivative of the objective function with respect to the angular variables for performing gradient descent. As is known per se, gradient descent has iterative steps, also called "step sizes". Since the descent is along the angular variables, the iterative steps are referred to herein as "angular iterative steps".
[0097] Exemplarily, the angular iterative step is initialized with a value greater than 30 degrees and less than 90 degrees. In other words, step 7 can include a sub-step that initializes the angular iterative step to a value greater than 30 degrees and less than 90 degrees, for example equal to or substantially equal to 45 degrees. This can prevent the optimization method from changing the angular variable so as to bring about a minimum value of the objective function. Numerical experiments have actually shown that such an initial value for the angular iterative step contributes to preventing the optimization method from changing the angular variable so as to bring about a minimum value of the objective function. In particular, the initial angular iterative step is large enough for the orientation variable to change away from the minimum value.
[0098] The angular iterative step may be fixed, i.e., once initialized, the angular iterative step is set only once. Alternatively, the angular iterative step may change, for example, in each iteration of the optimization method. Exemplarily, the angular iterative step decreases in each iteration of the optimization method. In other words, the optimization can include (e.g., automatically) decreasing the angular iterative step in each iteration, for example, by multiplying it by an eigenvalue such as 0.95. For example, if the angular iterative step is 45 at iteration 0, the angular iterative step at iteration 1 is
Number
Number
[0099] Further referring to FIG. 6, in step 8 of the optimization process, the optimization may include filtering the orientation field at each iteration of the non-convex sensitivity-based optimization.
[0100] Filtering the orientation field includes filtering (i.e., regularizing) the orientation on each finite element. In other words, filtering the orientation field regularizes the relative orientation on the finite elements of the 3D FEM. Optimizing the objective function itself tends to result in an orientation field that is continuous in at least some cases, but it can happen in other cases that the optimized orientation field does not exhibit the appropriate continuity, for example, does not exhibit G1 continuity. Filtering the orientation field tends to correct this or at least correct it, thereby improving the efficiency and robustness of the method.
[0101] The filtering of the orientation field can include filtering the angular variables that describe the orientation on each element of the 3D finite element mesh. In other words, the filtering of the orientation field can directly filter the angular variables that describe the orientation. This enables a simple and efficient integration of the filtering into the optimization method based on non-convex sensitivity performed on the angular variables. It should be understood that the filtering may be performed simultaneously for each element of the 3D FEM.
[0102] Due to periodicity and interdependence, the angular variables that describe the orientation on the element cannot be regularized separately, for example, by using a simple convolution method for these variables. Exemplarily, the method avoids this difficulty as follows. The filtering of the angular variables includes mapping the angular variables onto a 3D orientation vector represented in Cartesian coordinates, filtering the 3D orientation vector, and remapping the filtered 3D orientation vector back to the angular variables.
[0103] Mapping the angular variables to a 3D orientation vector involves converting a set of angular variables that describe the orientation on an element into a 3D vector represented in Cartesian coordinates, for example, according to the set of relationships (1). Mapping the angular variables onto a 3D orientation vector represented in Cartesian coordinates enables performing any type of filtering / regularization on the 3D orientation vector since the Cartesian coordinates do not characterize the periodicity or interdependence of the angular variables. Thus, filtering the 3D orientation vector can be performed by any suitable method for improving the relative continuity of the orientation vectors that form the orientation field in Cartesian coordinates. Once the 3D orientation vector is filtered, it is remapped to the angular variables. Remapping the filtered 3D orientation vector to the angular variables involves converting the filtered 3D orientation vector into a set of angular variables, for example, according to the set of relationships (1). This set of angular variables describes the filtered orientation on the element for use in subsequent iterations of the optimization method.
[0104] Exemplarily, filtering the 3D orientation vector involves calculating a linear combination of other 3D orientation vectors. The contribution of each other 3D orientation vector in the linear combination is a decreasing function of the distance between the element of the finite element mesh corresponding to the other 3D orientation vector and the finite element mesh corresponding to the said 3D orientation vector.
[0105] The other 3D orientation vectors can be any set of 3D orientation vectors relative to which the above 3D orientation vector is filtered. For example, the other 3D orientation vectors may include all other 3D orientation vectors, i.e., all 3D orientation vectors each representing an orientation in a finite element other than the finite element whose orientation corresponds to the above 3D orientation vector. The other 3D orientation vectors may also include the above 3D orientation vector. As is known per se, in a linear combination of vectors, each vector has a contribution, sometimes called a "weight" or "coefficient". Here, the contribution of each other 3D orientation vector is a decreasing function of the distance between the element of the finite element mesh corresponding to the other orientation vector (i.e., the element whose orientation in Cartesian coordinates is represented by the other 3D orientation vector) and the element of the finite element mesh corresponding to the above 3D orientation vector (i.e., the element whose orientation in Cartesian coordinates is represented by the above 3D orientation vector). In other words, the closer the element corresponding to the other 3D orientation vector is to the element corresponding to the above 3D orientation vector, the more the other 3D orientation vector contributes to the linear combination. Stated more formally, the filtering of the above 3D orientation vector transforms the above 3D orientation vector into a linear combination of other 3D orientation vectors, and the closer the vector is to the above 3D orientation vector, the more it contributes to the linear combination.
[0106] The distance may be any distance, for example, the 3D Euclidean distance. Exemplarily, the decreasing function quantifies the difference between a predetermined radius and the distance, which is a particularly simple and efficient way of filtering 3D orientation vectors. The radius may depend on the length scale that the manufacturing process for manufacturing the machine part can handle. "Predetermined" may mean that the radius is designed by the user, for example, beforehand (i.e., at the initial stage of the method), for example, based on manufacturing considerations (such as ease of assembly, control, and / or inspection of the machine part). Alternatively, the predetermined radius may be fixed, i.e., the predetermined radius may form a non-changeable parameter of the method. Alternatively or additionally, the predetermined radius may be greater than 1.5 elements, may be greater than 2 elements, or may be greater than 3 elements. "Greater than 1.5 (or 2, or 3) elements" may mean that the elements of the 3D FEM are identical and all have the same size, and the radius is greater than 1.5 (or 2, or 3) of this size. Alternatively, the elements of the 3D FEM may have different sizes, in which case "greater than 1.5 (or 2, or 3) elements" may mean "greater than 1.5 (or 2, or 3) of the average size of the elements of the 3D FEM".
[0107] Next, an example of filtering the 3D orientation vector will be described.
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
Number
[0108] As described above, the method can be executed in the context of topology optimization. This will be further explained.
[0109] Exemplarily, the method can be executed on 3D modeled objects that have already been optimized by topology optimization. These examples will be explained.
[0110] Exemplarily, the provision of 3D FEM includes the provision of the initial geometry of the modeled object, and the geometry is obtained in advance, that is, from the topology optimization executed prior to this method. This method may or may not include executing this topology optimization. For example, the provision of the initial geometry can include executing topology optimization. Alternatively, the provision of the initial geometry can include retrieving the initial geometry from a memory where the initial geometry was stored (e.g., remotely) after topology optimization.
[0111] As is known per se from the field of industrial design, topology optimization is a technique executed by a computer that bridges the fields of product design and physical simulation. The method is applied to design a modeled object representing a mechanical part formed of a material that is subjected to loads during use and has one or more constrained boundaries. This technique focuses on automatically generating an optimized generative design based on modifying physical properties and behaviors typically simulated by finite element analysis (FEA). More specifically, topology optimization functions, for example, by providing a finite element mesh (FEM) by discretizing the design space into small elements and providing the data associated with the mesh. Next, this technique finds the optimized distribution and layout of materials in a given discrete space by repeatedly 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 acceptable material).
[0112] Figure 9 shows the topology optimization. Figure 9 shows the design optimized during the iterative topology optimization process and shows the design evolution during the optimization process. Figure 9 shows the initial design 92, the design 94 after 5 optimization iterations, the design 96 after 10 optimization iterations, and the final converged design 98 after 25 optimization iterations.
[0113] In the example currently being described, the provided initial geometry obtained from the topology optimization thus has an optimized material distribution with respect to the objective function and constraints. Specifically, referring back to Figure 6, in step 3, the relative density value of each element is obtained from the topology optimization, and the topology optimization calculates all the relative densities of the material on all the finite elements to form a density field representing the optimized distribution and layout of the material for a given set of objective functions and constraints.
[0114] In the example currently being described, the relative density / distribution of the material is not a free variable of the objective function optimized by the orientation optimization. Only the orientation forms the free variables of this function. This means that in step 4, the optimal workflow solves for the nodal displacements of the orientation equilibrium rather than the density equilibrium. Further, a given objective function for the topology optimization may or may not be the same as the objective function for the orientation optimization. For example, the topology optimization can optimize for stiffness, while the orientation optimization can optimize for a different (e.g., for heat conduction) or the same objective function as stiffness. Also, in step 7, the mathematical programming modifies the relative orientation on each element but does not modify the relative density.
[0115] Therefore, in the example currently being described, the result of the method is a 3D modeled object, and the 3D modeled object is topologically optimized, which means that the distribution of the material of the object is optimized (i.e., tends to ensure optimized stiffness against the forces applied to the mechanical part), and Having an optimized orientation field, which means that the orientation field of the physical properties of the material is continuous and tends to conform to multiple forces as described above.
[0116] In other examples, the method performs both of the orientation optimization and topology optimization described above. Nevertheless, the optimization is still called "orientation optimization" for simplicity, but in such examples, the method designs 3D modeled objects through orientation optimization and topology optimization, and may also be called "orientation and topology optimization". In these examples, the physical property is mechanical stiffness (simply called stiffness), and the constitutive law is the compliance matrix. These examples are described.
[0117] Therefore, the method still includes providing an input to the orientation optimization as described above. The providing and input are the same as those described above, except for some variations.
[0118] For example, the material parameters can include parameters representing the mechanical properties of the mechanical part. The material parameters can include, for example, the Young's modulus of the material and / or the Poisson's ratio of the material. Additional parameters such as the outer shell that must be retained, the mechanical constitutive properties of the material, the target mass, and / or the maximum allowable deformation may also be included.
[0119] This method integrates topology optimization and orientation optimization. Thus, the objective function can represent any mechanical property of the function. The optimization can, in particular, maximize stiffness. To that end, the objective function may be a compliance function. Compliance, for a structure, is the reciprocal of the stiffness of the structure. Thus, compliance encompasses the amount of deformation of the structure considered for a particular load case and fixed boundary conditions. Thus, when the optimization process minimizes compliance, this corresponds to maximizing the stiffness of the design for a given mass. Thus, in the example currently being described, the free variables of the objective function can include, in addition to the orientation, the distribution (i.e., the layout) of the mass (e.g., volume fraction) of the material across the 3D FEM. Thus, the optimization can vary the amount of material (e.g., volume fraction) in each finite element of the mesh in order to optimize the objective function. The objective function may depend on material parameters (i.e., the fixed variables of the objective function may include material parameters), and the optimization can be performed under constraints including global quantity constraints. When the amount of material is the volume fraction of the material, the optimization process results in a distribution of volume fractions in finite element units, in addition to the optimized orientation. In such a case, the optimization or the method can further include a further step of material filtering, i.e., (e.g., automatically) determining whether each finite element is (completely) filled with material based on such volume fractions. For example, this can be based on a comparison with a (e.g., predetermined) threshold value (e.g., greater than 0.1 or 0.2 and / or less than 0.9 or 0.8, e.g., about 0.5), and if the volume fraction obtained from the optimization is greater (or less) than the threshold value, the finite element is considered to be completely filled with material (or completely empty).
[0120] Thus, in the example currently being described, the general optimization workflow or the result / output of the method is a design / 3D modeling object, and the design / 3D modeling object is Topologically optimized, which means that the material distribution of the object is optimized (i.e., tends to ensure optimized stiffness against multiple forces), and has an optimized orientation field, which means that the orientation field of the material stiffness is continuous and tends to conform to multiple forces, as described above.
[0121] As described with reference to FIG. 6, the method can integrate the steps of a general optimization workflow, for example, according to any one of the examples described above.
[0122] In the example currently being described, in step 3, since the interpretation of elements with intermediate density can be ambiguous, a general topology optimization workflow can introduce a penalization approach that forces intermediate density to be less efficient overall with respect to structural behavior than elements with lower and upper bounds of 0 or 1 respectively. This has the effect of driving the optimizer to generate a final design with some intermediate densities while still maintaining a continuous formulation, as shown in FIG. 9.
[0123] Referring further to FIG. 6, in step 4, in the example currently being described, the global physical property matrix described above may be a stiffness matrix, in which case the orientation optimization assembles the global stiffness matrix, for example, according to equations (2) to (4). The orientation optimization can then be solved for the nodal displacements of both orientation and density balance, for example, by solving the optimization problem (5). In other words, a general orientation optimization workflow can calculate the orientation field and the deformation of the structure in the current state with respect to the applied forces and boundary conditions.
[0124] Referring further to FIG. 6, in step 5, in the example currently being described, the objective function may be the compliance of the structure. This is the reciprocal of stiffness and thus includes the amount of deformation of the structure considering the load case and boundary conditions. Thus, when the optimization process minimizes compliance, this results in maximizing the stiffness of the design for a given mass. Thus, the derivative of the objective function with respect to the design variables can include the derivative of the objective function with respect to the density of the material in addition to the derivative of the objective function with respect to the orientation. Thus, the orientation workflow can calculate how to change both the relative orientation and density of each element to improve compliance and satisfy the constraints. This can be performed using the well-known classical "adjoint sensitivity analysis" as described above.
[0125] Referring further to FIG. 6, in step 7, in the example currently being described, the optimization workflow can solve the optimization problem (5) as described above, where
Number
Number
Number
Number
[0126] Examples of these presently described examples are described herein. In these examples, the method assembles a global stiffness matrix according to equations (1) through (4), solves the optimization problem (5), and performs orientation filtering according to equations (6) and (7).
[0127] Figure 10 shows a first example among these examples. Specifically, Figure 10 shows the difference between the optimization of only the density field (a), the sequential optimization of the density field and then the orientation field (b), and the simultaneous optimization of both the density field and the orientation field (c), (d), (e). Further, Figure 10 also emphasizes the effect of orientation filtering to ensure the manufacturability of the design by comparing the result obtained without filter regularization (c) with the results obtained with filter regularization (d and e). In (c), orientation filtering is not performed. In (d), orientation filtering is performed with a radius equal to 1.5 elements. In (e), orientation filtering is performed with a radius equal to 3 elements. The radius is represented by circle 100. This shows the ability of this approach to implement length scale control for the design for both density design variables and orientation design variables.
[0128] Figure 11 shows a second example among these examples, where the method is used to optimize the structure of a helicopter frame in an industrial optimization setup (a) with multiple load cases. The use of regularization by filtering improves the uniformity of the angular fiber orientation, prevents numerical minima, and ensures manufacturability. Figure 11 shows a comparison between the simultaneous optimization of topological density deformation variables and fiber angle orientation variables without using fiber orientation filtering (b) and the same optimization using fiber orientation filtering with a radius equal to 1.5 elements (c). The radius is represented by circle 110.
[0129] Figure 12 shows the capabilities of the method applied to 3D optimization problems. A given optimization setup (a) is for a quadcopter drone frame to be optimized with continuous fibers shown as streamlines (b) for a defined design space. Here, filtering with a radius equal to 1.5 elements (shown here as sphere 120 adjacent to the design) is shown.
[0130] As in the example shown in Figure 12, the method can include, for example, displaying the 3D modeled object as streamlines after optimization. This streamline display enables verification of whether the optimized orientation field is actually continuous or, on the contrary, irregular, which is not possible with other displays. This is shown in Figures 13 through 15. Figure 13 shows a GE jet bracket designed by the method. Figure 14 shows a display of the orientation field of the GE jet bracket, which tends to show that the orientation field is sufficiently regular. Figure 15 shows a streamline display of the same orientation field, which shows that the orientation field is characterized by local regions with strong irregularities.
Claims
1. A computer-executed method for designing a 3D modeled object representing a mechanical part formed of a material having anisotropic behavior with respect to physical properties, the processor providing a 3D finite element mesh and data associated with the 3D finite element mesh, the data including a plurality of forces forming a plurality of load cases and boundary conditions and optimizing an orientation field distributed over the 3D finite element mesh by minimizing an objective function that rewards orientation continuity with respect to the physical properties, the optimization being based on the 3D finite element mesh and the data associated with the 3D finite element mesh, the objective function depending on angular variables defined on the 3D finite element mesh, the angular variables describing the fiber orientation in each element of the 3D finite element mesh, and the optimization of the orientation of the physical properties of the material including solving the following minimization problem 【Equation 79】 which includes solving where - Ω is the set of finite elements of the mesh, - αe is the azimuth angle representing the orientation of the finite element of the mesh 【Equation 119】 of, - θe is the elevation angle representing the orientation of the finite element of the mesh 【Equation 119】 of, - ρe is the density of the finite element of the mesh 【Equation 119】 of, - 【Equation 120】 is the objective function to be optimized, ・ LC is a set of multiple load cases formed by multiple forces, ・ The fi, i ∈ LC are load cases, and each fi is a matrix with a size equal to three times the number of nodes in the 3D FEM, representing the load cases in each direction of each node in the 3D FEM, ・ The ui, i ∈ LC are node displacement vectors, and each ui is a matrix with a size equal to three times the number of nodes in the 3D FEM, representing the displacements in each direction of each node in the 3D FEM in response to the load case fi, ・ Vol is the volume of the mechanical part, and Vmax is the maximum allowable volume of the mechanical part, ・ 【Equation 77】 is the overall physical property matrix that accumulates the local physical property matrices Ke(ρe, αe, θe) of each element of the mesh, 【Equation 119】 of the mesh, ・ 【Equation 121】 is the local physical property matrix, ・ C is the stiffness matrix, which is the inverse matrix of the following matrix 【Equation 10】 and, ・ Ei is the Young's modulus in direction i, ・ νij is the Poisson's ratio between direction i and direction j, ・ Gij is the shear modulus between direction i and direction j, 【Equation 122】 where c = cosαe and s = sinαe, 【Equation 61】 and c = cosθe and s = sinθe, 【Equation 64】 and, ・ 【No. 89】 is a state equation that associates the node displacement vector ui with the force forming the load case fi, and the method solves this equation for each load case fi. including A method characterized by
2. The objective function is a non-convex function, and the optimization includes applying an optimization method based on non-convex sensitivity including The method according to claim 1, characterized by
3. The optimization method based on non-convex sensitivity has an angular iteration step, and the angular iteration step is initialized with a value greater than 30 degrees and less than 90 degrees The method according to claim 2, characterized by
4. The angular iteration step decreases in each iteration of the optimization method based on non-convex sensitivity The method according to claim 3, characterized by
5. The optimization includes filtering the orientation field in each iteration of the optimization method based on non-convex sensitivity The method according to claim 2, claim 3, or claim 4, characterized by
6. The filtering of the orientation field includes filtering the angular variable that describes the orientation on each element of the 3D finite element mesh for each element of the 3D finite element mesh The method according to claim 5, characterized by
7. The filtering of the angular variable includes mapping the angular variable onto a 3D orientation vector represented in Cartesian coordinates and filtering the 3D orientation vector remapping the filtered 3D orientation vectors into angular variables The method according to claim 6, characterized in that
8. The filtering of the 3D orientation vectors includes calculating a linear combination of other 3D orientation vectors, and the contribution of each of the other 3D orientation vectors in the linear combination is a decreasing function of the distance between the element of the 3D finite element mesh corresponding to the other 3D orientation vector and the element of the 3D finite element mesh corresponding to the 3D orientation vector The method according to claim 7, characterized in that
9. The decreasing function quantifies the difference between a predetermined radius and the distance The method according to claim 8, characterized in that
10. The predetermined radius is greater than 1.5 elements, or greater than 2 elements, or greater than 3 elements The method according to claim 9, characterized in that
11. The anisotropic behavior is orthotropic behavior The method according to any one of claims 1 to 10, characterized in that
12. A computer program comprising instructions for performing the method according to any one of claims 1 to 11
13. A computer-readable storage medium having recorded thereon the computer program according to claim 12
14. A computer comprising a processor coupled to a memory and a graphical user interface, wherein the memory stores the computer program according to claim 12
Citation Information
Patent Citations
Method for simulating behavior of filler, and method for analyzing physical property of composite material
JP2014226871A
Topology optimization with microstructures
US20190001657A1