IP Library Granted Patent US 9,778,636
Granted Patent B2
US 9,778,636 · App. 14/456,392 · Granted Oct 3, 2017

Method for classifying and correlating simulation components to functional models

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,778,636
App. No.
14/456,392
Granted
Oct 3, 2017
Kind
B2
Abstract

Methods for classifying and correlating simulation components to functional models. A method includes receiving a simulation component library comprising a plurality of simulation components into a memory of the data processing system, parsing the plurality of simulation components from the simulation component library, analyzing a plurality of extracted functions into a plurality of function graphs for each of the plurality of simulation components, composing an extracted functions graph with the plurality of extracted functions of the plurality of function graphs, and storing the extracted functions graph of the plurality of extracted functions in a components-to-function database.

Claims (104)

1. A method for classifying and correlating simulation components to functional models, the method performed by a data processing system and comprising:

receiving a simulation component library comprising a plurality of simulation components into a memory of the data processing system;

parsing the plurality of simulation components from the simulation component library;

analyzing a plurality of extracted functions into a plurality of function graphs for each of the plurality of simulation components, wherein the plurality of extracted functions includes one or more of a plurality of interface-derived functions, a plurality of structural-derived functions, a plurality of equation-derived functions, a plurality of algorithmic-derived functions, a plurality of parameter-derived functions, and a plurality of internal variable-derived functions, and wherein the plurality of function graphs includes one or more of an interface function graph, a structural function graph, an equation function graph, an algorithmic function graph, a parameter function graph, and an internal variable function graph;

composing an extracted functions graph with the plurality of extracted functions of the plurality of function graphs; and

storing the extracted functions graph of the plurality of extracted functions in a components-to-function database.

2. The method of claim 1 , wherein analyzing the plurality of extracted functions into the plurality of function graphs comprises:

performing an interface analysis for each of a plurality of ports in a simulation component to determine the plurality of interface-derived functions in the interface function graph;

performing a structural analysis for each of a plurality of simulation sub-components in the simulation component to determine the plurality of structural-derived functions in the structural function graph;

performing an equation-algorithmic analysis for each of a plurality of equations and a plurality of algorithms in the simulation component to determine the plurality of equation-derived functions in the equation function graph and the plurality of algorithmic-derived functions in the algorithmic function graph;

performing a parameter analysis for each of a plurality of parameters in the simulation component to determine the plurality of parameter-derived functions in the parameter function graph; and

performing an internal variable analysis for each of a plurality of internal variables in the simulation component to determine the plurality of internal variable-derived functions in the internal variable function graph.

3. The method of claim 2 , wherein performing the interface analysis comprises:

parsing a port type from a port of the simulation component;

storing the port type in the memory;

expanding a combinatorial space of the port type in the memory;

assigning the plurality of interface-derived functions to the combinatorial space; and

appending the plurality of interface-derived functions to the interface function graph.

4. The method of claim 2 , wherein performing the structural analysis comprises:

extracting the plurality of structural-derived functions of a plurality of sub-component port types by performing an interface analysis on the simulation sub-component; and

appending the plurality of structural-derived functions to the structural function graph.

5. The method of claim 2 , wherein performing the equation-algorithmic analysis comprises:

parsing a plurality of equation state variables from an equation and a plurality of algorithmic state variables from an algorithm;

performing a dataflow analysis on the plurality of equation state variables of the plurality of equations to determine the plurality of equation-derived functions and a dataflow analysis on the plurality of algorithmic state variables of the plurality of algorithms to determine the plurality of algorithmic-derived functions; and

appending the plurality of equation-derived functions to the equation function graph and the plurality of algorithmic-derived functions to the algorithmic function graph.

6. The method of claim 2 , wherein performing the parameter analysis comprises:

parsing a parameter type and a parameter value from a parameter;

extracting a plurality of port types from the interface analysis of the simulation component;

extracting a plurality of sub-component port types from the structural analysis of the simulation component;

extracting a plurality of equation state variables and a plurality of algorithmic state variables from the equation-algorithmic analysis of the simulation component;

determining the plurality of parameter-derived functions based on a relationship of the parameter type and the parameter value with the plurality of port types, the plurality of sub-component port types, the plurality of equation state variables and the plurality of algorithmic state variables; and

appending the plurality of parameter-derived functions to the parameter function graph.

7. The method of claim 2 , further comprising:

receiving a 1D simulation that includes a plurality of simulation components from the simulation component library; and

producing an architecture model based on the extracted functions graph.

8. A data processing system comprising:

a processor; and

an accessible memory, the data processing system particularly configured to

receive a simulation component library comprising a plurality of simulation components into the accessible memory of the data processing system;

parse the plurality of simulation components from the simulation component library;

analyze a plurality of extracted functions into a plurality of function graphs for each of the plurality of simulation components, wherein the plurality of extracted functions includes one or more of a plurality of interface-derived functions, a plurality of structural-derived functions, a plurality of equation-derived functions, a plurality of algorithmic-derived functions, a plurality of parameter-derived functions, and a plurality of internal variable-derived functions, and wherein the plurality of function graphs includes one or more of an interface function graph, a structural function graph, an equation function graph, an algorithmic function graph, a parameter function graph, and an internal variable function graph;

compose an extracted functions graph with the plurality of extracted functions of the plurality of function graphs; and

store the extracted functions graph of the plurality of extracted functions in a components-to-function database.

9. The data processing system of claim 8 , wherein to analyze the plurality of extracted functions into the plurality of function graphs comprises:

perform an interface analysis for each of a plurality of ports in a simulation component to determine the plurality of interface-derived functions in the interface function graph;

perform a structural analysis for each of a plurality of simulation sub-components in the simulation component to determine the plurality of structural-derived functions in the structural function graph;

perform an equation-algorithmic analysis for each of a plurality of equations and a plurality of algorithms in the simulation component to determine the plurality of equation-derived functions in the equation function graph and the plurality of algorithmic-derived functions in the algorithmic function graph;

perform a parameter analysis for each of a plurality of parameters in the simulation component to determine the plurality of parameter-derived functions in the parameter function graph; and

perform an internal variable analysis for each of a plurality of internal variables in the simulation component to determine the plurality of internal variable-derived functions in the internal variable function graph.

10. The data processing system of claim 9 , wherein to perform the interface analysis comprises:

parse a port type from a port of the simulation component;

store the port type in the accessible memory;

expand a combinatorial space of the port type in the accessible memory;

assign the plurality of interface-derived functions to the combinatorial space; and

append the plurality of interface-derived functions to the interface function graph.

11. The data processing system of claim 9 , wherein performing the structural analysis comprises:

extract the plurality of structural-derived functions of a plurality of sub-component port types by performing an interface analysis on the simulation sub-component; and

append the plurality of structural-derived functions to the structural function graph.

12. The data processing system of claim 9 , wherein performing the equation-algorithmic analysis comprises:

parse a plurality of equation state variables from an equation and a plurality of algorithmic state variables from an algorithm;

perform a dataflow analysis on the plurality of equation state variables of the plurality of equations to determine the plurality of equation-derived functions and a dataflow analysis on the plurality of algorithmic state variables of the plurality of algorithms to determine the plurality of algorithmic-derived functions; and

append the plurality of equation-derived functions to the equation function graph and the plurality of algorithmic-derived functions to the algorithmic function graph.

13. The data processing system of claim 9 , wherein to perform the parameter analysis comprises:

parse a parameter type and a parameter value from a parameter;

extract a plurality of port types from the interface analysis of the simulation component;

extract a plurality of sub-component port types from the structural analysis of the simulation component;

extract a plurality of equation state variables and a plurality of algorithmic state variables from the equation-algorithmic analysis of the simulation component;

determine the plurality of parameter-derived functions based on a relationship of the parameter type and the parameter value with the plurality of port types, the plurality of sub-component port types, the plurality of equation state variables and the plurality of algorithmic state variables; and

append the plurality of parameter-derived functions to the parameter function graph.

14. The data processing system of claim 9 , further comprising:

receive a 1D simulation that includes a plurality of simulation components from the simulation component library; and

produce an architecture model based on the extracted functions graph.

15. A non-transitory computer-readable medium encoded with executable instructions that, when executed, cause one or more data processing systems to:

receive a simulation component library comprising a plurality of simulation components into a memory of the one or more data processing system;

parse the plurality of simulation components from the simulation component library;

analyze a plurality of extracted functions into a plurality of function graphs for each of the plurality of simulation components, wherein the plurality of extracted functions includes one or more of a plurality of interface-derived functions, a plurality of structural-derived functions, a plurality of equation-derived functions, a plurality of algorithmic-derived functions, a plurality of parameter-derived functions, and a plurality of internal variable-derived functions, and wherein the plurality of function graphs includes one or more of an interface function graph, a structural function graph, an equation function graph, an algorithmic function graph, a parameter function graph, and an internal variable function graph;

compose an extracted functions graph with the plurality of extracted functions of the plurality of function graphs; and

store the extracted functions graph of the plurality of extracted functions in a components-to-function database.

16. The computer-readable medium of claim 15 , wherein to analyze the plurality of extracted functions into the plurality of function graphs comprises:

perform an interface analysis for each of a plurality of ports in a simulation component to determine the plurality of interface-derived functions in the interface function graph;

perform a structural analysis for each of a plurality of simulation sub-components in the simulation component to determine the plurality of structural-derived functions in the structural function graph;

perform an equation-algorithmic analysis for each of a plurality of equations and a plurality of algorithms in the simulation component to determine the plurality of equation-derived functions in the equation function graph and the plurality of algorithmic-derived functions in the algorithmic function graph;

perform a parameter analysis for each of a plurality of parameters in the simulation component to determine the plurality of parameter-derived functions in the parameter function graph; and

perform an internal variable analysis for each of a plurality of internal variables in the simulation component to determine the plurality of internal variable-derived functions in the internal variable function graph.

17. The computer-readable medium of claim 16 , wherein to perform the interface analysis comprises:

parse a port type from a port of the simulation component;

store the port type in the memory;

expand a combinatorial space of the port type in the memory;

assign the plurality of interface-derived functions to the combinatorial space; and

append the plurality of interface-derived functions to the interface function graph.

18. The computer-readable medium of claim 16 , wherein performing the equation-algorithmic analysis comprises:

parse a plurality of equation state variables from an equation and a plurality of algorithmic state variables from an algorithm;

perform a dataflow analysis on the plurality of equation state variables of the plurality of equations to determine the plurality of equation-derived functions and a dataflow analysis on the plurality of algorithmic state variables of the plurality of algorithms to determine the plurality of algorithmic-derived functions; and

append the plurality of equation-derived functions to the equation function graph and the plurality of algorithmic-derived functions to the algorithmic function graph.

19. The computer-readable medium of claim 16 , wherein to perform the parameter analysis comprises:

parse a parameter type and a parameter value from a parameter;

extract a plurality of port types from the interface analysis of the simulation component;

extract a plurality of sub-component port types from the structural analysis of the simulation component;

extract a plurality of equation state variables and a plurality of algorithmic state variables from the equation-algorithmic analysis of the simulation component;

determine the plurality of parameter-derived functions based on a relationship of the parameter type and the parameter value with the plurality of port types, the plurality of sub-component port types, the plurality of equation state variables and the plurality of algorithmic state variables; and

append the plurality of parameter-derived functions to the parameter function graph.

20. The computer-readable medium of claim 16 , further comprising:

receive a 1D simulation that includes a plurality of simulation components from the simulation component library; and

produce an architecture model based on the extracted functions graph.

Assignments (3)
CHANGE OF NAME Recorded Dec 3, 2019
From: SIEMENS PRODUCT LIFECYCLE MANAGEMENT SOFTWARE INC.
To: SIEMENS INDUSTRY SOFTWARE INC.
Reel/Frame 051171/0024 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 5, 2014
From: CANEDO, ARQUIMEDES MARTINEZ
To: SIEMENS CORPORATION
Reel/Frame 033676/0803 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 5, 2014
From: SIEMENS CORPORATION
To: SIEMENS PRODUCT LIFECYCLE MANAGEMENT SOFTWARE INC.
Reel/Frame 033676/0887 →