Spreadsheet-Based Graphical User Interface for Dynamic System Modeling and Simulation
A method, computer-readable storage medium, and computer system for modeling a dynamic system comprising a plurality of components are disclosed. A computer is used to provide a spreadsheet environment. A plurality of shape objects are defined within the spreadsheet environment. The shape objects represent the components of the dynamic system, and at least one shape object has a behavioral characteristic that is associated with a physical property of a component of the dynamic system. The spreadsheet environment is used to define relationships between the components of the dynamic system using connectors that define connections between the shape objects.
1 . A method of modeling a dynamic system comprising a plurality of components, the method comprising:
using a computer to provide a spreadsheet environment;
defining a plurality of shape objects within the spreadsheet environment, the shape objects representing the components of the dynamic system, at least one shape object having a behavioral characteristic that is associated with a physical component of the dynamic system; and
using the spreadsheet environment to define relationships between the components of the dynamic system using connectors that define connections between the shape objects.
2 . The method of claim 1 , further comprising:
defining a plurality of building block objects within the spreadsheet environment, each building block object representing a component of the dynamic system and having an attribute;
using the spreadsheet environment to specify connections between building block objects; and
generating a model description file as a function of the building block objects and the connections between building block objects.
3 . The method of claim 2 , further comprising:
providing at least one worksheet within the spreadsheet environment;
defining at least one first superblock object associated with at least one worksheet, the first superblock object comprising at least one connection point and at least one building block object; and
for each first superblock object, defining at least one relationship between components of the dynamic system using a connector that defines a connection between a first component within the first superblock object and a second component outside the first superblock object.
4 . The method of claim 3 , wherein at least one first superblock object comprises a second superblock object.
5 . The method of claim 3 , further comprising, for each combination of a first superblock object and a second component outside the first superblock object:
identifying at least one connection point of the first superblock object that meets a requirement that an input connection point of the second component must be connected to exactly one output connection point of the first superblock object; and
for each identified connection point, determining whether to define a connection between the identified connection point and one or more connection points of the second component.
6 . The method of claim 2 , further comprising persisting the attributes of the building block objects within shape objects.
7 . The method of claim 1 , further comprising:
receiving, in the computer, a model description file; and
using the computer to define the plurality of shape objects within the spreadsheet environment and to define the relationships between the components of the dynamic system as a function of the model description file.
8 . A computer readable storage medium storing instructions that, when executed by a computer, cause the computer to model a dynamic system comprising a plurality of components by:
providing a spreadsheet environment;
defining a plurality of shape objects within the spreadsheet environment, the shape objects representing the components of the dynamic system, at least one shape object having a behavioral characteristic that is associated with a physical component of the dynamic system; and
using the spreadsheet environment to define relationships between the components of the dynamic system using connectors that define connections between the shape objects.
9 . The computer readable storage medium of claim 8 , storing further instructions for:
defining a plurality of building block objects within the spreadsheet environment, each building block object representing a component of the dynamic system and having an attribute;
using the spreadsheet environment to specify connections between building block objects; and
generating a model description file as a function of the building block objects and the connections between building block objects.
10 . The computer readable storage medium of claim 9 , storing further instructions for:
providing at least one worksheet within the spreadsheet environment;
defining at least one first superblock object associated with at least one worksheet, the first superblock object comprising at least one connection point and at least one building block object; and
for each first superblock object, defining at least one relationship between components of the dynamic system using a connector that defines a connection between a first component within the first superblock object and a second component outside the first superblock object.
11 . The computer readable storage medium of claim 10 , wherein at least one first superblock object comprises a second superblock object.
12 . The computer readable storage medium of claim 10 , storing further instructions for:
for each combination of a first superblock object and a second component outside the first superblock object:
identifying at least one connection point of the first superblock object that meets a requirement that an input connection point of the second component must be connected to exactly one output connection point of the first superblock object; and
for each identified connection point, determining whether to define a connection between the identified connection point and one or more connection points of the second component.
13 . The computer readable storage medium of claim 9 , storing further instructions for persisting the attributes of the building block objects within shape objects.
14 . The computer readable storage medium of claim 8 , storing further instructions for:
receiving, in the computer, a model description file; and
using the computer to define the plurality of shape objects within the spreadsheet environment and to define the relationships between the components of the dynamic system as a function of the model description file.
15 . A computer system comprising:
a processor configured to receive and to execute processor-executable instructions;
a memory device in communication with the processor and storing processor-executable instructions that, when executed by the processor, cause the processor to model a dynamic system comprising a plurality of components by
providing a spreadsheet environment;
defining a plurality of shape objects within the spreadsheet environment, the shape objects representing the components of the dynamic system, at least one shape object having a behavioral characteristic that is associated with a physical component of the dynamic system; and
using the spreadsheet environment to define relationships between the components of the dynamic system using connectors that define connections between the shape objects.
16 . The computer system of claim 15 , wherein the memory device stores further instructions for:
defining a plurality of building block objects within the spreadsheet environment, each building block object representing a component of the dynamic system and having an attribute;
using the spreadsheet environment to specify connections between building block objects; and
generating a model description file as a function of the building block objects and the connections between building block objects.
17 . The computer system of claim 16 , wherein the memory device stores further instructions for:
providing at least one worksheet within the spreadsheet environment;
defining at least one first superblock object associated with at least one worksheet, the first superblock object comprising at least one connection point and at least one building block object; and
for each first superblock object, defining at least one relationship between components of the dynamic system using a connector that defines a connection between a first component within the first superblock object and a second component outside the first superblock object.
18 . The computer system of claim 16 , wherein the memory device stores further instructions for:
for each combination of a first superblock object and a second component outside the first superblock object:
identifying at least one connection point of the first superblock object that meets a requirement that an input connection point of the second component must be connected to exactly one output connection point of the first superblock object; and
for each identified connection point, determining whether to define a connection between the identified connection point and one or more connection points of the second component.
19 . The computer system of claim 16 , wherein the memory device stores further instructions for persisting the attributes of the building block objects within shape objects.
20 . The computer system of claim 15 , wherein the memory device stores further instructions for:
receiving, in the computer, a model description file; and
using the computer to define the plurality of shape objects within the spreadsheet environment and to define the relationships between the components of the dynamic system as a function of the model description file.