Patents Assigned to The MathWorks, Inc.
  • Patent number: 8890879
    Abstract: A system may include a processor and memory that stores instructions to cause the processor to create a first set of objects in a first structure based on first data, where the first set of objects describes a graphical scene specified by the first data. The processor may add a command for at least one object, of the first set of objects, to a composite command that includes commands for the graphical scene and create a second set of objects in a second structure based on the first set of objects in the first structure and the composite command. The processor may receive second data, change one or more objects of the first set of objects based on the second data, and change one or more objects of the second set of objects based on the changes to the one or more objects of the first set of objects. The processor may further provide the changed second set of objects to a browser for rendering a new graphical scene.
    Type: Grant
    Filed: January 30, 2012
    Date of Patent: November 18, 2014
    Assignee: The MathWorks, Inc.
    Inventor: Michael Patrick Garrity
  • Patent number: 8887126
    Abstract: Methods and systems for controlling versions of models in modeling environments are disclosed. The versions of models and component interfaces are stored in a repository and checked in and out of the repository. The version designation of a model is changed when the model is checked in the repository. A selected version of the model is checked out of the repository and loaded directly in a memory so that users may load the selected version of the model without error. The loaded model is displayed with information on the version of the model. The version information may include the version number and author of the version. The version information may also include information on whether the model is locked with a version or in a read only mode.
    Type: Grant
    Filed: December 5, 2012
    Date of Patent: November 11, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Ricardo Monteiro, Mojdeh Shakeri, Robert O. Aberg, Michael David Tocci, Pieter J. Mosterman
  • Patent number: 8881022
    Abstract: In an embodiment, a method of binding a human machine interface to an expression of existing computer code may include analyzing the existing computer code to identify one or more bindable expressions in the existing computer code, and receiving a command to bind a human machine interface with one or more of the identified bindable expressions. The method may further include binding, using a processor, one or more of the bindable expressions with the human machine interface in response to the command. The binding may enable the human machine interface to communicate information within the existing computer code in place of the one or more bound expressions. The bound machine interface may communicate information within the computer code while the computer code is executing.
    Type: Grant
    Filed: September 30, 2010
    Date of Patent: November 4, 2014
    Assignee: MathWorks, Inc.
    Inventors: Jay R. Torgerson, Stephen Curtis, Thomas Walsh, Stanley Pensak
  • Patent number: 8881178
    Abstract: The present invention is directed toward automatically integrating a late bound program language into an external environment. The external environment may be an early bound environment, a late bound environment or some combination thereof. Associated with the late bound program environment is a modular execution engine and an interface mechanism, wherein the interface mechanism is capable of expressing late bound semantics in a format compatible with the external environment.
    Type: Grant
    Filed: October 20, 2011
    Date of Patent: November 4, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Peter Hartwell Webb, Barry Simon, Charles G. Nylander, John Micco, Marc Ullman
  • Patent number: 8881116
    Abstract: A software testing tool may use static verification analysis techniques to locate points (lines/events) in computer code at which an error may be present and points (lines/events) in the computer code that may be the underlying cause of the located error points. In one implementation, a device may perform a static verification analysis of computer code to locate a point in the code that causes an error in the execution of the computer code. The static analysis may be performed by analyzing a first set of possible execution paths of the computer code based on an over-approximation of states. The device may back-propagate, from the located point, through a second set of possible execution paths, where the second set of possible execution paths is obtained based on an under-approximation of the states that were over-approximated. Based on the back-propagation, the device may determine potential causes of the error.
    Type: Grant
    Filed: June 8, 2011
    Date of Patent: November 4, 2014
    Assignee: The MathWorks, Inc.
    Inventor: Gael Mulat
  • Patent number: 8881097
    Abstract: A method of providing multi-instantiable state templates to a statechart environment is discussed. The method includes the step of providing a graphical definition of an independent state machine object belonging to a statechart. The method further includes the step of instantiating a first instance and a second instance of the independent state machine object in the statechart. The method additionally includes the steps of starting execution of the first instance of the independent state machine object and then stopping execution of the first instance of the state machine object. Additionally, the method includes the step of starting the execution of the second instance of the independent state machine object in the state diagram.
    Type: Grant
    Filed: June 11, 2012
    Date of Patent: November 4, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Vijay Raghavan, Beth Cockerham
  • Patent number: 8875161
    Abstract: In an embodiment, a feature is an aspect of a class which represents information, data, behaviors, or capabilities encapsulated by the class. An accessing class may be given access to one or more specified features encapsulated by an accessed class, without gaining access to other features encapsulated by the accessed class. Accordingly, special access may be granted only to the behavior and data specifically designed for the accessing class, without allowing the accessing class access to all private data and behaviors of the accessed class, and without allowing all classes in a package access to the accessed class.
    Type: Grant
    Filed: June 8, 2011
    Date of Patent: October 28, 2014
    Assignee: The MathWorks, Inc.
    Inventor: David A. Foti
  • Patent number: 8875039
    Abstract: An electronic device and method are provided to enable a user to control characteristics of graphical objects of a graphical model environment without requiring manual entry of characteristics into each object. Propagation of characteristics from one or more objects to one or more objects may be specified and performed without requiring manual entry of characteristics into each objects. Examples of graphical model environments can include block diagrams, data-flow diagrams, state-based diagrams, circuit diagrams, mechanical diagrams, biological diagrams, network diagrams and software diagrams.
    Type: Grant
    Filed: November 18, 2003
    Date of Patent: October 28, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Michael H. McLernon, Alex Rodriguez, Pieter J. Mosterman
  • Patent number: 8869103
    Abstract: In an embodiment, a model is sliced into a plurality of slices. A slice in the plurality of slices is selected. A portion of code, that corresponds to the selected slice, is identified from code generated from the model. The identified code is verified to be equivalent to the selected slice. Equivalence may include equivalent functionality, equivalent data types, equivalent performance, and/or other forms of equivalence between the selected slice and the identified generated code.
    Type: Grant
    Filed: September 30, 2011
    Date of Patent: October 21, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Mirko Conrad, Xiaocang Lin, Jun Yan, Peter Szpak, Appa Rao Nirakh, Jaya Shankar
  • Patent number: 8868399
    Abstract: In an embodiment, a technique for identifying a timer in a graphical block diagram environment. According to the technique, one or more variables associated with an executable model in a graphical diagram environment are identified. One or more characteristics associated with the identified one or more variables are identified and the timer is identified based on the one or more characteristics.
    Type: Grant
    Filed: August 3, 2012
    Date of Patent: October 21, 2014
    Assignee: The MathWorks, Inc.
    Inventor: Gregoire Hamon
  • Patent number: 8869100
    Abstract: A method of defining data objects for use with an executable block diagram modeling and code generation system including providing pre-defined data object classes, each of the pre-defined data classes having default attributes, extending the pre-defined data object classes with subclasses, each of the subclasses having user-defined attributes and generating data objects, which are instances of the pre-defined classes and the subclasses.
    Type: Grant
    Filed: December 8, 2010
    Date of Patent: October 21, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Peter Szpak, Paul Jackson, Peter Mott
  • Patent number: 8869102
    Abstract: A system, computer-readable medium, and method includes providing a control flow graph including at least one condition. An update control flow graph is automatically generated based on the provided control flow graph, where execution of the update control flow graph includes an evaluation of the condition. The update control flow graph and a value corresponding to the evaluated condition is stored. An output control flow graph based on the provided control flow graph is automatically generated, where execution of the output control flow graph is based on the stored value corresponding to the evaluated condition. A mode transition control flow graph configured to identify mode transitions for the control flow graph at one or more time intervals is automatically generated and the update control flow graph is re-executed based on the generated mode transition control flow graph.
    Type: Grant
    Filed: January 31, 2013
    Date of Patent: October 21, 2014
    Assignee: The MathWorks, Inc.
    Inventor: Srinath Avadhanula
  • Patent number: 8868401
    Abstract: A system and method automatically generates an object-oriented, textual program from a graphical model, and verifies the performance of the textual program as compared to the graphical model. The graphical model may have a plurality of interconnected blocks, and each block may have a plurality of parameters. One or more of the blocks are mapped to a system object, and the block's parameters are mapped to properties of the system object. An object-oriented, executable textual string is generated automatically for the block. The generated string includes at least one command to: instantiate a system object having functionality that matches the block; set one or more properties of the system object based on the block's parameters; and run the instantiated object.
    Type: Grant
    Filed: March 11, 2010
    Date of Patent: October 21, 2014
    Assignee: The MathWorks, Inc.
    Inventors: David Koh, Brian K. Ogilvie, Zhongxin Li, Shi Chao Zhang, Jihad E. Ibrahim
  • Patent number: 8862449
    Abstract: Methods and systems for the design and execution of an aerospace or aeronautic system are provided. The aerospace or aeronautic system may incorporate planetary environment models and models of equations of motion. The planetary environment models mathematically represent planetary environment specifications, such as atmosphere and wind. Atmosphere models include standard day atmosphere models and non-standard day atmosphere models, and wind models include continuous wind turbulence models and discrete wind turbulence models. The models of equations of motion include models of three-degree-of-freedom equations of motion with variable mass and models for six-degree-of-freedom equations of motion with variable mass. As a result, the present invention can design and execute a target system more accurately than the conventional system that provides only standard day planetary environment models, continuous wind turbulence models, or fixed mass equations of motion models.
    Type: Grant
    Filed: October 15, 2013
    Date of Patent: October 14, 2014
    Assignee: The MathWorks, Inc.
    Inventor: Stacey Gage
  • Patent number: 8862446
    Abstract: In an embodiment, a computer readable medium that stores computer executable instructions is provided. The computer readable medium includes instructions for displaying a graphical model representing a modeled system, the graphical model having a first element and a second element. The computer readable medium includes instructions for identifying, in response to a request to connect at least one of the first element and the second element with a signal, a routing path within the graphical model. The routing path can be mapped through at least one subsystem of the modeled system and configured to logically connect the first element with the second element. The computer readable medium includes instructions for logically connecting, in the graphical model, the first element and the second element via the routing path.
    Type: Grant
    Filed: March 13, 2009
    Date of Patent: October 14, 2014
    Assignee: The MathWorks, Inc.
    Inventor: Krishna Balasubramanian
  • Patent number: 8863130
    Abstract: A system initiates multiple instances of a concurrent computing process, establishes a communication channel among the multiple instances, initiates execution of a computational job on the multiple instances, detects an interrupt request on one of the multiple instances, and terminates execution of the computational job while maintaining communication among the multiple instances via the communication channel.
    Type: Grant
    Filed: June 26, 2012
    Date of Patent: October 14, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Edric Ellis, Jocelyn Luke Martin
  • Patent number: 8863069
    Abstract: A system and method optimizes hardware description code generated from a graphical program or model automatically. The system may include a streaming optimizer, and a delay balancing engine. The streaming optimizer transforms one or more vector data paths in the source model to scalar data paths or to a smaller-sized vector data paths. The streaming optimizer may also configure portions of the modified model to execute at a faster rate. The delay balancing engine may examine the modified model to determine whether any delays or latencies have been introduced. If so, the delay balancing engine may insert one or more blocks into the modified model to correct for any data path misalignment caused by the introduction of the delays or latencies. A validation model, a report, or hardware description code that utilizes fewer hardware resources may be generated from the modified model.
    Type: Grant
    Filed: April 22, 2013
    Date of Patent: October 14, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Girish Venkataramani, Kiran Kintali, Pieter J. Mosterman
  • Patent number: 8862442
    Abstract: Graphical programming or modeling environments in which a preview window of an object is provided are disclosed. The preview window may be provided when the pointer of a pointing device hovers over an object and automatically disappear when the pointer of the pointing device is placed out of a predetermined region relating to the object. The object can be hierarchical so that the object includes a subsystem. Another preview window may be provided when the pointer of the pointing device hovers over the subsystem and automatically disappear when the pointer of the pointing device is placed out of a predetermined region relating to the subsystem. The subsystem of the object may also include another subsystem.
    Type: Grant
    Filed: February 15, 2013
    Date of Patent: October 14, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Andrew Grace, Jay Ryan Torgerson
  • Patent number: 8863146
    Abstract: A method comprising receiving data, where the data includes one or more elements, the data is associated with a first set of indices, and the first set of indices references the one or more elements. The method may further include folding a plurality of indices into a single index, where the single index references the one or more elements of the received data that were referenced by the plurality of indices, the folding generates a second set of indices, and the folding is performed when concurrent process threads are not generated based on the first set of indices. The method may further include determining whether concurrent process threads should be generated based on the second set of indices and generating the concurrent process threads for the second set of indices when the determining determines that the concurrent process threads should be generated based on the second set of indices.
    Type: Grant
    Filed: May 13, 2011
    Date of Patent: October 14, 2014
    Assignee: The MathWorks, Inc.
    Inventors: Halldor Narfi Stefansson, Edric Mark Ellis
  • Patent number: 8856667
    Abstract: In one embodiment, a graphical arrangement of one or more interface elements and a definition of one or more events associated with the interface elements is used to build a state diagram model of a graphical user interface (GUI). The state diagram model of the GUI includes a plurality of states, and one or more transitions linking at least some of the states. The state diagram model may be displayed to a user, and in some cases, simulated to test functionality of the GUI. In response to user input, the state diagram model may be modified to change functionality of the GUI and/or to add functionality to the GUI. The GUI may then be generated from the state diagram model.
    Type: Grant
    Filed: July 20, 2007
    Date of Patent: October 7, 2014
    Assignee: The MathWorks, Inc.
    Inventor: Thomas Gaudette