systems and methods for generating reduced order models are provided herein. In embodiments, a set of learning points is identified in a parametric space. A 3d physical solver may be used to perform a simulation for each learning point in the set of learning points to generate a learning data set, where the 3d physical solver is selected from a plurality of compatible 3d physical solvers for simulating different physical aspects of a product or process. The learning data set may be compressed to reduce the learning data set to a smaller set of vectors. Coefficients from the learning data set and the smaller set of vectors may then be used to interpolate a set of coefficients within a design space for the reduced order model.
|
1. A computer-implemented method for generating a reduced order model, comprising:
identifying a set of learning points in a design space derived from two or more different parameters having respective ranges;
using a 3d physical solver to perform a simulation based on a full order model for each learning point to generate a learning data set, the 3d physical solver for simulating a physical aspect of a product or process;
reducing the learning data set to an orthonormal set of vectors via a compression process; and
using mode coefficients from the learning data set and the orthonormal set of vectors to generate the reduced order model, the reduced order model to provide approximated results for the 3d physical solver in the design space based on a linear combination of the orthonormal set of vectors with two or more parameters.
19. A reduced order model (ROM) builder software application stored on a non-transitory computer readable medium and executable by one or more processors, the ROM builder software application, when executed, being configured to:
determine, using an optimal space filling technique, a set of learning points in a design space derived from two or more different parameters having respective ranges;
cause a 3d physical solver to perform a simulation based on a full order model for each learning point to generate a learning data set, the 3d physical solver for simulating a physical, aspect of a product or process;
reducing the learning data set to an orthonormal set of vectors via a compression process; and
use mode coefficients from the learning data set and the orthonormal set of vectors to generate the reduced order model, the reduced order model to provide approximated results for the 3d physical solver in the design space based on a linear combination of the orthonormal set of vectors with two or more parameters.
10. A system for generating a reduced order model, comprising:
one or more processors;
one or more non-transitory computer readable medium; and
a reduced order model (ROM) builder software application stored on the one or more non-transitory computer readable medium and executable by the one or more processors, the ROM builder software application, when executed, being configured to,
receive a set of learning points in a design space derived from two or more different parameters having respective ranges,
cause a 3d physical solver to perform a simulation based on a full order model for each learning point to generate a learning data set, the 3d physical solver for simulating a physical aspect of a product or process,
reduce the learning data set to an orthonormal set of vectors via a compression process, and
use mode coefficients from the learning data set and the orthonormal set of vectors to generate the reduced order model, the reduced order model to provide approximated results for the 3d physical solver in the design space based on a linear combination of the orthonormal set of vectors with the two or more parameters.
2. The computer-implemented method of
comparing a validation solution from the learning data set with a solution approximated using the reduced order model to determine an accuracy level of the reduced order model.
3. The computer-implemented method of
in response to the accuracy level being below a desired value, increasing a number of learning points in the set of learning points and repeating the operations of using the 3d physical solver, reducing the learning data, and using the mode coefficients from the learning data set.
4. The computer-implemented method of
in response to the accuracy level being below a desired value, increasing a number of vectors in the orthonormal set of vectors, and repeating the operations of using the 3d physical solver, reducing the learning data, and using the mode coefficients from the learning data set.
5. The computer-implemented method of
6. The computer-implemented method of
7. The computer-implemented method of
8. The computer-implemented method of
9. The computer-implemented method of
11. The system of
compare a validation solution with a solution from the learning data set approximated using the reduced order model to determine an accuracy level of the reduced order model.
12. The system of
in response to the accuracy level being below a desired value, increase a number of learning points in the set of learning points and repeat the operations of using the 3d physical solver, reducing the learning data, and using the mode coefficients from the learning data set.
13. The system of
in response to the accuracy level being below a desired value, increase a number of vectors in the orthonormal set of vectors and repeat the operations of using the 3d physical solver, reducing the learning data, and using the mode coefficients from the learning data set.
14. The system of
15. The system of
16. The system of
17. The system of
18. The system of
20. The ROM builder software application of
|
This application claims priority to U.S. Provisional Application No. 62/619,970, filed on Jan. 22, 2018, the entirety of which is incorporated by reference herein.
The technology described herein relates generally to parametric reduced order models.
Reduced order modeling is well mastered for many linear problems, such as structural dynamics, electronic circuit analysis, or linear time invariant (LTI) system analysis. However, classical model reduction methods used for linear problems often fail in the case of parametric non-linear models.
Systems and methods for generating reduced order models are provided herein. In embodiments, a set of learning points is identified in a parametric space. A 3D physical solver may be used to perform a simulation for each learning point in the set of learning points to generate a learning data set, where the 3D physical solver is selected from a plurality of compatible 3D physical solvers for simulating different physical aspects of a product or process. The learning data set may be compressed to reduce the learning data set to a smaller set of vectors. Coefficients from the learning data set and the smaller set of vectors may then be used to interpolate a set of coefficients within a design space for the reduced order model.
An illustrative example of a ROM production operation using ANSYS Fluent software is depicted in
An illustrative example of ROM consumption for performing a parametric study is depicted in
An illustrative example of ROM consumption using a ROM viewer software application 602 is depicted in
The illustrated method 100 derives the physics of the simulated problem from a collection of full order model results associated with input parameter values. For this reason, the example method 100 is general and does not require adaption to the specific physics. Specifically, at step 106 a sampling of design points 108 in the parametric space is determined using a design of experiments (DoE) sampling operation, which may, for example, utilize an Optimal Space Filling (OSF) technique. For example, consider the following full order model given by a mesh-based physical solver 102:
f(X,p)+g=0, (1)
where X is the discrete solution of size N, g is a first parameter corresponding to one or several excitations representing the environment of the simulated system, and p is a second parameter describing the internal state of the system. In general, the dependency of X on the parameters p and g is not linear. A design of experiments (DoE) sampling operation, such as OSF, is therefore used at 106 to select a learning set of design points 108 defined in the Cartesian product of g and p variation ranges. The DoE sampling operation may, for example, be performed using the OFS Design of Experiments function provided by the ANSYS DesignXplorer software sold by Ansys, Inc. of Canonsburg, Pa. An example is illustrated in
In the example illustrated in
With reference again to
X=(X0,X1, . . . ,XK), (2)
where Xk is the solution for Equation (1) for p=pk and g=gk for k=0, . . . , K.
At step 114, the learning data set 112 is compressed to reduce the data to an orthonormal set of n vectors 116 (referred to n modes). The compression may, for example, be performed using a truncated singular value decomposition (SVD) operation, such as described in G. H. Golub, et al., Matrix Computations, The John Hopkins University Press, ISBN 0-8018-5414-8 (1996). Referring again to the mathematical example set forth above, an SVD compression technique may be performed to compress X in Equation (2), such that
X≈Ux,
where U=(U1, U2, . . . , Un) is an orthonormal set of n vectors (modes), with n being very small in comparison with the size N of the X vector. N being typically around 10 million values, while n being typically around 10. Each column of X is associated with the corresponding small column x such that
x=UTX and X≈Ux.
The number of modes n computed by the SVD operation at step 114 may, for example, be controlled based on a desired accuracy parameter that may be set by a user.
At step 118, an interpolation operation is used to generate the ROM 120, providing an accurate approximation of the 3D model solution everywhere in the design space. Using an iterative process, a set of n modes U may be determined where the linear combination Ux is an accurate approximation of the full model solution X everywhere in the design space. The interpolation operation at step 118 utilizes the exact set of mode coefficients 122 (x0, x1, . . . xK) that were determined by the full simulation of the learning points 108 at step 110, and uses these mode coefficients 122 to provide an accurate interpolation of the n modes coefficients in the entire design space. The interpolation step 118 may, for example, be performed by building a surrogate model using the genetic aggregation response surface method of the ANSYS DesignXplorer software sold by Ansys, Inc. of Canonsburg, Pa., and refining the model to reach an expected ROM accuracy. The surrogate model may, for example, be generated at step 118 using the procedure described in Ben Salem M., et al., Automatic Selection for General Surrogate Models (2017).
At step 210, the method determines if the level of measured accuracy for the ROM 120 is within an acceptable range. If so, then the final ROM is output and stored at step 212. Otherwise, if a more accurate ROM is desired, the number of DoE design points may be increased at step 214, and the method repeated from DoE step 108.
In certain examples, the method 200 may utilize the leave one out process described in Friedman, J., The Elements of Statistical Learning (Vol. 1, pp 241-249), New York: Springer Series in Statistics (2001).
As explained above with reference to
In embodiments, some or all of the processes depicted in
The illustrated example includes a first plurality of system components 302 (referred to as “ROM creation” components) that may be utilized for ROM production, and a second plurality of system components 304 (referred to as “ROM consumption” components) that may utilize the ROM. Also illustrated is a non-transitory storage unit 306, such as a database, on which the ROM object (e.g., a .romz file) may be stored for subsequent use by one or more of the ROM consumption components 304. In embodiments the ROM object stored in non-transitory storage unit 306 may include a standalone ROM API library, a ROM mesh file, ROM data coherent with ROM setup, and the ROM setup file.
The ROM creation components 302 shown in the illustrated example 300 include a set of one or more training data generation components 308, a set of one or more ROM extraction components 310, and a non-transitory storage unit 312, such as a database, for storing the ROM training data. The training data generation components 308 include a 3D simulation program 314, such as an ANSYS 3D simulation tool, that includes the desired mesh-based physical solver, and one or more full 3D physical models (3D simulation data) from which the ROM is to be built that are stored in a non-transitory storage unit 316, such as a database. The 3D simulation program 314 may, for example, be one of the ANSYS Fluent fluid dynamics solver, the ANSYS Mechanical solver, the ANSYS Icepack solver, the ANSYS CFX solver, or the ANSYS HFSS solver, the ANSYS Maxwell solver, among others. In operation, the 3D simulation program 314 and stored 3D physical model 316 may be used to generate a learning data set 312 (also referred to as training data) by running a full 3D simulation on a set of learning points selected using a design of experiments (DoE) process, as described above with reference to
The ROM extraction components 310 include a ROM extraction program 318 that is configured to perform compression and interpolation operations to generate the ROM 306 from the learning data set 312. The ROM extraction program 318 may, for example, be configured to perform the compression and interpolation operation describe above with reference to steps 114 and 118 of
An example of software tools that may be configured for use as the ROM creation components 302 is set forth in
In embodiments, ROM setup operations 404 may be performed during the ROM productions processes depicted in
With reference first to
As shown in
With reference to the illustrative example of ROM setup depicted in
With reference again to
Examples of software tools that may be utilized for the ROM consumption components 304 are set forth in
As shown in
In the example shown in
It should be appreciated that the technology disclosed herein provides non-intrusive systems and methods for building a parametric ROM of a full solver model. The technology is non-intrusive in the sense that it uses existing field results of the solver and does not require residual evaluation or access to the solver's internal operators. The resultant ROM may be consumed to provide a good approximation of the solver field results much faster than the classical solver for any point taken in the parametric space.
Systems and methods as described herein can be performed in a variety of ways using a variety of components and apparatuses. For example, in one embodiment, a set of learning points is identified in a parametric space (e.g., a space of possible combinations of values for different parameters contained in a mathematical model). A 3D physical solver (e.g., a processing system for that provides a numerical output based on input data representative of physical objects or phenomena using one or more data processors) may be used to perform a simulation (e.g., a computer-implemented imitation of a real-world process or system using one or more models) for each learning point in the set of learning points to generate a learning data set, where the 3D physical solver is selected from a plurality of compatible 3D physical solvers for simulating different physical aspects of a product or process. The learning data set may be compressed to reduce the learning data set to a smaller set of vectors. Coefficients (e.g., numerical values) from the learning data set and the smaller set of vectors may then be used to interpolate a set of coefficients within a design space (e.g., a multidimensional combination or interaction of input variables) for the reduced order model.
The methods and systems described herein may be implemented using any suitable processing system with any suitable combination of hardware, software and/or firmware, such as described below with reference to the non-limiting examples of
A disk controller 860 interfaces one or more disk drives to the system bus 852. These disk drives may be external or internal floppy disk drives such as 862, external or internal CD-ROM, CD-R, CD-RW or DVD drives such as 864, or external or internal hard drives 866.
Each of the element managers, real-time data buffer, conveyors, file input processor, database index shared access memory loader, reference data buffer and data managers may include a software application stored in one or more of the disk drives connected to the disk controller 860, the ROM 856 and/or the RAM 858. Preferably, the processor 854 may access each component as required.
A display interface 868 may permit information from the bus 856 to be displayed on a display 870 in audio, graphic, or alphanumeric formal. Communication with external devices may occur using various communication ports 878.
In addition to the standard computer-type components, the hardware may also include data input devices, such as a keyboard 872, or other input device 874, such as a microphone, remote control, pointer, mouse and/or joystick.
The methods and systems described herein may be implemented on many different types of processing devices by program code comprising program instructions that are executable by the device processing subsystem. The software program instructions may include source code, object code, machine code, or any other stored data that is operable to cause a processing system to perform the methods and operations described herein and may be provided in any suitable language such as C, C++, C#, for example, or any other suitable programming language. Other implementations may also be used, however, such as firmware or even appropriately designed hardware configured to carry out the methods and systems described herein.
The systems' and methods' data (e.g., associations, mappings, data input, data output, intermediate data results, final data results, etc.) may be stored and implemented in one or more different types of computer-implemented data stores, such as different types of storage devices and programming constructs (e.g., RAM, ROM, Flash memory, flat files, databases, programming data structures, programming variables, IF-THEN (or similar type) statement constructs, etc.). It is noted that data structures describe formats for use in organizing and storing data in databases, programs, memory, or other computer-readable media for use by a computer program.
The computer components, software modules, functions, data stores and data structures described herein may be connected directly or indirectly to each other in order to allow the flow of data needed for their operations. It is also noted that a module or processor includes but is not limited to a unit of code that performs a software operation, and can be implemented for example as a subroutine unit of code, or as a software function unit of code, or as an object (as in an object-oriented paradigm), or as an applet, or in a computer script language, or as another type of computer code. The software components and/or functionality may be located on a single computer or distributed across multiple computers depending upon the situation at hand.
While the disclosure has been described in detail and with reference to specific embodiments thereof, it will be apparent to one skilled in the art that various changes and modifications can be made therein without departing from the spirit and scope of the embodiments. Thus, it is intended that the present disclosure cover the modifications and variations of this disclosure provided they come within the scope of the appended claims and their equivalents.
Marguerin, Stephane, Rochette, Michel, Dion, Bernard, Boucinha, Lucas
Patent | Priority | Assignee | Title |
11847389, | Feb 07 2020 | Kioxia Corporation; Kabushiki Kaisha Toshiba | Device and method for optimizing an input parameter in a processing of a semiconductor |
Patent | Priority | Assignee | Title |
9749768, | May 29 2013 | Qualcomm Incorporated | Extracting decomposed representations of a sound field based on a first configuration mode |
20060167784, | |||
20070087756, | |||
20070111246, | |||
20080216038, | |||
20100317420, | |||
20120179426, | |||
20140363481, | |||
20160321384, | |||
20180260503, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Jan 22 2019 | ANSYS, Inc | (assignment on the face of the patent) | / | |||
Mar 22 2019 | MARGUERIN, STEPHANE | ANSYS, Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 048994 | /0344 | |
Mar 22 2019 | ROCHETTE, MICHEL | ANSYS, Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 048994 | /0344 | |
Mar 22 2019 | BOUCINHA, LUCAS | ANSYS, Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 048994 | /0344 | |
Apr 19 2019 | DION, BERNARD | ANSYS, Inc | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 048994 | /0344 |
Date | Maintenance Fee Events |
Jan 22 2019 | BIG: Entity status set to Undiscounted (note the period is included in the code). |
Date | Maintenance Schedule |
Aug 09 2025 | 4 years fee payment window open |
Feb 09 2026 | 6 months grace period start (w surcharge) |
Aug 09 2026 | patent expiry (for year 4) |
Aug 09 2028 | 2 years to revive unintentionally abandoned end. (for year 4) |
Aug 09 2029 | 8 years fee payment window open |
Feb 09 2030 | 6 months grace period start (w surcharge) |
Aug 09 2030 | patent expiry (for year 8) |
Aug 09 2032 | 2 years to revive unintentionally abandoned end. (for year 8) |
Aug 09 2033 | 12 years fee payment window open |
Feb 09 2034 | 6 months grace period start (w surcharge) |
Aug 09 2034 | patent expiry (for year 12) |
Aug 09 2036 | 2 years to revive unintentionally abandoned end. (for year 12) |