Run-time tunable sample time in programming or modeling environments
AssigneeThe MathWorks, Inc.
InventorsBiao Yu, Matthew Englehart
Life of this patent
Estimating the term…
Abstract
Programming or modeling environments in which programs or models are simulated or executed with tunable sample times are disclosed. The tunable sample times can be changed during the simulation or execution of the programs or models without recompiling the programs or models. The sample times are parameterized and the value of the sample times is changed during the simulation or execution of the programs or models. The sample times may be changed manually by a user. Alternatively, the sample times may be automatically changed by programmatically defining when and how the sample times are determined.
Claims36
A computer implemented method for providing a tunable sample time for use in a representation of a dynamic system, the method comprising:
- compiling the representation of the dynamic system to generate a compiled representation of the dynamic system, the compiled representation of the dynamic system having an initial value for the tunable sample time;
- receiving an input value, the input value:
- received after compiling the representation of the dynamic system,
- representing an input,
- being a value for the tunable sample time, and
- differing from the initial value;
- tuning the tunable sample time with a computing device, the tuning:
- occurring during a simulation of the dynamic system, and
- changing the initial value of the tunable sample time to the input value to produce a tuned sample time;
- generating an in-memory executable using the representation of the dynamic system;
- and
- maintaining the in-memory executable when tuning the tunable sample time.
A system for providing a tunable sample time for use in a compiled representation of a dynamic system, the system comprising:
- a storage element to store the compiled representation of the dynamic system, the compiled representation of the dynamic system having an initial value for the tunable sample time;
- and
- a processor to:
- receive an input value, the input value:
- received after compiling the representation of the dynamic system,
- representing an input,
- being a value for the tunable sample time, and
- differing from the initial value;
- provide a sample time tuning element for tuning the tunable sample time, the tuning:
- occurring during run-time of the representation of the dynamic system, and
- changing the initial value of the tunable sample time to the input value to produce a tuned sample time;
- provide an in-memory executable generated using the representation of the dynamic system;
- maintain the in-memory executable during tuning of the tunable sample time;
- provide a compiler element to compile the representation of the dynamic system into the compiled representation of the dynamic system;
- and
- provide a simulation engine to simulate the compiled representation of the dynamic system, wherein simulating the compiled representation of the dynamic system comprises tuning the tunable sample time.
A non-transitory computer readable storage medium storing computer readable instructions that, when executed by a computer, cause the computer to provide a tunable sample time in a compiled representation of a dynamic system, the tunable sample time having an initial value, the instructions comprising instructions for:
- receiving an input value, the input value:
- received after compiling the representation of the dynamic system,
- representing an input,
- being a value for the tunable sample time, and
- differing from the initial value;
- tuning the tunable sample time with a computer, the tuning:
- occurring during a simulation of the representation of the dynamic system, and
- changing the initial value of the tunable sample time to the input value to produce a tuned sample time;
- providing an in-memory executable generated using the representation of the dynamic system;
- and
- maintaining the in-memory executable during tuning of the tunable sample time.
Dependencies are inferred from the claim text.