US20220405440A1 - Systems and methods for generating reduced order models - Google Patents
Systems and methods for generating reduced order models Download PDFInfo
- Publication number
- US20220405440A1 US20220405440A1 US17/852,874 US202217852874A US2022405440A1 US 20220405440 A1 US20220405440 A1 US 20220405440A1 US 202217852874 A US202217852874 A US 202217852874A US 2022405440 A1 US2022405440 A1 US 2022405440A1
- Authority
- US
- United States
- Prior art keywords
- learning data
- design
- vectors
- data set
- rom
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000013461 design Methods 0.000 claims abstract description 34
- 230000008569 process Effects 0.000 claims abstract description 27
- 238000004088 simulation Methods 0.000 claims abstract description 27
- 239000013598 vector Substances 0.000 claims abstract description 23
- 238000013400 design of experiment Methods 0.000 claims description 27
- 238000005070 sampling Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 7
- 238000010200 validation analysis Methods 0.000 claims description 6
- 230000002776 aggregation Effects 0.000 claims description 4
- 238000004220 aggregation Methods 0.000 claims description 4
- 238000000354 decomposition reaction Methods 0.000 claims description 4
- 230000002068 genetic effect Effects 0.000 claims description 4
- 238000012545 processing Methods 0.000 description 11
- 238000003860 storage Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 6
- 238000007906 compression Methods 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 6
- 230000006835 compression Effects 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 239000012530 fluid Substances 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- 238000002485 combustion reaction Methods 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003324 Six Sigma (6σ) Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012854 evaluation process Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/10—Numerical modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Definitions
- 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.
- linear problems such as structural dynamics, electronic circuit analysis, or linear time invariant (LTI) system analysis.
- LTI linear time invariant
- 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.
- FIG. 1 is a diagram of an example method for generating a reduced order model (ROM) of a full solver model from any one of a plurality of mesh-based physical solvers.
- ROM reduced order model
- FIGS. 2 A- 2 C depict an example of design of experiments (DoE) learning points selected for a thermodynamic model of a combustion engine.
- FIG. 3 is a diagram of another example method for generating a ROM
- FIG. 4 is a diagram of an example system for generating a reduced order model of a full solver model from any one of a plurality of mesh-based physical solvers.
- FIG. 5 depicts an example of software tools that may be configured for use in ROM creation.
- FIGS. 6 and 7 depict examples of software tools that may be used for ROM consumption.
- FIGS. 16 A, 16 B, 17 A and 17 B An illustrative example of ROM consumption for performing a parametric study is depicted in FIGS. 16 A, 16 B, 17 A and 17 B .
- FIGS. 18 A, 18 B and 19 An illustrative example of ROM consumption using a ROM viewer software application 602 is depicted in FIGS. 18 A, 18 B and 19 .
- FIGS. 20 - 21 shown an illustrative example of ROM setup.
- FIGS. 22 , 23 A, 23 B and 23 C depict example computer-implemented environments.
- FIG. 1 is a diagram of an example method 100 for generating a reduced order model (ROM) of a full solver model from any one of a plurality of mesh-based physical solvers 102 .
- a full order 3D model is selected from one of the plurality of mesh-based (3D) physical solvers 102 from which the ROM is to be built.
- the plurality of mesh-based physical solvers 102 may, for example, include any mesh-based solvers for simulating different physical aspects of a product or process, such as fluid dynamic solvers, electrical solvers, thermal solvers, mechanical solvers, etc.
- Examples of the plurality of mesh-based physical solvers 102 may include the ANSYS Fluent fluid dynamics solver, ANSYS Mechanical solver, ANSYS Icepack solver, ANSYS CFX solver, ANSYS HFSS solver, ANSYS Maxwell solver, among others.
- the illustrated example 100 provides a generic and nonintrusive method for building a parametric ROM from any of the different mesh-based physical solvers 102 , where the resultant ROM provides an accurate approximation of the 3D solver solution for given values of input parameters.
- 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.
- 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.
- DoE design of experiments
- OSF Optimal Space Filling
- 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
- p is a second parameter describing the internal state of the system.
- 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, Pennsylvania. An example is illustrated in FIGS. 2 A- 2 C .
- a parametric ROM is to be generated from a full 3D thermodynamic model of a combustion engine.
- the parametric space for the ROM includes two parameters, the engine's inlet velocity ( FIG. 2 A ) and the exhaust temperature of the engine's exhaust pipe ( FIG. 2 B ).
- the inlet velocity may vary from 5 m/s to 20 m/s and the exhaust temperature may vary from 700 k to 900 k.
- an OSF sampling operation is used to select a predetermined number of learning points, as illustrated in FIG. 2 C .
- FIG. 2 C In the example shown in FIG.
- the learning points are selected on the parametric space defined by the range of the inlet velocity parameter (on the y axis) and the exhaust temperature parameter (on the x axis). However, in other examples, more or less learning points may be selected, which may affect the accuracy of the resultant ROM.
- the full order 3D model is used at step 110 to perform a 3D simulation for each of the learning points 108 .
- the result of these simulations is a learning data set 112 (also sometimes referred to as data snapshots.)
- the mesh-based physical solver ( 104 ) is used to solve this equation for the values of parameters g and p included in the set of learning points 108 .
- the learning data set 112 would then be:
- 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).
- SVD singular value decomposition
- U (U 1 , U 2 , . . . , U n ) 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
- 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.
- an interpolation operation is used to generate the ROM 120 , providing an accurate approximation of the 3D model solution everywhere in the design space.
- 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 (x 0 , x 1 , . . . , x K ) 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, Pennsylvania, 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).
- FIG. 3 is a diagram of another example method 200 for generating a reduced order model (ROM) of a full solver model from any one of a plurality of mesh-based physical solvers 102 .
- a “leave one out” evaluation process is used to predict and further refine the accuracy of the ROM 120 .
- this example uses a design of experiments (DoE) process at step 106 to determine a set of learning points 108 on which a full 3D simulation is performed at step 110 to generate a learning data set 112 .
- DoE design of experiments
- a leave one out process is utilized at step 202 to compare a validation solution 204 from the learning data set 112 for one validation point 206 of the learning points 108 .
- the remaining solutions in the learning data set 112 are used in the compression 114 and interpolation 118 steps to generate the ROM 120 , as described above with reference to FIG. 1 .
- the held-out validation point 206 is input to the ROM 120 and the ROM result is compared with the validation solution 204 to measure the projection error of the ROM 120 .
- 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 .
- 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).
- the ROM accuracy may also be affected by the optimal selection of the number of modes n utilized by the SVD compression process 114 , which may be controlled based on a user accuracy parameter.
- two situations for convergence may be considered: (1) the desired user accuracy is reached using a given number of design points and an optimal set of modes; or (2) by increasing the number of modes the level of measured accuracy given by the leave one out approach does not decrease.
- the learning data set was not rich enough to reach the user accuracy, in which case new design points may be chosen to increase the learning data set of design points and further explore the parametric space, then repeating the ROM production process from step 106 .
- FIGS. 1 and/or 3 may be repeated for each field included in ROM setup (for example as described below with reference to FIGS. 5 and 8 - 15 ).
- FIG. 4 is a diagram of an example system 300 for generating a reduced order model (ROM) of a full solver model from any one of a plurality of mesh-based physical solvers.
- the system depicted in FIG. 4 may, for example, be utilized to implement the methods illustrated in FIGS. 1 and 3 .
- 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.
- ROM creation components
- ROM consumption components
- 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 .
- 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.
- 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 FIGS. 1 - 3 .
- DoE design of experiments
- 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 FIG. 1 .
- the ROM extraction program 318 may be further configured to perform the “leave one out” accuracy validation and refinement operations described above with reference to steps 202 , 208 , 210 and 214 of FIG. 3 .
- FIG. 5 An example of software tools that may be configured for use as the ROM creation components 302 is set forth in FIG. 5 .
- a ROM 402 is produced using the ANSYS Fluent, and ANSYS DesignXplorer software applications sold by Ansys, Inc. of Canonsburg, Pennsylvania, along with a ROM viewer software application.
- the ANSYS Fluent software 404 is a computational fluid dynamics tool that includes a 3D physical solver, which may be used to create the learning data set, as described above with reference to step 110 of FIGS. 1 and 3 .
- the ANSYS DesignXplorer software 406 is an integrated application that operates with the ANSYS Workbench software to perform parametric analysis.
- the ANSYS DesignXplorer software 406 includes correlation, design of experiments, response surface creation and analysis, optimization and six sigma analysis.
- a version of the ANSYS DesignXplorer software 406 may, for example, be configured to perform the DoE and ROM extraction operations described above with reference to steps 106 , 114 and 118 of FIGS. 1 and 3 .
- the ROM Viewer software 408 may be a parametric viewer software application, which is configured for evaluating a ROM for any input parameter values and displaying the corresponding results on a desktop or web browser.
- ROM setup operations 404 may be performed during the ROM productions processes depicted in FIGS. 1 and/or 3 .
- ROM setup 404 may be performed (for example using the ANSYS Fluent software 404 ) as part of step 104 depicted in FIGS. 1 and 3 .
- FIGS. 8 - 15 One illustrative example of a ROM production workflow using ANSYS Fluent software 404 is depicted in FIGS. 8 - 15 .
- an illustrative example of ROM setup is depicted in FIGS. 20 - 21 .
- a ROM Builder system is inserted into a Workbench Project Schematic for the ANSYS Fluent software.
- the Design of Experiment properties may be set by (1) selecting the option to edit the Design of Experiment component, and (2) selecting the Design of Experiment node.
- the bounds for each input parameter are then edited, as shown in FIG. 10 , by selecting the input parameter in the Outline View and editing the lower and upper bounds in the Properties View.
- the parameter “P3-V-inlet-2” is shown being set to 0.02 to 1 m s ⁇ circumflex over ( ) ⁇ -1, and the upper and lower bounds for the parameters “P1-temperature-1,” “P2-temperature-2”, and “P4-V-inlet-1,” may be similarly edited.
- the design points (DP) in the Design of Experiments may then be updated to reflect the edited parameters by selecting the Update button in the Design of Experiments component, as shown in FIG. 11 , producing a snapshot file for each design point.
- the generated snapshot files may be verified, as shown in FIG. 12 , by selecting View>Files in the Project tab and right-clicking on each snapshot file to view its contents.
- the ROM may be produced in the illustrated example by selecting the ROM Builder>Edit component from the project schematic, selecting ROM Builder from the Outline view, selecting Fluent (FLU) as the solver system in the Properties component, and then selecting Update from the toolbar.
- the ROM may then be exported from the toolbar and saved, as shown in FIG. 14 .
- the Log File for the generated ROM may be accessed, as shown in FIG. 15 , by selecting the Show Advanced Options function from the toolbar, selecting the ROM Builder node from the Outline view, and then selecting the ROM .log file from the properties view.
- export formats there may be two types of export formats, such as a .romz format to be imported in ANSYS products (such as Workbench or ROM Viewer), and a .fmu file format to be imported in tools supporting the fmi 2.0 standard implementation (Such as the ANSYS Twin Builder).
- FIG. 20 an example ROM Setup template is illustrated in FIG. 20 .
- ROM setup is about associating physical results (selected from among possible mesh-based results exposed by the 3D solver) with an area of interest in the geometric model. As illustrated in FIG. 20 , this association defines a ROM Setup entry. A ROM result is available for each ROM Setup entry during consumption workflows.
- some ROM Setup entries may be grouped in different ways to produce an associated ROM, as illustrated in FIG. 21 which shows an example ROM Setup implementation in Fluent.
- the ROM consumption components 304 may include a wide variety of applications, including for example Internet of Things (IoT) and digital twins applications.
- IoT Internet of Things
- FIG. 4 shows that the ROM 306 may be utilized by one or more ROM post-processing and/or system tools 320 , 322 to generate simulation data 324 .
- a ROM post-processing tool 320 may, for example, be a ROM viewer application, or a post-processing application for a 3D simulation application (e.g., ANSYS Fluent, ANSYS Mechanical, etc.) that is configured to import and reuse a ROM as a component of a more complex model or as a part of a multi-physics simulation.
- 3D simulation application e.g., ANSYS Fluent, ANSYS Mechanical, etc.
- An example of a system tool 322 is the ANSYS Simplorer software sold by Ansys, Inc. of Canonsburg, Pennsylvania.
- a system simulation several components may be linked together to modelize a full system.
- one component may be a 3D simulation performed using the ANSYS Fluent software.
- the ROM application in this context may, for example, replace a component of the full system modelization, enabling system simulation to take advantage of 3D physic results accuracy in real time.
- FIG. 6 illustrates an example 500 in which a ROM 502 is utilized to perform a parametric study using the ANSYS Fluent and DesignXplorer software applications 504 , 506 . If the example shown in FIG. 6 were performed without the use of ROM 502 , it would depict a standard optimization workflow where the user defines a parametric simulation in ANSYS Fluent and then uses ANSYS DesignXplorer to run an optimization process.
- the ANSYS DesignXplorer software would drive ANSYS Fluent to solve the model for various input parameter values until it reaches the goal of the parametric study (e.g., to minimize an output parameter.)
- each simulation may cost hours, if not days of CPU time.
- the ROM 502 is imported into ANSYS Fluent, which is instructed to evaluate the ROM (instead of ANSYS Fluent performing a full simulation for each new input parameter configuration.)
- the parametric study is performed much quicker, for example with each point being computed within a few seconds on standard hardware.
- FIGS. 16 - 17 One example of ROM consumption for performing a parametric study is depicted in FIGS. 16 - 17 .
- a generated ROM may be selected for evaluation using the ANSYS Fluent software by first creating a new workbench project, inserting a Fluent system, selecting the Setup>Import ROM operation, and then selecting the desired ROM file. An evaluation may then be run, as shown in FIG. 16 B , by selecting the Solution>Update operation, and then running a ROM evaluation instead of a real solution.
- An example of a generated evaluation and contour display is shown in FIG. 17 .
- FIG. 7 illustrates an example 600 in which a ROM viewer application 602 is utilized to perform a what/if analysis based on ROM results.
- a ROM viewer software application 602 may be a parametric viewer software application, which is configured for evaluating a ROM for any input parameter values and displaying the corresponding results on a desktop or web browser.
- FIGS. 18 - 19 One example of ROM consumption using a ROM viewer software application 602 is depicted in FIGS. 18 - 19 .
- a ROM file is selected for viewing in the ROM Viewer application, and data is loaded to the Viewer by selecting the Validate operation.
- An example ROM Viewer operation is shown in FIG. 19 , where a user may set the input parameter values, select a result to display, and then select the Evaluate operation.
- the resultant display may be manipulated for evaluation, for example by zooming in and out, rotating the object in the display field, or performing a translation operation.
- 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.
- 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
- 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
- a design space e.g., a multidimensional combination or interaction of input variables
- FIG. 22 depicts at 700 a computer-implemented environment wherein users 702 can interact with a system 704 hosted on one or more servers 706 through a network 708 .
- the system 704 contains software operations or routines.
- the users 702 can interact with the system 704 through a number of ways, such as over one or more networks 708 .
- One or more servers 706 accessible through the network(s) 708 can host system 704 . It should be understood that the system 704 could also be provided on a stand-alone computer for access by a user.
- FIGS. 23 A, 23 B, and 23 C depict example systems for use in implementing a system.
- FIG. 23 A depicts an exemplary system 800 that includes a standalone computer architecture where a processing system 802 (e.g., one or more computer processors) includes a system 804 being executed on it.
- the processing system 802 has access to a non-transitory computer-readable memory 806 in addition to one or more data stores 808 .
- the one or more data stores 808 may contain first data 810 as well as second data 812 .
- FIG. 23 B depicts a system 820 that includes a client server architecture.
- One or more user PCs 822 accesses one or more servers 824 running a system 826 on a processing system 827 via one or more networks 828 .
- the one or more servers 824 may access a non-transitory computer readable memory 830 as well as one or more data stores 832 .
- the one or more data stores 832 may contain first data 834 as well as second data 836 .
- FIG. 23 C shows a block diagram of exemplary hardware for a standalone computer architecture 850 , such as the architecture depicted in FIG. 23 A , that may be used to contain and/or implement the program instructions of system embodiments of the present disclosure.
- a bus 852 may serve as the information highway interconnecting the other illustrated components of the hardware.
- a processing system 854 labeled CPU (central processing unit) e.g., one or more computer processors
- CPU central processing unit
- a non-transitory computer-readable storage medium such as read only memory (ROM) 856 and random access memory (RAM) 858 , may be in communication with the processing system 854 and may contain one or more programming instructions.
- ROM read only memory
- RAM random access memory
- Program instructions may be stored on a non-transitory computer-readable storage medium such as magnetic disk, optical disk, recordable memory device, flash memory, or other physical storage medium.
- Computer instructions may also be communicated via a communications signal, or a modulated carrier wave, e.g., such that the instructions may then be stored on a non-transitory computer-readable storage medium.
- 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 .
- 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 .
- 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.
- 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 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.).
- 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.
- 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.
- 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.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Geometry (AREA)
- Computer Hardware Design (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Genetics & Genomics (AREA)
- Computing Systems (AREA)
- Physiology (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Processing Or Creating Images (AREA)
Abstract
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.
Description
- This application is a continuation application of a U.S. patent application Ser. No. 16/253,635 filed on Jan. 22, 2019, which 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.
-
FIG. 1 is a diagram of an example method for generating a reduced order model (ROM) of a full solver model from any one of a plurality of mesh-based physical solvers. -
FIGS. 2A-2C depict an example of design of experiments (DoE) learning points selected for a thermodynamic model of a combustion engine. -
FIG. 3 is a diagram of another example method for generating a ROM -
FIG. 4 is a diagram of an example system for generating a reduced order model of a full solver model from any one of a plurality of mesh-based physical solvers. -
FIG. 5 depicts an example of software tools that may be configured for use in ROM creation. -
FIGS. 6 and 7 depict examples of software tools that may be used for ROM consumption. - An illustrative example of a ROM production operation using ANSYS Fluent software is depicted in
FIGS. 8, 9, 10, 11A, 11B, 12A, 12B, 13, 14A, 14B, 15A and 15B . - An illustrative example of ROM consumption for performing a parametric study is depicted in
FIGS. 16A, 16B, 17A and 17B . - An illustrative example of ROM consumption using a ROM
viewer software application 602 is depicted inFIGS. 18A, 18B and 19 . -
FIGS. 20-21 shown an illustrative example of ROM setup. -
FIGS. 22, 23A, 23B and 23C depict example computer-implemented environments. -
FIG. 1 is a diagram of anexample method 100 for generating a reduced order model (ROM) of a full solver model from any one of a plurality of mesh-basedphysical solvers 102. Atstep 104, afull order 3D model is selected from one of the plurality of mesh-based (3D)physical solvers 102 from which the ROM is to be built. The plurality of mesh-basedphysical solvers 102 may, for example, include any mesh-based solvers for simulating different physical aspects of a product or process, such as fluid dynamic solvers, electrical solvers, thermal solvers, mechanical solvers, etc. Examples of the plurality of mesh-basedphysical solvers 102 may include the ANSYS Fluent fluid dynamics solver, ANSYS Mechanical solver, ANSYS Icepack solver, ANSYS CFX solver, ANSYS HFSS solver, ANSYS Maxwell solver, among others. Advantageously, the illustrated example 100 provides a generic and nonintrusive method for building a parametric ROM from any of the different mesh-basedphysical solvers 102, where the resultant ROM provides an accurate approximation of the 3D solver solution for given values of input parameters. - 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, theexample method 100 is general and does not require adaption to the specific physics. Specifically, at step 106 a sampling ofdesign 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, Pennsylvania. An example is illustrated inFIGS. 2A-2C . - In the example illustrated in
FIGS. 2A-2C , a parametric ROM is to be generated from a full 3D thermodynamic model of a combustion engine. As illustrated inFIGS. 2A and 2B , the parametric space for the ROM includes two parameters, the engine's inlet velocity (FIG. 2A ) and the exhaust temperature of the engine's exhaust pipe (FIG. 2B ). In the illustrated example, the inlet velocity may vary from 5 m/s to 20 m/s and the exhaust temperature may vary from 700 k to 900 k. From this parametric space, an OSF sampling operation is used to select a predetermined number of learning points, as illustrated inFIG. 2C . In the example shown inFIG. 2C , twenty learning points are selected on the parametric space defined by the range of the inlet velocity parameter (on the y axis) and the exhaust temperature parameter (on the x axis). However, in other examples, more or less learning points may be selected, which may affect the accuracy of the resultant ROM. - With reference again to
FIG. 1 , once the set oflearning points 108 has been selected, thefull order 3D model is used atstep 110 to perform a 3D simulation for each of thelearning points 108. The result of these simulations is a learning data set 112 (also sometimes referred to as data snapshots.) Referring to the example full order model represented above by Equation (1), the mesh-based physical solver (104) is used to solve this equation for the values of parameters g and p included in the set oflearning points 108. Consider a steady state case with the following set of learning points for g and p: (g0, g1, . . . , gK) and (p0, p1, . . . , pK). The learning data set 112 would then be: -
X=(X 0 , X 1 , . . . , X K), (2) - where Xk is the solution for Equation (1) for p=pk and g=gk for k=0, . . . , K.
- At
step 114, the learningdata 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 theROM 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 atstep 118 utilizes the exact set of mode coefficients 122 (x0, x1, . . . , xK) that were determined by the full simulation of the learning points 108 atstep 110, and uses thesemode coefficients 122 to provide an accurate interpolation of the n modes coefficients in the entire design space. Theinterpolation 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, Pennsylvania, and refining the model to reach an expected ROM accuracy. The surrogate model may, for example, be generated atstep 118 using the procedure described in Ben Salem M., et al., Automatic Selection for General Surrogate Models (2017). -
FIG. 3 is a diagram of anotherexample method 200 for generating a reduced order model (ROM) of a full solver model from any one of a plurality of mesh-basedphysical solvers 102. In this example, a “leave one out” evaluation process is used to predict and further refine the accuracy of theROM 120. Like the method described above with reference toFIG. 1 , this example uses a design of experiments (DoE) process atstep 106 to determine a set of learningpoints 108 on which a full 3D simulation is performed atstep 110 to generate alearning data set 112. In this example, however, a leave one out process is utilized atstep 202 to compare avalidation solution 204 from the learningdata set 112 for onevalidation point 206 of the learning points 108. The remaining solutions in the learningdata set 112 are used in thecompression 114 andinterpolation 118 steps to generate theROM 120, as described above with reference toFIG. 1 . Then, atstep 208, the held-outvalidation point 206 is input to theROM 120 and the ROM result is compared with thevalidation solution 204 to measure the projection error of theROM 120. - At
step 210, the method determines if the level of measured accuracy for theROM 120 is within an acceptable range. If so, then the final ROM is output and stored atstep 212. Otherwise, if a more accurate ROM is desired, the number of DoE design points may be increased atstep 214, and the method repeated fromDoE 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
FIG. 1 , the ROM accuracy may also be affected by the optimal selection of the number of modes n utilized by theSVD compression process 114, which may be controlled based on a user accuracy parameter. Thus, two situations for convergence may be considered: (1) the desired user accuracy is reached using a given number of design points and an optimal set of modes; or (2) by increasing the number of modes the level of measured accuracy given by the leave one out approach does not decrease. In the second situation, the learning data set was not rich enough to reach the user accuracy, in which case new design points may be chosen to increase the learning data set of design points and further explore the parametric space, then repeating the ROM production process fromstep 106. - In embodiments, some or all of the processes depicted in
FIGS. 1 and/or 3 may be repeated for each field included in ROM setup (for example as described below with reference toFIGS. 5 and 8-15 ). -
FIG. 4 is a diagram of anexample system 300 for generating a reduced order model (ROM) of a full solver model from any one of a plurality of mesh-based physical solvers. The system depicted inFIG. 4 may, for example, be utilized to implement the methods illustrated inFIGS. 1 and 3 . - 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 theROM consumption components 304. In embodiments the ROM object stored innon-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 trainingdata generation components 308, a set of one or moreROM extraction components 310, and anon-transitory storage unit 312, such as a database, for storing the ROM training data. The trainingdata generation components 308 include a3D simulation program 314, such as anANSYS 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 anon-transitory storage unit 316, such as a database. The3D 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, the3D simulation program 314 and stored 3Dphysical 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 toFIGS. 1-3 . - The
ROM extraction components 310 include aROM extraction program 318 that is configured to perform compression and interpolation operations to generate theROM 306 from the learningdata set 312. TheROM extraction program 318 may, for example, be configured to perform the compression and interpolation operation describe above with reference tosteps FIG. 1 . In certain embodiments, theROM extraction program 318 may be further configured to perform the “leave one out” accuracy validation and refinement operations described above with reference tosteps FIG. 3 . - An example of software tools that may be configured for use as the
ROM creation components 302 is set forth inFIG. 5 . In the example 400 illustrated inFIG. 5 , aROM 402 is produced using the ANSYS Fluent, and ANSYS DesignXplorer software applications sold by Ansys, Inc. of Canonsburg, Pennsylvania, along with a ROM viewer software application. The ANSYSFluent software 404 is a computational fluid dynamics tool that includes a 3D physical solver, which may be used to create the learning data set, as described above with reference to step 110 ofFIGS. 1 and 3 . TheANSYS DesignXplorer software 406 is an integrated application that operates with the ANSYS Workbench software to perform parametric analysis. TheANSYS DesignXplorer software 406 includes correlation, design of experiments, response surface creation and analysis, optimization and six sigma analysis. A version of theANSYS DesignXplorer software 406 may, for example, be configured to perform the DoE and ROM extraction operations described above with reference tosteps FIGS. 1 and 3 . TheROM Viewer software 408 may be a parametric viewer software application, which is configured for evaluating a ROM for any input parameter values and displaying the corresponding results on a desktop or web browser. - In embodiments,
ROM setup operations 404 may be performed during the ROM productions processes depicted inFIGS. 1 and/or 3 . For example, in certainembodiments ROM setup 404 may be performed (for example using the ANSYS Fluent software 404) as part ofstep 104 depicted inFIGS. 1 and 3 . One illustrative example of a ROM production workflow using ANSYSFluent software 404 is depicted inFIGS. 8-15 . In addition, an illustrative example of ROM setup is depicted inFIGS. 20-21 . - With reference first to
FIGS. 8-15 , in the first step of the illustrated example, shown inFIG. 8 , a ROM Builder system is inserted into a Workbench Project Schematic for the ANSYS Fluent software. Then, as depicted inFIG. 9 , the Design of Experiment properties may be set by (1) selecting the option to edit the Design of Experiment component, and (2) selecting the Design of Experiment node. The bounds for each input parameter are then edited, as shown inFIG. 10 , by selecting the input parameter in the Outline View and editing the lower and upper bounds in the Properties View. For instance, in the illustrated example, the parameter “P3-V-inlet-2” is shown being set to 0.02 to 1 m s{circumflex over ( )}-1, and the upper and lower bounds for the parameters “P1-temperature-1,” “P2-temperature-2”, and “P4-V-inlet-1,” may be similarly edited. The design points (DP) in the Design of Experiments may then be updated to reflect the edited parameters by selecting the Update button in the Design of Experiments component, as shown inFIG. 11 , producing a snapshot file for each design point. The generated snapshot files may be verified, as shown inFIG. 12 , by selecting View>Files in the Project tab and right-clicking on each snapshot file to view its contents. - As shown in
FIG. 13 , the ROM may be produced in the illustrated example by selecting the ROM Builder>Edit component from the project schematic, selecting ROM Builder from the Outline view, selecting Fluent (FLU) as the solver system in the Properties component, and then selecting Update from the toolbar. This example operation will build the ROM with default settings, Construction Type=Fixed Number of Modes, Number of Modes=10. The ROM may then be exported from the toolbar and saved, as shown inFIG. 14 . The Log File for the generated ROM may be accessed, as shown inFIG. 15 , by selecting the Show Advanced Options function from the toolbar, selecting the ROM Builder node from the Outline view, and then selecting the ROM .log file from the properties view. In embodiments, there may be two types of export formats, such as a .romz format to be imported in ANSYS products (such as Workbench or ROM Viewer), and a .fmu file format to be imported in tools supporting the fmi 2.0 standard implementation (Such as the ANSYS Twin Builder). - With reference to the illustrative example of ROM setup depicted in
FIGS. 20-21 , an example ROM Setup template is illustrated inFIG. 20 . ROM setup is about associating physical results (selected from among possible mesh-based results exposed by the 3D solver) with an area of interest in the geometric model. As illustrated inFIG. 20 , this association defines a ROM Setup entry. A ROM result is available for each ROM Setup entry during consumption workflows. In addition, some ROM Setup entries may be grouped in different ways to produce an associated ROM, as illustrated inFIG. 21 which shows an example ROM Setup implementation in Fluent. - With reference again to
FIG. 4 , theROM consumption components 304 may include a wide variety of applications, including for example Internet of Things (IoT) and digital twins applications. The example illustrated inFIG. 4 shows that theROM 306 may be utilized by one or more ROM post-processing and/orsystem tools simulation data 324. AROM post-processing tool 320 may, for example, be a ROM viewer application, or a post-processing application for a 3D simulation application (e.g., ANSYS Fluent, ANSYS Mechanical, etc.) that is configured to import and reuse a ROM as a component of a more complex model or as a part of a multi-physics simulation. An example of asystem tool 322 is the ANSYS Simplorer software sold by Ansys, Inc. of Canonsburg, Pennsylvania. In a system simulation, several components may be linked together to modelize a full system. For example, one component may be a 3D simulation performed using the ANSYS Fluent software. The ROM application in this context may, for example, replace a component of the full system modelization, enabling system simulation to take advantage of 3D physic results accuracy in real time. - Examples of software tools that may be utilized for the
ROM consumption components 304 are set forth inFIGS. 6 and 7 .FIG. 6 illustrates an example 500 in which aROM 502 is utilized to perform a parametric study using the ANSYS Fluent andDesignXplorer software applications FIG. 6 were performed without the use ofROM 502, it would depict a standard optimization workflow where the user defines a parametric simulation in ANSYS Fluent and then uses ANSYS DesignXplorer to run an optimization process. The ANSYS DesignXplorer software would drive ANSYS Fluent to solve the model for various input parameter values until it reaches the goal of the parametric study (e.g., to minimize an output parameter.) Without the use ofROM 502, each simulation may cost hours, if not days of CPU time. AddingROM 502 to the illustratedworkflow 500, theROM 502 is imported into ANSYS Fluent, which is instructed to evaluate the ROM (instead of ANSYS Fluent performing a full simulation for each new input parameter configuration.) As a result, the parametric study is performed much quicker, for example with each point being computed within a few seconds on standard hardware. One example of ROM consumption for performing a parametric study is depicted inFIGS. 16-17 . - As shown in
FIG. 16A , a generated ROM may be selected for evaluation using the ANSYS Fluent software by first creating a new workbench project, inserting a Fluent system, selecting the Setup>Import ROM operation, and then selecting the desired ROM file. An evaluation may then be run, as shown inFIG. 16B , by selecting the Solution>Update operation, and then running a ROM evaluation instead of a real solution. An example of a generated evaluation and contour display is shown inFIG. 17 . -
FIG. 7 illustrates an example 600 in which aROM viewer application 602 is utilized to perform a what/if analysis based on ROM results. As explained above, a ROMviewer software application 602 may be a parametric viewer software application, which is configured for evaluating a ROM for any input parameter values and displaying the corresponding results on a desktop or web browser. One example of ROM consumption using a ROMviewer software application 602 is depicted inFIGS. 18-19 . - In the example shown in
FIG. 18 , a ROM file is selected for viewing in the ROM Viewer application, and data is loaded to the Viewer by selecting the Validate operation. An example ROM Viewer operation is shown inFIG. 19 , where a user may set the input parameter values, select a result to display, and then select the Evaluate operation. The resultant display may be manipulated for evaluation, for example by zooming in and out, rotating the object in the display field, or performing a translation operation. - 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
FIGS. 22, 23A, 23B and 23C . -
FIG. 22 depicts at 700 a computer-implemented environment whereinusers 702 can interact with asystem 704 hosted on one ormore servers 706 through anetwork 708. Thesystem 704 contains software operations or routines. Theusers 702 can interact with thesystem 704 through a number of ways, such as over one ormore networks 708. One ormore servers 706 accessible through the network(s) 708 can hostsystem 704. It should be understood that thesystem 704 could also be provided on a stand-alone computer for access by a user. -
FIGS. 23A, 23B, and 23C depict example systems for use in implementing a system. For example,FIG. 23A depicts anexemplary system 800 that includes a standalone computer architecture where a processing system 802 (e.g., one or more computer processors) includes asystem 804 being executed on it. Theprocessing system 802 has access to a non-transitory computer-readable memory 806 in addition to one ormore data stores 808. The one ormore data stores 808 may containfirst data 810 as well assecond data 812. -
FIG. 23B depicts a system 820 that includes a client server architecture. One ormore user PCs 822 accesses one ormore servers 824 running asystem 826 on aprocessing system 827 via one ormore networks 828. The one ormore servers 824 may access a non-transitory computerreadable memory 830 as well as one ormore data stores 832. The one ormore data stores 832 may containfirst data 834 as well assecond data 836. -
FIG. 23C shows a block diagram of exemplary hardware for astandalone computer architecture 850, such as the architecture depicted inFIG. 23A , that may be used to contain and/or implement the program instructions of system embodiments of the present disclosure. Abus 852 may serve as the information highway interconnecting the other illustrated components of the hardware. Aprocessing system 854 labeled CPU (central processing unit) (e.g., one or more computer processors), may perform calculations and logic operations required to execute a program. A non-transitory computer-readable storage medium, such as read only memory (ROM) 856 and random access memory (RAM) 858, may be in communication with theprocessing system 854 and may contain one or more programming instructions. Program instructions may be stored on a non-transitory computer-readable storage medium such as magnetic disk, optical disk, recordable memory device, flash memory, or other physical storage medium. Computer instructions may also be communicated via a communications signal, or a modulated carrier wave, e.g., such that the instructions may then be stored on a non-transitory computer-readable storage medium. - A
disk controller 860 interfaces one or more disk drives to thesystem 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 internalhard 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, theROM 856 and/or theRAM 858. Preferably, theprocessor 854 may access each component as required. - A
display interface 868 may permit information from thebus 856 to be displayed on adisplay 870 in audio, graphic, or alphanumeric formal. Communication with external devices may occur usingvarious communication ports 878. - In addition to the standard computer-type components, the hardware may also include data input devices, such as a
keyboard 872, orother 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.
Claims (20)
1. A computer-implemented method comprising:
identifying a set of design points in a design space for designing a product or process;
generating simulation results as a set of learning data set by simulating a physical aspect of the product or process based on a respective model corresponding to each design point using a physics solver;
compressing the learning data set as an orthonormal set of vectors; and
generating a reduced order model based on the orthonormal set of vectors, the reduced order model to predict simulation results of the physics solver for products or processes corresponding to design points in the design space based on a linear combination of the orthonormal set of vectors.
2. The computer-implemented method of claim 1 , further comprising:
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 claim 2 , further comprising:
in response to the accuracy level below a desired value, increasing the number of design points, and repeating the operations of generating simulation results, compressing the learning data set, and generating a reduced order model.
4. The computer-implemented method of claim 2 , further comprising:
in response to the accuracy level below a desired value, increasing the number of vectors in the orthonormal set of vectors, and repeating the operations of generating simulation results, compressing the learning data set, and generating a reduced order model.
5. The computer-implemented method of claim 1 , wherein the identifying the set of design points comprises using a design of experiments (DoE) sampling operation.
6. The computer-implemented method of claim 1 , wherein the physics solver comprises a three-dimensional physical solver.
7. The computer-implemented method of claim 1 , wherein the compressing the learning data set comprises using a truncated singular value decomposition (SVD) process.
8. The computer-implemented method of claim 1 , wherein the linear combination comprises an interpolation using a genetic aggregation response surface process.
9. The computer-implemented method of claim 1 , wherein the generating a reduced order model comprises using mode coefficients from the learning data set and the orthonormal set of vectors.
10. The computer-implemented method of claim 1 , wherein the design space is defined by two or more different parameters having respective ranges.
11. A system comprising:
a memory storing instructions;
one or more processors coupled to the memory, the one or more processors executing the instructions from the memory to perform a method comprises:
identifying a set of design points in a design space for designing a product or process;
generating simulation results as a set of learning data set by simulating a physical aspect of the product or process based on a respective model corresponding to each design point using a physics solver;
compressing the learning data set as an orthonormal set of vectors; and
generating a reduced order model based on the orthonormal set of vectors, the reduced order model to predict simulation results of the physics solver for products or processes corresponding to design points in the design space based on a linear combination of the orthonormal set of vectors.
12. The system of claim 11 , wherein the identifying the set of design points comprises using a design of experiments (DoE) sampling operation.
13. The system of claim 11 , wherein the compressing the learning data set comprises using a truncated singular value decomposition (SVD) process.
14. The system of claim 11 , wherein the linear combination comprises an interpolation using a genetic aggregation response surface process.
15. The system of claim 11 , wherein the generating a reduced order model comprises using mode coefficients from the learning data set and the orthonormal set of vectors.
16. A non-transitory computer-readable medium storing instructions for commanding one or more processors to perform a method comprising:
identifying a set of design points in a design space for designing a product or process;
generating simulation results as a set of learning data set by simulating a physical aspect of the product or process based on a respective model corresponding to each design point using a physics solver;
compressing the learning data set as an orthonormal set of vectors; and
generating a reduced order model based on the orthonormal set of vectors, the reduced order model to predict simulation results of the physics solver for products or processes corresponding to design points in the design space based on a linear combination of the orthonormal set of vectors.
17. The non-transitory computer-readable medium of claim 16 , wherein the identifying the set of design points comprises using a design of experiments (DoE) sampling operation.
18. The non-transitory computer-readable medium of claim 16 , wherein the compressing the learning data set comprises using a truncated singular value decomposition (SVD) process.
19. The non-transitory computer-readable medium of claim 16 , wherein the linear combination comprises an interpolation using a genetic aggregation response surface process.
20. The non-transitory computer-readable medium of claim 16 , wherein the generating a reduced order model comprises using mode coefficients from the learning data set and the orthonormal set of vectors.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/852,874 US20220405440A1 (en) | 2018-01-22 | 2022-06-29 | Systems and methods for generating reduced order models |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862619970P | 2018-01-22 | 2018-01-22 | |
US16/253,635 US11409923B1 (en) | 2018-01-22 | 2019-01-22 | Systems and methods for generating reduced order models |
US17/852,874 US20220405440A1 (en) | 2018-01-22 | 2022-06-29 | Systems and methods for generating reduced order models |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/253,635 Continuation US11409923B1 (en) | 2018-01-22 | 2019-01-22 | Systems and methods for generating reduced order models |
Publications (1)
Publication Number | Publication Date |
---|---|
US20220405440A1 true US20220405440A1 (en) | 2022-12-22 |
Family
ID=82705966
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/253,635 Active 2040-06-10 US11409923B1 (en) | 2018-01-22 | 2019-01-22 | Systems and methods for generating reduced order models |
US17/852,874 Pending US20220405440A1 (en) | 2018-01-22 | 2022-06-29 | Systems and methods for generating reduced order models |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/253,635 Active 2040-06-10 US11409923B1 (en) | 2018-01-22 | 2019-01-22 | Systems and methods for generating reduced order models |
Country Status (1)
Country | Link |
---|---|
US (2) | US11409923B1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11409923B1 (en) * | 2018-01-22 | 2022-08-09 | Ansys, Inc | Systems and methods for generating reduced order models |
JP7344149B2 (en) * | 2020-02-07 | 2023-09-13 | キオクシア株式会社 | Optimization device and optimization method |
WO2024107249A1 (en) * | 2022-11-14 | 2024-05-23 | Siemens Industry Software Netherlands B.V. | Accelerated multiphysics assessment for airbag design |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140079297A1 (en) * | 2012-09-17 | 2014-03-20 | Saied Tadayon | Application of Z-Webs and Z-factors to Analytics, Search Engine, Learning, Recognition, Natural Language, and Other Utilities |
US9311670B2 (en) * | 2004-09-10 | 2016-04-12 | Steven M. Hoffberg | Game theoretic prioritization system and method |
US20160231716A1 (en) * | 2015-02-10 | 2016-08-11 | General Electric Company | System of systems optimizing control for achieving performance and risk outcomes in physical and business operations of connected and interrelated industrial systems |
US20160306908A1 (en) * | 2005-08-19 | 2016-10-20 | Comsol Ab | System and method for accessing settings in a multiphysics modeling system using a model tree |
US9818136B1 (en) * | 2003-02-05 | 2017-11-14 | Steven M. Hoffberg | System and method for determining contingent relevance |
US20180024215A1 (en) * | 2016-07-21 | 2018-01-25 | Yudong Zhu | Signal coding and structure modeling for imaging |
US20180307786A1 (en) * | 2017-04-23 | 2018-10-25 | Cmlabs Simulations Inc. | System and method for executing a simulation of a constrained multi-body system |
US11409923B1 (en) * | 2018-01-22 | 2022-08-09 | Ansys, Inc | Systems and methods for generating reduced order models |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9208270B2 (en) * | 2000-08-02 | 2015-12-08 | Comsol Ab | System and method for establishing bidirectional links between multiphysics modeling and design systems |
US7752588B2 (en) * | 2005-06-29 | 2010-07-06 | Subhasis Bose | Timing driven force directed placement flow |
US8874477B2 (en) * | 2005-10-04 | 2014-10-28 | Steven Mark Hoffberg | Multifactorial optimization system and method |
US7831417B2 (en) * | 2005-11-14 | 2010-11-09 | Gen-Probe Incorporated | Parametric calibration method |
WO2013091085A1 (en) * | 2011-12-23 | 2013-06-27 | The Royal Institution For The Advancement Of Learning/Mcgill University | Bone replacement implants with mechanically biocompatible cellular material |
US9716959B2 (en) * | 2013-05-29 | 2017-07-25 | Qualcomm Incorporated | Compensating for error in decomposed representations of sound fields |
WO2015095785A1 (en) * | 2013-12-19 | 2015-06-25 | University Of Louisville Research Foundation, Inc. | Multi-scale mesh modeling software products and controllers |
US10977397B2 (en) * | 2017-03-10 | 2021-04-13 | Altair Engineering, Inc. | Optimization of prototype and machine design within a 3D fluid modeling environment |
-
2019
- 2019-01-22 US US16/253,635 patent/US11409923B1/en active Active
-
2022
- 2022-06-29 US US17/852,874 patent/US20220405440A1/en active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9818136B1 (en) * | 2003-02-05 | 2017-11-14 | Steven M. Hoffberg | System and method for determining contingent relevance |
US9311670B2 (en) * | 2004-09-10 | 2016-04-12 | Steven M. Hoffberg | Game theoretic prioritization system and method |
US20160306908A1 (en) * | 2005-08-19 | 2016-10-20 | Comsol Ab | System and method for accessing settings in a multiphysics modeling system using a model tree |
US20140079297A1 (en) * | 2012-09-17 | 2014-03-20 | Saied Tadayon | Application of Z-Webs and Z-factors to Analytics, Search Engine, Learning, Recognition, Natural Language, and Other Utilities |
US20160231716A1 (en) * | 2015-02-10 | 2016-08-11 | General Electric Company | System of systems optimizing control for achieving performance and risk outcomes in physical and business operations of connected and interrelated industrial systems |
US20180024215A1 (en) * | 2016-07-21 | 2018-01-25 | Yudong Zhu | Signal coding and structure modeling for imaging |
US20180307786A1 (en) * | 2017-04-23 | 2018-10-25 | Cmlabs Simulations Inc. | System and method for executing a simulation of a constrained multi-body system |
US11409923B1 (en) * | 2018-01-22 | 2022-08-09 | Ansys, Inc | Systems and methods for generating reduced order models |
Also Published As
Publication number | Publication date |
---|---|
US11409923B1 (en) | 2022-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220405440A1 (en) | Systems and methods for generating reduced order models | |
US11449670B2 (en) | Iterative development and/or scalable deployment of a spreadsheet-based formula algorithm | |
Chandran et al. | TinkerCell: modular CAD tool for synthetic biology | |
CN107016154A (en) | Effectively solved with the Structural Dynamics in the case of modal damping in physical coordinates | |
US8046207B2 (en) | Digital effects analysis in modeling environments | |
Richardson et al. | EasyVVUQ: a library for verification, validation and uncertainty quantification in high performance computing | |
US9047165B1 (en) | Multiversion model versioning system and method | |
AU2014248132B2 (en) | System and method for concurrent multi-user CAx workflow | |
Konur et al. | A property-driven methodology for formal analysis of synthetic biology systems | |
RU2676405C2 (en) | Method for automated design of production and operation of applied software and system for implementation thereof | |
WO2004006141A1 (en) | Method and system for processing graphics simulation data | |
US20180060457A1 (en) | Method and system for comparing block diagrams | |
Bunus | A simulation and decision framework for selection of numerical solvers in scientific computing | |
Jayaram et al. | Reorganizing CAD assembly models (as-designed) for manufacturing simulations and planning (as-built) | |
Manca et al. | Metabolic P systems: A discrete model for biological dynamics | |
Willkomm et al. | A new user interface for ADiMat: toward accurate and efficient derivatives of MATLAB programmes with ease of use | |
Il’in et al. | About performance and intellectuality of supercomputer modeling | |
CN115659791A (en) | High-performance virtual simulation method and system driven by digital twin data model | |
Agarwal et al. | Reveal: An extensible reduced-order model builder for simulation and modeling | |
Rybnytska et al. | PGFMU: Integrating data management with physical system modelling | |
Alsayyari | Adaptive data-driven reduced-order modelling techniques for nuclear reactor analysis | |
US11922314B1 (en) | Systems and methods for building dynamic reduced order physical models | |
CN113806859B (en) | Rocket engine multi-mode static computing system, rocket engine multi-mode static computing method, storage medium and rocket engine multi-mode static computing device | |
Buchner et al. | An Artificial-Intelligence-Based Method to Automatically Create Interpretable Models from Data Targeting Embedded Control Applications | |
Ishiwatari et al. | " Gtool5": a Fortran90 library of input/output interfaces for self-descriptive multi-dimensional numerical data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: ADVISORY ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |