Variants in graphical modeling environments
AssigneeThe MathWorks, Inc.
InventorsJohn Ciolfi, Yang Guo, Ramamurthy Mani
Life of this patent
Estimating the term…
Abstract
This invention allows users to build, manipulate, and finally deploy various model configurations with little performance overhead, better syntactic clarity and configuration flexibility.
Claims33
A computer-implemented method for compiling a block diagram model in a block diagram modeling environment, the method comprising:
- providing the block diagram model which includes:
- an element having multiple implementations,
- a first variant configuration of the element representing a first implementation of a portion of the block diagram model, the first implementation containing a first set of zero or more intermediate model blocks, and
- a second variant configuration of the element representing a second implementation of the portion of the block diagram model, the second implementation containing a second set of zero or more intermediate model blocks, the second set of intermediate model blocks being different from the first set of intermediate model blocks;
- and
- selecting the first variant configuration of the element to:
- activate the first implementation, and
- swap out the second implementation making the second implementation inactive;
- compiling the block diagram model to execute the block diagram model using the first implementation and not using the second implementation.
A computer-implemented method for saving a block diagram model in a block diagram modeling environment, the method comprising:
- providing the block diagram model which includes:
- an element having multiple implementations,
- a first variant configuration of the element representing a first implementation of a portion of the block diagram model, the first implementation containing a first set of zero or more intermediate model blocks, and
- a second variant configuration of the element representing a second implementation of the portion of the block diagram model, the second implementation containing a second set of zero or more intermediate model blocks, the second set of intermediate model blocks being different from the first set of intermediate model blocks;
- and
- selecting the first variant configuration of the element to:
- activate the first implementation, and
- swap out the second implementation making the second implementation inactive;
- compiling the block diagram model to execute the block diagram model using the first implementation and not using the second implementation;
- and
- saving the block diagram model into a saved model with the first configuration variant, and excluding the second configuration variant from the saved model.
A computer-implemented method for generating code for a block diagram model in a block diagram modeling environment, the method comprising:
- providing the block diagram model which includes:
- an element having multiple implementations,
- a first variant configuration of the element representing a first implementation of a portion of the block diagram model, the first implementation containing a first set of zero or more intermediate model blocks, and
- a second variant configuration of the element representing a second implementation of the portion of the block diagram model, the second implementation containing a second set of zero or more intermediate model blocks, the second set of intermediate model blocks being different from the first set of intermediate model blocks;
- and
- selecting the first variant configuration of the element to:
- activate the first implementation, and
- swap out the second implementation making the second implementation inactive;
- compiling the block diagram model to execute the block diagram model using the first implementation and not using the second implementation;
- and
- generating code for the block diagram model using the first configuration variant, the code for the block diagram model including code for the first configuration variant.
A computer-implemented method for loading a block diagram model in a block diagram modeling environment, the method comprising:
- providing the block diagram model which includes:
- an element having multiple implementations,
- a first variant configuration of the element representing a first implementation of a portion of the block diagram model, the first implementation containing a first set of zero or more intermediate model blocks, and
- a second variant configuration of the element representing a second implementation of the portion of the block diagram model, the second implementation containing a second set of zero or more intermediate model blocks, the second set of intermediate model blocks being different from the first set of intermediate model blocks;
- and
- selecting the first variant configuration of the element to:
- activate the first implementation, and
- swap out the second implementation making the second implementation inactive;
- compiling the block diagram model to execute the block diagram model using the first implementation and not using the second implementation;
- and
- loading the block diagram model with the first configuration variant, the loading excluding the second configuration variant and the second set of intermediate model elements.
A system comprising:
- a central processing unit configured to:
- provide the block diagram model in a block diagram modeling environment which includes:
- an element having multiple implementations,
- a first variant configuration of the element representing a first implementation of a portion of the block diagram model, the first implementation containing a first set of zero or more intermediate model blocks, and
- a second variant configuration of the element representing a second implementation of the portion of the block diagram model, the second implementation containing a second set of zero or more intermediate model blocks, the second set of intermediate model blocks being different from the first set of intermediate model blocks;
- and
- select the first variant configuration of the element to:
- activate the first implementation, and
- swap out the second implementation making the second implementation inactive;
- compile the block diagram model to execute the block diagram model using the first implementation and not using the second implementation.
A computer-implemented method for compiling a block diagram model in a modeling environment, the method comprising:
- providing the block diagram model which includes:
- a library containing an element having multiple implementations,
- a first variant configuration of the element representing a first implementation of a portion of the block diagram model, the first implementation containing a first set of zero or more intermediate model blocks, and
- a second variant configuration of the element representing a second implementation of the portion of the block diagram model, the second implementation containing a second set of zero or more intermediate model blocks, the second set of intermediate model blocks being different from the first set of intermediate model blocks;
- and
- selecting the first variant configuration of the element to:
- activate the first implementation, and
- swap out the second implementation making the second implementation inactive;
- compiling the block diagram model to execute the block diagram model using the first implementation and not using the second implementation.
A computing device storage storing instructions executed in a computer for compiling a block diagram model in a block diagram modeling environment, the instructions comprising one or more instructions for:
- providing the block diagram model which includes:
- an element having multiple implementations,
- a first variant configuration of the element representing a first implementation of a portion of the block diagram model, the first implementation containing a first set of zero or more intermediate model blocks, and
- a second variant configuration of the element representing a second implementation of the portion of the block diagram model, the second implementation containing a second set of zero or more intermediate model blocks, the second set of intermediate model blocks being different from the first set of intermediate model blocks;
- and
- selecting the first variant configuration of the element to:
- activate the first implementation, and
- swap out the second implementation making the second implementation inactive;
- compiling the block diagram model to execute the block diagram model using the first implementation and not using the second implementation.
Dependencies are inferred from the claim text.